Integrating Systems Thinking in Advanced Engineering and Software Development
Systems thinking has become integral to design and development processes in advanced engineering fields. This methodology emphasizes understanding systems holistically, focusing on the overall properties and the relationships between components. It particularly considers the often overlooked interactions between a newly introduced component and existing environmental elements.
?
Systems thinking can reveal unexpected insights in component design. For instance, although a component's ability to gracefully degrade in response to errors might seem beneficial, it could lead to adverse effects within the broader system. A different component might be better suited to address the error, but its function could be impeded by the degrading component, potentially leading to further system-wide issues.
?
As software becomes increasingly vital in complex systems, the systemic implications become crucial for ensuring software dependability. Software dependability is not inherent but varies depending on the software's role within different systems.
?
The behavior of a system is not merely the sum of its components. Interactions within a system can generate both positive and negative emergent behaviors, sometimes resulting in unexpected failures. Thus, the properties of a system may not straightforwardly relate to those of its individual components. A system composed of flawless components might function poorly, or a system with significant component flaws might still meet its performance objectives.
?
Specifications for system components often assume a certain operational environment. However, these assumptions might not hold in different or evolving contexts, leading to potential system failures more critical than simple software bugs or coding errors.
?
Automotive companies need to stop calling themselves software companies. By focusing solely on software-oriented solutions without considering software as an integral system component, they risk undermining the holistic view required for effective systems thinking. It is essential to see software as one piece of a larger puzzle, understanding its interactions within the system to avoid the pitfalls of an isolated software development approach.
?
People—operators, users, developers, and maintainers—are also vital components of a system. The dependability of a system that requires specific human actions should include an assessment of the likelihood of those actions being performed correctly. Let us not be blinded by the allure of buzzwords or swayed by fleeting trends. Instead, let us anchor ourselves in the timeless principles of systems thinking, recognizing the interconnectedness of components, the dynamic nature of environments, and the indispensable role of human factors. By embracing this holistic perspective, we can forge a path towards truly dependable, resilient, and transformative automotive systems that stand the test of time.
#Systemengineering #SW-safety #ISO26262 #Functionalsafety
Head of Systems Engineering Chapters at Jaguar Land Rover
6 个月System thinking is arguably the most important skill required to be an effective system engineer in the automotive industry that is transforming at pace and scale. Any organisation that wants to be successful in the software -defined-anything transformation will benefit from embracing your suggestion to make system thinking integral to the development and design from the start.
Automotive Systems Engineer @Bugatti Rimac || INCOSE Member || ISO 26262 TUV SUD Certified || I Engineer systems in vehicle and make it robust and reliable || Systems Engineering || Functional Safety
6 个月Good explanation and relevant content. I would also like to add a point that Electronics and SW is just one of the ways to control dynamic behaviour along with pneumatic or hydraulic methods when considering a wider control engineering perspective. So from wider control engineering practices we need that systems thinking to think and control dynamic system behaviour.