Enterprise application development projects for medium sized businesses
When it comes to the management of IT projects (such as ERP creation and integration, ERP modification or mobile application development) for a medium sized organization, there are some very important areas to consider and steps to carry out before starting.
This is ACT’s definitive, step-by-step guide on how to manage a software application project for a medium sized enterprise, from start to finish, from the point of view of the customer.
So, unsurprisingly, the first question to ask is: ‘Will this IT project make the company money, improve customer service or save the company money/ time?’ (By the way, if the answer is ‘No’, we’d strongly recommend giving up on it!)
Perhaps you have determined that your enterprise needs a mobile app, to keep up with your competition and with the swathe of potential customers that are using their mobile devices to make purchases. That would be the definition of ‘making the company money’.
Or maybe the system will cut the wait time on product delivery, or your customers can access their purchase information. That improves your customer service.
Saving the company money/time tend to go hand in hand; so perhaps your company has recognized the benefits of implementing a large scale ERP system – to fully track client information and payments, product information, purchases, outstanding invoices etc.. An ERP is specifically designed to save your company money and time – allowing your employees to focus on more important tasks and have all the information they need to make faster, more accurate business decisions.
It is advisable when making a large investment in IT infrastructure, to take some time for yourself to look in to:
- what technologies are available (any software applications company worth its salt will advise you on your options from the start).
- what is most suited to your business.
- a few companies that can successfully develop and implement it for you.
Involve business owners
A ‘business owner’ is defined as someone who is involved in the process you are improving with your software application.
In the case of an ERP system, this could be an order entry clerk, the warehouse manager all the way through to your accountant, for when it comes time to process payments.
Involving business owners is a top priority to be assured success. It is always recommendable to have one person (the business lead) who deals with those involved in the business process but that has the final say on what should be included. This avoids confusion and additional costs when it comes time to develop the software application.
Who should my enterprise application ‘business lead’ be?
Your ‘business lead’ should:
- have a great deal of experience in your business and be a model employee.
- have strong knowledge of your business systems and processes.
- understand the importance the system will have on the business.
- have a relatively good understanding of the technology you are looking to implement (although of course, this should be managed by your development company).
- be able to determine the most important people that should be involved in the enterprise application development project.
- be practical with regards system functionality.
- be a strong organizer and highly analytical.
- be very good at keeping an eye on the bottom line and deadlines.
Define your requirements
Think about each new screen you need and how each one ties in to the system as a whole. Then think about the functionality/information you need on each screen. Try to visualize how you move from that screen to the next screen etc.
It may be that you are looking to make some major improvements to an existing system. Note down all the functionality you need according to each page and try to distinguish between if it is a necessary function or just ‘nice to have’.
The above is your first step to wireframing (more on that later).
Fully analyze your business processes
Process analysis is an area that tends to get overlooked – creating no end of problems.
Process analysis applies in both the mobile application example and the ERP (it applies to ANY software application).
Let’s say you were building the mobile application for your business, you would look at exactly what steps the end user takes to complete the sale, or, in the case of the ERP, what your employees need to do to complete their business process etc.
Try to cut down on the amount of steps where possible. There’s nothing more annoying than a pointless click through to another step, or having to scroll back and forth between a step and the information displayed.
Really put yourself in the place of the end user (the person who is going to use the system on a regular basis) and try to think how YOU would like to go through, let’s say, the sales process in your system. Walk yourself through each process in the system you are looking to build to see if it’s coherent. Are there any steps that are not necessary? That could be improved?
Ask yourself questions such as:
- Could we add the sale information on the same page as the step?
- Is each step clearly defined?
- Will the user’s experience be as simple and as fast as possible?
Try to include inputs and outputs that affect the process (those that fall outside the ‘process’ itself).
Draw up an initial flow chart of the system and your screens to simplify the business process.
Keep these points in mind:
- Information is clearly laid out and detailed.
- Buttons are large and correctly labelled.
- Follow each process through to completion, including any deviations that may occur during it.
Identifying your enterprise IT solutions provider
You are now at a point where you can look for an enterprise IT solutions provider.
This normally starts by contacting 2-3 enterprise IT solutions providers and determining which can complete your project most effectively.
There are a quite a few things to look for when selecting your enterprise IT solutions provider – however, if you follow this check list, you will almost certainly be guaranteed a strong IT partner:
When you contact an enterprise IT solutions provider such as ACT Mobile Solutions (shameless plug 🙂 ):
- They should be no different to any other company, and should guarantee excellent customer service and business integrity.
- They should be focused on you; as their customer, be genuinely interested in the product and your business, and be completely confident they can deliver a product to the very highest standard.
- They should not hassle you for money at any point. If alarm bells sound, you should probably trust your instincts and move on.
- The enterprise IT solutions provider should be completely honest and open and be able to give you examples of systems they have built and designs they have created.
- They should be industry experts and be able to answer any questions you may have. They should give you ideas and best practices on screen design and system implementation.
- They should have a ‘customer satisfaction’ guarantee in place.
- They should guide you as to the best technology platform for your needs, whether it be a mobile application in Swift or an ERP system in Java.
- At this stage, as a mid-sized company looking for a new software application solution, the IT service provider you work with should be committed to becoming an extension of your company and be able to offer you an all-encompassing service, meaning, building the software application, hosting your application, offering you the domain to host it (or incorporate it in to your current domain), and other necessary services such as business email, VPNs and proxy servers.
- The enterprise IT solutions provider should always work to a signed contract. In the contract, the IT solutions provider should clearly detail exactly what is included for the price being paid. IT solutions contracts are notoriously complex and require a great deal of explanation so that everything that is included is clear for all parties.
- Payment terms should also be clearly defined.
- The provider should always offer a warranty period (of at least two weeks) where the client can report any errors that may potentially surface.
- They should always sign a non-disclosure agreement which will ensure that your idea is not discussed outside the service provider’s organization.
During the project
Best practice with any software application project (a ‘software application’, means any system being built, for example a mobile application, an ERP etc.) is that it is split up in to phases as per the project as a whole, which will include the following:
A walk through of all business processes covered in the system in an attempt to streamline them wherever possible. This should be conducted in a group session for questions/answers and the results of the meetings should be sent out afterwards for further input.
Business requirements analysis
This is analyzing the system from a business standpoint to make sure all the necessary functionality is included.
Enterprise application architecture
The first step to creating your enterprise application is building the architecture. This is an initial flow chart of all the screens that are needed and the overall system functionality.
Time estimate and planning
This is a detailed list of tasks, and how long each will take to complete, taking in to account the customer’s deadlines, normally in the form of a Gantt chart.
A simple screen by screen adaptation of every screen –to give an idea of screen layout.
This is the initial screen layouts (wireframes) but with the colours, logo, banners, buttons etc. all in place. This is exactly what the system will look like on the device, upon completion.
This is the section of the enterprise IT solutions project where all the functionality is programmed in to the system.
The enterprise IT solutions provider should conduct regular demos of each section of the system, to show the client how the system is progressing.
This gives the client the opportunity to ask questions and make notes regarding system functionality.
This is an essential part of any software application project, and depending on the system, a test plan should be drawn up and, aside from the standard ‘does the system open/close correctly’ or ‘does the system save/print’ etc.; other tests may be carried out, such as:
- Browser testing
- Functional testing
- Device testing
- Manual testing
- Performance testing etc.
This should ideally be carried out during development (where possible) so that errors are corrected quickly and efficiently – instead of left till the end of the project.
It is advisable to create system documentation, both within the code itself and instructions for end users.
It can cut down on the amount of time taken to find information within the system and on maintenance costs after the main project is completed.
End user training
Your enterprise IT solutions provider should make arrangements to test the system, with your employees, and walk them through exactly how the system works, all the functionality and how it will help employees throughout the business process.
This part of the project should be rolled out over a period of time so that everyone within the clients’ organization is aware of the new system/new features within the system.
The enterprise IT solutions provider should be on hand to clarify any questions or issues with the system for a period of time after going live with the software application.
Continued enterprise application testing
Enterprise application development testing should continue for some time after to ensure any potential bugs in the system are fully eliminated.
ACT Mobile Solutions is an enterprise application development and testing organisation for small to medium sized businesses. We pride ourselves on building systems of the very highest quality and being the very best in the business.
ACT Mobile Solutions is founded on complete honesty and business integrity. We offer outstanding customer service and work tirelessly for our valued customers in order to become their trusted IT partner. For any information, please don’t hesitate to contact email@example.com
Be great to hear your thoughts on anything discussed above. Thank you!