Tải bản đầy đủ (.pdf) (39 trang)

Giới thiệu Rational Unified Process

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (716.75 KB, 39 trang )

Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
1
Giôùi thieäu Rational Unified Process
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
2
Mục tiêu: Rational Unified Process
?
?
Mô tả
Mô tả
Unified
Unified
Modeling
Modeling
Language
Language
(
(
UML)
UML)
?
?
Đònh nghóa
Đònh nghóa
qui trình phát triển phần mềm
qui trình phát triển phần mềm
?
?
Mô tả


Mô tả
Rational
Rational
Unified
Unified
Process (RUP)
Process (RUP)
?
?
Trình bày về 4
Trình bày về 4
phase
phase
của RUP
của RUP
các
các
cột mốc của chúng
cột mốc của chúng
?
?
Đ/n
Đ/n
vòng lặp
vòng lặp
(iteration)
(iteration)
và quan hệ của chúng với các
và quan hệ của chúng với các
phase

phase
?
?
Diển tả quan hệ giữa:
Diển tả quan hệ giữa:
?Các model và các workflow
?Các phase, iteration, và workflow
?
?
Đ/n
Đ/n
artifact
artifact
,
,
worker
worker
,
,


activity
activity
?
?
Nêu tầm quan trọng của sự hỗ trợ bởi các tool tự động
Nêu tầm quan trọng của sự hỗ trợ bởi các tool tự động
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
3

Khi xây dựng System, một ngôn ngữ là không đủ
Modeling
Language
Unified
Process
Team-Based
Development
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
4
UML là gì ?
?
?
Unified Modeling Language (UML) là ngôn ngữ
Unified Modeling Language (UML) là ngôn ngữ
• đặc tả
• trực quan hóa
• xây dựng
• làm sưu liệu
các artifact của một hệ thống phần mềm
các artifact của một hệ thống phần mềm
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
5
Lòch Söû Cuûa UML
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
6
Ñaàu vaøo cuûa UML
Fusion

Operation descriptions,
Message numbering
Meyer
Before and after
conditions
Harel
State charts
Wirfs-Brock
Responsibilities
Embley
Singleton classes,
High-level view
Odell
Classification
Shlaer - Mellor
Object Lifecycles
Gamma, et.al
Frameworks, patterns,
notes
Booch
Jacobson
Rumbaugh
Gi?i thi?u v? Rational Unified Process
Duong Anh é?c, 2001
7
UML Cung Caỏp Caực Lửụùc ẹo Chuaồn
Deployment
Diagrams
Deployment
Diagrams

Use-Case
Diagrams
Use-Case
Diagrams
Use-Case
Diagrams
Use-Case
Diagrams
Use-Case
Diagrams
Use-Case
Diagrams
Scenario
Diagrams
Scenario
Diagrams
Scenario
Diagrams
Scenario
Diagrams
Sequence
Diagrams
Sequence
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
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
8
Ví dụ một lược đồ trong UML: Use-Cases
Hệ Thống Đăng Ký Học Phần ở một Trường ĐH
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
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
9
Ví dụ một lược đồ trong UML : Class
Hệ Thống Đăng Ký Học Phần ở một Trường ĐH
Hệ Thống Đăng Ký Học Phần ở một Trường ĐH
MainForm

// select maintain schedule()
<<boundary>>
MaintainScheduleForm
+ // open()
+ // select 4 primary and 2 alternate offerings()
<<boundary>>
1
0..1
1
CourseCatalogSystem
// get course offerings()
<<boundary>>
1 0..*
RegistrationController
// add courses to schedule()
// get course offerings ()
<<control>>
1
1
Schedule
// create with offerings()
<<entity>>
1
0..1
Gi?i thi?u v? Rational Unified Process
Duong Anh é?c, 2001
10
Caực lửụùc ủo laứ caực Artifact then choỏt
Actor A
Use-Case 1

Use-Case 2
Actor B
user : ằỗở
mainWnd : MainWnd
fileMgr : FileMgr
repository : Repository
document : Document
gFile : GrpFile
9: sortByName ( )
L
1: Doc view request ( )
2: fetchDoc( )
5: readDoc ( )
7: readFile ( )
3: create ( )
6: fillDocument ( )
4: create ( )
8: fillFile ( )
GrpFile
read( )
open( )
create( )
fillFile( )
rep
Repository
name : char * = 0
readDoc( )
readFile( )
(from Persistence)
FileMgr

fetchDoc( )
sortByName( )
DocumentList
add( )
delete( )
Document
name : int
docid : int
numField : int
get( )
open( )
close( )
read( )
sortFileList( )
create( )
fillDocument( )
fList
1
FileList
add( )
delete( )
1
File
read( )
read() fill the
code..
UI
MFC
RogueWave
global

DocumentApp
Persistence
Window95
ạđẳ-ỹáđ
ơảúèắặđ.EXE
Windows
NT
ạđẳ-ỹáđ Êứ.EXE
Windows
NT

Windows95
Solaris
ởẳ-ạử.EXE
Alpha
UNIX
IBM
Mainframe
àƠèáÊèẵẳ-ạử
Windows95
ạđẳ-ỹáđ ắệầá
éằờ ẩổầ ầẽàồỵắợạì ìặđữáãẻầ Ôá ẵẵ ơỏ áàă
- âààỡ 95 : ơảúèắặđ
- âààỡ NT: ởẳ-ạử
- éẵ áểẵ: ở ẳ-ạử ạì àƠèá ẳ-ạử, ởẵ ẳ-ạử
- IBM áịẻầãạể: àƠèá ẳ-ạử, ởẵ ẳ-ạử
Document
FileManager
GraphicFile
File

