"This book is a very well structured and clearly thought through. It is concise yet comprehensive. I will definitely recommend it"
--Nicolai Josuttis, Senior Consultant, Solutions in Time
"Congratulations on a great book. I have found it not only technically interesting but also amusing and easy to read. I have rarely spent my money as profitably as on this book."
--Matthias Hess, Senior Analyst, CM Informatik AG
Are you a software developer or project manager looking to exploit the power of object technology in your development process for the first time? Do you need a practical, example-driven introduction to object-oriented analysis and design? If so, look no further.
This book explains the benefits of using the object-oriented approach for software development as well as providing a state-of-the-art account of the technology available. Employing numerous real-life examples to illustrate its application, the use of the Unified Modeling Language (UML) in object-oriented analysis and design is explained systematically by an experienced practitioner.
The first part of the book takes the reader step-by-step through the development process using one continuous example to show how each principle and concept is applied in practice. The second part explains the basics of UML in detail, with individual examples. Numerous cross-references between the two parts mean that readers can follow the software development example, learning the appropriate features of UML as they become relevant. For more advanced readers, the book may be treated as a tutorial on the application of UML.
This book:I. INTRODUCTION.
1. Introduction.Object-Oriented Software Development.
History of Object-Orientation.
Making up Your Own Methodology.
Holistic Approach.
Suggested Reading.
2. Object-Orientation for Beginners.Object-Orientation for Beginners.
Classes, Objects, Instances.
Attributes, Operations, Constraints.
Taxonomy and Inheritance.
Abstract Classes.
CRC Cards.
Objects Communicate with Each Other.
Message Exchange.
Collections.
Polymorphism Object Identity.
Persistence.
Design Patterns.
Suggested Reading.
3. The Development Process.Aims.
Overview of Development Phases.
Requirement Analysis.
Iterative-Incremental Component Development.
System Introduction.
Project Management.
Suggested Reading.
II. EXAMPLE.
4. Analysis.Aims.
Use Case Analysis.
Application Architecture.
Technical Dictionary.
Explorative Prototypes.
CRC Cards.
Identifying Business Classes.
Activity modeling.
Component building.
5. Design.Component Design.
Specifying Dialogs.
Identifying domain Classes and Relationships.
Domain class Modeling: Business Partner.
Domain Class Modeling Reservation and Contract.
Delimiting Components.
Specifying Operations.
Specifying Attributes.
Modeling Activities.
Modeling States.
Modeling Object Interaction.
Database Connection.
III. FUNDAMENTALS OF THE UNIFIED MODELING LANGUAGE.
