Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Team-Based
Development
Modeling
Language
Unified
Process
Specifying
Visualizing
Constructing
Documenting
UML History
Inputs to UML
Booch
Rumbaugh
Jacobson
Meyer
Operation descriptions,
Message numbering
Embley
Harel
Singleton classes,
High-level view
State charts
Gamma, et.al
Wirfs-Brock
Frameworks, patterns,
notes
Shlaer - Mellor
Object Lifecycles
Fusion
Odell
Classification
Responsibilities
Use-Case
Use-Case
Use-Case
Use-Case
Diagrams
Activity
Diagrams
Activity
Diagrams
Diagrams
Diagrams
Diagrams
Use-Case
Use-Case
Use-Case
Use-Case
Diagrams
Use-Case
Diagrams
Use-Case
Diagrams
Diagrams
Diagrams
Diagrams
Scenario
Scenario
Scenario
Scenario
Diagrams
Sequence
Diagrams
Sequence
Diagrams
Diagrams
Diagrams
Diagrams
Scenario
Scenario
Scenario
Scenario
Diagrams
Collaboration
Diagrams
Collaboration
Diagrams
Diagrams
Diagrams
Diagrams
State
State
State
State
Diagrams
Class
Diagrams
Class
Diagrams
Diagrams
Diagrams
Diagrams
Models
Deployment
Deployment
Diagrams
Diagrams
State
State
State
State
Diagrams
Object
Diagrams
Object
Diagrams
Diagrams
Diagrams
Diagrams
State
State
State
State
Diagrams
State
Diagrams
State
Diagrams
Diagrams
Diagrams
Diagrams
Component
Component
Component
Diagrams
Component
Diagrams
Component
Diagrams
Component
Diagrams
Diagrams
Diagrams
Course Catalog
Professor
Registrar
Close Registration
Billing System
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
<<boundary>>
MainForm
// select maintain schedule()
0..1
+ // open()
+ // select 4 primary and 2 alternate offerings()
1
1
<<boundary>>
CourseCatalogSystem
0..*
<<control>>
RegistrationController
// add courses to schedule()
// get course offerings ()
0..1
1
<<entity>>
Schedule
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
Class Diagram
State Diagram
Document
add( )
delete( )
fetchDoc( )
sortByName( )
name : int
docid : int
numField : int
get( )
open( )
close( )
read( )
sortFileList( )
create( )
fillDocument( )
FileList
Use-Case 1
fList
add( )
delete( )
Actor A
Actor B
Writing
Openning
close file
close file
Reading
Closing
rep
Use-Case 2
File
Repository
(from Persistence)
read( )
<<entity>>
Customer
name
addr
receive()
withdraw()
fetch()
send()
GrpFile
name : char * = 0
Domain
Expert
add file
DocumentList
FileMgr
read( )
open( )
create( )
fillFile( )
readDoc( )
readFile( )
Use-Case 3
UI
Deployment
Diagram
Class
MFC
Docu mentAp p
- 95 :
- NT:
- : ,
- IBM : ,
Rogu eWave
Repository
Persistence
9: sortByName ( )
DocumentList
Windows95
Window95
W indows95
glob al
FileManager
mainWnd : MainWnd
1: Doc view request ( )
2: fetchDoc( )
gFile : GrpFile
4: create ( )
8: fillFile ( )
user :
User Interface
Definition
.EXE
fileMgr : FileMgr
3: create ( )
Package
Diagram
Windows
NT
Document
Solaris
.EXE
Alph a
UNIX
.EXE
W indows
NT
GraphicFile
File
FileList
IBM
Mainframe
6: fillDocument ( )
7: readFile ( )
5: readDoc ( )
document : Document
repository : Repository
Collaboration Diagram
mainWnd
user
fileMgr :
FileMgr
document :
Document
gFile
Component
Diagram
repository
1: D oc view request ( )
2: fetchDoc( )
3 : create ( )
4: create ( )
5: readDoc ( )
6 : fillDocu ment ( )
7: readFile ( )
8: fill File ( )
9: sortByN ame ( )
Sequence Diagram
Executable System
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
10
What Is a Process?
A process defines Who is doing What, When and How to
reach a certain goal. In software engineering the goal is to
build a software product or to enhance an existing one
New or changed
requirements
Software Engineering
Process
11
New or changed
system
12
Use
Manage
Component
Requirements Architectures
Model
Visually
Control Changes
13
Verify
Quality
Customer
An actor is someone or
something outside the
system that interacts
with the system
A Use-Case is a sequence
of actions a system
performs that yields an
observable result of
value to a particular
actor
Check Balance
Withdraw Money
14
15
16
17
End-user
Functionality
Implementation
View
Use-Case
View
Process
View
Deployment
View
System Integrators
Performance
Scalability
Throughput
Programmers
Software management
System Engineering
System topology
Delivery, installation
communication
18
19
Inception
Elaboration
Construction
Transition
time
20
Inception
Elaboration
Construction
Transition
time
Lifecycle
Objective
Milestone
Lifecycle
Architecture
Milestone
21
Initial Operational
Capability
Milestone
Product
Release
Elaboration
Construction
Devel.
Iteration
Devel.
Iteration
Transition
Transition Transition
Iteration Iteration
22
Business
Use-Case Model
Business
Object Model
automated by
Requirements
Use-Case realized by
Model
Analysis &
Design
Design implemented by
Model
Implementation
Implementation verified by
Model
Test
Test
Model
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
23
Inception Elaboration
Construction
Business Modeling
Requirements
In an
iteration, you
Transition
walk
through
all
workflows
Supporting Workflows
Configuration & Change Mgmt
Project Management
Workflows
group
activities
logically
Environment
Preliminary
Iteration(s)
Iter.
#1
Iter.
#2
Iter.
#n
Iter. Iter.
#n+1 #n+2
Iterations
24
Iter.
#m
Iter.
#m+1
Process Notation
A role that may be
played by an
individual or a team
in the development
organization
A unit of work a
worker may be
asked to perform
Activity
Worker
Describe a
Use-Case
Use-Case
Specifier
responsible for
Use-Case
Artifact
Use-Case
Package
25
A piece of
information that is
produced, modified,
or used by a process
Worker
Activities
Paul
Designer
Define Operations
Mary
Joe
System Analyst
Sylvia
Implementer
Stefan
Architect
Each individual in
the project is
assigned to one or
several workers
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
26
Capture a
Common
Business-Process Vocabulary
Analyst
Structure the
Business Use-Case
Model
Detail a
Business Use Case
Review the
Business
Use-Case Model
Business
Designer
Detail a
Business Worker
Find Business Workers
and Entities
Detail a
Business Entity
Business Model
Reviewer
27
Review the
Business
Object Model
Requirements Workflow
Develop Elicit Stakeholder
Vision
Needs
Find Actors
and Use Cases
Structure the
Use-Case Model
Capture a
Manage
Dependencies Common
Vocabulary
Detail a
Use Case
Use-Case
Specifier
User-Interface
Modeling
User-Interface
Designer
Architect
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
Prioritize
Use Cases
28
User-Interface
Prototyping
Requirements
Reviewer
Review
Requirements
Architect
Use-Case
Analysis
SubsystemDesign
Use-Case
Design
Designer
Class
Design
Database
Designer
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
Review theArchitecture
Architecture Reviewer
Database
Design
29
Review the
Design
Design
Reviewer
Implementation Workflow
Architect
Structure the
Implementation Model
System Integrator
Integrate
System
Plan System
Integration
Plan Subsystem
Integration
Integrate
Subsystem
Implement
Classes
Implementer
Perform
Unit Test
Fix a Defect
Review Code
Code Reviewer
30
Test Workflow
ImplementTest
PlanTest
Test Designer
Integration
Tester
Evaluate
Test
Design Test
Execute Integration
Test
Execute System
Test
System Tester
Execute Performance
Test
Performance
Tester
Designer
Implementer
31
Execute
Iteration
Plan
Develop
Business
Case
Identify
Risks
Develop
Iteration
Plan
Develop
Project
Plan
Project
Manager
Evaluate
Iteration
Staff
Project
Revisit Risk List
32
Architect
CM
Manager
Establish Product
Change Process
Structure
Implementation
Model
Setup
Define Workspaces
Write Implementation & Build Areas
Model
CM Plan
Report
Baseline
Defect Data the Product
Any Worker
Create Private
Workspaces
Promote
Check-In/Out
Artifacts Configuration Items
Create Integration
workspaces
System
Integrator
Unified Software Practices v 5.0-D
Copyright 1998 Rational Software, all rights reserved
Release
Subsystems
33
Build
Product
Environment Workflow
34
35
Deployment
Supporting Workflows
Config. & Change Mgmt.
Project Management
Environment
ClearCase, ClearQuest
Unified Process, Microsoft Project, ...
Unified Process, Rational Tools
36
Adopting a Process
Process adoption includes configuring and
implementing the process
In configuring the process, the process framework is
adapted to the needs and constraints of the adopting
organization
The result is documented in a Development Case
37
38
39