Giới thiệu Rational Unified Process
Trang 1Giới thiệu Rational Unified Process
Trang 2Mục tiêu: Rational Unified Process
? Đ/n vòng lặp (iteration) và quan hệ của chúng với các
phase
? Các model và các workflow
? Các phase, iteration, và workflow
? Đ/n artifact, worker, và activity
Trang 3Khi xây dựng System, một ngôn ngữ là không đủ
Modeling
Team-Based Development
Trang 4• làm sưu liệu
các artifact của một hệ thống phần mềm
Trang 5Lịch Sử Của UML
Trang 6Đầu vào của UML
Fusion
Operation descriptions, Message numbering
Trang 7UML Cung Cấp Các Lược Đồ Chuẩn
Deployment Diagrams
Deployment Diagrams
Use-Case Diagrams
Use-Case Diagrams Use-Case Diagrams
Use-Case Diagrams Use-Case Diagrams
Use-Case Diagrams
State Diagrams
State Diagrams State Diagrams
State Diagrams State Diagrams
State Diagrams
Component Diagrams
Component Diagrams Component Diagrams
Component Diagrams
Component Diagrams
Component Diagrams
Models
State Diagrams
State Diagrams State Diagrams
State Diagrams Object Diagrams
Object Diagrams
Scenario Diagrams
Scenario Diagrams Scenario Diagrams
Scenario Diagrams Collaboration Diagrams
Collaboration Diagrams
Use-Case Diagrams
Use-Case Diagrams Use-Case Diagrams
Use-Case Diagrams Activity Diagrams
Activity Diagrams
State Diagrams
State Diagrams State Diagrams
State Diagrams Class Diagrams Class Diagrams
Trang 8Ví dụ một lược đồ trong UML: Use-Cases
Hệ Thống Đăng Ký Học Phần ở một Trường ĐH
Professor
Select Courses to Teach
Student
Course Catalog Register for Courses
Maintain Student Information
Maintain Professor Information
Registrar
Billing System Close Registration
Trang 9Ví dụ một lược đồ trong UML : Class
Hệ Thống Đăng Ký Học Phần ở một Trường ĐH
MainForm // select maintain schedule()
+ // open() + // select 4 primary and 2 alternate offerings()
<<control>>
1
1
Schedule // create with offerings()
<<entity>>
1 0 1
Trang 10Các lược đồ là các Artifact then chốt
Actor A
Use-Case 1 Use-Case 2
Actor B
user : »ç¿ëÀÚ mainWnd : MainWnd
fileMgr : FileMgr
repository : Repository document : Document
gFile : GrpFile 9: sortByName ( )
1: Doc view request ( ) 2: fetchDoc( )
5: readDoc ( ) 7: readFile ( )
3 : c r e a t e ( ) 6: fillDocument ( )
4 : c r e a t e ( ) 8: fillFile ( )
GrpFile read( ) create( ) fillFile( )
rep Repository name : char * = 0 readDoc( ) readFile( ) (from Persistence)
FileMgr fetchDoc( ) sortByName( ) DocumentList add( ) delete( ) Document name : int docid : int numField : int
g e t ( ) open( ) sortFileList( ) create( ) fillDocument( ) fList 1 FileList add( ) delete( ) 1 File read( )
read() fill the code
UI
MFC
RogueWave global DocumentApp
Persistence W i n d o w 9 5
¹ ® ¼ - ° ü ¸ ®
Å ¬ ¶ ĩ À Ì ¾ ð Ỉ ® E X E
W i n d o w s NT
GraphicFile
File Repository DocumentList FileList
<<entity>>
Forward Engineering(Code Generation)
and Reverse Engineering
add file [ numberOffile==MAX ] / flag OFF add file
close file close file
State Diagram
Package Diagram
Deployment Diagram Class
Trang 11Các yêu c?u
m?i/thay d?i
H? th?ng m?i/thay d?i
Software Engineering
Process
Qui trình là gì ?
thế nào để đạt được mục đích cuối cùng Trong
Trang 12Một qui trình hiệu quả
? Học từ các kinh nghiệm khác
? Mentor on your desktop
? Extension of training material
ứng dụng
Trang 13RUP chuyển tải các kinh nghiệm quí
mềm
Develop Iteratively
Use Component Architectures Manage
Trang 14RUP được định hướng bởi các Use-Case
Withdraw Money
Customer
Một actor là một
gì đó bên ngoài hệ
hệ thốngMột Use-Case là một
chuỗi các hành
thực hiện mang lại một kết quả quan sát được đối với một actor
Check Balance
Các Use-Case của một Cash Machine
Trang 15Use-Case chứa một luồng sự kiện(Flow of Events)
Trang 16Lợi ích của qui trình định hướng bởi Use-Case
? End users, developers, hiểu các yêu cầu chức năng của hệ thống
trình:
? Tạo và thẩm định design model
? Đ/n các test case và các thủ tục của test model
? Qui hoặch các vòng lặp
? Tạo sưu liệu cho người dùng
? Triển khai hệ thống
khác nhau
Trang 17RUP là qui trình Architecture-Centric
? Xây dựng, thẩm tra, và xđ giới hạn của kiến trúc tạo thành mục tiêu chính của giai đoạn triển khai (elaboration)
triển
được chọn
? Design guidelines bao gồm cách sử dụng pattern và idiom
? Cấu trúc sản phẩm
? Cấu trúc của đội ngũ PTPM
Trang 18Bieåu dieãn Kieán truùc : Mo hình 4+1 View
communication
System Engineering
Use-Case View
Structure
Analysts/
Designers End-user
Functionality
Trang 19Lợi ích của một Architecture-Centric Process
khác nhau
? Một component đảm trách một chức năng rõ ràng trong khuôn khổ một kiến trúc được đ/n tốt
? Một component thích ứng và cung cấp mọt hiện thực hóa vật lý của một tập các interface
? Các component tồn tại tương ứng với một kiến trúc cụ thể
Trang 20Inception Elaboration Construction Transition
Process Architecture - Lifecycle Phases
?Inception - Định nghĩa phạm vi của dự án
?Elaboration - Lập kế hoạch dự án, mô tả các đặc tính, định ranh giới kiến trúc
?Construction Xây dựng sản phẩm
?Transition - Chuyển giao sản phẩm cho người dùng
time
Trang 21Inception Elaboration Construction Transition
Ranh giới các Phase đánh dấu các mốc chính
Lifecycle Objective Milestone
Lifecycle Architecture Milestone
Initial Operational Capability Milestone
Product Release
time
Trang 22Iterations và Phases
Một iteration là một chuỗi các hoạt động với một kế
hoạch lập sẵn và một tiêu chuẩn lượng giá , có kết quả là một phiên bản release ( internal hay external )
Transition Iteration
Minor Milestones: Releases
Trang 23Các Workflow chính tạo ra các Model
Design Model
Business
Modeling Business
Use-Case Model Business Object Model automated by
Trang 24Đặt chúng cùng với nhau: Mô hình tích hợp
Preliminary Iteration(s) Iter.#1
Trang 25Use-Case Package Use-Case
responsible for
Use-Case Specifier
M?t don v? cơng vi?c mà worker
du ?c y/c th?c hi?n
Một phần thông tin được sản sinh ra, hiệu chỉnh, hoặc dùng bởi một process
Một vai trò (role) do một người hay một nhóm đảm trách trong tổ chức
Trang 26Workers dùng cho Resource Planning
Mỗi cá nhân trong dự án được giao vai trò của 1 hay nhiều
worker
Worker
Designer Use-Case Specifier System Analyst Implementer Architect
Activities
Define Operations Detail a Use-Case Find Actors and Use-Cases Perform Unit Tests
Identify Design Mechanisms
Trang 27Business Modeling Workflow
Find Business Actors and Use Cases Business-Process
Analyst
Structure the Business Use-Case
Model
Capture a Common
Reviewer
Review the Business Use-Case Model
Detail a Business Use Case
Business Designer
Review the Business Object Model
Detail a Business Entity
Find Business Workers and Entities
Detail a Business Worker
Trang 28Requirements Workflow
Use-Case
Specifier
Requirements Reviewer
User-Interface
Designer
Capture a Common Vocabulary
Find Actors and Use Cases
Review Requirements
Structure the Use-Case Model
User-Interface Prototyping
Detail a Use Case
Elicit Stakeholder Needs
Manage Dependencies
Architect
Prioritize Use Cases
Develop Vision
User-Interface Modeling
Trang 29Analysis & Design Workflow
Architect
Designer
Architectural Analysis
Architecture Reviewer
Review the Design
Review the Architecture
Use-Case Analysis
Architectural Design ConcurrencyDescribe DistributionDescribe
Database Designer
Class Design
SubsystemDesign
Use-Case Design
Database Design
Design Reviewer
Trang 30Implementation Workflow
Integrate System
Perform Unit Test
Structure the Implementation Model
Integrate Subsystem
Review Code Fix a Defect
Plan System Integration
Plan Subsystem Integration
Trang 31Test Workflow
Design Test
ImplementTest Test Designer
Integration Tester
System Tester
Evaluate Test
Execute Integration
Test
Execute System Test
Execute Performance
Test
Trang 32Project Management Workflow
Develop Business Case
Project Manager
Develop Project Plan
Revisit Risk List
Staff Project
Evaluate Iteration
Execute Iteration Plan
Develop Iteration Plan Identify
Risks
Trang 33Configuration and Change Management Workflow
Project Manager
Architect
CM Manager
System Integrator
Establish Product Change Process
Structure Implementation Model
Setup Implementation Model
Create Integration workspaces ProductBuild
Report Defect Data the ProductBaseline SubsystemsRelease
Define Status Reporting
& Baselining Requirements
Any Worker
Trang 34Environment Workflow
Trang 35Guidelines, Mentors, và Templates
cho các hoạt động
? Ví dụ, modeling và programming guidelines
1 HĐ
? Ví dụ, xây dựng 1 design model dùng Rational Rose
? Ví dụ, một Rational SoDA template cho 1 Use-Case Report
dàng ứng dụng qui trình đúng đắn và nhất quán
Trang 36Tool hỗ trợ toàn bộ chu kỳ sống của PM
Process Workflows
Business Modeling
Requirements Analysis and Design
Implementation
Test Deployment
Config & Change Mgmt.
Project Management
Environment
Requisite Pro, Rose, SoDA
Rose, Apex, SoDA, Purify,
SQA TeamTest, Quantify, PerformanceStudio,
ClearCase, ClearQuest Rose, SoDA, Apex
Unified Process, Rational Tools
SoDA, ClearCase,
Supporting Workflows
Requisite Pro, Rose, SoDA
Unified Process, Microsoft Project,
Trang 37Thích nghi hóa một qui trình
của tổ chức tiếp nhận
? Kết quả được ghi nhận trong Development Case
? Khi cài đặt qui trình, thực tế của tổ chức
được thay đổi để dùng hiệu quả qui trình
Trang 38? Unified Modeling Language (UML) là ngôn ngữ
phần mềm
Như thế nào để xây dựng một sản phẩm PM
Construction và Transition
? Một iteration là một chuỗi các hoạt động với một kế
hoạch lập sẵn và một tiêu chuẩn lượng giá , có kết quả là một phiên bản release
Summary: Rational Unified Process
Trang 39Summary (cont.): Rational Unified Process
? Một workflow nhóm các hoạt động liên quan với
nhau
bước
? Một artifact là một phần thông tin được sản sinh
ra, hiệu chỉnh, hoặc dùng bởi một process
? Một worker là một vai trò do một các nhân hay 1
? Một activity là một đơn vị công việc có thể được
y/c thực hiện