Santa Cruz, Calif. -- A modeling language that can represent every aspect of an electronic system--including software and electrical or mechanical hardware--has long seemed an impossible dream. But advocates of the System Modeling Language, which took a major step toward standardization in late April, say that vision is now at hand.
SysML is a general-purpose modeling language aimed at systems engineers. The language can specify, analyze, design and verify complex systems, including hardware, software, data, personnel, procedures and facilities. "Systems" the language can model range from the inner workings of a cell phone to an entire wireless telephone network.
Both a subset to and extension of the Unified Modeling Language, a graphical language for software developers, SysML puts behavior, structure, analysis and requirements in a single, integrated systems model. Though SysML's advocates and creators come almost exclusively from the world of embedded software, they now hope to build bridges to hardware design, including systems-on-chip.
"Our emphasis is to look at how we can integrate with electrical design," said Sanford Friedenthal, principal systems engineer at Lockheed-Martin Corp. and chair of the SysML Team. "That's a high priority. I've had a lot of interest within my own company, and interest from outside."
It should be possible to link SysML with implementation languages like VHDL, Friedenthal said. "I believe it's totally feasible, and I believe we have a lot of constructs that are very natural for supporting integration with electrical design," he said.
The SysML Team submitted the language's 1.0 specification to the Object Management Group (OMG) in April, and two key committees unanimously approved it on April 26. Advocates see final OMG approval, expected next February, as basically just a formality.
"The April 26 vote was the significant one," said Jack Low, vice president of emerging technologies and markets at Telelogic AB and co-chair of the SysML Finalization Task Force. "This gives vendors a very solid base from which to implement the spec as it's written, so it's a de facto standard at this point."
SysML has its roots in the Unified Modeling Language (UML), which has been used by software developers since the mid-1990s. Last year, 18 percent of embedded-software and firmware developers used UML, a Gartner Dataquest study showed. UML supports various kinds of structure, behavior and interaction diagrams.
UML 2.0's recent release has sparked interest in the language for system-on-chip (SoC) design. STMicroelectronics, for example, has adopted a UML 2.0 "profile," or extension, for SystemC for SoC design. It lets a design evolve from an initial UML model to a functional C/C++ description.
SysML emerged from a request for proposals developed by the OMG and the International Council on Systems Engineering, and issued in March 2003. A number of companies worked quickly to develop the spec, including tool vendors like Artisan Software, EmbeddedPlus Engineering and Telelogic, all of which offer SysML tools; end users such as Lockheed-Martin, Raytheon and IBM; and academics and government representatives.
While UML 2.0 added features that make the language more attractive for modeling combined hardware/software systems, SysML extensions represent a further shift from UML's software-centric past. The major structural extension in SysML is the "block," which abstracts away the software-specific detail in UML structured classes. Blocks describe a system as a collection of parts, and connections between parts that enable communications. A "port" gives access to internal structure.
Requirements modeling is a key addition to SysML. Users can develop requirements diagrams, tree structures or tables. In addition to documenting requirements, these models provide traceability to requirements throughout the design flow, and ensure that requirements are satisfied.