ERP system development with Data Science models and extensive automation

January 15, 2018 1252 Views
← Back
ERP software development and implementation case study
Client:Comcash: US-based B2B product company with 20 years on the market
Business
goals:
Creation of an innovative and reliable ERP software suite and its delivery to retail and restaurant businesses on an ongoing basis
Product: Cloud-based system that comprises ERP, desktop and mobile POS software, accounting and inventory management software, an administration portal, and an eShop
Applied technologies: Web stack
Yii, PHP, MySQL, Nginx
.NET stack
WPF, .NET Framework 4.5

Automated server deployment
Yii, PHP, Ansible
iOS stack
Objective-C, Swift,
CoreData, AFNetworking

Automated POS testing
Python, Appium, WinAppDriver, Jenkins, Allure
Automated API testing
PHP + Codeception

Machine Learning & Data Science
Scikit-learn, Scipy, Pandas, Mlxtend, adaptive selective model,
ABC-XYZ analysis, associative rules, Apriori algorithm



Building an ERP system adopted by 80 retail chains over 3.5 years


Enterprise resource planning (ERP) became an extensive niche for software development companies. Integrated tools enhance and automate business management, taking over routine operations.


The system in question comprehensively summarizes our 6-year experience of software development for the retail sector. It was conceived as a flexible solution that could be easily tailored to business processes of companies that adopted it.


Our development team was at the core of its growth, from the very beginning up to the latest applied innovations, which include automated testing and server deployment, as well as a number of Data Science models that retrieve and use statistics to facilitate sales.



Before we proceed with our story, we'd like to turn it over to Richard Stack, our friend, CEO of Comcash, and the owner of this system. We've been successfully working with him for many years, and now he kindly provided us with a video where he describes his experience as a client of MobiDev.





ERP Product Structure

Cloud-based ERP system includes desktop and mobile POS software, inventory management software, administration portal, eShop

The first version: 1 year from idea to release


The story started in a simple way: head of a product company chose us as a software development company capable of forming a tech foundation for his business vision and implementing it. Another task we had was to help him present and customize a production-ready enterprise resource planning system for early adopters. After a year of handling an extensive scope, the system went live in mid-2014 for its first retail chain. Immediate returns were invested in further evolution and customization for emerging clients.


The inherent flexibility of this ERP system allowed us to adjust it to varying business processes, which helped our client gather more adopters. Product customization for one adopter took about 1 month, and our next step was automation.




Automation of testing and server deployment as a premise for reliability of POS software


Automated server deployment was a natural solution for a complex software suite used by companies that must operate failsafe 24/7. We have an update after an iteration—then we have one push of a button—and 70 POS terminals of a retail chain are instantly and seamlessly updated in the morning.


With the rapidly growing number of retail companies as adopters, the team still required a focus on functionality development. The applied solution yielded a good result: currently, setup of an instance for a new company takes 10-15 minutes. Full configuration depends on the data input from this company. It can take up to 2 days, and can be handled by a support team.


The next step was automation of testing. It increased stability, reduced the number of minor updates, and sped up regular major deliveries without compromising product quality.


The entire system uses a standard internal API. Our first step was automation of its testing according to the basic scenarios. As a result, regression testing time was reduced from a week to 2 days. Later on, the process of automated testing was applied to desktop POS software; mPOS automation is currently in works. Integration with Jira facilitated and automated a number of internal QA activities.




Data Science in retail software development: building models to predict and facilitate sales


According to a survey by McKinsey & Company, 36% of US companies confirmed that a competitive edge is gained by improving core business through data and analytics. These companies extract valuable insights from data that were traditionally unrelated or used in different systems. The percentage shows a relative uncertainty that we believe will become more clear in the year to come.


But for us, machine learning and data science development in retail industry already have well-defined business goals. This project features 3 vivid examples of models developed by our team:



Making weekly demand predictions to boost sales


Data Science model for demand predictions based on retail sales statisticsThe first and most complex example is an adaptive selective model that makes demand predictions for each following week. It was based on 2.5 years of retail sales statistics, processing this data to figure out what goods would be in high demand. This model consists of several autoregressive models with some external data, and its key feature is the selection process, which enables forecasting for any particular product at any point in time.


The main challenge of this case was to create a single algorithm that would be used for thousands of product types and different points of sale that have different demand patterns. The optimal solution was to apply this adaptive model instead of separate ARIMA-like models or recurrent neural networks to avoid fine tuning for specific products.


Applied DS/ML libraries & approaches: Scikit-learn, Scipy, Pandas, adaptive selective model




Dividing goods into specific groups to make targeted discounts


Data Science statistical report to divide goods into groupsThe second example is more of a statistical report that divides goods into groups by popularity and revenues. The data on most and least profitable goods would be used for effective targeted discounts, increasing retail sales.


Applied DS/ML libraries & approaches: Pandas, ABC-XYZ analysis




Offering relevant accompanying goods to customers


 Data Science model to offer relevant accompanying goodsThe third model will soon make its way to the system, and it offers relevant accompanying goods that customers tend to buy together with any selected product. Basically, it helps to recommend more goods to fill the basket of every customer, driving additional revenue.


Applied DS/ML libraries & approaches: Mlxtend, Pandas, associative rules, Apriori algorithm




Plans for the future: new target audience and focus on mobility


This ERP software suite is currently used by more than 80 retail chains in the US. Its structural sophistication is handled with an ongoing iterative development process by a dedicated team of 10 people.

Dedicated team of 10 people worked on the ERP software development

The latest releases include the mPOS software, which brings the entire point-of-sale functionality to the mobile by means of iOS development. It was conceived as a solution that will help the client encompass a new target audience – the sphere of restaurant business, where the convenience of on-the-go mPOS and accounting functionality is essential. Architectural flexibility allows to cover new ground easily—which means we will have more success stories to tell.


Stay updated with our blog, and feel free to contact us with your questions and ideas!

Read more:
scroll top