when and how to use the various UML techniques for...

14

Transcript of when and how to use the various UML techniques for...

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

5

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

12

13

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

15