You are on page 1of 4

Course Outline

Course Title Object Oriented Analysis and Design


Course Code CMP-390
Course Material Available at:
1- \\

Course Email Muhammad.Nadeem@pucit.edu.pk


Instructor Muhammad Nadeem
Teacher Assistant(s) N/A
(T.A)
Credit Hours 3
Theory/week:
Weight 3 Cr. hrs.
Lectures: 2
Duration 1.5 hrs.
Prerequisite Course Software Engineering [CMP290]
Program Name BS [Information Technology]/ BS [Computer Science]/ MSc. [Information Tech.]
Aims and Objectives • Application of object oriented concepts
• Identify and analyze criterion and specifications appropriate to specific
object oriented problems, and plan strategies for their solution
• Analyze, design, and implement software systems
• Understand and select appropriate software architecture for the
solution
• Critically analyze and apply a range of concepts, principles, and practices
of the subject in the context of loosely specified problems, showing
effective judgment in the selection and use of tools and techniques
• Select and apply appropriate Design Patterns in refinement of design
• Design, implement and debug the programs that use large scale of API’s
packages, libraries, and reusable code segments
• Significant gain of project experience in a team based development
• Understanding of project phase Unification and Rational Unified Process
• Proficiency in visual modeling tools, testing tools, and project resource
management tools
Syllabus Topics: Basic Concepts of Object Oriented Paradigm; Introduction to Object
Oriented Analysis & Design; IBM Rational Unified Process, Evolution of Unified
Process; Introduction to Unified Modeling Language(UML): History, Diagrams,
Architecture, Basic Framework, Stereotypes, Profiles; Inception Phase;
Requirement Traceability Matrix; Use Case: Modeling, Documentation, Use Case
Types, Semantics, Supplementary Specifications; Inception Phase Artifacts;
Overview of UML Visual Modeling Tools(VMT); UML Diagram Modeling VMT;
Elaboration Phase: Interaction Diagrams, Domain Model, Use Case Operational
Contracts; Introduction of Design Patterns; GRASP: Design Class Diagram,
Mapping Data Model to Domain Model; GoF Design Patterns: Creational,
Structural, and Behavioral Patterns; Testing in Object Oriented Environment;
Testing Tools; Design Implementation Aspects; Current Trends and Practices.
Text Book(s) A. “Applying UML and design Patterns”, 2nd/3rd Ed. By Craig Larman
B. “OO Software Engineering Using UML, Patterns, and JAVA” By Bernd
Bruegge, Allen H. Dutoit
Reference Material 1. Sinan Si Albir “UML In a Nut Shell “, 2 nd Ed. O’Rielly
2. Siman Bennett “Object Oriented System Analysis & Design”, 2 nd Ed.
3. Grady Booch “The Unified Modeling Language” 2 nd Ed.
4. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides “Design
Patterns“
5. www.rational.com
Assessment Criteria Sessional ………………… 25% Mid ……… 35% Final ……… 40%
Quizzes 10
Assignments, Written Exam Written Exam
Home works, …………………35 …………………40
15
Programming
Assignments
25 35 40
Total
100

Lecture Breakdown
Week Lecture Topic Source
1 1 Introduction of the course 1.1 – 1.5
Object Oriented Concepts
Object Oriented Analysis & Design Basics
2 Unified Process & Rational Unified Process 1.6, 2.1 –2.6,
RUP Phases and disciplines 3.1 – 3.2
Introduction to design languages
Introduction to UML, Unification, UML Diagrams
Case Study analysis and basics
2 3 Inception (Detailed study) 4.1 – 4.3
Requirements Understanding Handouts
Types of requirements
Requirement Traceability Matrix
Requirement Engineering life cycle
Requirement Engineering Documents
4 Use Case Modeling 6.1 – 6.9, 6.12,
Use case elements 6.16, 6.17
Use case usage
System level use case diagram basics
example
3 5 System level use case diagram 6.13, 7.2 – 7.4,
 Identification of other requirements 7.7
o Supplementary specifications, Vision Document,
Glossary
6  Rational Rose overview Hand outs
 Usecase modeling in Rational Rose
 GUI introduction: MVC (Model View Controller Architecture)
introduction.
4 7  Activity Diagram Handouts
 MVC based implementation of a use case scenario
8  Elaboration (Detailed Study) 8.2 , 8.3, 8.5,
 Interaction Diagrams 9.2 – 9.10
o System Sequence Diagram
o API introduction in java
5 9  Domain Model 10.1, 10.2,
o Identifying business classes 10.4, 11.1 –
o Domain Model Associations 11.4, 11.7,
o Domain Model Attributes 12.1, 12.3,
o Relationship basics (inheritance, composition, 12.4
aggregation)
o Programming concepts of relationship
implementation
10 Implementation of Sequence Diagram and Domain model in Rational Handouts
Rose.
6 11  Use case Operational Contracts 13.1, 13.2, 3.9
 File based MVC driven application
12  Interaction Diagram 15.1, 15.5,
o Analysis Sequence diagrams 15.6, 15.7
o Collaboration Diagrams
7 13 Use Case relationships: Analysis level use case diagram. 25.1 – 25.5
14 State Chart Diagram 29.1 – 29.5 ,
29.9
8 15 Implementation of Sequence, Collaboration, STD, Analysis use case 15.6, 15.7,
diagram in Rational Rose 25.5
16 Ch 1–13, 15,
Pre Mid Revision
25, 29
Mid Term Examination
9 17  Introduction of Design Patterns 16.1—16.7
 GRASP: Information Expert, Creator
Programming Example
18  GRASP: Cohesion, Coupling, Controller 16.8—16.10
Programming Example
10 19 19.1, 19.4—
 Design Class Diagram
19.6, 34.2,
 Mapping Data Model to Domain Model
34.3, 34.5—
 Introduction to Configuration classes
34.9
20  Implementation of Design Class Diagram in Rational Rose Handouts
 Programming implementation of a skeleton
 Introduction to Client Server Applications
 Programming example
11 21  Coding patterns 20.1—20.5,
 Mapping Design to Code 20.7, 20.9,
 Testing basics in Object oriented environment 20.11
22  Advance GRASP Introduction Handouts
 More Patterns for Assigning Responsibilities, Polymorphism,
Pure Fabrication, Indirection, Protected Variation
12 23  Introduction to Gang of Four Design Patterns 22.1—22.4
 Fundamental division of groups
 Structure of a Design Pattern
24  Creational, Structural, and Behavioral patterns Handouts
 Creational Patterns: Factory Method
 Programming demonstration
13 25  GoF: Abstract Factory 23.1—23.4
 Programming demonstration
26  GoF: Builder, Singleton 23.7, 23.8
 Programming demonstration.
14 27  GoF: Mediator 23.6, 23.9
 Programming demonstration
28  GoF: Adaptor, Bridge
 Programming demonstration
15 29  Concept of a web application (JSP Servlet)
 GoF: Façade
 Programming demonstration
 Advance Architectures and Technologies
 Struts, Hybernate, Spring, RAILS, LAMP etc
30 Ch 16—
 Pre Final revision 20,22,23,27
,28,34
16 31  Project Presentations/viva
32  Project Presentations/viva
Final Term Examination

You might also like