This textbook mainly addresses beginners and readers with a basic knowledge of object-oriented programming languages like Java or C#, but with little or no modeling or software engineering experience - thus reflecting the majority of students in introductory courses at universities. Using UML, it introduces basic modeling concepts in a highly precise manner, while refraining from the interpretation of rare special cases.
After a brief explanation of why modeling is an indispensable part of software development, the authors introduce the individual diagram types of UML (the class and object diagram, the sequence diagram, the state machine diagram, the activity diagram, and the use case diagram), as well as their interrelationships, in a step-by-step manner. The topics covered include not only the syntax and the semantics of the individual language elements, but also pragmatic aspects, i.e., how to use them wisely at various stages in the software development process. To this end, the work is complemented with examples that were carefully selected for their educational and illustrative value.
Overall, the book provides a solid foundation and deeper understanding of the most important object-oriented modeling concepts and their application in software development. An additional website offers a complete set of slides to aid in teaching the contents of the book, exercises and further e-learning material.
Martina Seidl is assistant professor at the Institute for Formal Models and Verification at the Johannes Kepler University Linz and research associate of the Business Informatics Group of the Vienna University of Technology. Her research focuses on formal methods in modeling, model evolution as well as different aspects of automated theorem proving. She has been involved in teaching numerous courses for all stages of the computer science curricula in Vienna and Linz, many of them directly related to her research.
Marion Scholz studied computer science at the Vienna University of Technology and at the University of Vienna. Since 2007 she teaches object-oriented modeling to first year bachelor students studying computer science and business informatics. As a senior lecturer, her research interests are new teaching methods with a strong focus on e-learning technologies. One of her main challenges is raising the quality of teaching despite large numbers of students.Christian Huemer is associate professor in the Business Informatics Group of the Vienna University of Technology and serves as vice-dean of academic affairs for business informatics. In addition, he is Scientific Director of the Research Centre Smart Agent Technologies of Research Studios Austria. For ten years he was Chair of the Techniques & Methodologies Group of the United Nations Centre for Trade Facilitation and e-Business (UN / CEFACT). In particular, he has been the project lead of UN / CEFACT Modeling Methodology (UMM) - a UML profile for the specification of inter-organizational business processes.
Gerti Kappel is a full professor at the Institute of Software Technology and Interactive Systems at the Vienna University of Technology, chairing the Business Informatics Group. She is head of the Doctoral College "Adaptive Distributed Systems", funded by Vienna University of Technology. Her current research interests include model engineering (model transformation/versioning/evolution, model-driven software development, object-oriented modeling), Web engineering (ubiquitous Web technologies, context awareness, information integration, model-driven development), and process engineering (process modeling, inter-organizational systems, workflow systems).
1 Introduction.- 2 A Short Tour of UML.- 3 The Use Case Diagram.- 4 The Class Diagram.- 5 The State Machine Diagram.- 6 The Sequence Diagram.- 7 The Activity Diagram.- 8 All Together Now.- 9 Further Topics.