Repository
DocumentList
FileList
user
mainWnd fileMgr :
FileMgr
repositorydocument :
Document
gFile
1: Doc view request ( )
2: fetchDoc( )
3: create ( )
4: create ( )
5: readDoc ( )
6: fillDocument ( )
7: readFile ( )
8: fillFile ( )
9: sortByName ( )
ặÔạđẳ-Ă ởầẹ áõáƯ
ằỗởĂ ọằầẹ.
ẩ-ẽỹáđ éắợ
ạđẳ-ầ ÔááƯ ầỉỗ ạđẳ-
ẳĂ ẳÔằ ọằầẹ.
ẩ-áộ ẳ éắợàộẻ
ẳàộĂ ởầỉ èáĐãẻ
Ôãằ ẵẹ ẩ-áộĂ
áâỉ.
Customer
name
addr

withdraw()
fetch()
send()
receive()
<<entity>>
Forward Engineering(Code Generation)
and
Reverse Engineering
Executable System
User Interface
Definition
Domain
Expert
Openning
Writing
Reading
Closing
add file [ numberOffile==MAX ] /
flag OFF
add file
close file
close file
Use-Case 3
Source Code edit, compile, debug, link
Use-Case
Diagram
Class Diagram
Collaboration Diagram
Sequence Diagram
Component

Diagram
State Diagram
Package
Diagram
Deployment
Diagram
Class
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
11
Các u c?u
m?i/thay d?i
H? th?ng
m?i/thay d?i
Software Engineering
Process
Qui trình là gì ?
Một qui trình xác đònh
Một qui trình xác đònh
Ai
Ai
làm
làm


,
,
Khi nào
Khi nào



Như
Như
thế nào
thế nào
để đạt được mục đích cuối cùng.
để đạt được mục đích cuối cùng.
Trong
Trong
CNPM
CNPM
đích là xây dựng một sản phẩm phần
đích là xây dựng một sản phẩm phần
mềm
mềm
hoặc nâng cấp một
hoặc nâng cấp một
sản phẩm có sẵn
sản phẩm có sẵn
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
12
Một qui trình hiệu quả ...
?
?
Cung cấp các chỉ dẫn
Cung cấp các chỉ dẫn
để phát triển một cách
để phát triển một cách
hiệu quả

hiệu quả
một phần mềm có chất lượng
một phần mềm có chất lượng
?
?
Giảm thiểu rủi ro
Giảm thiểu rủi ro
tăng khả năng tiền đònh
tăng khả năng tiền đònh
?
?
Nắm giữ và thể hiện các kinh nghiệm tốt
Nắm giữ và thể hiện các kinh nghiệm tốt
?Học từ các kinh nghiệm khác
?Mentor on your desktop
?Extension of training material
?
?
Promotes
Promotes
common
common
vision
vision
and
and
culture
culture
?
?

Cung cấp hướng dẫn về cách dùng các công cụ
Cung cấp hướng dẫn về cách dùng các công cụ
ứng dụng
ứng dụng
?
?
Chuyển tải thông tin
Chuyển tải thông tin
on
on
-
-
line,
line,
chỉ dẫn chi tiết
chỉ dẫn chi tiết
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
13
RUP chuyển tải các kinh nghiệm q
RUP
RUP
mô tả cachs ứng dụng hiệu quả
mô tả cachs ứng dụng hiệu quả
6 kinh
6 kinh
nghiệm q
nghiệm q
dành cho quá trình phát triển phần
dành cho quá trình phát triển phần

mềm
mềm
Control
Control
Changes
Changes
Develop Iteratively
Develop Iteratively
Use
Use
Component
Component
Architectures
Architectures
Manage
Manage
Requirements
Requirements
Model
Model
Visually
Visually
Verify
Verify
Quality
Quality
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
14
RUP được đònh hướng bởi các Use-Case

Withdraw Money
Customer
Một
Một
actor
actor
là một
là một
người hoặc
người hoặc
một cái
một cái
gì đó bên ngoài hệ
gì đó bên ngoài hệ
thống
thống
tương tác với
tương tác với
hệ thống
hệ thống
Một
Một
Use
Use
-
-
Case
Case
là một
là một

chuỗi các hành
chuỗi các hành
động
động
mà hệ thống
mà hệ thống
thực hiện mang lại
thực hiện mang lại
một kết quả quan
một kết quả quan
sát được đối với
sát được đối với
một actor.
một actor.
Check Balance
Các Use-Case của một Cash Machine
Gi?i thi?u v? Rational Unified Process
Duong Anh Ð?c, 2001
15
Use-Case chứa một luồng sự kiện(Flow of Events)
Flow
Flow
of
of
events
events
của
của
Withdraw
Withdraw

Money
Money
Use
Use
-
-
Case (rút
Case (rút
tiền)
tiền)
1. Use-Case bắt đầu khi khách hàng đút thẻ tín dụng.
Hệ thống đọc và thẩm tra thông tin của thẻ.
2. Hệ thông nhắc nhập số PIN. Hệ thống kiểm tra số
PIN.
3. Hệ thống hỏi tác vụ nào khách hàng muốn thực
hiện. Khách hàng chọn Rút tiền.
4. Hệ thống hỏi số lượng. Khách hàng nhập số
lượng.
5. Hệ thông yêu cầu nhập kiểu tài khoản. Khách
hàng chọn checking hoặc savings.
6. Hệ thống liên lạc với ATM network . . .

×