Nhập môn Kĩ nghệ phần mềm - Ngô Trung Việt

pdf 75 trang phuongnguyen 3520
Bạn đang xem 20 trang mẫu của tài liệu "Nhập môn Kĩ nghệ phần mềm - Ngô Trung Việt", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfnhap_mon_ki_nghe_phan_mem_ngo_trung_viet.pdf

Nội dung text: Nhập môn Kĩ nghệ phần mềm - Ngô Trung Việt

  1. Nhập môn Kĩ nghệ phần mềm 4. Quản lí phát triển Ngô Trung Việt Trung tâm VITEC ntviet@myrealbox.com
  2. Bản đồ bài giảng 1. Phát triển 2. Ngôn ngữ và kĩ 3. Kiểm thử và hệ thống thuật lập trình kiểm điểm 4. Quản lí phát 5. Vận hành và triển bảo trì hệ thống 6. Cấu trúc dữ liệu 7. Thiết kế trong và thuật toán 8. Thiết kế 9. Lập trình, chương trình kiểm thử 11/11/2004 Quản lí phát triển2
  3. Quản lí phát triển •Quản lí dự án sản phẩm phần mềm • Đảm bảo chất lượng •Quản lí tiến độ •Năng suất phần mềm •Tổ chức phát triển 11/11/2004 Quản lí phát triển3
  4. Phát triển sản phẩm là gì? •Hoạt động phát triển và bảo trì có kỉ luật, được xác định rõ, bao gồm: –Quản lí và phân tích yêu cầu sản Yêu cầu phẩm Thiết kế – Phát triển giải Mã hoá pháp kĩ thuật m ngang hàng ể i đ Kiểm thử –Kiểm chứng m ể chức năng sản Ki phẩm theo yêu Bảo trì cầu. 11/11/2004 Quản lí phát triển4
  5. Tại sao cần phát triển sản phẩm? • Để sản xuất ra phần mềm đúng một cách nhất quán và hiệu quả • Để sản xuất ra sản phẩm tin cậy và lặp lại được • Để đảm bảo thực tế phát triển sản phẩm chung ở mức toàn tổ chức • Để duy trì sự nhất quán giữa các vật phẩm phần mềm. 11/11/2004 Quản lí phát triển5
  6. Công cụ hỗ trợ phát triển sản phẩm •Trạm làm việc phát triển •Hệ thống cơ sở dữ liệu và lưu giữ dữ liệu •Trình soạn thảo tài liệu và đồ hoạ • Công cụ quản lí tri thức KM (Knowledge Management). 11/11/2004 Quản lí phát triển6
  7. Bài tập phát triển sản phẩm • Khách hàng và tôi thảo luận các ý tưởng về trang web mới của họ.Tôi tạo ra một cốt truyện storyboard (Yêu cầu) và thu được sự đồng ý về cách bố cục và nội dung của các trang •Trở lại chỗ làm việc tôi xác định công nghệ tốt nhất để dùng và cấu trúc dẫn lái. Tôi kiểm điểm lại tài liệu bày với các bậc thầy web của công ti •Tôi tạo ra các trang web với nội dung cần thiết và trình bày nó cho một đồng nghiệp •Một thành viên của nhóm kiểm thử của chúng tôi kiểm tra các siêu móc nối và việc dẫn lái để đảm bảo chúng làm việc đúng. Các trang web được trình bày cho khách hàng và được đăng lên. Khi kinh doanh của khách hàng phát triển họ yêu cầu đưa thêm thông tin vào các trang này. Hãy xây dựng kế hoạch dự án theo mẫu. 11/11/2004 Quản lí phát triển7
  8. Các hoạt động quản lí dự án cơ sở Lập kế hoạch Thực hiện Kiểm soát Điều phối 11/11/2004 Quản lí phát triển8
  9. Nỗ lực quản lí dự án Mức Thực hiện hoạt động Lập kế hoạch Điều phối và kiểm soát Bắt đầu dự ánThời gian Kết thúc dự án 11/11/2004 Quản lí phát triển9
  10. Lập kế hoạch Thực hiện Kế hoạch dự án Kiểm soát Điều phối •Kế hoạch dự án tạo nên cơ sở cho các hoạt động quản lí dự án • Được tạo ra ở các giai đoạn sớm của dự án và được duy trì •Kế hoạch dự án cần được làm tài liệu. Vì sao? – Để có khả năng truy nguyên hiện trang theo đã lập kế hoạch – Để trao đổi với những người bảo trợ về cách dự án sẽ được hoàn tất – Để hành động như sự thoả thuận đã được làm tài liệu đối với những người sẽ đóng góp vào dự án 11/11/2004 Quản lí phát triển10
  11. Nội dung kế hoạch dự án •Kế hoạch quản lí dự án bao gồm: –Mục đích, phạm vi và mục tiêu của dự án – Vòng đời được chọn –Thủ tục và chuẩn cần được tuân theo –Nhận diện sản phẩm công việc cần được phát triển –Bảng cấu trúc phân việc (WBS) – Ước lượng về kích cỡ, nỗ lực và tài nguyên máy tính –Kế hoạch quản lí rủi ro –Lịch dự án –Kế hoạch kết cấu nền dự án 11/11/2004 Quản lí phát triển11
  12. Lập kế hoạch Thực hiện Chọn vòng đời Kiểm soát Điều phối •Dự án được chia thành một số pha hay giai đoạn để đề cập tới sự không chắc chắn và trợ giúp cho việc điều phối và kiểm soát • Vòng đời được tạo nên từ các pha dự án •Dự án chọn ra một vòng đời phát triển và các qui trình tuỳ thuộc vào các nhân tố như – Rủi ro – Nhu cầu khách hàng – Sự ổn định của yêu cầu • Qui trình ra những quyết định này được gọi là “may đo” 11/11/2004 Quản lí phát triển12
  13. Lập kế hoạch Thực hiện Quản lí rủi ro Kiểm soát Điều phối •Rủi ro là khả năng chịu “tổn thất” [SEI] •Quản lí rủi ro bao gồm –Nhận diện–kịch bản vấn đề có thể – Phân tích – hiểu khả năng xảy ra, tác động, khuôn khổ thời gian, ưu tiên tương đối –Lập kế hoạch – cách tránh biến cố rủi ro, tối thiểu tác động và/hoặc quản lí hậu quả biến cố – Truy nguyên – điều phối các chỉ báo về liệu các biến cố rủi ro có xuất hiện không và tính hiệu quả của việc lập kế hoạch –Kiểm soát – thực hiện hành động ở chỗ cần thiết –Trao đổi - ở mọi giai đoạn, chia sẻ thông tin rủi ro với những người bảo trợ 11/11/2004 Quản lí phát triển13
  14. Lập kế hoạch Thực hiện Thầu lại Kiểm soát Điều phối •Tiêu chí đánh giá và tuyển chọn nhà thầu cần được xác định và tuân thủ • Nhà thầu là người bảo trợ do đó cần là một phần của qui trình làm cam kết •Cơ chế trao đổi đều đặn cần được thiết lập • Các hoạt động lập kế hoạch, truy nguyên và giám sát cần bao quất các hoạt động làm thầu lại •Chức năng đảm bảo chất lượng SQA cần được giám sát độc lập đối với các hoạt động thầu lại. 11/11/2004 Quản lí phát triển14
  15. Truy nguyên và giám sát Lập kế hoạch Thực hiện Kiểm soát Điều phối dự án • Truy nguyên và giám sát dự án được thực hiện để đảm bảo các cam kết được đáp ứng và hành động được thực hiện khi trạng thái dự án lệch với kế hoạch •Các hoạt động cơ sở: – Truy nguyên và kiểm điểm việc hoàn thành theo các ước lượng và cam kết đã được làm tài liệu – Báo cáo và kiểm điểm trạng thái với những người bảo trợ – Thực hiện hành động sửa chữa để dóng thẳng trạng thái dự án với kế hoạch 11/11/2004 Quản lí phát triển15
  16. Thẩm định qui trình • Điều sau đây cần được kiểm điểm trên cơ sở đều đặn và các biến cố – Trạng thái dự án so với lịch biểu – Nỗ lực thực tế so với nỗ lực ước lượng – Qui mô thực tế so với qui mô ước lượng – Chi phí thực tế so với chi phí ước lượng – Tài nguyên máy tính thực tế so với ước lượng 11/11/2004 Quản lí phát triển16
  17. Công cụ cho thẩm định qui trình • Báo cáo trạng thái •Sơ đồ cột mốc •Sơ đồ giá trị thu được •Sơ đồ sử dụng tài nguyên 11/11/2004 Quản lí phát triển17
  18. Ví dụ về báo cáo trạng thái Project Name Zeus Project Manager John Smith Status date 10-Jun-03 Completed tasks Planned start Planned Finish Actual Finish Document requirements 12-May-03 3-Jun-03 4-Jun-03 Prepare project plans 19-May-03 3-Jun-03 5-Jun-03 Pending tasks Planned start Actual start Planned finish Projected complete % complete Review of requirements and plans 3-Jun-03 6-Jun-03 10-Jun-03 12-Jun-03 60% Detailled requirments analysis 10-Jun-03 Not started 23-Jun-03 - 0% Integration and System Test Planning 10-Jun-03 Not started 16-Jun-03 - 0% Issues/Risks 1. Review of requirements and plans delayed and no replanning has occurred. 2. Some requirements still undefined. Dependencies 1. Equipment for Integration and System testing. At latest 19th August. 11/11/2004 Quản lí phát triển18
  19. Ví dụ về sơ đồ cột mốc Milestone status (30 April 2003) 18-Jul-03 28-Jun-03 8-Jun-03 19-May-03 29-Apr-03 Requirements complete Plans complete 9-Apr-03 Design complete Code complete 20-Mar-03 Testing complete Estimated date 28-Feb-03 Final release complete Completion 8-Feb-03 19-Jan-03 30-Dec-02 8-Jun-03 8-Feb-03 9-Apr-03 18-Jul-03 28-Jun-03 19-Jan-03 28-Feb-03 20-Mar-03 29-Apr-03 30-Dec-02 19-May-03 Reporting date 11/11/2004 Quản lí phát triển19
  20. Ví dụ về sơ đồ giá trị thu được Earned value (Status week 12) $2,500.00 $2,000.00 $1,500.00 Planned cost Actual cost Value $ Value Earned value $1,000.00 $500.00 $- 0246810121416 Week 11/11/2004 Quản lí phát triển20
  21. Ví dụ về truy nguyên sử dụng tài nguyên 11/11/2004 Quản lí phát triển21
  22. Đảm bảo chất lượng Kế hoạch Hành động Thực hiện Kiểm tra
  23. Chất lượng là gì? • Chia theo nhóm, hãy định nghĩa chất lượng là gì? 11/11/2004 Quản lí phát triển23
  24. Định nghĩa về chất lượng • Mức độ tuyệt vời • Dự đoán được (Oxford) – Tính đều • Khớp với sử dụng – Tính phụ thuộc (AS1057) – Chi phí thấp • Khả năng thoả mãn các nhu cầu đã phát – Phù hợp thị biểu/được ngụ ý trường (ISO8402) (Deming) • Tuân thủ yêu cầu • Được xác định bởi (Crosby) khách hàng (Feigenbaum) 11/11/2004 Quản lí phát triển24
  25. Định nghĩa về chất lượng phần mềm • Đáp ứng các đặc tả và trông đợi theo cách đúng hạn và có chi phí-hiệu quả tốt nhất – Đáp ứng các đặc tả (yêu cầu tường minh của khách hàng) – Đáp ứng trông đợi (yêu cầu không tường minh của khách hàng) 11/11/2004 Quản lí phát triển25
  26. Sáng kiến đạt tới chất lượng phần mềm •Lập kế hoạch các hoạt động chất lượng phần mềm • Định nghĩa độ đo •Thực hiện các hoạt động • Điều phối thành công •Nhận diện những cải tiến chất lượng cần thiết 11/11/2004 Quản lí phát triển26
  27. Shewhart hay vòng lặp P-D-C-A Lập Kế hoạch Hành động Thực hiện Vòng lặp Shewhart Kiểm tra 11/11/2004 Quản lí phát triển27
  28. Tại sao phải đảm bảo chất lượng? • Chuyển giao theo lịch biểu •Chứa chi phí •Giảm thời gian vòng lặp •Khử bỏ các khiếm khuyết được chuyển giao –Tối thiểu hoá lỗi trong qui trình – Phát hiện tất cả các khiếm khuyết trước khi chuyển giao 11/11/2004 Quản lí phát triển28
  29. Tam giác chất lượng Chức năng Chất lượng Chi phí Thời gian/ Lịch biểu 11/11/2004 Quản lí phát triển29
  30. Ai chịu trách nhiệm về chất lượng? •Các bạn, tất cả chúng ta! 11/11/2004 Quản lí phát triển30
  31. Người kĩ sư chất lượng làm gì? • Chia theo nhóm, hãy định nghĩa người kĩ sư chất lượng làm gì? 11/11/2004 Quản lí phát triển31
  32. Đảm bảo chất lượng so với Kiểm soát chất lượng Thu thập yêu cầu Đảm bảo chất lượng & Lập kế hoạch •Khởi động •Kiểm điểm kế hoạch •Thoả mãn khách hàng Thiết kế và mã hoá •Chia sẻ kinh nghiệm •Kiểm định qui trình Kiểm thử Đưa ra Kiểm soát chất lượng •Kiểm định cấu hình vật lí •Kiểm định cấu hình chức năng 11/11/2004 Quản lí phát triển32
  33. Có câu hỏi nào không? 11/11/2004 Quản lí phát triển33
  34. Quản lí tiến độ •Lập kế hoạch tiến độ –Sơ đồ Gantt –Sơ đồ PERT •Quản lí tiến độ –Quản lí định thời gian bắt đầu và kết thúc của từng việc –Lập lịch cho từng thành viên của tổ dự án 11/11/2004 Quản lí phát triển34
  35. Sơ đồ Gantt • Đặc trưng: – Cung cấp biểu đồ đễ hiểu, lịch biểu của từng việc được vẽ bằng đường ngang (thanh) –Thời gian bắt đầu và kết thúc theo lịch của từng phần việc và trạng thái hiện tại được biểu thị rõ ràng – Ưu tiên các phần việc không được vẽ ra. –Sự chậm trễ của từng phần việc không được vẽ ra. 11/11/2004 Quản lí phát triển35
  36. Ví dụ về sơ đồ Gantt WBS Nhiệm vụ Năm 200X Tháng 4 5 6 Tuần 1 2 3 4 1 2 3 4 1 2 3 4 0.0 Sản phẩm 1.0 Sản phẩm con A 1.1 Làm 1 1.2 Làm 2 1.2.1 Làm 2-1 1.2.2 Làm 2-2 2.1 Sản phẩm con B Sơ đồ thanh nêu ra cấp bậc của các phân tử trong WBS 11/11/2004 Quản lí phát triển36
  37. Lập kế hoạch Thực hiện Lập lịch biểu Kiểm soát Điều phối 11/11/2004 Quản lí phát triển37
  38. Sơ đồ PERT •PERT có thể giải quyết việc phát triển các hệ thống qui mô lớn và phức tạp • Nó cho phép tính tổng số ngày cần thiết • Nêu rõ thứ tự công việc được làm •Có thể tính ngày co dãn cho từng việc •Có thể được áp dụng cho các tính toán làm giảm chi phí phát triển và giảm số ngày cần cho công việc (phương pháp đường găng CPM) 11/11/2004 Quản lí phát triển38
  39. Thủ tục xác định sơ đồ PERT •Xác định bảng công việc (WBS) •Gắn số ngày ước lượng cần cho từng phần việc, đưa vào một bảng. •Dựa trên bảng ước lượng công việc, vẽ ra biểu đồ PERT (tính tới thứ tự công việc) •Quyết định số ngày tại từng nút. •Tạo ra các đường đi bằng cách nối các nút, tại mỗi nút có ghi thời gian sớm nhất và muộn nhất có thể 11/11/2004 Quản lí phát triển39
  40. Ví dụ về sơ đồ PERT * a tới h: Mỗi mũi tên chỉ ra công việc : Đường đứt được thực hiện ở đó. quãng (chỉ ra thứ tự Số: Mỗi con số chỉ ra số ngày cần công việc cần thực cho công việc. hiện). 11/11/2004 Quản lí phát triển40
  41. Năng suất phần mềm • Để đánh giá năng suất phần mềm, phải đánh giá được qui mô phần mềm. •Do đó cần một số kĩ thuật ước lượng – Ước lượng dựa theo dữ liệu quá khứ – Ước lượng theo số dòng mã –Phương pháp nhiệm vụ chuẩn –Phương pháp điểm chức năng – Các mô hình ước lượng (COCOMO) 11/11/2004 Quản lí phát triển41
  42. Ước lượng và định qui mô Lập kế hoạch Thực hiện Kiểm soát Điều phối • Định qui mô là việc dự đoán về phần mềm cần để hoàn thành các yêu cầu. Định qui mô có dưới dạng: – Dòng mã – Điểm chức năng – Số các trường hợp kiểm thử • Ước lượng là việc dự đoán tài nguyên và lịch biểu cần thiết để phát triển phần mềm. Ước lượng có dưới dạng: – Số lượng thời gian (lịch biểu) –Ràng buộc – Nhân viên –Giả định – Nỗ lực –Trang bị 11/11/2004 Quản lí phát triển42
  43. Kĩ thuật ước lượng và định qui mô • Bằng tương tự - so sánh công việc mới với công việc tương tự đã làm trong quá khứ • Delphi băng rộng –tập các ước lượng được nhóm chuyên gia thống nhất • Theo kinh nghiệm – dùng dữ liệu lịch sử đơn giản(như dữ liệu năng suất) • COCOMO – mô hình dự đoán dựa trên ước lượng qui mô và các tham biến xác định từ dữ liệu lịch sử • Điểm chức năng/tính năng – khuôn khổ để đo về mặt chức năng theo viễn cảnh người dùng 11/11/2004 Quản lí phát triển43
  44. Ước lượng theo dữ liệu quá khứ •Các ước lượng về hệ thống được phát triển và suy ra dựa trên dữ liệu thực của hệ thống tương tự đã xây dựng trong quá khứ. Có hai cách để làm ước lượng. – Toàn bộ tiến trình phát triển hệ thống được phân hoạch thành một số bước, và các ước lượng được suy ra dựa trên dữ liệu thực cho công việc tương tự. •Hệ thống được phân hoạch thành một số mô đun chương trình, và các ước lượng được suy ra dựa trên dữ liệu thực tế cho các mô đun chương trình tương tự. 11/11/2004 Quản lí phát triển44
  45. Đặc trưng của ước lượng theo dl quá khứ •Với hệ thống tương tự trong quá khứ, các lỗi cơ sở khó được bao hàm vào. •Nhiệm vụ ước lượng là tương đối đơn giản. •Số lỗi trong các ước lượng trở nên lớn hơn nếu hệ thống quá khứ thích hợp không được chọn cho việc ước lượng. •Việc áp dụng phương pháp này là không thể được nếu không có hệ thống tương tự trong quá khứ. 11/11/2004 Quản lí phát triển45
  46. Ước lượng theo dòng mã (LOC) 1. Hệ thống được diễn tả như một tập các mô đun chương trình 2. Tính toán kích cỡ của từng chương trình : Số các LOC trong từng mô đun chương trình trong biểu đồ được ước lượng. Rồi tổng số các LOC được tính toán. 3. Ước lượng nhân lực cho tất cả các chương trình cần làm: Tổng số các LOC được chuyển thành tổng nhân lực, như dữ liệu và người-tháng (số người cần thiết nhân với số tháng cần thiết). 4. Ước lượng trên cơ sở tiến trình: Khối lượng nhân lực được phân bổ cho từng tiến trình, với số phần trăm phân bổ được quyết định dựa trên dữ liệu quá khứ. 5. Ước lượng về nhân lực gián tiếp: Trọng số cho nhân lực đối với các công việc KNPM, và trọng số cho nhân lực đối với công việc hành chính, sẽ được quyết định. 6. Tổng nhân lực được ước lượng: Tổng nhân lực được tính bằng việc kết tập dữ liệu nhân lực cho từng tiến trình. 11/11/2004 Quản lí phát triển46
  47. Đặc trưng của phương pháp LOC •Nó cung cấp phương pháp tiêu biểu nhất. •Nếu có các chuẩn rõ ràng để ước lượng chương trình LOC và để chuyển chúng thành khối lượng nhân lực, thì tính toán được bao hàm là khá đơn giản. • Điều tiên quyết là đại cương về các chức năng của chương trình cần phát triển phải được hiểu thấu. 11/11/2004 Quản lí phát triển47
  48. Phương pháp dựa trên nhiệm vụ chuẩn • Công việc được chia ra trên cơ sở cái ra hay trên cơ sở xử lí bằng WBS (Work Breakdown Structure - Cấu trúc phân việc). • Sau đó, ước lượng chi tiết được thực hiện cho từng đơn vị, và ước lượng kết quả được tích luỹ theo cách từ dưới lên. 11/11/2004 Quản lí phát triển48
  49. Thủ tục nhiệm vụ chuẩn 1. Kiểm tra đầu ra và công việc được yêu cầu: Hệ thống được chia ra thành một cấu trúc phân cấp dựa trên WBS, và tất cả các đầu ra cần được phát triển trong dự án được liệt kê ra. 2. Kích cỡ của từng công việc được chuyển thành khối lượng nhân lực: Khối lượng nhân lực cần cho từng đơn vị công việc được chọn được đưa ra ước lượng theo những chuẩn nào đó, như dữ liệu thực tế cho chuẩn đã có tác dụng trong quá khứ. 3. Kết tập toàn bộ nhân lực: Khối lượng nhân lực được ước lượng cho từng công việc được tính tổng lại. 11/11/2004 Quản lí phát triển49
  50. Đặc trưng nhiệm vụ chuẩn •Với phương pháp này, việc ước lượng được thực hiện sau khi công việc được chia thành mức cái ra chi tiết hay mức xử lí, rồi các ước lượng được tích luỹ theo cách từ dưới lên. Do đó, nền cho các ước lượng được làm rõ ràng. •Nếu có phát sinh sai biệt thì việc nhận diện nguyên nhân là dễ dàng. •Dữ liệu thực tế cho công việc chuẩn là cần có. Thêm vào đó, công việc ước lượng đòi hỏi nhiều nỗ lực. 11/11/2004 Quản lí phát triển50
  51. Phương pháp điểm chức năng FP •từng chức năng được đưa vào trong hệ thống sẽ được diễn đạt định lượng bằng một phương pháp nào đó, và do vậy dữ liệu được biểu diễn theo định lượng được dùng như cách đo ước lượng IF Tới hệ thống khác Dữ liệu được IF Tới hệ thống khác lưu trữ bên trong (Giao diện với các hệ thống khác) (Đầu (Đầu (Điều tra về các tệp và ra) vào) cơ sở dữ liệu) Người sử dụng Các chức năng được cung cấp bởi hệ thống Số lượng Phương pháp FP được biểu diễn IF : Giao diện 11/11/2004 Quản lí phát triển51
  52. Thủ tục phương pháp FP • Đơn vị được dùng như chuẩn –Cái vào -Cái ra –Tệp và cơ sở dữ liệu (dữ liệu được lưu giữ nội bộ) – Yêu cầu về tệp và cơ sở dữ liệu - Giao diện với hệ thống khác •Thủ tục 1. Kiểm các chức năng ("đơn vị được dùng làm chuẩn" đã được mô tả ở trên) được hệ thống cung cấp 2. Các chức năng được lựa trong Khoản mục 1 trên, được phân lớp thành các loại "đơn giản," "trung bình" hay "phức tạp." Sau đó, một trọng số được gắn cho từng loại dựa trên những chuẩn nào đó. 3. Các giá trị được cho trong Khoản mục 2 trên được kết tập. 4. Các hệ số chuyên hệ thống được suy ra tuỳ theo đặc trưng của hệ đích. 5. FP cuối cùng được tính toán bằng việc nhân dữ liệu từ Khoản mục 3 ở trên, với dữ liệu từ Khoản mục 4 ở trên. 6. Giá trị FP được chuyển thành khối lượng nhân lực dự án. 11/11/2004 Quản lí phát triển52
  53. Đặc trưng phương pháp FP •Dữ liệu dễ hiểu với người dùng, bởi vì việc ước lượng được thực hiện cho các khoản mục thấy được với người dùng. •Việc điều chỉnh được thực hiện dựa trên dữ liệu thực tế được tích luỹ trong quá khứ. Do đó, việc tích luỹ dữ liệu là cần thiết. •Cần có tiêu chuẩn đánh giá chuẩn hoá trong việc áp dụng phương pháp ước lượng này. 11/11/2004 Quản lí phát triển53
  54. Mô hình COCOMO • Mô hình COCOMO, một phương pháp ước lượng do Boehm đề xuất, là phù hợp cho việc ước lượng các hệ thống cỡ trung tới cỡ lớn. •Với mô hình COCOMO, hệ thống được phân lớp dựa trên ba phương thức sau. Sau đó với từng phương thức, nhân lực phát triển tổng cộng và thời kì phát triển được tính toán từ số các câu lệnh được dự kiến vào lúc hệ thống được trao cho người dùng. •Ba phương thức –Phương thức tổ chức (phát triển hệ thống cỡ nhỏ) –Phương thức nửa nhúng (phát triển hệ thống cho vận hành bình thường) –Phương thức hệ thống nhúng (phát triển các hệ thống lớn và có ràng buộc dư thừa) 11/11/2004 Quản lí phát triển54
  55. Tổ chức phát triển • Các hình thái tổ chức •Tổ chức phát triển •Tổ chức người dùng 11/11/2004 Quản lí phát triển55
  56. Các hình thái tổ chức •Tổ chức phát triển phần mềm cần sự tham dự của người dùng. Trong việc phát triển hệ thống thành công, tổ chức của người dùng tham dự vào việc lập kế hoạch cơ sở và thiết kế ngoài. •Việc phát triển hệ thống thường được tiến hành trong sự hợp tác với các công ti phát triển bên ngoài, việc khoán ngoài cho các công ti làm phần mềm khác là cần thiết. •Do đó cần có nhiều hình thái tổ chức phát triển phần mềm. 11/11/2004 Quản lí phát triển56
  57. Tổ chức qui mô nhỏ Người Tổ chức phát dùng triển (Trao đổi) hệ thống Phát triển hệ thống 11/11/2004 Quản lí phát triển57
  58. Tổ chức qui mô lớn Chịu trách nhiệm Tổ chức đứng Người đứng đầu đầu về phát triển tổ chức hệ thống (Các hoạt động (Các hoạt động hợp tác) Các công ty phát hợp tác) Quản lý dự án Ủy ban xúc tiến phát triển bên ngoài triển hệ thống ( hợp tác) Người Người Người dùng dùng dùng Các Các Các Tổ trưởng Tổ trưởng Tổ trưởng Tham gia công ty công ty công ty dự án dự án dự án hợp tác hợp tác hợp tác 11/11/2004 Quản lí phát triển58
  59. Tổ chức phát triển phần mềm Người quản lí dự án Tổ trưởng Tổ trưởng Tổ trưởng dự án dự án dự án Thành viên Thành viên Thành viên Thành viên Thành viên Thành viên 3 kiểu tổ dự án: –Tổ người lập trình chính –Tổ chuyên gia –Tổ phân cấp 11/11/2004 Quản lí phát triển59
  60. Tổ người lập trình chính •Tổ người lập trình chính là một tổ dự Người lập trình án bao gồm một số chính tương đối nhỏ tối đa mười thành viên, với người lập trình Người lập chính có hoàn toàn trình trách nhiệm thực dự phòng hiện quyền lãnh đạo Thủ thư trong việc phân bổ công việc cho từng thành viên Người Người Người Người Người Người lập lập lập lập lập lập trình trình trình trình trình trình 11/11/2004 Quản lí phát triển60
  61. Đặc trưng tổ người lt chính •Dự án qui mô tương đối nhỏ có thể chấp nhận kiểu tổ chức tổ này. • Đặc trưng có ý nghĩa nhất của tổ chức này là sự tồn tại của người lập trình dự phòng và thủ thư. • Nó phù hợp cho việc rèn luyện người lãnh đạo (người lập trình chính phải chịu gánh nặng trách nhiệm). • Nó có khuynh hướng gây ra sự suy giảm tinh thần của người lập trình. 11/11/2004 Quản lí phát triển61
  62. Tổ chuyên gia •Tổ chuyên Chuyên gia Chuyên gia gia là một ngôn ngữ công cụ pt kiểu sửa đổi của kiểu tổ người lập Chuyên gia Người lập Chuyên gia trình chính, tài liệu trình chính logic và bao gồm một người lập trình chính cùng nhiều Chuyên gia Chuyên gia kiểm thử cơ sở dữ chuyên gia kĩ liệu thuật. 11/11/2004 Quản lí phát triển62
  63. Đặc trưng tổ chuyên gia •Người lập trình chính tạo ra tất cả các chương trình. • Các chuyên gia kĩ thuật chịu trách nhiệm các lĩnh vực đặc biệt (như công cụ phát triển, kiểm thử, tài liệu, cơ sở dữ liệu, v.v.) giúp cho công việc của người lập trình chính, mở rộng khả năng của người lập trình tới mức tối đa có thể. • Điều bản chất là các thành viên có kĩ năng mức cao. 11/11/2004 Quản lí phát triển63
  64. Tổ phân cấp •Tổ phân cấp Người quản lí bao gồm dự án một người quản lí dự án, nhiều người quản lí dự án và Tổ trưởng Tổ trưởng Tổ trưởng các thành dự án dự án dự án viên lực lượng lao động Thành Thành Thành Thành Thành Thành viên viên viên viên viên viên 11/11/2004 Quản lí phát triển64
  65. Đặc trưng của tổ phân cấp •Kiểu tổ chức tổ này được sử dụng rộng rãi nhất. •Nó được chấp nhận trong việc phát triển phần mềm qui mô tương đối lớn. •Trao đổi trở nên kém thích hợp hơn, nếu so với tổ người lập trình chính. 11/11/2004 Quản lí phát triển65
  66. Các vai trò •Người quản lí dự án –Lập kế hoạch, soạn thảo kế hoạch, và ước lượng dự án. – Trao đổi với người dùng và các tổ chức có liên quan (kể cả các bên ở ngoài công ti) – Thúc đẩy công việc dự án (kể cả việc triển khai nhân sự và uỷ quyền) •Tổ trưởng dự án –Tổ trưởng dự án đóng vai trò phân bổ người thực hiện dự án, đặt hoạt động tổ vào trật tự, hay hành động như người ở giữa các thành viên lực lượng lao động và người quản lí dự án. • Thành viên dự án – Được chỉ dẫn bởi tổ trưởng dự án, các thành viên thực hiện công việc phát triển thực tế (thiết kế, lập trình v.v ) hay công việc hỗ trợ phát triển. 11/11/2004 Quản lí phát triển66
  67. Tổ chức người dùng •Người Người chịu trách nhiệm chịu trách của tổ chức người dùng nhiệm •Tổ chức khởi Tổ chức khởi xướng xướng phát triển phát triển •Người dùng Người Người Người dùng dùng dùng 11/11/2004 Quản lí phát triển67
  68. Gói phần mềm • Đại cương về gói phần mềm • Phân loại các gói phần mềm • Công cụ quản lí sản xuất • Dùng gói phần mềm hiệu quả •Phần mềm nhóm • Công cụ tự động hoá văn phòng OA 11/11/2004 Quản lí phát triển68
  69. Đại cương về gói phần mềm • Ý nghĩa và vai trò của gói phần mềm –Tập trung vào hỗ trợ công việc thông thường –Các mảnh phần mềm riêng cho các việc riêng •Tính hữu dụng của gói phần mềm –Thời gian phát triển rút ngắn –Kích cỡ phát triển rút ngắn –Chất lượng tăng lên –Dịch vụ nâng cấp có sẵn –Một số gói cần được chuyên biệt hoá 11/11/2004 Quản lí phát triển69
  70. Phân loại các gói phần mềm •Gói phần mềm trên cơ sở công nghiệp •Gói phần mềm trên cơ sở vận hành –Lập kế hoạch tài nguyên xí nghiệp ERP –Quản lí quan hệ khách hàng CRM –Tự động hoá lực lượng bán hàng SFA –Quản lí dây chuyền cung cấp SCM –Tích hợp điện thoại máy tính • Công cụ làm tăng năng suất – Công cụ truyền thông – Công cụ quản lí csdl – Trang tính/ công cụ sinh tài liệu – Công cụ quản lí dự án – Công cụ hỗ trợ phát triển hệ thống 11/11/2004 Quản lí phát triển70
  71. Công cụ quản lí sản xuất •Thiết kế có máy tính hỗ trợ CAD –CAD là một hệ thống mà người thiết kế làm ra bản thiết kế bằng cách nhận sự hỗ trợ của máy tính qua hiển thị đồ hoạ. CAD, dựa trên xử lí ảnh, xử lí cái nhìn 3 chiều từ cái nhìn 2 chiều đối với các bản vẽ. •Chế tạo có máy tính hỗ trợ CAM –CAM là hệ thống hỗ trợ cho tiến trình chế tạo, như quản lí tiến trình, chuẩn bị cho sản xuất, kiểm thử xử lí và lắp ráp. •Kĩ nghệ có máy tính hỗ trợ CAE –CAE là hệ thống để hỗ trợ cho một loạt công việc được bao hàm trong thiết kế sản phẩm, kiểm thử hiệu năng và chế tạo. CAE được dùng để làm cho công việc hiệu quả bằng cách phân tích hiệu năng cần cho sản phẩm, thiết kế dựa trên kết quả phân tích và mô phỏng các sản phẩm thực nghiệm trên máy tính. 11/11/2004 Quản lí phát triển71
  72. Dùng gói phần mềm hiệu quả • Dùng gói phần mềm như một phần của hệ thống •Tăng năng suất phát triển hệ thống – Công cụ CASE: U-CASE, L-CASE, I-CASE, v.v – Công cụ sinh GUI/tài liệu – Công cụ quản lí dự án – Công cụ kiểm thử/gỡ lỗi •Thúc đẩy tự động hoá văn phòng (OA) – Làm cho mọi dữ liệu được quản lí như các csdl. –Quản lí luồng thông tin liên quan tới vận hành, như thư điện tử và luồng công việc –Quản lí lịch biểu • Dùng như nghiệp vụ 11/11/2004 Quản lí phát triển72
  73. Phần mềm nhóm •Truyền thông : có thể được duy trì qua thư điện tử và bản tin điện tử • Dùng chung dữ liệu: Dữ liệu dùng chung tạo khả năng coi máy tính như chỗ làm việc chung. •Quản lí lịch biểu: Chức năng quản lí tập trung lịch biểu của các thành viên nhóm, được cung cấp cùng phần mềm nhóm, tạo khả năng lập lịch cho tất cả các thành viên nhóm 11/11/2004 Quản lí phát triển73
  74. Công cụ tự động hoá văn phòng OA •Xử lí văn bản •Phần mềm trang tính •Phần mềm trình bày 11/11/2004 Quản lí phát triển74
  75. Có câu hỏi nào không? 11/11/2004 Quản lí phát triển75