bài tập công nghệ phần mềm

23
BÀI TẬP CÔNG NGHỆ PHẦN MỀM TÌM HIỂU QUY TRÌNH RUP (RATIONAL UNIFIED PROCESS) Nhóm 16 Võ Đại Lượng Hoàng Quang Quốc Võ Phước Hoài Nhã Nguyễn Thị Mỹ Dung Phan Minh Tâm 06/11 /2022 1

Upload: luong-vo-dai

Post on 22-Jun-2015

2.636 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Bài tập công nghệ phần mềm

BÀI TẬP

CÔNG NGHỆ P

HẦN MỀM

TÌ M

HI Ể

U Q

UY

TR

Ì NH

RU

P ( R

AT

I ON

AL

UN

I FI E

D

PR

OC

ES

S)

Nhóm 1

6

Võ Đ

ại L

ượng

Hoàng

Qua

ng Q

uốc

Võ P

hước

Hoà

i Nhã

Nguyễ

n Th

ị Mỹ

Dung

Phan

Min

h Tâ

m

04/13/2

023

1

Page 2: Bài tập công nghệ phần mềm

QUY TR

ÌNH R

UP

KH

ÁI N

I ỆM

, VÒ

NG

ĐỜ

I , PH

A, N

GU

N T

ẮC

, ƯU

NH

ƯỢ

C

ĐI Ể

M

04/13/2

023

2

Page 3: Bài tập công nghệ phần mềm

VÒNG ĐỜI

04/13/2023

3

Cấu trúc của quy trình RUP, được thể hiện theo hai chiều:

Trục hoành biểu diễn khía cạnh động của qui trình, bao gồm thời gian và các khía cạnh chu kỳ sống của qui trình.

Trục tung biểu diễn khía cạnh tĩnh của qui trình, gồm các luồng công việc chính.

Page 4: Bài tập công nghệ phần mềm

4 PHA CỦA RUP

1. The Inception Phase – Pha khởi đầu Phạm vi dự án, yêu cầu người dùng và ràng buộc Yêu cầu nghiệp vụ, rủi ro, kế hoạch dự án (phân công, chi phí) Thiết kế kiến trúc (chi phí, lịch, tài nguyên) Cấu hình môi trường làm việc, công cụ

04/13/2

023

4

Page 5: Bài tập công nghệ phần mềm

4 PHA CỦA RUP…

2. The Elaboration Phase – Pha phác thảo Mục tiêu là để xác định các yêu cầu chi tiết hơn và xác định

các kiến trúc cho hệ thống. Tinh chỉnh tài liệu Hoạch định những bước lặp Kế hoạch phát triển: tiến trình, công cụ CASE Tinh chỉnh kiến trúc và chọn thành phần (component)

04/13/2

023

5

Page 6: Bài tập công nghệ phần mềm

4 PHA CỦA RUP…

3. The Construction Phase – Pha xây dựng Tập trung để phát triển các ứng dụng mà nó đã sẵn sàng cho

việc triển khai. Quản lý tiến trình tạo sản phẩm: năng suất, đảm bảo chất

lượng Tạo sản phẩm (alpha, beta, các phiên bản test khác) Kế hoạch triển khai ứng dụng: phần mềm, người sử dụng, hỗ

trợ…

04/13/2

023

6

Page 7: Bài tập công nghệ phần mềm

4 PHA CỦA RUP…

4. The Transition Phase – Pha chuyển giao Bây giờ chúng ta có thể cung cấp các hệ thống chuyển giao

thành sản phẩm. Tạo sản phẩm xuất xưởng Kiểm tra sản phẩm, thu thập phản hồi�

04/13/2

023

7

Page 8: Bài tập công nghệ phần mềm

04/13/2

023

8

Thời gian dành cho các giai đoạn này được ước tính như sau

Page 9: Bài tập công nghệ phần mềm

9 NGUYÊN TẮC CỦA RUP (LUỒNG CÔNG VIỆC)

1. Mô hình hóa nghiệp vụ (business modeling): mô tả cấu trúc và quy trình nghiệp vụ.

