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 (www.uml.ac.at) offers a complete set of slides to aid in teaching the contents of the book, exercises and further e-learning material.
[1]
G. Kappel,et al.
Teaching Models @ BIG : On Efficiently Assessing Modeling Concepts
,
2009
.
[2]
Christian Huemer,et al.
Replacing traditional classroom lectures with lecture videos: an experience report
,
2012,
EduSymp '12.
[3]
Petra Kaufmann,et al.
Making UML "hip": A First Experience Report on Using Modern Teaching Tools for Object-Oriented Modelling
,
2013,
EduSymp@MoDELS.
[4]
Jordi Cabot,et al.
Model-Driven Software Engineering in Practice
,
2017,
Synthesis Lectures on Software Engineering.
[5]
Christian Huemer,et al.
UML @ Classroom - Eine Einführung in die objektorientierte Modellierung
,
2012
.
[6]
Christian Huemer,et al.
Novel Communication Channels in Software Modeling Education
,
2010,
MoDELS Workshops.