MCA 402: Object Oriented Modeling and Design Using UML

Lectures: 4 Periods/Week Sessional Marks: 30
University Exam: 3 Hours University Examination Marks: 70


UNIT-I
Introduction
what is Object Orientation, What is OO Development, OO Themes, Evidence for Usefulness of OO Development.
Modeling as Design Technique
Modeling, Abstraction, Three Models
Class Modeling
Object and Class Concepts, Link and Association concepts, Generalization and Inheritance, A Sample Class Model.
Advanced Class Modeling
Advanced Object and Class Concepts, Association Ends, N-Ary Association, Aggregation, abstract Classes, Multiple Inheritance, Metadata, Reification, Constraints, Derived data, Packages.

UNIT-II
State Modeling
Events, States, Transitions and Conditions, state diagrams, state diagram behavior.
Advanced State Modeling
Nested State Diagrams, Nested states, signal generalization, concurrency, A Sample State Model.
Interaction Modeling
Use Case Models, Sequence Models, Activity Models.
Advanced Interaction Modeling
Use Case Relationships, Procedural Sequence Models, Special Constructs for Activity Models.

UNIT-III
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.
Application Analysis
Application Interaction Model, Application Class Model, Application State Model, Adding Operations.

UNIT-IV
System Design
Overview of system Design, Estimating Performance, Making a Reuse Plan, Breaking a System into Subsystem, Identifying Concurrency, Allocation of Subsystems, Management of data storage, Handling Global Resources, Choosing a Software Control Strategy, Handling Boundary Conditions, Setting Trade-off priorities, Common Architecture of ATM System
Class Design
Overview of Class Design, Realizing Use Cases, Designing Algorithms, Recursing Downward, Refactoring, Design Optimization, Reification of Behavior, Adjustment of Inheritance, Organizing a class design.
Implementation Modeling
Overview of Implementation, Fine Tuning classes, fine tuning Generalization, Realizing Associations, Testing.
Programming Style
Object Oriented Style, Reusability, Robustness, Extensibility, Programming-in the Large.

Text Books

  1. Michael Blaha, James Rumbaugh, “Object Oriented Modeling and Design with UML”, Second Edition, PHI.
    Chapters : 1.1 to 1.4, 2, 3.1 to 3.4,4, 5, 6.1 to 6.5, 7, 8, 10, 11, 12, 13, 14, 15, 17, 20
Reference Books
  1. Meilir Page-Jones, “Fundamentals of Object Oriented Design in UML”, Pearson Education (2008).
  2. Hans-Erik Eriksson, “UMLZ Took Kit”, Wiley (2008).
  3. Pascal Roques, “Modeling Software Systems Using UML2”, Wiley (2008).
  4. Simon Benett, Steve Mc Robb, “Object Oriented Systems Analysis and Design using UML”, Second Edition, TMH (2007).
  5. Mark Priestley, “Practical Object Oriented Design with UML”, Second Edition, TMH (2008).
  6. Grady Booch, James Rumbaugh “The Unified Modeling Language User Guide”, Pearson (2008).