Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 29 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
29
Dung lượng
152,56 KB
Nội dung
1 Quản trị dự án phần mềm (10) Nguyễn Thanh Bình Khoa Công nghệ Thông tin Trường ðại học Bách khoa ðại học ðà Nẵng 2 Tại sao quản trị dự án ? Quản trị dự án là cần thiết ñể thực hiện phần mềm ñúng tiến ñộ giảm chi phí ñạt ñược mục tiêu Quản trị dự án là rất quan trọng vì dự án phần mềm phức tạp sự thay ñổi thường xuyên xuất hiện trong quá trình phát triển cần ñảm bảo các ràng buộc • thời gian • chi phí • ngồn tài nguyên 2 3 Các hoạt ñộng quản trị dự án Lập kế hoạch xác ñịnh các hoạt ñộng cần thực hiện Lập lịch lập lịch cho các hoạt ñộng, ñảm bảo ñúng tiến ñộ Tổ chức chọn lựa, ñánh giá, phân công công việc cho các thành viên ðịnh giá ước lượng chi phí, nhân lực, nguồn tài nguyên cần thiết 4 Các hoạt ñộng quản trị dự án Lảnh ñạo ñưa ra các quyết ñịnh ñảm bảo sự hợp tác gữa các thành viên trong nhóm Giám sát kiểm tra tiến ñộ giám sát chi phí/nhân lực Hiệu chỉnh có các biện pháp hiệu chỉnh cần thiết nếu dự án bị chậm trễ Lập báo cáo viết các báo cáo, trình bày 3 5 Lập kế hoạch Quản lý hiệu quả dự án phụ thuộc vào kế hoạch ðược thực hiện trong suốt quá trình thực hiện dự án Lập kế haọch bao gồm xác ñịnh: các mục tiêu các ràng buộc các công việc cần thực hiện ñể ñạt mục tiêu các mốc quan trọng (milestones) các sản phẩm tạo ra 6 Lập kế hoạch Bắt ñầu Xác ñịnh các mục tiêu và ràng buộc Thực hiện ñánh giá ban ñầu Xác ñịnh các công việc, mốc quan trọng, các sản phẩm Lập lịch cho các công việc Thực hiện theo lịch Dự án kết thúc ? Kết thúc Kiểm tra lại các ñánh giá Cập nhật lại lịch ñ s 4 7 Lập kế hoạch Xác ñịnh các mục tiêu và ràng buộc Xác ñịnh mục tiêu mục tiêu chung của dự án các chức năng cơ bản mà phần mềm phải ñáp ứng yêu cầu về chất lượng Các ràng buộc ngày giao sản phẩm nhân sự ngân sách cho phép thiết bị, phần cứng phương thức giao tiếp với khách hàng 8 Lập kế hoạch ðánh giá ban ñầu ðánh giá ban ñầu các tham số của dự án cấu trúc kích thước chi phí phân tích các chức năng của phần mềm nhân công nhân lực yêu cầu 5 9 Lập kế hoạch Xác ñịnh các công việc, mốc quan trọng, các sản phẩm Các mốc quan trọng (milestones) các bước hoàn thành quan trọng của dự án • Ví dụ: thẩm ñịnh ñặc tả yêu cầu, thẩm ñịnh thiết kế các mốc quan trọng cho phép giám sát ñược tiến ñộ Xác ñịnh các sản phẩm (delivrables) trong các bước bàn giao cho khách hàng ñặc tả yêu cầu nguyên mẫu thiết kế giao diện người dùng 10 Lập kế hoạch Xác ñịnh các công việc, mốc quan trọng, các sản phẩm Dự án cần phải chia thành các công việc (task/activity) Các công việc không nên quá nhỏ • mỗi công việc nên kéo dài khoảng 2 tuần Mỗi công việc tiếp tục ñược chia thành các công việc con dễ dàng xử lý Một công việc con dễ dàng xử lý • có kết quả dễ dàng ñánh giá • dễ thực hiện • dễ ñánh giá thời gian thực hiện • dễ ñánh giá nhân công, tài nguyên cần thiết 6 11 Lập kế hoạch Xác ñịnh các công việc, mốc quan trọng, các sản phẩm Chia công việc Một cách ñơn giản ñể xác ñịnh và chia công việc là tạo WBS (Work Breakdown Structure) • tương tự như một mục lục Ví dụ 1. Khởi ñộng dự án 1.1 Lập kế hoach dự án 2. Phân tích yêu cầu 2.1 Thu thập yêu cầu 2.2 Mô hình hóa yêu cầu sử dụng UML 3. Thiết kế 3.1 Xây dựng các biểu ñồ lớp 3.2 Xây dựng các biểu ñồ tuần tự 3.3 Xây dựng các biểu ñồ gói 4. Mã hóa 5. Kiểm thử 12 Lập kế hoạch Báo cáo kế hoạch dự án Cần chứa các mục (1) Giới thiệu • mô tả mục tiêu • ràng buộc Tổ chức • các thành viên của nhóm • vai trò của các thành viên Phân tích rủi ro • dự báo các rủi ro có thể • ñề xuất các giải pháp hạn chế rủi ro Nguồn tài nguyên cần thiết • phần cứng • phần mềm 7 13 Lập kế hoạch Báo cáo kế hoạch dự án Cần chứa các mục (2) Chia công việc • chia dự án thành các công việc • xác ñịnh các mốc quan trọng • xác ñịnh nội dung các sản phẩm giao hàng Lịch • mô tả ràng buộc các công việc và thời gian ñể ñạt ñược các môc quan trọng • gán công việc cho các thành viên Giám sát • mô tả các báo cáo ñược tạo ra khi nào và như thế nào • mô tả cơ chế sử dụng ñể thực hiện thẩm ñịnh các công việc ñã hoàn thành 14 Lập lịch Lập lịch bao gồm các công việc xác ñịnh ngày quan trọng • ngày bắt ñầu, ngày kết thúc xác ñịnh các giai ñoạn quan trọng liệt kê các công việc trong thứ tự thực hiện • chỉ ra quan hệ giữa các công việc ñánh giá nguồn tài nguyên cần thiết ñể hoàn thành mỗi công việc • nhân lực, thời gian, ngân sách 8 15 Lập lịch Liệt kê các công việc trong thứ tự thực hiện chỉ ra sự phụ thuộc giữa các công việc • các công việc nào có thể tiến hành ñồn thời • các công việc nào chỉ thực hiện khi công việc khác kết thúc giảm tối thiểu các phụ thuộc • hạn chế sự chậm trễ thời gian thực hiện dự án phụ thuộc con ñường dài nhất trong ñồ thị công việc • sơ ñồ PERT 16 Lập lịch Sử dụng bảng ñể biểu diễn lịch của dự án Bảng các giai ñoạn quan trọng Bảng các công việc Bảng phân công 9 17 Lập lịch Bảng các giai ñoạn quan trọng các giai ñoạn quan trọng và ngày có thể ñạt ñược Ngày Giai ñoạn quan trọng August 26 Project Kickoff (with client) October 16 Analysis Review October 26 System Design Review November 7 Internal Object Design Review November 20 Project Review (with client) Nov 26 Internal project review Dec 11 Acceptance test (with client) 18 Lập lịch Bảng các công việc các công việc và ngày bắt ñầu/ngày kết thúc Ngày Công việc Jul 17-Aug 23 Preplanning Phase Aug 26 - Sep 24 Project Planning Sep 11-Oct 8 Requirements Analysis Oct 9 - Oct 26 System Design Oct 28-Nov 7 Object Design Nov 8 - Nov 20 Implementation & Unit Testing Nov 22 - Dec 4 System Integration Testing Dec 4 - Dec 10 System Testing Dec 11- Dec 18 Post-Mortem Phase 10 19 Lập lịch Bảng phân công ai làm gì và thời gian bao lâu Công việc Phân công Thời gian Phụ thuộc (người/ngày) T1 Jane 8 T2 Anne (75%) 15 T3 Jane (80%) 15 T1 (M1) T4 Fred 10 T5 Mary 10 T2, T4 (M2) T6 Anne 5 T1, T2 (M3) T7 Jim 20 T1 (M1) T8 Fred 25 T4 (M5) T9 Jane 15 T3, T6 (M4) T10 Anne 15 T5, T7 (M7) T11 Fred 7 T9 (M6) T12 Fred (50%) 10 T11 (M8) 20 Lập lịch Có thể sử dụng các sơ ñồ ñể xây dựng, phân tích các lịch phức tạp Sơ ñồ Gantt • biểu diễn quan hệ thời gian giữa con người và công việc Sơ ñồ PERT • biểu diễn phụ thuộc giữa các công việc [...]... i v i m t d án, s ngư i trong nhóm có th thay ñ i Khi m t d án ch m tr , thêm ngư i vào d án không bao gi gi i quy t ñư c v n ñ “Adding more programmers to a late project makes it later” (Brooks’ Law - The Mythical Man-Month) 44 22 T ch c d án Xác ñ nh vai trò c a các thành viên Trư ng d án ch u trách nhi m m t d án b o ñ m nhóm có ñ y ñ thông tin và ngu n tài nguyên c n thi t phân công công vi c cho... n n (platform) ñúng ñ n ? • h ñi u hành, c u hình ph n c ng Phiên b n c a trình biên d ch và các công c s d ng là ñúng ñ n ? 34 17 Qu n lý c u hình Công c SCM ñư c h tr b i các công c Có các lo i công c các công c ñ c l p các công c tích h p vào trong các môi trư ng phát tri n 35 Qu n lý c u hình Công c Công c qu n lý phiên b n Ho t ñ ng h tr • ð t tên các phiên b n • t ñ t tên các phiên b n m i • Ghi...L p tài li u Tài li u là c n thi t cho chương trình ñ s d ng chương trình • c n mô t ñ y ñ v chương trình • m c ñích, môi trư ng, thu t toán, vào/ra, th i gian th c thi ñ tin tư ng chương trình • báo cáo k t qu ki m th • ki m th các ch c năng th c hi n t t • ki m th các tình hu ng không mong ñ i ñ ch nh s a chương trình • mô t ñ y ñ chương trình • c u trúc bên trong • mô t v t ch nh s... 36 18 Qu n lý c u hình Công c Công c qu n lý phiên b n RCS (Revision Control System) • mã ngu n m , cũ CVS (Concurrent Version System) • mi n phí, h tr các máy tính s d ng h ñi u hành khác nhau, s d ng t xa Perforce • công c thương m i Subversion • mã ngu n m , ñ y các tính năng c a CVS, t t hơn CVS 37 T ch c d án T ch c d án là r t quan tr ng y u t chính quy t ñ nh cho s thành công Bao g m các ho t... năng l c v tài chính ñ th c hi n d án ñúng ti n ñ ? r i ro v k thu t • Công ngh hi n t i có cho phép ? r i ro v con ngư i • Nhóm làm vi c có ñ kinh nghi m và năng l c ? 52 26 Qu n lý r i ro Phân tích các r i ro ðánh giá d án, công ngh , ngu n tài nguyên hi n có ñ xác ñ nh và hi u b n ch t và ngu n g c c a r i ro Xác ñ nh xác su t c a m i r i ro r t th p, th p, trung bình, cao, r t cao Xác ñ nh t m quan... và năng l c d án khó 41 T ch c d án Ch n c u trúc c a nhóm Nhóm chief-programmer G m có • Trư ng nhóm (chief-programmer): th c hi n phân tích, thi t k , mã hóa, ki m th • Tr lý: h tr trư ng nhóm phát tri n, ki m th • Thư ký: qu n lý thông tin • Các chuyên gia h tr • qu n lý, l p tài li u, l p trình, ki m th Ph thu c ch y u vào trư ng nhóm Trư ng nhóm ph i có năng l c 42 21 T ch c d án Ch n c u trúc... năng l c 42 21 T ch c d án Ch n c u trúc c a nhóm Nhóm phân c p D M M M vi M ñ án l n ñư c chia thành nhi u d án nh i s án nh ñư c hi n b i m t nhóm i nhóm có m t trư ng nhóm i thành viên c p dư i ph i báo cáo công c v i ngư i qu n lý tr c ti p i thành viên ph i ñư c ñào t o k năng th c hi n vai trò c a mình 43 T ch c d án Ch n kích thư c c a nhóm Kích thư c nhóm nên tương ñ i nh : dư i 8 ngư i gi... ít nh t 100 0 ngư i s d ng bên ngoài” 29 Qu n lý c u hình L p k ho ch c u hình G m các ho t ñ ng (2) ð nh nghĩa vai trò và trách nhi m c a các thành viên trong các ho t ñ ng SCM • ngư i qu n lý, ngư i phát tri n ð nh nghĩa CSDL s d ng ñ ghi thông tin v c u hình ð nh nghĩa các công c s d ng h tr SCM Ch n l a chu n ñ s d ng • Ví d • IEEE 82 8-1 990: Software Configuration Management Plans • IEEE 104 2: Guide... i h n các công vi c giao ti p v i khách hàng 45 T ch c d án Qu n lý giao ti p gi a các thành viên Giao ti p t t cho phép nhóm ho t ñ ng t t Thông tin c n trao ñ i v ti n ñ công vi c các thay ñ i các khó khăn Giao ti p gi a các thành viên ph thu c vào c u trúc nhóm nhóm phi hình th c: giao ti p tr c ti p gi a các thành viên nhóm phân c p: giao ti p thông qua ngư i qu n lý 46 23 T ch c d án Qu n lý... T ch c d án Ch n nhân s thích h p Các y u t c n xem xét khi ch n nhân s Kinh nghi m • hi u bi t lĩnh v c ng d ng • kinh nghi m v i môi trư ng phát tri n • hi u bi t v ngôn ng l p trình ðào t o Kh năng • kh năng giao ti p • kh năng thích ng, kh năn h c Thái ñ Tính cách 39 T ch c d án Ch n c u trúc c a nhóm Nhóm không hình th c (egoless team) Nhóm chief-programmer Nhóm phân c p 40 20 T ch c d án Ch n . 1 Quản trị dự án phần mềm (10) Nguyễn Thanh Bình Khoa Công nghệ Thông tin Trường ðại học Bách khoa ðại học ðà Nẵng 2 Tại sao quản trị dự án ? Quản trị dự án là cần thiết ñể thực hiện phần mềm ñúng. ro Nguồn tài nguyên cần thiết • phần cứng • phần mềm 7 13 Lập kế hoạch Báo cáo kế hoạch dự án Cần chứa các mục (2) Chia công việc • chia dự án thành các công việc • xác ñịnh các mốc quan. Jude, Poseidon, ArgoUML 26 Quản lý cấu hình ðịnh nghĩa Cấu hình phần mềm bao gồm các thành phần phần mềm xác ñịnh tính chất cơ bản của phần mềm một thành phần có thể • mã nguồn, tệp dữ