Objective
•Object Oriented Analysis and Design Using UML
present the concepts and techniques necessary
to effectively use system requirements to drive
the development of a robust design model.
•In this intensive, students can learn to apply the
Unified Modeling Language (UML) to
fundamental object-oriented analysis and
design concepts including architecture, objects,
classes, components, stereotypes,
relationships, and all supporting diagrams.
•The UML is used throughout the project lifecycle
to capture and communicate analysis and design
decisions.
•Students will understand OOAD Concepts, learn
to represent it with UML and document it using
UML modeling tool. T
•he class will be concept & Case study driven and
wherever necessary tool will be used.
Chapter 00: Analysis and Design with UML
•Unified Modeling Language (UML)
•Why Construct Model?
•UML Diagram
•Type of UML Diagram
Chapter 01:Object Oriented Analysis and
Design (OOAD)
•Object Orientation (OO) and Object Oriented Method
(OOM)
•Object Oriented Modeling
•Polymorphism
•Inheritance
•Object Oriented Analysis and Design
•Jacobson Use Case Method (OO Software Engineering –
OOSE)
•System Development
–Requirement Model
–Analysis Model
–Design Model
–Implementation Model
–Test Model
–Unified Modeling Language (UML)
•The Value of UML
•History of UML
•Overview of the UML
Chapter 02:Complexity
•Complexity
•Complexity Crisis
•General Idea of How to Deal with Complexity
•The Structure of Complex System
•Five Attributes of a Complex System
•Bringing Order to Chaos
•On Designing Complex Systems
Chapter 03:The Object Model (OM)
•Element of Object Model
–Four Major Elements of OM
–Three Minor Elements of OM
Chapter 04:Classes and Objects
• Nature of an Objects
• Relationship among Objects
• Nature of Class
• Relationship among Classes
Chapter 05:Basic OOAD Process
•Basic OO Concept
•Basic OOAD Process
•The four Ps
Chapter 06:Project Management
• Project Management
• Software Project Management
• Project Plan Structure
• The Risk Management Process
• Organization of the Software Project
Management Plan Document
Evaluation System:
•Internal evaluation : 50
Attendance: 05
Assignment: 10
Case Study : 20
Internal Test: 10
Class Assignment: 05
•End Semester Evaluation: 50
Chapter 01
What Is an Object?
•Definition: An object is a software bundle of
variables and related methods.
•As the name object-oriented implies, objects are
key to understanding object-oriented technology.
•You can look around you now and see many
examples of real-world objects: your dog, your
desk, your television set, your bicycle.
•Software objects are modeled after real-world
objects in that they, too, have state and behavior.
•A software object maintains its state in variables
and implements its behavior with methods.
•The following illustration is a common visual
representation of a software object:
•These real-world objects share two
characteristics: they all have state and they all
have behavior.
•For example, dogs have state (name, color,
breed, hungry) and dogs have behavior (barking,
fetching, and slobbering on your newly cleaned
slacks).
•Bicycles have state (current gear, current pedal
cadence, two wheels, number of gears) and
behavior (braking, accelerating, slowing down,
changing gears).
Environment
A Partial Sample Process
Build -
Exploratory
Emphasis
Explore Refine Plan Build Deploy
Plan and
Elaborate
Build - System
Functions
Emphasis
Build -
Infrastructure
Emphasis
Iterative Development
Dev Cycle
1
Sync.
Artifacts
Analyze Design Test
Refine
Plan
Con-
struct
Dev Cycle
2
...
BuildRefine Plan Deploy
Plan and
Elaborate
Update
Artifacts
Analyze Design Test
Refine
Plan
Con-
struct
2 weeks to 2 months
Time Boxing
•In time boxing, a development cycle is fixed in
length.
•The development team should choose the
work to accomplish within the time frame.
Investigation of
the problem.
Analysis Design Implementation
Logical solution. Code.
Object-Orientation
•Object-oriented analysis.
– Investigation that is object-centric.
•Object-oriented design.
– Solution in terms of interacting software objects.
•Object-oriented programming.
– Coding in an object-oriented programming language.
A Simple Data Model
A Simple Object Model
+Admit()
+Regsiter for Classes()
+Withdraw()
+Change Address()
+Calculate GPA()
+Graduate()
-ID Number
-Name
-Grade Point Average
STUDENT
+Create a Course()
+Delete from Course Master()
+Change in Course Master()
-Subject
-Number
-Title
-Credit
COURSE
+Add()
+Drop()
+Complete()
+Change Grade()
-Semester
-Division
-Grade
TRANSCRIPT COURSE
1
1
has record for>
0..*
0..*
1. Finding Object
2. Organizing Object
3. Describing how objects interacts
4. Defining the operations of objects
Object Functionality, Object Implementation
& Testing of Objects