Initially, software and system modeling tools emerged out of the need to solve and/or simplify specific engineering problems. The Unified Modeling Language (UML) was designed to address software problems while proprietary languages were developed for siloed engineering tasks such as MATLAB for algorithm design. Over time, however, engineering organizations began utilizing the technologies for additional tasks, ultimately leading to the introduction of new feature sets, new products, and new language subsets altogether such as SysML for system level design. At the same time, some solution vendors have attempted to evangelize the establishment of higher level modeling practices with the aim of connecting – and extracting management and development synergies from – multiple engineering domains (e.g. software, electrical, mechanical, algorithmic, etc.).
The fulfillment of this objective, however, has largely lagged the broader adoption of modeling tools. A few years ago, many Electronic Design Automation (EDA) tool vendors attempted to champion the use of Electronic System Level (ESL) design tools that modeled hardware in software, at a level of abstraction above the Register Transfer Level (RTL), in order to addresses system level design/verification and hardware/software interaction. Subsequent adoption of these products, however, has been relatively slow and, in many cases, below suppliers’ expectations. Now, many modeling tool vendors (with software lineages) are beginning to position their roadmaps to enable tight integrations with Product Lifecycle Management (PLM) solutions in the future.
Certainly, engineering organizations should salivate at an opportunity to drive synergies in their development process and gain efficiencies in product change and quality management. Unfortunately, we expect that this proposed level of integration will, for the most part, remain idyllic and unobtainable over the near term. Today, the vast majority of engineers still report that they do not use modeling tools for cross domain practices. Similarly to EDA’s promotion of ESL solutions four years ago, we believe that the main inhibitor will remain the fragmented and often siloed nature of organizations’ development groups and the subsequent assignment of development responsibilities to specific engineers.
Perhaps the largest potential disruptive factor to the organizational inertia that we believe will limit the adoption of cross-discipline tools may be the same force that has transformed enterprise/IT software development over the past decade and that is now impacting the embedded space in greater frequency – Agile development methods. To date, the associated development processes, which emphasize iterative development, have largely been implemented within software development teams as a means to improve responsiveness to elastic customer/stakeholder requirements. Increasingly, however, we anticipate that organizations will look to embrace Agile’s principles at a broader level, beyond software development. If so, we believe that there will be an increasingly vital role for development solutions that can offer ways to automate and analyze total system behavior, at greater frequencies. Until this type of widespread organizational evolution take hold, however, we expect that cross-domain system modeling and analysis will remain largely out of reach for most organizations.
VDC investigates this trend among others in our recently published report, Software and System Modeling Tools, from our research service covering Software and System Lifecycle Management Tools. Please contact us for more information.