when and how to use the various uml techniques for...
TRANSCRIPT
The Unified Process is a specific methodology that maps out
when and how to use the various UML techniques for object-
oriented analysis and design
The Unified Process is not simply a process, but rather an
extensible framework which should be customized for specific
organizations or projects:
Rational Unified Process
Agile Unified Process
Open Unifed Process
Enterprise Unified Process
Oracle Unfied Process
The Unified Process is use-case driven, architecture centric,
and iterative and incremental
3
User Case Driven:
Use Case sẽ là công cụ chính dùng để mô hình hóa hành vi, chức năng của hệ thống
Use Case sẽ được dùng để làm cầu nối giữa yêu cầu của khách hàng với nhóm phát triển phần mềm
Architecture Centric:
Tập trung vào kiến trúc hệ thống
Có 3 lược đồ kiến trúc chính: functional, static (structure), dynamic (behavior)
Iterative and Incremental:
Quá trình phân tích, thiết kế, hiện thực lặp đi lặp lại. Mỗi lần kết thúc vòng lặp lại có sự gia tăng về chất lượng và số lượng
4
6
Phase: là giai đoạn nào đó của quá trình phát triển phần mềm
Workflow: là công việc nào đó của quá trình phát triển phần mềm
Inception: giai đoạn này liên quan rất nhiều đến các công việc
business modeling, requirement, analysis. Một số trường hợp cũng
cần đến công việc design, implement, test. Kết quả của giai đoạn
này gồm có:
Tài liệu về yêu cầu cơ bản vê hệ thống, project plan, feasible,
risk
Những yêu cầu về môi trường làm việc của nhóm phát triển
Elaboration: công việc chính là analysis & design. Hoàn thiện tài
liệu business model, đánh giá risk, hoàn thành project plan ở mức
độ chi tiết, thu thập yêu cầu, xây dựng mô hình UML ở dạng
structural và behavior. Kết quả của giai đoạn này gồm có:
Tài liệu UML
Executable baseline version
7
Construction: giai đoạn này tập trung vào công việc lập trình
(implementation). Những vấn đề còn tồn đọng ở công việc
requirement, analysis và design sẽ được giải quyết rõ ràng
tại đây. Công việc configuration & change management rất
quan trọng giúp quản lý các version. Kết quả giai đoạn này
là: beta version
Transition: giai đoạn này tập trung vào công việc testing và
deployment, tập huấn người dùng. Thông qua quá trình
testing, một số công việc design, analysis có thể thực hiện để
cải thiện, tối ưu hệ thống.
8
Có 2 nhóm chính: engineering workflow và supporting workflow
Engineering Workflow:
Business Modeling Workflow: nhằm mục đích hiểu rõ phạm vi của project, giúp người dùng và nhà phát triển hiểu rõ vai trò của project trong quá trình xử lý nghiệp vụ. Tương tự như công việc planning của SDLC, tuy nhiên có thêm công việc thu thập yêu cầu, mô hình hóa nghiệp vụ ở mức cơ bản
Requirement Workflow: nhằm mục đích thu thập yêu cầu (bao gồm cả yêu cầu chức năng và phi chức năng)
Analysis: nhằm tạo ra analysis model. Sử dụng UML để mô tả mô hình structural & behavioral. Cần cẩn thận tránh hiện tượng analysis paralysis (analysis giống design)
9
Engineering Workflow (tt):
Design Workflow: nhằm chuyển mô hình phân tích
thành mô hình thiết kế. Mô hình thiết kế sẽ được sử
dụng để hiện thực hệ thống. Mọi chi tiết về kĩ thuật sẽ
được trình bày ở workflow này
Implementation Workflow: đây là công việc lập trình.
Hiện thực hệ thống từ mô hình thiết kế
Testing Workflow: nhằm mục đích tăng chất lượng,
độ tin cậy của hệ thống
Deployment Workflow: bao gồm các công việc
package, distribution, installation
10
Supporting Workflow:
Project Management Workflow: đây là công việc
đều có mặt ở tất cả các giai đoạn. Gồm các công việc:
risk management, scope management, estimate cost,
estimate time
Configuration and Change Management Workflow:
nhằm mục đích quản lý các version
Environment Workflow: nhằm hỗ trợ các công việc,
môi trường làm việc cho nhóm phát triển
11
Production phase: đây là giai đoạn sau khi hệ thống
được triển khai. Các công việc bao gồm: update,
maintain, operate
Operation & Support Workflow: bao gồm các công
việc: tạo ra kế hoạch triển khai hỗ trợ người dùng, tạo
tài liệu hướng dẫn người dùng, kế hoạch backup dữ
liệu, giám sát và tối ưu hệ thống
Infrastructure Management Workflow: bao gồm các
công việc về quản lý mô hình mối liên kết các thư viện,
các chuẩn trong lập trình
14