Embedding Object-Oriented Design in System Engineering
The Unified Modeling Language (UML) is a collection of techniques intended to document design decisions about software. This contrasts with systems engineering approaches such as for exampleStatemate and the Yourdon Systems Method (YSM), in which the design of an entire system consisting of software and hardware can be documented. The difference between the system- and the software level is reflected in differences between execution semantics as well as in methodology. In this paper, I show how the UML can be used as a system-level design technique. I give a conceptual framework for engineering design that accommodates the system- as well as the software level and show how techniques from the UML and YSM can be classified within this framework, and how this allows a coherent use of these techniques in a system engineering approach. These ideas are illustrated by a case study in which software for a compact dynamic bus station is designed. Finally, I discuss the consequences of this approach for a semantics of UML constructs that would be appropriate for system-level design.
KeywordsUnify Modeling Language Class Diagram Quality Function Deployment Subject Domain Unify Modeling Language Model
Unable to display preview. Download preview PDF.
- [AKZ96]M. Awad, J. Kuusela, and J. Ziegler. Object-Oriented Technology for Real-Time Systems: A Practical Approach Using OMT and Fusion. Prentice-Hall, 1996.Google Scholar
- [BF90]B. S. Blanchard and W. J. Fabrycky. Systems Engineering and Analysis. Prentice-Hall, 1990.Google Scholar
- [BHS91]F. Belina, D. Hogrefe, and A. Sarma. SDL with Applications from protocol Specification. Prentice-Hall, 1991.Google Scholar
- [BRJ99]G. Booch, J. Rumbaugh, and I. Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, 1999.Google Scholar
- [BW99]J. Broersen and R.J. Wieringa. A logic for the specification of multi-object systems. In P. Ciancarini, A. Fantechi, and R. Gorrieri, editors, Formal methods for Open Object-Based Distributed Systems, pages 387–398. Kluwer, 1999.Google Scholar
- [CD94]S. Cook and J. Daniels. Designing Object Systems: Object-Oriented Modelling with Syntropy. Prentice-Hall, 1994.Google Scholar
- [DH99]W. Damm and D. Harel. LSC’s: Breathing life into message sequence charts. In P. Ciancarini, A. Fantechi, and R. Gorrieri, editors, Formal methods for Open Object-Based Distributed Systems, pages 293–311. Kluwer, 1999.Google Scholar
- [D98]B.P. Douglas. Real-Time UML: Developing Efficient Objects for Embedded Systems. Addison-Wesley, 1998.Google Scholar
- [DW96]F. Dehne and R.J. Wieringa. Toolkit for Conceptual Modeling (TCM): User’s Guide. Technical Report IR-401, Faculty of Mathematics and Computer Science, Vrije Universiteit, De Boelelaan 1081a, 1081 HV Amsterdam, 1996. http://www.cs.utwente.nl/~tcm.
- [G93]H. Gomaa. Software Design Methods for Concurrent and Real-Time Systems. Addison-Wesley, 1993.Google Scholar
- [HP85]D. Harel and A. Pnueli. On the development of reactive systems. In K. Apt, editor, Logics and Models of Concurrent Systems, pages 477–498. Springer, 1985. NATO ASI Series.Google Scholar
- [HP98]D. Harel and M. Politi. Modeling Reactive Systems with Statecharts: The STATEMATE Approach. McGraw-Hill, 1998.Google Scholar
- [i-L99]i-Logix. Rhapsody Reference Guide, Version 2.1. i-Logix Inc., 1999.Google Scholar
- [J83]M. Jackson. System Development. Prentice-Hall, 1983.Google Scholar
- [J95]M. Jackson. Software Requirements and Specifications: A lexicon of practice, principles and prejudices. Addison-Wesley, 1995.Google Scholar
- [JBR99]I. Jacobson, G. Booch, and J. Rumbaugh. The Unified Software Development Process. Addison-Wesley, 1999.Google Scholar
- [JCJO92]I. Jacobson, M. Christerson, P. Johnsson, and G. Üvergaard. Object-Oriented Software Engineering: A Use Case Driven Approach. Prentice-Hall, 1992.Google Scholar
- [KVS96]A.S. Klusener, S.F.M. van Vlijmen, and A. Schrijver. Compact dynamisch busstation. Technical Report CS-N9601, Centrum for Wiskunde en Infor-matica, May 1996.Google Scholar
- [L95]W.M. Lamia. Integrating QFD with object-oriented software design methodologies. In The Seventh Symposium on Quality Function Deployment, pages 417–433. QFD Institute, 1995. http://www.gfdi.org/.
- [M89]J. Martin. Information Engineering. Prentice-Hall, 1989. Three volumes.Google Scholar
- [MP84]S. M. McMenamin and J. F. Palmer. Essential Systems Analysis. Yourdon Press/Prentice Hall, 1984.Google Scholar
- [OMG97]OMG. Unified Modeling Language: Notation Guide, Version 1.1. Object Management Group, 1 September 1997. http://www.omg.com.
- [SH96]M. Shaw and D. Harlan. Software Architecture. Prentice-Hall, 1996.Google Scholar
- [SM92]S. Shlaer and S. J. Mellor. Object Lifecycles: Modeling the World in States. Prentice-Hall, 1992.Google Scholar
- [UML99]UML Revision Task Force. OMG UML Specification. Object Management Group, march 1999. http://www.uml.shl.com
- [WB98]R.J. Wieringa and J. Broersen. A minimal transition system semantics for lightweight class-and behavior diagrams. In M. Broy, D. Coleman, T. Maibaum, and B. Rumpe, editors, ICSE98 Workshop on Precise Semantics for Software Modeling techniques, pages 129–151, 1998. Report TUM-19803, Technische Universität München.Google Scholar
- [W98a]R.J. Wieringa. Postmodern software design with NYAM: Not yet another method. In M. Broy and B. Rumpe, editors, Requirements Targeting Software and Systems Engineering, pages 69–94. Springer, 1998. Lecture Notes in Computer Science 1526.Google Scholar
- [W71]L. Wittgenstein. Philosophische Untersuchungen. Suhrkamp Verlag, 1971.Google Scholar
- [Y93]Yourdon Inc. Yourdon™ Systems Method: Model-Driven Systems Development. Prentice-Hall, 1993Google Scholar