CodeSys, C++
July 2019 - onging

The Client

The client is a machines producer with headquarters in Western Europe. It’s a leading vendor in its industry with a presence in 20 countries. Their machines have an embedded internal system that controls mechanical devices to automate complex processes. Sustainability and efficiency in projects are important to the client to contribute in the protection of our environment.

The Challenge

There is new hardware in production and to increase its performance, a revamped software solution was needed, because the current software was in technological debt.

The embedded system was written using an obsolete framework and the legacy code is preventing upgrades to connectivity & IoT solutions. Additionally, the framework had no tools to support modern software development processes and quality assurance.

The Solution

The initial scope of work wasn’t surprising: the legacy system must have been replaced with a modern software framework for new hardware. The first stage of the project was analyzing existing source code as there were some lacks in the software documentation available. The main source of knowledge was engineers on the client’s side. They partnered with Scalo in this task with vast product knowledge. The second stage was to translate knowledge into the tasks and later create complete project documentation.

Scalo specialists advised on processes and architecture, as well as performed code analysis and tests. We created machine prototypes and usability tests to inspect the software in accordance with the requirements before going into production. Once the testing solutions were automated, it was possible to build and verify additional functionalities.  

To ensure proper testing conditions, a lab was created in the office. It imitated the machines’ working environment to bring credibility to the performance results. The Scalo team could perform tests during periods in which traveling onsite was not possible.  

The Effect

The project commenced with providing a Project Management advisory to administer the business analysis of the new software development. The assistance of our Project Manager was necessary to gather client requirements and to recognize business needs.

The second team member to join was the Tech Lead. He assisted the Project Manager with assigning tasks to developers and identifying areas for improvement in testing scenarios. Tech Lead was also responsible for designing project architecture and led the software development process with the use of industry best practices.

The project was conducted using the Waterfall methodology, however, tasks on the software development level were executed using Scrum. It was important to divide these two models, as Agile allowed us to adjust business requirements and identify issues earlier. 

The challenge within project management was not only learning the complex systems, and the technological combinations of various engineering areas (software, electrical, mechanical, and hydraulic), but also connecting different engineering languages to form a common development process from requirement definitions to final system verification. 

The project began in late 2019 and is ongoing. As a software development team, we are working with mechanical devices to create software for a final product that follows formal (e.g. local and global, like ISO/IEC/EC) safety regulations. We proposed processes and tools that have origins in software engineering (e.g. JIRA); which support cooperation in all engineering departments on the project.

Cooperation is ongoing and the current Scalo team consists of a Project Manager, Tech Lead, and Senior Software Developers with plans to incorporate Quality Engineers. Team members actively use the software lab to prototype ideas and test solutions. 

Scalo is excited to participate in this challenging technological project that will make a difference to the environment. Stay tuned for more project updates. 

See also

Let’s talk about your project

This website uses cookies to deliver the service. Find out more or close the message.