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ựánphầ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ự ánphầnmề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ảntrị 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ảntrị 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ầnmề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
[...] ... L p tài li u 22 11 L p tài li u Nh ng ngư i s d ng khác nhau yêu c u các lo i tài li u khác nhau ngư i s d ng • tài li u hư ng d n s d ng ngư i phát tri n • tài li u phát tri n • chú thích ngư i thi t k • mô hình thi t k ngư i qu n lý • k t qu ki m th 23 L p tài li u C n duy trì s g n k t gi a mã ngu n và tài li u 24 12 L p tài li u V nñ c n duy trì s g n k t gi a mã ngu n và tài li u trong các t p ... thành viên ra ñi ð 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 ... trư c ? • Có c n cho ra ñ i phiên b n nh ñ chi m th trư ng ? r i ro v tài chính • Có ñ 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 ... 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...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 a 21 L p tài. .. 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 ñ ng Ch n nhân s thích ... in components, investigate use of a program generator 56 28 Qu n lý r i ro Giám sát các r i ro ðánh giá thư ng xuyên m i r i ro • ñ xác ñ nh xác su t x y ra c a nó • ñ ñánh giá các h u qu c a nó có thay ñ i M i r i ro chính c n ph i ñư c th o lu n khi có các cu c h p v ti n ñ d án X lý các r i ro Phương án x lý khi r i ro x y ra 57 29 ... r i ro R i ro (risk) là kh năng m t tính hu ng x u x y ra Qu n lý r i ro (risk management) liên quan ñ n xác ñ nh các r i ro nh hư ng ñ n d án l p k ho ch h n ch s nh hư ng c a r i ro Các lo i r i ro r i ro c a d án (project risks) nh hư ng ñ n ti n ñ và gu n tài nguyên r i ro c a s n ph m (product risks) nh hư ng ñ n ch t lư ng ph n m m r i ro c a doanh nghi p (enterprise risks) nh hư ng ñ n doanh ... 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ị. 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