Search This Blog

Tuesday, October 4, 2011

11.3 Creating an Executable Model

(I apologize but the formatting problems continue.) 

Several companies have tools available that allow for modeling systems using UML (or SysML) diagrams.    These companies include EmbeddedPlus Engineering11-7, Vitech and IBM© under their Rational© product suite.   The tools support the modeling language semantics so the engineer can focus on creating the design of the system and not on the accuracy of the diagrams per the modeling language specifications.  

Vitech supports the following UML diagram types in their CORE11-8 Software: 

·         Activity
·         Sequence
·         Class
·         Package
·         Use Case

IBM Rational supports the following UML diagram types in their Statemate11-9 product:

·         Use Case
·         Sequence
·         State Machine
Using a standard development process, these tools are used from requirements down to executable software.  Benefits from creating an executable model include verifying completeness and correctness of the system and bridging the gap between the systems engineering functional domain to the Object-Oriented Software Engineering domain.  The models are not just done at the beginning of system definition, but evolve as the development process progresses until there is executable software.   The SysML Forum, http://www.sysmlforum.com/, provides an overview of possible SysML tools that can be used for creating an executable model.  

12.4 Benefits and Limitations of UML

Benefits 0f using UML when defining a system include:
·         Standardized (by OMG Group), not proprietary
·         Common language for communicating
·         Explained and described in every aspect by vast amount of publications, resources, textbooks, etc.
·         Can be customized and extended for specific application domain, software process, or implementation platform
·         Uses object oriented design concepts
·         Independent of specific programming language
SysML benefits include:
·         Requirement modeling support provides the ability to assess the impact of changing requirements to a system’s architecture
·         Precise language, including support for constraints and parametric analysis that allows models to be analyzed and simulated, greatly improving the value of system model compared to textual system descriptions
·         Open standard
Whereas UML has many benefits, it also has limitations:
·         Still no specification for modeling of user interfaces
·         Poor for distributed systems – no way to formally specify serialization and object persistence
·         Requires training/certification
·         Specification is large and takes time to understand
·         Can’t describe relationships between complex system composed of both hardware and software

12.5 Where to Find More Information on UML (SysML)

To learn more about SysML and the different diagrams, please see http://www.omgsysml.org/INCOSE-OMGSysML-Tutorial-Final-090901.pdf
There are many available resources on UML both in book form and on the internet.   Beneficial books include:
1.       Systems Engineering with SysML/UML: Modeling, Analysis, Design by Tim Weilkiens
2.       Model-Based Development: Applications, by H. S. Lahman
3.       Using UML: Software Engineering with Objects and Components, by Perdita Stevens
4.       Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures, by Hassan Gomaa
5.       UML for Real: Design of Embedded Real-Time Systems, by Luciano Lavagno, Grant Martin and Bran V. Selic
6.       Model-Driven Development with Executable UML (Wrox Programmer to Programmer), by DraganMilicev
7.       UML 2.0 in a Nutshell, by Dan Pilone and Neil Pitman
8.       SysML for Systems Engineering (Professional Applications of Computing), by J. Holt and S. Perry
9.       Writing Effective Use Cases, by Alistair Coburn
10.   Software for Use: A Practical Guide to the Models and Methods of Usage-Centered Design , by Larry L. Constantine and Lucy A. D. Lockwood
11.   Use Case Modeling , by Kurt Bittner and Ian Spence 
12.   Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle, by Ian Alexander, Neil Maiden
13.   Use Case Driven Object Modeling With UML: Theory And Practice, by Doug Rosenberg, Matt Stephens
Beneficial web sites include:
1.       Unified Modeling Language Resource Page, http://www.uml.org/
2.       Systems Modeling Language Resource Page, http://www.omgsysml.org/
3.       SysML Forum, http://www.sysmlforum.com/
4.       Embarcadero Developer Network, http://edn.embarcadero.com/article/31863
5.       Unified Modeling Language Tutorial, http://atlas.kennesaw.edu/~dbraun/csis4650/A&D/UML_tutorial/
6.       OMG Systems Modeling Language Tutorial, http://www.uml-sysml.org/documentation/sysml-tutorial-incose-2.2mo
7.                              An Introduction to Systems Engineering with Use Cases, by Ian Alexander and Thomas Zink, http://easyweb.easynet.co.uk/~iany/consultancy/use_cases/use_cases.htm

References

11-1 Model-based Systems Engineering (MBSE) Initiative, by Mark Sampson and Sanford Friedenthal, Presented at the Opening Plenary of the International Workshop, Phoenix, AZ, 29 January 2011; http://www.omgwiki.org/MBSE/lib/exe/fetch.php?media=mbse:mbse_iw_2011_intro-b.pdf
11-2 Foundational Concepts For Model Driven System Design by Loyd Baker, Paul Clemente, Bob Cohen, Larry Permenter, Byron Purves, and Pete Salmon, INCOSE Model Driven System Design Interest Group
11-3 The Unified Modeling Language User Guide, by Grady Booch, James Rumbaugh, and Ivar Jacobson, Addison-Wesley Professional; 2 edition, May 29, 2005
11-5 Object-Oriented Development in an Industrial Environment, Ivar Jacobson, Proceedings of OOPSLA´87, SIGPLAN Notices, Vol. 22, No. 12, pages 183-191, 1987
11-6 Object-Oriented Software Engineering: A Use Case Driven Approach, by Ivar Jacobson, Magnus Christerson, Patrik Jonsson, and Gunnar Övergaard, Addison-Wesley, Wokingham, England, 1992.
11-7 Embedded Plus Engineering Web Site, http://www.embeddedplus.com/SysML.php
11-8 CORE Software Web Site, Vitech, http://www.vitechcorp.com/products/index.html
11-9 Rational Statemate Web Site, http://www-01.ibm.com/software/awdtools/statemate/

1 comment: