Syllabus

Course Code: MCA-20-15    Course Name: Object-Oriented Analysis and Design using UML

MODULE NO / UNIT COURSE SYLLABUS CONTENTS OF MODULE NOTES
1 Modeling as a Design Technique: Principles of modeling, abstraction, encapsulation, modularity, hierarchy, typing, concurrency, persistence of objects. Purpose of modelling.
UML: Principles of modeling, UML things–structural, behavioral, grouping, annotational. Relationships in UML–dependency, association, generalization, realization. Overview of UML diagrams, mechanisms in the UML– specifications, adornments, common divisions, extensibility mechanisms - stereotypes, tagged values, constraints, UML profiles, UML views.
2 Class Modeling: Object & Class, Links &Associations, Generalization & Inheritance, Association Ends - scope, visibility, Multiplicity, Role names, Ordering, bags & sequences, Qualified association, Aggregation, association attributes & association classes, propagation of operations, Abstract class, Metadata, reification, Constraints, derived data, packages, elements of class diagrams, constructing class diagrams.
State Modeling: Events, States, Transitions & Conditions, Activity Effects, Do-Activities, Entry & Exit Activities, CompletionTransitions, Sending Signal, Elements of State diagrams, Nested state diagrams, signal generalization, concurrency, constructing state diagrams.
3 Use Case modeling: Actors, Use Cases, relationships - between actors, between use cases and between actor and use case, elements of use case diagram, constructing use case diagrams.
Interaction Modeling: Elements of sequence diagram and communication diagram, constructing sequence diagram and communication diagram
Activity Modeling: Elements of activity diagram, constructing activity diagram
4 System Analysis & design: System development stages, system conception, analysis, domain class model, domain state model, iterating the analysis.
Application interaction model, application class model, application state model, adding operations System Design: estimating performance, make are use plan, organize the system into subsystem, identifying concurrency, allocating subsystems to processors and tasks, management of data stores, handling global resources, choosing software control strategies, handling boundary conditions, setting trade-off priorities, selecting an architect style.
Class Design: bridging gap, realize use cases with operations, designing algorithms, design optimization, adjustment of inheritance, organize classes & associations.
Copyright © 2020 Kurukshetra University, Kurukshetra. All Rights Reserved.