08448380779 Call Girls In Greater Kailash - I Women Seeking Men
03 ooad uml-03
1. Object-Oriented Analysis and Design Using UML
Objectives
In this session, you will learn to:
Identify the types of UML diagrams
Use Microsoft Visio to create UML diagrams
Identify the benefits, lifecycle, and best practices of RUP
Ver. 1.0 Slide 1 of 24
2. Object-Oriented Analysis and Design Using UML
Defining Deployment Diagrams
A deployment diagram shows the physical placement of
components in nodes over a network.
Ver. 1.0 Slide 2 of 24
3. Object-Oriented Analysis and Design Using UML
Defining Timing Diagrams
Timing diagrams are used to represent the changes in state
and value of one or more objects over a period of time.
Timing diagrams are often used to design embedded
software.
Timing diagrams are of two types:
Concise notation
Robust notation
Ver. 1.0 Slide 3 of 24
4. Object-Oriented Analysis and Design Using UML
Defining Timing Diagrams (Contd.)
• Lifeline for Printer - Concise Notation
Printer Idle Receiving Data Printing Idle
• Lifeline for Printer - Robust Notation
Printer
Idle
Receiving
Data
Printing
0 5 10 15 20 25 30 35 40 45 50 55 60
65
Ver. 1.0 Slide 4 of 24
5. Object-Oriented Analysis and Design Using UML
Defining Timing Diagrams (Contd.)
• Lifelines in a robust notation can also be stacked as shown
in the following figure.
Printer
Idle
Receiving Data
Printing print
PC
Idle
Finish
Processing
Reporting
0 5 10 15 20 25 30 35 40 45 50 55 60 65
Ver. 1.0 Slide 5 of 24
6. Object-Oriented Analysis and Design Using UML
Defining Composite Structure Diagrams
A composite structure diagram represents the internal
structure and interaction points of a classifier.
Classifier refers to classes, objects, or interfaces.
Interaction points refer to the points within a classifier using
which the classifier interacts with other parts of the system.
Composite structure diagrams are used to explore run-time
instances of interconnected classifiers collaborating over
communications links.
A composite structure diagram is made up of several
elements, such as parts, ports, and interfaces.
Ver. 1.0 Slide 6 of 24
7. Object-Oriented Analysis and Design Using UML
Defining Composite Structure Diagrams (Contd.)
Parts in a Composite Structure diagram
Car
rear:Wheel(2) e:Engine
a:Axle
2 1
Ports and Interfaces in a Composite Structure diagram
Power Car
Engine
Gasoline
Ver. 1.0 Slide 7 of 24
8. Object-Oriented Analysis and Design Using UML
Defining Interaction Overview Diagrams
Interaction overview diagrams give an overview of
interaction diagrams. Interaction diagrams include the
following types of diagrams:
Sequence diagram
Communication diagram
Timing diagram
Interaction overview diagram
Interaction overview diagrams represent the logical
interaction between the interaction diagrams and the
process flows in between the set of interaction diagrams.
Ver. 1.0 Slide 8 of 24
9. Object-Oriented Analysis and Design Using UML
Defining Interaction Overview Diagrams (Contd.)
Example of Interaction
ref
Overview Diagram Issue Parts
Reorderlevel=False
ReorderLevel=True
sd
Inventory Deptt.
Suppl:Supplier
Places Order
Supplies Order
Ver. 1.0 Slide 9 of 24
10. Object-Oriented Analysis and Design Using UML
Associating UML Diagrams with UML Modeling Techniques
The four modeling techniques are:
– Requirements modeling: Involves depicting the requirements
using use case diagrams.
– Static modeling: Involves depicting the static constituents of
the software system using the class, object, and composite
structure diagrams.
– Dynamic modeling: Involves depicting the behavior of static
constituents using the following diagrams:
Activity diagrams
State machine diagrams
Communication diagrams
Sequence diagrams
Interaction overview diagrams
Timing diagrams
Ver. 1.0 Slide 10 of 24
11. Object-Oriented Analysis and Design Using UML
Associating UML Diagrams with UML Modeling Techniques (Contd.)
– Architectural modeling: Involves depicting the architecture of
the software system into multiple tiers, such as presentation,
business, and resource by using the following diagrams:
Package diagram
Component diagram
Deployment diagram
Ver. 1.0 Slide 11 of 24
12. Object-Oriented Analysis and Design Using UML
Just a minute
Which of the following UML diagrams is used for
requirement modeling?
1. Use case diagram
2. Class and Object diagram
3. State diagram
4. Component diagram
• Answer:
Use Case diagram
Ver. 1.0 Slide 12 of 24
13. Object-Oriented Analysis and Design Using UML
Viewing a Software System Architecture
The architecture of a software system is defined as an
arrangement of the static and dynamic constituents in a
model.
The various views of a software system are:
– Use case view: Indicates the functionalities that the system
offers to each stakeholder.
– Design view: Focuses on the static and dynamic
representation of the system.
– Process view: Represents various processes executing in a
system at a given instance of time.
– Implementation view: Represents the physical system
including files and components required to assemble the
system.
– Deployment view: Represents the hardware components on
which the software system will execute.
Ver. 1.0 Slide 13 of 24
14. Object-Oriented Analysis and Design Using UML
Just a minute
Which of the following views of a software system focuses
on the static and dynamic representation of the system?
1. Use Case view
2. Deployment view
3. Design view
4. Implementation view
• Answer:
Design view
Ver. 1.0 Slide 14 of 24
15. Object-Oriented Analysis and Design Using UML
Identifying the Role of UML in SDLC
Diagrams developed using UML serve as key documents in
each phase of SDLC.
The following table lists the UML diagrams that the end
users can use in the requirement analysis phase:
Diagram Role of a Diagram in the Requirement Analysis Phase
Use case Depicts the various users of the system and how they are going
to use the system to meet the requirement objectives.
Class Depicts the classes and their dependencies for the primary
requirements of the system.
Sequence and Depicts the sequence of steps performed in a process.
Collaboration
Activity Depicts the specific activities that are required to understand the
functional requirements of the system.
Interaction Depicts how the various processes interact with each other.
Overview
Ver. 1.0 Slide 15 of 24
16. Object-Oriented Analysis and Design Using UML
Identifying the Role of UML in SDLC (Contd.)
The following table lists various UML diagrams that you can
use in the design phase:
Diagram Role of a Diagram in SDLC phase
Class Depicts the classes, their attributes and operations, and the
relationship between classes.
Sequence and Depicts the sequence of interactions between the various objects
Communication of the system.
Package Depicts the various classes that are grouped together depending
on their functionality.
Deployment Depicts the layout of the software components over the network.
State Depicts the state of an object on the occurrence of an event.
Component Depicts the components required for executing system.
Composite Depicts the internal structure and interaction points of the various
Structure classes, objects, and interfaces.
Interaction Depicts the interactions between the various interaction
Overview diagrams.
Ver. 1.0 Slide 16 of 24
17. Object-Oriented Analysis and Design Using UML
Identifying the Role of UML in SDLC (Contd.)
You use the use case diagram in the test phase.
The use case diagram depicts the test cases on the basis of
which the system is tested.
Ver. 1.0 Slide 17 of 24
18. Object-Oriented Analysis and Design Using UML
Introducing Visio as a UML Tool
Visio is a Microsoft tool that facilitates OOAD using UML.
It helps to create all the diagrams defined by UML.
Ver. 1.0 Slide 18 of 24
19. Object-Oriented Analysis and Design Using UML
Identifying Rational Unified Process (RUP)
RUP is a methodology developed by Rational Software
Corporation, a division of IBM.
It provides templates, examples, and tools that act as
mentors for all activities performed in the different phases of
software development process.
It is completely compatible with UML and is integrated with
the Rational suites of software development tools.
Ver. 1.0 Slide 19 of 24
20. Object-Oriented Analysis and Design Using UML
Benefits of RUP
Benefits of RUP are:
Enhances team productivity by providing team members with
easy access to a knowledge base.
Provides a guideline on how to effectively use UML.
Supports tools that automate large parts of the development
process.
Supports iterative process to software development.
Supports architecture-centric development process.
Allows customization of the process.
Ver. 1.0 Slide 20 of 24
21. Object-Oriented Analysis and Design Using UML
Life Cycle of RUP
Four phases of RUP life cycle are:
Inception
Elaboration
Construction
Transition
Ver. 1.0 Slide 21 of 24
22. Object-Oriented Analysis and Design Using UML
RUP Best Practices
Best practices defined by RUP for software development
process are:
Develop software iteratively
Manage requirements effectively
Use a component-based development approach
Visually model software
Verify the software quality
Control any changes to the software
Ver. 1.0 Slide 22 of 24
23. Object-Oriented Analysis and Design Using UML
Just a minute
Which of the following phases of RUP includes analyzing
the problem domain, developing project plan, and
eliminating highest possible risks?
1. Inception
2. Elaboration
3. Construction
4. Transition
Answer:
Elaboration
Ver. 1.0 Slide 23 of 24
24. Object-Oriented Analysis and Design Using UML
Summary
In this session, you learned that:
The thirteen UML diagrams are use case, class, object,
communication, sequence, state machine, activity, component,
deployment, timing, composite structure, Interaction overview,
and package.
The architecture of a software system can be viewed from the
different perspectives of the stakeholders.
UML diagrams are used in the analysis and design phases of
SDLC.
Visio is a tool that can be used to draw UML diagrams.
Rational Unified Process (RUP) is a software development
methodology developed by Rationale Software Corporation,
which is now a division of IBM. It is a process framework that
helps you to create and deploy software designed using UML.
Ver. 1.0 Slide 24 of 24
Notas del editor
Initiate the session by explaining the session objectives to the students.
Explain the deployment diagram given in the slide by telling the students that the orderprocess.exe component is placed on the client node and the database component is placed on the database server node. The request for the data for the order processing system is routed to the database server through the processor server.
Explain that timing diagrams are a new artifact added in UML 2.0. Tell that the focus of timing diagrams is on timing constraints.
Explain the concise notation and the robust notation using the figures given on the slide.
A timing diagram is a special form of a sequence diagram. The differences between timing diagram and sequence diagram are: The axes are reversed so that the time increases from left to right The lifelines are shown in separate compartments arranged vertically.
Explain the concept of a composite structure diagram.
Explain the concept of parts, ports, and provided and required interfaces by using the figures given on the slide.
Tell the students that interaction overview diagrams are a variant of activity diagrams. As a result, most of the diagram notation used for interaction overview diagrams is similar to the diagram notation used for activity diagrams. However, instead of activity elements, interaction overview diagrams use one of the following: * Interaction elements * Interaction occurrence elements Explain the meaning of interaction elements and interaction occurrence elements.
Explain the elements of an interaction overview diagram by using the figure given on the slide.
Tell the students that they can view the architecture of a software system from different perspectives. This needs to be done because it helps the stakeholders of the system to make decisions about the project. Explain the various views of the architecture of a software system.
Check the learning of the students by asking the following questions.
Tell students that it is not necessary to create the class, sequence, and collaboration diagrams in the requirement analysis phase. The perspective of creating these diagrams is only to provide a broad overview of the software system at the requirement analysis phase. However, you may opt not to create these diagrams to avoid going into the technical details of the software system and focus only on requirement gathering.
Explain the diagrams that need to be created in the design phase.
Explain that in the testing phase, you need to use the use case diagrams to generate test cases on the basis of which the system will be tested.
Demonstrate how to create UML diagrams by using Visio. Refer to the content given in the student guide.