2. Xác định yêu cầu (requirement): mô tả nghiệp vụ bằng phương pháp “tình huống sử dụng”

(use case base method)

3. Phân tích và thiết kế (analysis & design): mô tả kiến trúc hệ thống thông qua các sơ đồ phân tích thiết

kế.

4. Lập trình: thực hiện các việc xây dựng chương trình bằng ngôn ngữ lập

trình.

5. Thử nghiệm: mô tả các tình huống và kịch bản thử nghiệm, tiến hành thử

nghiệm hệ thống phần mềm.

04/13/2

023

9

Page 10: Bài tập công nghệ phần mềm

9 NGUYÊN TẮC CỦA RUP (LUỒNG CÔNG VIỆC)…

6. Triển khai: đưa hệ thống phần mềm vào sử dụng.

7. Quản trị cấu hình và quản trị thay đổi: kiểm soát các thay đổi và duy trì sự hợp nhất của các thành

phần dự án.

8. Quản trị dự án: quản lý toàn bộ quá trình làm việc của dự án.

9. Môi trường: đảm bảo các hạ tầng cần thiết để có thể phát triển được hệ

thống.

04/13/2

023

10

Page 11: Bài tập công nghệ phần mềm

THẾ MẠNH CỦA RUP

Thích ứng với quá trình RUP có khả năng thích ứng dựa trên các nhu cầu phát

triển.

Cân bằng giữa các bên cạnh tranh liên quan Bằng cách giữ cho các bên liên quan tham gia hoạt động.

Phối hợp giữa các nhóm phát triển Giữ một quá trình giao tiếp mở giữa các nhóm

Thể hiện giá trị của quy trình Lặp Cung cấp phần mềm làm việc sớm và thường xuyên

04/13/2

023

11

Page 12: Bài tập công nghệ phần mềm

THẾ MẠNH CỦA RUP…

Nâng cao mức độ trừu tượng Thích nghi với công cụ mô hình, tái sử dụng mã hiện có,

và tập trung vào kiến trúc

Tập trung liên tục về chất lượng Điều này được thực hiện bằng cách kiểm tra tất cả các

phần chính của dự án.

04/13/2

023

12

Page 13: Bài tập công nghệ phần mềm

ƯU ĐIỂM Thường xuyên nhận thông tin phản hồi từ các bên liên

quanNhững người thực hiện dự án có thể học hỏi và tích luỹ thêm nhiều kinh nghiệm qua các dự án.

Sử dụng hiệu quả các nguồn lựcSử dụng các kiến trúc thành phần (component), có tính kế thừa ở mức cao, tăng khả năng tái sử dụng.

Bạn có thể cung cấp chính xác những gì khách hàng muốnCác thay đổi có thể quản lý được một cách tốt hơn. Cho phép thay đổi các yêu cầu, các phương thức cho thích hợp hơn

Các vấn đề được phát hiện sớm trong dự án của bạnSản phẩm có chất lượng tốt hơn.

Cải thiện khả năng kiểm soátKiểm tra chất lượng phần mềm liên tục

Cải thiện quản lý rủi roCác rủi ro sớm được phát hiện và giảm nhẹ trong khi tích hợp hệ thống và xây dựng dần dự án

04/13/2

023

13

Page 14: Bài tập công nghệ phần mềm

NHƯỢC ĐIỂM

Quá trình có thể quá phức tạp để thực hiện

Phát triển có thể không kiểm soát được

Nó là một quá trình nặng

Bạn cần một chuyên gia để hoàn toàn thông qua quá trình này

04/13/2

023

14

Page 15: Bài tập công nghệ phần mềm

TÀI LIỆU THAM KHẢO

Rational Unified Process: Best Practices for Software Development Teams

http://www.ibm.com/developerworks/rational/library/content/03July/1000/1251/1251_bestpractices_TP026B.pdf

A Manager’s Introduction to the Rational Unified Process (RUP)

http://www.ambysoft.com/downloads/managersIntroToRUP.pdf

