Top 10 modeling hints for system engineers: #3 Make sure your work products tell the same story

Traceability links make sure the individual work products are consistent in detail with all the other work products constructed when during system development.

Bruce Douglass (Bruce.Douglass@us.ibm.com), Rational Chief Evangelist, Systems Engineering, IBM

author photoEmbedded Software Methodologist. Triathlete. Systems engineer. Contributor to UML and SysML specifications. Writer. Black Belt. Neuroscientist. Classical guitarist. High school dropout. Bruce Powel Douglass, who has a doctorate in neurocybernetics from the USD Medical School, has over 35 years of experience developing safety-critical real-time applications in a variety of hard real-time environments. He is the author of more than 5,700 book pages from a number of technical books including Real-Time UML, Real-Time UML Workshop for Embedded Systems, Real-Time Design Patterns, Doing Hard Time, Real-Time Agility, and Design Patterns for Embedded Systems in C. He is the Chief Evangelist at IBM Rational, where he is a thought leader in the systems space. Bruce consults with and mentors IBM customers all over the world. Follow Bruce on Twitter @BruceDouglass.



10 December 2013

Also available in Chinese Russian Japanese

We construct many different work products during system development; safety analysis, requirements, threat analysis, FMEA, architecture models, ICDs (interface control documents), designs, test cases, documentation, source code, electrical schematics, CAD drawings, finite element models, and so on. These work products are typically captured using a set of disconnected tools with incompatible file formats and representations. It is crucial, however, that all these work products tell the same story.

Of course, each work product tells the story from its own point of view and focuses on aspects of the system relevant to its concerns. But, they must still be consistent in detail with all the other work products.

Figure 1. Do all your work products tell the same story?
image of the three bears

Detailed traceability links among the detailed elements in the work products is how to ensure consistency. Detailed traceability links enables the following kinds of analysis to be performed:

  • Coverage
    • Are all requirements met by design elements?
    • Are all requirements covered by test cases?
    • Are all design elements implemented in code, electronic or mechanical design?
    • Do test cases adequately cover the design or code (for example, structure coverage, decision coverage, or modified condition/decision coverage)?
  • Justification
    • Is every design element in place to meet a requirement? (Any gold plating?)
    • Is every implementation element there to realize a design element?
    • Are the dependability requirements there to meet a safety, reliability, or security concern?
  • Impact
    • What elements in other work products must be modified, or at least reviewed, if this particular element (requirement, design, test case, implementation) is modified?

Trace relations are a basic part of the UML and SysML languages. In a modeling context trace links are easy to add. Figure 2 shows trace links between design elements and requirements. These trace links can be summarized in tabular form within some UML/SysML tools, such as Rational Rhapsody.

Figure 2. Trace links in UML and SysML
trace links between design elements & requirements

Click to see larger image

Figure 2. Trace links in UML and SysML

trace links between design elements & requirements

You can also export the trace links to tools dedicated to traceability management, such as Rational DOORS (Figure 3).

Figure 3. Traceability management in Rational DOORS
figure 2 exported to DOORS

Click to see larger image

Figure 3. Traceability management in Rational DOORS

figure 2 exported to DOORS

The best way to enter traceability data is incrementally, in parallel with an incremental development of the associated work products. As you stabilize an increment of a work product – such as a portion of requirements, design or code – add the traceability links to the other relevant work products as a part of completing that increment.

Resources

Learn

Get products and technologies

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Rational software on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Rational
ArticleID=955877
ArticleTitle=Top 10 modeling hints for system engineers: #3 Make sure your work products tell the same story
publish-date=12102013