Home / Case Studies / Software Architecture for Life Safety & Fire Security Overview Challenge Solution Impact Want to learn more? CONTACT US Overview Challenge Solution Impact Contact Us Contact Us First Name*Last Name*Company*Work Email* What can we help you with?*How did you hear about us?I agree to receive marketing communications from Orion Innovation.* I agree to receive marketing communications from Orion Innovation. We are committed to protecting and respecting your privacy. Please review our privacy policy for more information. If you consent to us contacting you for this purpose, please tick above. By clicking Register below, you consent to allow Orion Innovation to store and process the personal information submitted above to provide you the content requested.PhoneThis field is for validation purposes and should be left unchanged. Building a flexible and reliable software architecture is both important and difficult. Our team helped develop one for a major embedded systems manufacturer for their new security and safety solutions. The customer is one of the world’s largest manufacturers of embedded systems for industrial buildings, delivering state-of-the-art security and safety solutions all over the globe. The customer planned to develop a cutting-edge life safety system that would meet European and American industrial safety standards. A fully automated fire security system for Smart Building would further strengthen the customer’s position in the fire and life safety industry. Challenge The customer had the objective of developing a flexible, modular, and highly reliable system, which would be easy to use for the end users. The system itself should be a kind of constructor of various purposes operating modules. The modules are controlled by the main logical node, but also have their own standalone logic for extreme situations. Orion had to develop the firmware and software for one of the very first modules in the planned production lineup. The development team had to design the software architecture of the module, including interaction with other system parts, and then implement it in code. It included interaction with OS, communication with the main logical node, handling of externally connected devices, and a few more auxiliary tasks. Since the customer planned to reuse the solution in other modules later, it was necessary to create a flexible generic solution that could be adapted when needed. Solution We developed the solution within the object-oriented paradigm involving widely used design patterns. After discussing the proposed solution with the customer and making corrections, the engineering team implemented the first version of the software. Leveraging the full potential of modern C++, our experts carried out the development in a very short time. The resulting solution was reusable, and the customer could easily expand it in the future. After the demonstration of the first working version, the development team received a list of modifications. They were aimed to extend the existing functionality and make the operating module more smart and reliable. In addition to developing software for the module, our experts proposed their vision of how testing of these modules could be fully automated. The team members designed the devices, which simulate the operation of real external equipment. Using a simple protocol for interacting with these simulators, we could develop a test framework that would eliminate the need for human participation in the system testing process. The customer appreciated this idea, so an additional task was the full-stack development of tools for testing the modules and the entire fire security system. Impact We provided the solution meeting all customer’s initial requirements and allowing to solve new incoming challenges. The customer was satisfied with the high quality of the solution and entrusted our engineers with developing another module within the same life-safety system. During the implementation of the interaction with the main logical node, the developers showed their competencies and provided the customer with a detailed analysis of the existing solution’s shortcomings, as well as the parts to be optimized and improved. The first module was successfully tested using the testing framework developed by our team of engineers. Our specialists continue to work to improve and expand the functionality of the testing system. Functions – Module Control of external input/output devices External device fault detection Communication with the main logical node Serial and Ethernet working interface Functions – Testing Framework Simulations of the main logical node Simulations of external input/output devices High-level test scenario Integration with existing CI system Detailed reports and statistics Technologies: Language: C++ OS: FreeRTOS Testing: Python (Testing) Robot Framework Related Links Industrial & Consumer Tech Industrial Products Product Design Industries Industrial & Consumer Tech Industrial Products Topics Digital Products for Tomorrow View All Case Studies
A Leader in Outdoor and Sporting Goods Delivering a Business Idea to Production: Developing an IoT-Enabled Smart Trail Camera
A Global Manufacturer of HVAC products How Rheem and Orion Built an Award-Winning Application to Transform Contractor Efficiency
A Major American Manufacturer How a Major Industrial Products Manufacturer Developed an App for Users to Interact with Their Smart Products
A Leading Healthcare and Life Sciences Company How Developing a Cloud-based Software Platform for A Life Science Company Sped Up Communication Between Patients and Medical Personnel
Automotive Firm in the US No More “Table-Based” Testing: Ensuring Business Continuity through Test Automation