We had a great time participating in Embedded World this year in Nuremberg, Germany, with an amazing three days meeting with our customers, partner companies, and hundreds of visitors wanting to learn more about software testing.
As usual for this event, we were focused on the functional safety and security aspects of our offering, with static analysis and compliance solutions being the most popular, but we also had many interesting conversations regarding API testing and challenges related to testing complex IoT systems.
Discussions with industry experts and practitioners represent a great opportunity to capture some trends occurring in the market. Among the many topics, we couldn’t help but note these three repeating embedded software trends:
It is probably a reflection of the growing complexity of the software systems, but we’re definitely seeing a trend of embedded software teams looking for opportunities to improve their development processes. The workflows and tools which were working for them in the past no longer suffice.
Continuous integration is a new mantra of embedded software teams. This wave of course went through the Java world quite some time ago, and it is now running through teams developing embedded software. Jenkins, TeamCity, and Bamboo were frequently heard in our discussions, as teams expressed trying to adapt a continuous integration practice to improve their quality, velocity, and predictability of deliverables. Applying CI to embedded software development is not always easy, but benefits outweigh the cost. Our visitors were especially interested in applying our testing tools in CI/CD pipelines and all aspects related to this kind of workflow.
Another interesting thing to observe was how quickly docker containers have been adopted in the industry. Teams see a lot of value in “dockerizing” their environments. Docker containers helps in faster onboarding of the developers and making sure that everyone is using consistent development environments – which is becoming more and more important along with growing security concerns. With development environments and configurations being deployed in the form of containers, it’s natural to want to deploy testing tools in the same way.
(I was happy to hear that setups that are relatively easy with Parasoft tools are frequently impossible for our competitors.)
We started to see this embedded software trend in the last two years, and this year the trend continued: there’s a growing number of organizations thinking seriously about unit testing. In the past, we frequently heard that unit testing was the necessary evil, and saw many teams only doing it to satisfy their certification requirements.
More recently, it’s clear that organizations are investing more heavily in unit testing to make it a usable and valuable development testing practice (not just an activity performed to collect a stamp). An example of the questions that appeared:
We were trying to resolve all the disputes, but it was not always possible 😉 Some of the topics around unit testing have religious proponents and opponents, and there are not always answers that work for everyone.
It’s hard to say the reason for it, but this year we talked to many more people from the medical devices industry. Perhaps the medical devices industry is growing, or there are more projects with certification needs, or perhaps most likely, growing security concerns are convincing teams developing medical software that they need to incorporate automated software testing into the development process.
We had some very interesting conversations about challenges related to testing portable medical devices that exchange data with cloud-based services, as well as the laboratory equipment for scanning blood samples, for example. There were also some good discussions around the typical issues organizations encounter with getting FDA approval for medical software, and problems related to interpretations of requirements from standards and recommendations.
All in all, Embedded World was a great opportunity to meet with industry experts and exchange opinions on the rapidly-evolving technology landscape. For those of you who came to visit us, thank you! We’re already looking forward to next year, and to see how the industry trends continue to shift.
Product Manager for Parasoft's embedded testing solutions, Miroslaw's specialties include C/C++, RTOSes, static code analysis, unit testing, managing software quality for safety critical applications, and software compliance to safety standards.