INTRODUCTION, MODELING CONCEPTS, CLASS MODELING: What is Object Orientation? What is OO development? OO themes; Evidence
for usefulness of OO development; OO modeling history.Modeling as Design
Technique: Modeling; abstraction; The three models.Class Modeling: Object
and class concepts; Link and associations concepts; Generalization and
inheritance; A sample class model; Navigation of class models; Practical tips.
UNIT 2
ADVANCED CLASS MODELING, STATE MODELING: Advanced
object and class concepts; Association ends; N-ary associations; Aggregation;
Abstract classes; Multiple inheritance; Metadata; Reification; Constraints;
Derived data; Packages; Practical tips.State Modeling: Events, States,
Transitions and Conditions; State diagrams; State diagram behavior; Practical
tips.
UNIT 3
ADVANCED STATE MODELING, INTERACTION MODELING: Advanced State Modeling: Nested state diagrams; Nested states; Signal
generalization; Concurrency; A sample state model; Relation of class and
state models; Practical tips. Interaction Modeling: Use case models;
Sequence models; Activity models.Use case relationships; Procedural
sequence models; Special constructs for activity models.
UNIT 4
PROCESS OVERVIEW, SYSTEM CONCEPTION, DOMAIN
ANALYSIS: Process Overview: Development stages; Development life
cycle. System Conception: Devising a system concept; Elaborating a concept;
Preparing a problem statement. Domain Analysis: Overview of analysis;
Domain class model; Domain state model; Domain interaction model;
Iterating the analysis.
PART – B
UNIT 5
APPLICATION ANALYSIS, SYSTEM DESIGN: Application Analysis:
Application interaction model; Application class model; Application state
model; Adding operations. Overview of system design; Estimating
performance; Making a reuse plan; Breaking a system in to sub-systems;
Identifying concurrency; Allocation of sub-systems; Management of data
storage; Handling global resources; Choosing a software control strategy;
Handling boundary conditions; Setting the trade-off priorities; Common
architectural styles; Architecture of the ATM system as the example.
UNIT 6
CLASS DESIGN, IMPLEMENTATION MODELING, LEGACY
SYSTEMS: Class Design: Overview of class design; Bridging the gap;
Realizing use cases; Designing algorithms; Recursing downwards,
Refactoring; Design optimization; Reification of behavior; Adjustment of
inheritance; Organizing a class design; ATM example.Implementation
Modeling: Overview of implementation; Fine-tuning classes; Fine-tuning
generalizations; Realizing associations; Testing.Legacy Systems: Reverse
engineering; Building the class models; Building the interaction model;
Building the state model; Reverse engineering tips; Wrapping; Maintenance.
UNIT 7
DESIGN PATTERNS – 1: What is a pattern and what makes a pattern?
Pattern categories; Relationships between patterns; Pattern description.
Communication Patterns: Forwarder-Receiver; Client-Dispatcher-Server;
Publisher-Subscriber.
UNIT 8
DESIGN PATTERNS – 2, IDIOMS: Management Patterns: Command
processor; View handler. Idioms: Introduction; What can idioms provide?
Idioms and style; Where to find idioms; Counted Pointer example.
REFERENCE
TEXT BOOKS:
1. Object-Oriented Modeling and Design with UML – Michael
Blaha, James Rumbaugh, 2nd Edition, Pearson Education, 2005.
2. Pattern-Oriented Software Architecture: A System of Patterns -
Volume 1– Frank Buschmann, Regine Meunier, Hans Rohnert,
Peter Sommerlad, Michael Stal, John Wiley and Sons, 2006.
Reference Books
1. Object-Oriented Analysis and Design with Applications – Grady
Booch et al, 3rd Edition, Pearson Education, 2007.
2. Practical Object-Oriented Design with UML – Mark Priestley, 2nd
Edition, Tata McGraw-Hill, 2003.
3. Object-Oriented Design with UML and JAVA – K. Barclay, J.
Savage, Elsevier, 2008.
4. The Unified Modeling Language User Guide – Booch, G.,
Rumbaugh, J., and Jacobson I, 2nd Edition, Pearson, 2005.
5. Design Patterns: Elements of Reusable Object-Oriented
Software – E. Gamma, R. Helm, R. Johnson, J. Vlissides, Addison-
Wesley, 1995.
6. Object-Oriented Systems Analysis and Design Using UML –
Simon Bennett, Steve McRobb and Ray Farmer, 2nd Edition, Tata
McGraw-Hill, 2002.