Realizing all the advantages of working with ERP, you decided to implement one of these systems in your business. But after analyzing various ready-made solutions that are offered online, you did not find a suitable option - sample programs do not meet the tasks, business processes and features of your company. What to do in this case? The answer is simple: develop ERP from scratch.
What are the benefits of developing your own ERP:
- no need to change the existing management structure and business processes;
- no extra functions, interface elements and the ability to integrate (or delete) new tools as needed;
- orientation only to the necessary business processes (any tasks, functionality, analytics, roles in the system);
- cheaper in the long run.
The latter advantage may seem dubious or even a fraud, but if you take into account the cost of a license and hidden costs of ready-made solutions (configuration, personnel training, technical support, etc.), then you will pay 20-30% of the total cost of developing the software used annually. And the development of ERP from scratch will pay for itself in several years, whereas you will be using it for 7–10 years.
What determines the cost of developmentERP is a complex system that involves the use of a single platform for the whole business with a common database, user-friendly interface and broad functionality. The cost of developing such software varies from a few thousand to hundreds of millions of dollars. The price in each case depends on the number of man-hours spent on planning, developing, testing and implementing.
Stages and deadlines for developing ERP systems
- Analysis and Planning (1–2 weeks). At this stage, key people are identified who are most familiar with the company or its division where the project will be implemented. They gather and formulate the goals and objectives of the ERP: what processes will be automated, what roles are needed, what will be in the database, and the like.
- Designing (1–2 weeks). The project team is designing an ERP system. The functional, design and functional specification of the system is developed: the architecture is selected, the wireframes are developed, the hardware requirements are specified, the set of organizational measures necessary for the implementation of the system is determined, as well as the list of documents governing its use.
- Development (3–12 weeks). IT architects analyze the connections between each module, tool, function, and design element and design the corresponding architecture. Programmers and designers get to work. Old data (from the current ERP or company documentation) is converted to the format required by the new ERP. Information sources are determined and system user role templates are created.
- Testing (from 2 weeks to 3 months). Created software is checked for bugs, glitches, design errors. The convenience of the interface and the performance of all its functions, tools and elements are being tested. It also checks the accuracy and completeness of the database, the performance of the system as a whole and of each individual item. Detected problems eliminate, and then proceed to the tests. Staff training are carried out.
- Deployment (3 weeks). When the system is tested and the staff learned to work confidently and quickly on a new ERP, the software is introduced into the work environment. First, on a small scale: integration into the workflow of a separate (preferably small) unit. If everything is fine, the ERP system is integrated into all business processes of the company.
- Support (constantly). The support service is created before deployment, but it only begins to work properly after the system has been started. And in the first few months the service, as a rule, works with the maximum load, as in the software, most likely, there will be a few (non-critical) errors and people will often do something wrong and ask for advice.
Elements of ERP-systemsThe work of the ERP system usually involves several aspects of the business, and therefore it can include several modules that automate and/or digitize each of these processes. Let’s list popular models.
Human Resource Management. The module contains tools and functions that automate and make a whole range of labor-intensive processes more efficient.
For example, management:
- divisions and departments of the organization;
- human time and resources;
- staff, career.
Inventory Management. It helps to maintain stable and optimal inventory levels. At the same time, the system allows you to quickly track each product from the moment it arrives at the warehouse to the point of sale (or transfer to the counterparty). Such information is available from any access point to the system at any time.
Customer Relationship Mismanagement (CRM). Aimed at improving the relationship between the service provider or product and customers. Here, customer needs are noted and explored to improve user scenarios, increase loyalty and increase sales. CRM-module is especially useful for medium and large companies.
Sales and Marketing. Usually this module complements the CRM module. It manages the export and local projects, which makes sales processes more manageable. The marketing module includes the management of orders, sales, invoices and the monitoring of these things.
Production. A set of functions and tools to improve and automate production planning, order management and optimize production management from order to delivery.
Finance and Accounting. Automates a significant portion of accounting and manages information related to finances, transactions, etc. Advanced modules of this type fill out tax returns themselves and post to them.
Planning. Usually presented in the form of a calendar, where you can create or schedule events and tasks, assign a responsible person, and then monitor and control the implementation. In some cases, the planning module integrates predictive tools that, based on a linear or more complex relationship, predict sales, costs, necessary actions, etc.
Reports. Allows for a few minutes to generate a report on the desired period, department, process, employee or task. Data is collected and automatically grouped and, as a rule, visualized using graphs and charts.
Approximate example of calculating the cost of developing an ERP system
Since the cost of developing ERP depends on the business, let's look at this process on the example of a relatively small company that manufactures and distributes dairy products. For example, our company will purchase raw materials from various farmers and make yogurts, cheeses and other dairy products from it. Finished products will then be distributed to several stores for a specific order.
Identification of ERP-system modules
Thus, we will have several suppliers with different quantities, quality and price of raw materials, the production process and several buyers (stores) who buy our products as needed. For this example, we can identify such modules:
Human Resource Management Module. It is necessary for managing people, distributing tasks and planning production depending on the quantity of raw materials in warehouses and the needs of stores. In our company, this module will be responsible for:
- management, distribution and planning of human resources (managers, management, workers, carriers, etc.);
- storage, management, distribution and planning of production resources (raw materials, transport, equipment, etc.);
- supplier and supply chain management;
- payroll management.
Production management module. It is optional for a small production. But since we have several suppliers with different quality of raw materials, and the products need to be made the same (desirable high) quality and at the same time also plan production depending on supplies and orders, this module is necessary for our company. Its functions:
- production chain management;
- creating a nomenclature.
CRM module. It will track all interactions with suppliers, customers, and carriers. Help build more productive relationships and help with marketing.
Sales and Marketing. Required for planning and tracking the effectiveness of marketing tools and sales forecasting based on this efficiency.
Estimating the cost of developing ERP modules
The process of estimating the cost of developing a custom ERP is similar to the process of developing web applications in general: you need to understand how many professionals will be involved, calculate the time they spend, and multiply these numbers by the hourly rate of each specialist.
For example, consider the cost estimate for developing a personnel management module:
- 1 project manager, which is involved from design to project closure (3 months, 5 working days a week, an 8-hour working day and a rate of $ 30 per hour = $ 14,400).
- 2 backend developers working full-time for 3 months at a rate of $ 35 per hour ($ 36,690).
- 1 external developer working full time for 3 months at the rate of $ 35 per hour ($ 18,480).
- 2 QA-engineers working full-time for 2 months at a rate of $ 25 per hour (16 000).
- 1 system administrator working full-time for one week at a rate of $ 25 per hour ($ 1,000).
Estimating the cost of implementing an ERP systemThe cost of connecting the system. Connecting modules will require developing an API to connect modules, which is usually done in four steps:
- Explore of the data structure and communication protocol between each module (3 full-time API developers).
- API prototyping (5 working days).
- API development (20 days for development and testing).
- API documentation (3 days).
Migration and Data Verification. To transfer data from the old ERP to the new, you will need to extract the data, convert it to the desired format and then load it into the new system. If this task is of average complexity, we will need:
- 1 DBA specialist who will work full time for two months at a rate of $ 30 per hour ($ 9,600).
- 2 ETL experts who will work full time for two months at a rate of $ 40 per hour ($ 25,600).
Thus, data transfer will cost $ 32,200.
Testing. To test our ERP of the five modules will require at least two testers who will work for two months at a rate of $ 25 per hour. It will cost $ 16,000.
Deployment and training. The training of instructors will require one expert who will work for one month at a rate of $ 70 per hour. As a result, we will pay 11,200 dollars.
The total cost of developing an ERP system
Now you can calculate all costs: 430,000 for the development of modules + 46,200 for the development of API + 32,200 for data transfer + 16,000 for testing + 11,200 for deployment and training of personnel. Total: 535 000 dollars.