Our company has been engaged in the automation of business processes for many years, both for commercial organizations of any size and for large government organizations. Over the years of project implementation, we have accumulated experience in working with our customers and would like to share some of the secrets of successful project implementation. We hope this will help you understand what stages a standard project for the development of an automated system consists of, as well as what its cost and possible additional costs consist of.
1. Writing the Terms of Reference for the development
When we sign a contract with you for the implementation of the automation project, an important stage begins – pre-project study, the result of which is a written specification for implementation. Technical specifications are written by our qualified analysts interacting with your working group. The participants of the working group should be the owners of the business processes that we plan to automate, as well as key stakeholders.
Next, we hold a series of business meetings, where you tell us how the processes are organized in your company, and our analysts ask clarifying questions and fix the answers. There may be several such meetings depending on the complexity of the processes. Meetings can take place both online and in the form of live meetings, but we always take into account the convenient time and availability of members of the working groups of both parties.
The main goal of this stage – determine the business requirements of interested parties to the developed system, as well as functional and non-functional requirements to this system and its components. Documenting the requirements in the form of a technical specification is necessary so that all project participants have the same understanding of the functionality of the future system and the results of the project.
Estimated cost and timing depend on:
- The number of business processes of your company that need to be automated
- Degrees of readiness of business processes for automation (their formalization and description). If the Customer has formalized and described business processes, we will need to ask a number of clarifying questions to the owners of these processes, make sure of their relevance and describe it by means of a technical task for implementation. In this situation, it takes an average of 8-16 man-hours to prepare a vehicle for one process. In a situation where business processes are not formalized, additional time is spent on their processing, joint formalization (and sometimes "AS IS" descriptions). In this case, writing a TS for automation for one process takes an average of 24 man-hours or more
- The readiness of the Customer's infrastructure to install the solution, as well as the availability of licensed software (if necessary). Analysis and recommendations of our infrastructure department for the preparation of hardware and software architecture for reliable and trouble-free operation of the automated system that will be implemented as a result of the project may be included in the Technical Terms of Reference
Payment for this stage is made on the basis of 100% advance payment. As a result, you receive a Technical Task for the development of an automated system, which you can implement both with us and with another provider of development services.
2. Development of the basic functionality of the system
After the Technical Task is written and approved with you (there is a general understanding of the expected result), we begin the development of the system. Our analysts and the Project Manager draw up a calendar plan of the project, which, if necessary, is coordinated with the Customer's working group (in moments where joint actions are necessary). Next, we form internal project documentation, determine the scope of tasks and start development.
Cost estimates and timelines consist of:
- The scope of work on the development of an automated system. This estimate is made by our development team and is measured in man-hours for each task. All these tasks are clear and available to the Customer for review. The cost of these works is usually determined by multiplying man-hours by the cost of 1 hour of a specialist of the required level of training. Specialists of different training levels may be involved in one project (depending on the complexity of the tasks). Very often we use the "project estimate" when the Customer is given a discount for the order for the implementation of the entire project, with more favorable payment conditions for us. Based on our experience, the average labor costs for the development of automation of one process take 160 man-hours
- Number of interim meetings and demonstrations. During the implementation of the project, it is also necessary to conduct intermediate demonstrations of the finished modules of the developed system to the Customer in order to synchronize his vision of these modules with the finished functionality. For these purposes, we allocate additional hours for the preparation of such demonstrations, intermediate transfers to the test environment, testing, analysts' time for the demonstration itself. As a rule, such additional costs are estimated at 8-10 hours for each demo
Payment of this stage is made on the basis of 50%/50%. This payment format guarantees mutually beneficial conditions and ensures full involvement of both parties in the project. As a result, you get a developed automated system, ready for testing, study and commissioning.
3. Putting the system into pilot operation
After the main functionality of the system has been developed, we proceed to the next stage - commissioning. Here it is important to add that many customers confuse the processes of commissioning with the commissioning of a system (or, in other words, implementation). By the time you can fully use the developed system, we will demonstrate everything to your focus group, teach you how to work with the system, prepare it for acceptance testing and provide you with the necessary instructions. Further introduction into industrial operation is usually not included in the scope of the system development project, since the success and speed of the implementation of this process (the beginning of the full use of the system) is influenced exclusively by the Customer, his desires and production capabilities.
The cost and time estimate consists of:
- The number of users who will be trained to work with the system. Sometimes it is necessary to teach not 3-5 key users of the new system, but the entire company consisting of 50 and more people. In this case, in order to make such training more effective, we suggest dividing users into small focus groups and holding several training sessions. This will allow literally every user to ask questions and get answers. Accordingly, such training may cost more
- Terms of testing of the developed system on the part of the Customer. As a rule, it takes the customer no more than 8-16 hours of working time to test one automated business process. If you need more time for testing (unavailability of all participants, etc.), we include in the estimate additional hours for support from our side and reservation of the development team in your interests
- The number of necessary instructions and the writing of additional technical documentation. In most projects, user instructions are sufficient. But when developing complex or multi-module systems, there is a need to write instructions for administration and use of other roles
The payment of this stage is made on the terms of 50%/50% or it is combined with the payment of the second stage on the same terms. As a result, you get a developed and tested automated system, transferred to your hardware platform and ready for implementation and full use.
4. Warranty obligations and system maintenance
The logical continuation of the life cycle of any automated system is its development, improvement and uninterrupted operation.
For each system developed by us, we provide a 1-month free warranty, when we correct all possible failures and inaccuracies in the operation of the system within the framework of the Technical Task (provided that we do not interfere with the program code of a third party and representatives of the Customer who do not have the necessary qualifications for this).
After that, we offer you to conclude a Support Agreement with us, under the terms of which we will make any improvements and updates to the existing system, conduct additional consultations at your request, etc.
There are 2 options for a Support Agreement:
- On the condition of prepayment of a certain number of man-hours per month. The advantage of this type of contract is that we provide SLA (Service Level Agreement) by prioritizing tasks and fixed response time. Under such an agreement, we reserve the available time of the development team
- On the conditions of cash on delivery (Time&Material), when actually used hours are paid for. But in this case, we do not reserve the resource under such a contract, and your tasks will be performed with the availability of a free resource