Là một quy trình công nghệ phần mềm hoàn chỉnh Là một sản phẩm tiến trình Hỗ trợ tăng năng suất làm việc nhóm Tạo, duy trì, quản lý các loại mô hình Có hướng sử dụng ngôn ngữ UM
Trang 1Quy trình phát triển hợp nhất (RUP-Rational Unified Process)
Giảng viên hướng dẫn: Nguyễn Thị Hạnh Sinh viên thực hiện: Hoàng Vũ Quân Phùng Nam Long Đoàn Quý Dậu Nguyễn Thị Ninh
Đỗ Viết Mạnh
Trang 2Giới thiệu RUP
Trang 3Lịch sử phát triển của RUP
Trang 4 Là quy trình công nghệ phần mềm được phát triển bởi hãng Rational.
RUP là quy trình phát triển phần mềm tập trung vào cấu trúc, hướng chức năng, gia tăng và có tính lặp lại.
RUP sử dụng hệ thống ký hiệu trực quan của UML.
RUP được phát triển song song với UML.
RUP (Rational unified Process) là gì?
Trang 5 Là một quy trình công nghệ phần mềm hoàn chỉnh
Là một sản phẩm tiến trình
Hỗ trợ tăng năng suất làm việc nhóm
Tạo, duy trì, quản lý các loại mô hình
Có hướng sử dụng ngôn ngữ UML
Được hỗ trợ bởi nhiều công cụ phát triển
Là một tiến trình có thể tùy biến
Đặc điểm của RUP
Trang 6 Tuân thủ tiến trình (Adapt the process).
Cân bằng các ưu tiên của Stackholder ( Balance stackholder priorities).
Thể hiện kết quả theo quy trình lặp (Demonstrate value iteratively) Kết thúc mỗi quy trình cần theo dõi
kết quả và kiểm tra chặt chẽ.
Tập trung theo dõi chất lượng liên tục (Focus continuously on quality)
Nguyên tắc chính của RUP
Trang 7Kiến trúc của RUP
Trang 8 Trục tung:
Tổ chức theo nội dung công việc, thể hiện khía cạnh tĩnh của quy trình.
Trục hoành :
Tổ chức theo thời gian phát triển dự án, thể hiện khía cạnh động của quy trình.
RUP được tổ chức theo 2 trục
Trang 9 Theo góc nhìn của nhà quản lý:
Gồm 6 giai đoạn nối tiếp nhau:
Quy trình phát triển phần mềm của FPT Software
Trang 10 Vòng đời của một dự án RUP
Khởi tạo (Initiation)
Xác định phạm vi của dự án phần mềm và các điều kiện ràng buộc bao gồm tầm nhìn hoạt động và các sản phẩm đề xuất
Ước tính chi phí tổng thể và tiến độ của dự án
Xác định rủi ro tiềm năng
Sản phẩm đạt được:
Quy trình phát triển phần mềm của FPT Software
Trang 11 Định nghĩa(Definition)
Giai đoạn này nhằm xác định yêu cầu của người sử dụng đối với phần mềm Dựa trên yêu cầu này xây dựng thành tài liệu URD ( User Requirements Document), sau đó phân tích URD và tạo ra Software Requirement Specification (SRS)
Sản phẩm thu được của giai đoạn này:
Quy trình phát triển phần mềm của FPT Software
Trang 12 Giải pháp(Solution)
Xác định một giải pháp hiệu quả để đáp ứng yêu cầu của khách hàng Phân tích và tạo ra thiết kế cho gói phần mềm Tùy theo tính chất của từng dự án, thông thường thì giai đoạn này sẽ chia làm 2 giai đoạn nhỏ hơn : Thiết kế mức tổng quan và thiết kế mức chi tiết
Sản phẩm thu được :
Quy trình phát triển phần mềm của FPT Software
Trang 13 Giải pháp ( Solution)
Quy trình phát triển phần mềm của FPT Software
Trang 14 Xây dựng (Construction)
Là giai đoạn phát triển hệ thống Nói chung, giai đoạn Construction là một quá trình sản xuất mà trọng tâm là quản lý tài nguyên và kiểm soát hoạt động để tối ưu hóa chi phí, tiến độ và chất lượng
developer và Integration/System Test được thực hiện bởi nhóm test Kết quả test sẽ được ghi nhận lại nhằm hạn chế những lỗi mới sẽ phát sinh.
Quy trình phát triển phần mềm của FPT Software
Trang 15 Xây dựng (Construction)
Quy trình phát triển phần mềm của FPT Software
Trang 16 Xây dựng (Construction)
Quy trình phát triển phần mềm của FPT Software
Trang 17 Chuyển giao (Transition)
Trọng tâm của giai đoạn này là đảm bảo rằng phần mềm có thể sẵn sàng phục vụ người dùng Cung cấp phần mềm cho khách hàng, triển khai hệ thống, tiến hành các hoạt động thử nghiệm cho chấp nhận và hỗ trợ khách hàng trong giai đoạn này Nhận thông tin phản hồi từ khách hàng để điều chỉnh sản phẩm
Quy trình phát triển phần mềm của FPT Software
Trang 18 Hoàn thành (Termination)
Đóng cửa dự án khi khách hàng đã chấp nhận toàn bộ dự án, tóm tắt kết quả dự án và cung cấp kiến thức và kinh nghiệm cho các dự án khác
Khảo sát sự hài lòng của khách hàng
Quy trình phát triển phần mềm của FPT Software
Trang 19Theo góc nhìn kỹ thuật
Mô hình hoá nghiệp vụ (Business modeling)
Quản lý yêu cầu (Requirements management)
Phân tích và thiết kế (Analysis and design)
Cài đặt (Implementation)
Kiểm thử (Test)
Triển khai ứng dụng (Deployment)
Quản lý cấu hình và sự thay đổi (Change management)
Quản lý dự án (Project management)
Quản lý môi trường ứng dụng (Environment)
Quy trình phát triển phần mềm của FPT Software
Trang 20 Giống nhau
Sử dụng quan niệm vòng quay của dự án
nhấn mạnh sự ưu tiên theo mức độ quan trọng của các chức năng
Công cụ chính: phương pháp luận hướng đối tượng
Đều khuyến cáo việc kiểm tra chương trình một cách tự động
Đều quan tâm tới giảm thiểu rủi ro trong quá trình thực hiện
So sánh RUP vs XP (eXtreme Programming)
Trang 21RUP XP
Hướng đến dự án lớn, nên phức tạp
Chi phí thay đổi tăng theo hàm mũ
Tập trung vào cho những bước đầu tiên để giảm
hiểu những chi phí về sau
Ưu điểm là sự đơn giản
Chi phí thay đổi không lớn lắm
Tập trung cho việc đảm bảo chi phí thấp cho mỗi
sự thay đổi trong quá trình xây dựng phần mềm
Trang 22Ưu điểm và nhược điểm
Ưu điểm Nhược điểm
Thường xuyên nhận thông tin phản hồi từ các bên
Cải thiện khả năng kiểm soát
Cải thiện quản lý rủi ro.
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
Trang 23Cảm ơn cô và các bạn
đã lắng nghe