Modeling Components and Component-Based Systems in KobrA

In this chapter we present a version of the Trading System case study modeled according to the KobrA approach. KobrA is a UML-based method for describing components and component-based systems developed at the Fraunhofer Institute for Experimental Software Engineering at the beginning of the decade. The acronym stands for the term " Ko mponenten b asie r te A nwendungsentwicklung" --- German for "Component-based Application Development". KobrA has been successfully used by a number of companies in industrial settings and has given rise to numerous specializations and offshoots (e.g. MARMOT [1] and MORABIT [2]). The original version of the method [3] was developed for the UML 1.x flavor of the UML, but in this chapter we introduce an updated version optimized for use with the 2.x versions of the UML [4] and its related standards such as OCL [5]. KobrA also provides support for other advanced software engineering approaches such as product-lines, but these are beyond the scope of this chapter. Here we focus on the component-modeling aspects of the method.

[1]  August-Wilhelm Scheer,et al.  ARIS — Modellierungsmethoden, Metamodelle, Anwendungen , 1998 .

[2]  Derek Coleman,et al.  Object-Oriented Development , 1993 .

[3]  Khaled El Emam,et al.  Fraunhofer Institute for Experimental Software Engineering , 1997, Softw. Process. Improv. Pract..

[4]  Colin Atkinson,et al.  Reducing Verification Effort in Component-Based Software Engineering through Built-In Testing , 2006, 2006 10th IEEE International Enterprise Distributed Object Computing Conference (EDOC'06).

[5]  Barbara Paech,et al.  Component-based product line engineering with UML , 2001, Addison Wesley object technology series.

[6]  Robert L. Nord,et al.  Software Product Lines , 2004, Lecture Notes in Computer Science.

[7]  Craig Larman,et al.  Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition) , 1997 .

[8]  Craig Larman,et al.  Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process , 2001 .

[9]  Klaus Schmid,et al.  PuLSE: a methodology to develop software product lines , 1999, SSR '99.

[10]  Anneke Kleppe,et al.  The object constraint language: precise modeling with UML , 1998 .

[11]  Chris Dollin,et al.  Object-oriented development: the fusion method , 1994 .

[12]  Mark Mayfield,et al.  Coad, Yourdon, and Nicola: OOA, OOD, & OOP , 1994 .

[13]  정인기,et al.  [서평]「Applying UML and Patterns - An Introduction to Object-Oriented Analysis and Design」 , 1998 .

[14]  Tony Field,et al.  Experimental Evaluation of the UML Profile for Schedulability, Performance, and Time , 2004, UML.