The Rational Unified Processhttp://www.menloinnovations.com/freestuff/whit

epapers/Rational%20Unified%20Process.pdf

04/13/2

023

15

Page 16: Bài tập công nghệ phần mềm

ỨNG DỤNG

PR

OJ E

CT :

ST

EA

M T

UR

BI N

E D

ES

I GN

TO

OL

NG

CỤ

TH

I ẾT

KẾ

NH

QU

ẠT

TU

A B

I N H

ƠI

ỚC

04/13/2

023

16

Nhiệm vụ:Xây dựng một công cụ để thiết

kế cánh quạt của tua bin hơi nước

Khách hàng:Alstom Power

Thực hiện:1999-2000

Số liệu được lấy từ

Page 17: Bài tập công nghệ phần mềm

THÁCH THỨC CỦA DỰ ÁN

Thời gian phát triển gấp rút (<9 tháng) từ ý tưởng ban đầu

Giao diện người dùng tinh vi với đồ họa 2D và 3D

Tích hợp các phần mềm được phát triển bởi khách hàng (trong Mathlab) cho các tính toán hình học và nhiệt động lực học.

Yêu cầu ban đầu rất mơ hồ, bởi vì không có công cụ trước đó tồn tại.

04/13/2

023

17

Page 18: Bài tập công nghệ phần mềm

PHƯƠNG PHÁP ĐỂ GIẢI QUYẾT

Đội ngũ các nhà phát triển có kinh nghiệm: Hai kỹ sư Zühlke với kỹ sư từ khách hàng

Bắt đầu nhanh và nhiệt tình với sự tham gia của khách hàng

Yêu cầu hệ thống quản lý dựa trên tính năng xây dựng hàng ngày

Thực hiện trong Java 2 / Standard Edition

Kết quả: dự án đã hoàn thành hai tháng trước thời hạn, với tất cả các tính năng cần thiết và với một nhược điểm rất ít. Big party!

04/13/2

023

18

Page 19: Bài tập công nghệ phần mềm

MỘT SỐ THỐNG KÊ DỰ ÁN

04/13/2

023

19

Số lượng nhân viên: 4

Kích cỡ nhóm (tương đương toàn thời gian): 3.5

Số các trường hợp (về nội dung) sử dụng: 6

Số tính năng: 40

Số yêu cầu thay đổi thực hiện: 53

Số lỗi tìm thấy và cố định: 14

Số lần lặp lại (thử nghiệm): 8

Thời gian thực hiện: 7 tháng

Tổng nỗ lực của mọi người trong ngày: 260

Số lớp Java thực hiện: Khoảng 180

Tổng số dòng lệnh, bao gồm cả dòng bình luận:Khoảng 30,000

Page 20: Bài tập công nghệ phần mềm

DẤU MỐC THỜI GIAN

04/13/2

023

20

Page 21: Bài tập công nghệ phần mềm

TỔNG KẾT DỰ ÁN

04/13/2

023

21

Page 22: Bài tập công nghệ phần mềm

BÀI HỌC KINH NGHIỆM

Các yếu tố góp phần vào sự thành công của dự án:• lặp đi lặp lại và phát triển gia tăng (không có che giấu sự

thật)• Sự tham gia nhiệt tình của khách hàng trong việc lập kế

hoạch và giám sát dự án• nhanh chóng và hữu ích thông tin phản hồi từ khách hàng• phí cho quản lý dự án thấp (khoảng 7% tổng khối)• quản lý thay đổi thực dụng nhưng hiệu quả • Quy trình RUP tiết kiệm rất nhiều thời gian thiết lập dự án

Cần cải thiện:• Tích cực thử nghiệm hệ thống liên tục• Ít nhất cần thêm kiểm tra đơn vị với các công cụ xxUnit• Thu thập thêm nhiều số liệu thiết kế

04/13/2

023

22

Page 23: Bài tập công nghệ phần mềm

CẢM ƠN!

SỰ

LẮ

NG

NG

HE

04/13/2

023

23