Developing Software With Uml: Object-Oriented Analysis and Design in Practice (1999)

From the Book:
	 		To which class of reader do you belong?

l	You leave unimportant details to others because you have enough to do. You do not intend to carry out object-oriented analysis or implementation yourself, but you are interested in modern technology and are potentially involved in decision-making on its practical employment.

l	You know how software is developed because of your many years of practical experience. From your point of view, object-orientation has reached a degree of maturity, so you feel that you should devote more time to this subject. You would like to have a practice-oriented introduction.

l	Object-orientation (OO) is an established technique in your repertoire. You have been interested in this subject for some time and probably have experience with implementation of object-oriented programs. Your interests lean towards analysis and design, and the latest developments in the area of object-oriented methodology and notation.

l	You are interested in software development and have gathered some experience in the field. You have a basic knowledge of the concepts of object-oriented methodology, but feel you need a comprehensive and systematic introduction to thesubject.

		Dear reader

	Starting point	Do you still have time to dedicate yourself to several hundreds of pages of technical papers? Do you still read a book from cover to cover? As someone who has suffered enough from the burden of heavy books, I have tried to provide you with a not too bulky, practice-oriented, and easily readable book.

	Structure	The book has a modular structure  the individual sections are didactically self-supporting and linked to each other by cross-references (direct page 

	Ways of reading	specifications). Thus, you have the option of reading from beginning to end, crosswise or hopping from point to point. A streamlined way of familiarizing yourself with the subject is to read through the chapters Analysis and Design and to follow the cross-references where needed, to look up and delve deeper into individual subjects in the Fundamentals section.

		This book provides you with a digest presentation, but with all-important information on the Unified Modeling Language (UML 1.4), whose notation and semantics are the current standard in object-oriented modeling. Despite this, the present book is above all an introduction to object-oriented analysis and object-oriented design. Presentation of the fundamentals takes place in the context of general problems and discussions about object-oriented software development. To further ease entry into the subject, the metamodel is not included in the discussion. Special elements, and elements less relevant in practice, are marked as UML advanced and, where necessary, critically presented.

		The use case-driven, architecture-centered, and evolutionary development method underpinning this book is centered on the development of socially embedded corporate information systems, but it is also well suited for technical and other application domains.

		Acknowledgments

For their help with this book, I would like to thank all my friends and colleagues, in particular the people listed on the imprint. Furthermore, I would like to thank the readers of the previous editions and the participants in my seminars for their suggestions and critical remarks. 

Bernd Oestereich