Object Oriented Modeling And Design Using UML
2nd Edition
Copyrighted Material
Copyright 2022-23 by Ajit Singh, All Rights Reserved.
No part of this publication may be reproduced, stored in a retrieval system or transmitted, in any form or by any means electronic, mechanical, photocopying, recording or otherwis e without prior written permission from the author, except for the inclusion of brief quotations in a review.
For information about this title or to order other books and/or electronic media, contact the publisher.
Ajit Singh & Anamika
ACKNOWLEDGEMENT
This piece of study of Object Oriented Modeling and Design with UML is an outcome of the encouragement, guidance, help and assistance provided to us by our colleagues, faculties, Tech-friends and our family members.
As an acknowledgement, We would like to take the opportunity to express our deep sense of gratitude to all those who played a crucial role in the successful completion of this book, especially to my senior industry professionals; this book certainly has been benefited from discussions held with many Business Solution Designer professionals over the years it took to write it.
The Unified Modeling Language ( UML ) is inherently object-oriented modeling language and was designed for use in object-oriented software applications. The applications could be based on the object-oriented technologies recommended by the Object Management Group (OMG), which owns the UML. The initial versions of UML (UML 1.x) were based on three leading object-oriented methods - Booch, OMT, and OOSE, to represent "the culmination of best practices in practical object-oriented modeling". UML 2.x is still object-oriented in its core (though there were some apparently unsuccessful attempts to extend UML to support other development methods).
This book provides practical guidance on the modeling and design of object-oriented systems. Its specific goals are the following:
To provide a sound understanding of the fundamental concepts and historical evolution of the object model.
To facilitate a mastery of the notation and process of object-oriented modelling and design.
To teach the realistic application of object-oriented modelling and design within a variety of problem domains.
The concepts presented all stand on a solid theoretical foundation, but this is primarily a pragmatic book that addresses the practical needs and concerns of software engineering practitioners, from the architect to the software developer.
We would also like to thank those who provided the odd suggestion via email to us. All feedbacks were listened to, as you will no doubt see some content influenced by your suggestions.
We hope that the reader likes this book and finds it useful in learning the concepts of Object Oriented Modeling and Design using UML
Thank You !!
Ajit Singh
PREFACE
Share the knowledge ........
Strenghten the surroundings........
The study/learning of Object Oriented Modeling and Design using UML is an essential part of any computer science education and of course for the B.Tech / MCA / M.Tech courses of several Universities across the world. This textbook is intended as a guide for an explanatory course of Object Oriented Modeling and Design using UML for Graduate and Post Graduate students of several institutions/universities across the world. UML is a standardized graphical display format for the visualization, specification, design and documentation of (software) systems. It offers a set of standardized diagram types with which complex data, processes and systems can easily be arranged in a clear, intuitive manner.
This book starts with requirements gathering & ends with implementation. In the process, you'll learn how to analyze and design classes, their relationships to each other in order to build a model of the problem domain. You'll also use common UML diagrams throughout this process, such as use-case, class, activity & other diagrams. The diagrams will be created through a free tool. This book is also suitable for use in postgraduate and graduate courses as well as in professional seminars and individual study. Because it deals primarily with a method of software development, it is most appropriate for courses in software engineering and as a supplement to courses involving specific object-oriented programming languages.
To understand and use UML as intended by its authors, software architects and developers should be familiar with general concepts and methods of Object Oriented Modeling and Design and/or of the object-oriented development ( OOD ), and how those were applied to UML itself. There is one problem with this requirement: though OOMD/OOD is being used for several decades, there is still no concensus on what is OOMD and even what are the fundamental concepts ("quarks") of the OOMD. Ok, so we are really in trouble: UML specifications use OOMD concepts which have no clear and generally accepted definitions without providing own interpretations or definitions of those concepts.
We have tried to wash out every error in this second edition of book after being reviewed by lots of Software Industry Professionals, but as happens with any Object Oriented Modeling and Design using UML. A few difficult to understand bugs shall remain and of course, typo s and therefore, suggestions from students/professionals that may lead to improvement of next edition in shortcoming future are highly appreciated. Constructive suggestions and criticism always go a long way in enhancing any endeavour. We request all readers to email us their valuable comments / views / feedback for the betterment of the book at ajit_singh24@yahoo.com, mentioning the title and author name in the subject line. Please report any piracy spotted by you as well. We would be glad to hear suggestions from you.
CONTENTS
Sl No | Topic(s) | PgNo |
| INTRODUCTION TO OBJECTS Overview Object state & behaviour The Property (object attribute) Object oriented system development life cycle Advantages of Object Oriented Methodology | |
| OBJECT MODELING TECHNIQUE (OMT) Introduction The Rambaugh OMT The Booch OMT Jacobson OOSE Object-orientedsoftware engineering life cycle UNIFIED process model Views in UML UML Diagrams | |
| USE CASE DIAGRAMS Introduction Requirement capture with use case Building blocks of use case diagram Actors Dependencies Generalizations Factional view(models) Use case diagram | |
| ACTIVITY DIAGRAM Introduction Overview Elements of an Activity diagram Action State\ Activity state Object Node Control Node How to draw Activity Diagram? | |
| CLASS DIAGRAMS Introduction Class Attributes and operations/methods Responsibilities of Classes Abstract Class Standard Class Stereotypes Dependency | |
| ASSOCIATION CLASSES Associations Association Classes Association Ends Dependency | |
| STATE DIAGRAM Introduction States Events Composite States Transitions | |
|
Next page