TIỂU LUẬN NHÓM IT6161 QUẢN TRỊ DỰ ÁN CNTT VÀ QUẢN LÍ THAY ĐỔI
Trang 12 BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
TIỂU LUẬN NHÓM IT6161 QUẢN TRỊ DỰ ÁN CNTT VÀ QUẢN LÍ THAY ĐỔI
Đề tài: NGUYÊN TẮC VÀ THỰC HÀNH QUẢN LÍ THAY ĐỔI
CHO DỰ ÁN PHẦN MỀM THEO CHUẨN PMI
Giảng viên hướng dẫn : TS Vũ Thị Hương Giang Học viên thực hiện : Phạm Văn Hợp
Nguyễn Mạnh Cường
Vũ Đức Hùng
Trang 2Mục lục
Chương 1: Một số khái niệm
1.1 Khái niệm quản lý dự án phần mềm
1.2 Quy trình quản lý dự án trong phần mềm
1.2.1 Tiêu chuẩn hoá của quản lý dự án theo chuẩn PMI
1.2.2 Các quy trình kiểm tra và giám sát quản lý phần mềm
Chương 2: Một số nguyên tắc
2.1 Quản lý thay đổi
2.1.1 Kiểm soát thay đổi 2.1 2 Một số mức độ thay đổi 2.1.3 Các bước cơ bản của kiểm soát thay đổi 2.2 Sơ lược về quy trình quản lý dự án theo chuẩn PMI
2.2.1 Quản lý cấu hình trong dự án phần mềm 2.2.2 Kiểm soát thay đổi
2.3 Quy trình Six Sigma
2.3.1 Định nghĩa 2.3.2 Các nội dung chính của Six Sigma 2.3.3 Các cấp độ trong Six Sigma
Chương 3: Ví dụ minh hoạ (Sử dụng Microsoft Project 2003)
3.1 Xác định dự án
3.2 Lập kế hoạch thực hiện dự án
3.2.1 Lập bản phân tách công việc 3.2.2 Lập tiến độ thực hiện
3.3 Quản lý, kiểm soát việc thực hiện dự án
3.3.1 Quản lý chất lượng 3.3.2 Kiểm soát thay đổi và rủi ro 3.4 Kết thúc dự án
3.5 Kết luận
Tài liệu tham khảo
1.Stellman, Andrew; Greene, Jennifer (2005) Applied Software Project Management O'Reilly Media ISBN978-0-596-00948-9 http://www.stellman-greene.com/aspm/
2 IEEE magazine article "Why Software Fails"
3 “Quản trị rủi ro trong dự án phần mềm” PCWorld Việt Nam (5 tháng
10 năm 2009)
Trang 34 Nhóm quy trình quản lí dự án theo chuẩn PMI
PHẦN MỞ ĐẦU
-Quản lý dự án là quá trình hoạch định, tổ chức, lãnh đạo và kiểm tra các công việc và nguồn lực thông qua việc áp dụng các công cụ, kiến thức và kĩ thuật nhằm định nghĩa, lập kế hoạch, tiến hành triển khai, tổ chức kiểm soát và kết thúc
dự án
-Quản lý dự án được tiến hành bằng cách kết hợp các quy trình :
+)Lập kế hoạch dự án: quá trình thiết lập các mục tiêu và những phương thức hoạt động để đạt mục tiêu của dự án
Trang 4+)Thực hiện dự án: quá trình xây dựng và đảm bảo những điều kiện để đạt mục tiêu
+)Điều hành và kiểm soát dự án:quá trình chỉ đạo ,thúc đẩy các thành viên làm việc đồng thời giám sát và chấn chỉnh, uốn nắn các hoạt động để đảm bảo công việc thực hiện theo đúng kế hoạc đã đề ra
+)Kết thúc dự án: quá trình cuối cùng của quản lý dự án ,đánh giá lại toàn
bộ các quá trình ở trên
Các quy trình của quản lý dự án được thực hiện qua các bước cụ thể theo trình tự sau:
(1) Xác định vấn đề
(2) Phát triển các phương án giải pháp
(3) Lên kế hoạch cụ thể :
Cái gì phải làm?
Ai sẽ làm ?
Làm như thế nào ?
Khi nào làm ?
Tốn kém bao nhiêu?
Cần những gì để làm ?
(4) Thực hiện kế hoạch
(5) Kiểm soát và điều hành
Dự án đang đi đúng hướng hay không ?
Nếu không thì phải làm gì ?
Có cần thay đổi kế hoạch không ?
(6) Kết thúc dự án
Những gì đã làm tốt ?
Những gì cần cải thiện ?
Bài học rút ra là gì?
- Quản lý dự án bao gồm 2 cấu phần chính :
Trang 5• Quản lý về kĩ thuật: bao gồm công việc, ngân sách, tiến độ, chất lượng
• Quản lý về con người: bao gồm con người và các tổ chức tham gia thực hiện dự án và sự trao đổi
Vấn đề về con người thường là vấn đề ảnh hưởng tới sự thành bại của các
dự án Bên cạnh các kĩ năng kĩ thuật ,cần phát triển các kĩ năng con người trên cơ sở các chuẩn kĩ năng: suy nghĩ, trao đổi, giao tiếp trình bày
Xét theo khía cạnh khác,quản lý dự án là một quá trình lập kế hoạch, điều phối thời gian, nguồn lực và giám sát quá trình phát triển của dự án nhằm đảm bảo cho dự án hoàn thành đúng thời hạn trọng phạm vi ngân sách được duyệt và đạt được các yêu cầu đã định về kỹ thuật, chất lượng của sản phẩm, dịch vụ bằng các phương pháp và điều kiện tốt nhất cho phép
- Nội dung chủ yếu trong QLDA:
+) Xác định rõ được các yêu cầu về phạm vi, thời gian, chi phí, rủi ro, chất lượng,…
+)Kiểm soát những tập thể, cá nhân có liên quan trong mỗi giai đoạn
Chương 1: Một số khái niệm
1.1.Khái niệm quản lý dự án phần mềm.
Quản lý dự án phần mềm là tập hợp các công việc được thực hiện bởi
một tập thể (có thể có chuyên môn khác nhau, thực hiện công việc khác nhau, thời gian tham gia dự án khác nhau) nhằm đạt được một kết quả như dự kiến, trong thời gian dự kiến, với một kinh phí dự kiến Trong thuật ngữ của chuyên
ngành Công nghệ phần mềm, Quản lý dự án phần mềm là các hoạt động trong
lập kế hoạch, giám sát và điều khiển tài nguyên dự án (ví dụ như kinh phí, con người), thời gian thực hiện, các rủi ro và quy trình thực hiện dự án nhằm đảm bảo
Trang 6thành công cho dự án Quản lý dự án phần mềm cần đảm bảo cân bằng giữa ba yếu tố: thời gian, tài nguyên và chất lượng Ba yếu tố này được gọi là tam giác dự
án
1.2 Quy trình quản lý dự án trong phần mềm.
1.2.1 Tiêu chuẩn hoá của quản lý dự án theo chuẩn PMI.
Quy trình quản lý dự án phần mềm là quy trình vận dụng những kiến thức,
kỹ năng và kỹ thuật công nghệ vào hoạt động của dự án để đạt được mục tiêu của
dự án đặt ra Những ứng dụng này được đưa vào phần mềm theo một tiêu chuẩn hóa của quản lý dự án theo tiêu chuẩn PMI
Để đảm bảo dự án thành công theo tiêu chuẩn PMI, các thành viên dự án phải đảm bảo:
Lựa chọn quy trình phù hợp để đạt được mục tiêu của dự án
Tuân theo các yêu cầu để đáp ứng được nhu cầu và mong đợi của các bên liên quan
Cân bằng được các yêu cầu (nhân tố) cạnh tranh trong dự án như: phạm vi công việc, ngân sách, tiến độ, chất lượng, rủi ro, thay đổi Tùy theo quy mô của từng dự án mà các mỗi giai đoạn lại có thể gồm những quy trình nhỏ hơn
1.2.2 Các quy trình kiểm tra và giám sát quản lý phần mềm.
Quy trình kiểm tra và giám sát dự án quản lý phần mềm bao gồm 5 giai đoạn
1 Khởi tạo dự án (Initiating): Giai đoạn này thực hiện việc định nghĩa một
dự án mới hoặc một phát sinh (hoặc trộn lẫn) mới của một dự án có sẵn như: Xác định yêu cầu của dự án, mức độ ưu tiên của dự án, phân tích các yêu cầu đầu tư, phân công trách nhiệm cho các bộ phận triển khai
2 Lập kế hoạch dự án (Planning): Giao đoạn này yêu cầu thiết lập phạm vi công viêc của dự án, điều chỉnh lại mục tiêu và xác định đường đi tới mục tiêu đó
3 Triển khai (Executing): Giai đoạn này thực hiện hoàn thành các công việc được xác định trong phần lập kế hoạch để đảm bảo các yêu cầu của dự án
Trang 74 Giám sát và kiểm soát (Monitoring & Control): Giai đoạn này yêu cầu việc theo dõi, rà soát và điều chỉnh lại tiến độ và khả năng thực hiện của dự án Theo dõi các rủi ro, thay đổi, phát sinh trong quá trình thực hiện và có những đề xuất điều chỉnh kịp thời
5 Kết thúc (Closing): Giai đoạn này thực hiện để kết thúc tất cả các hoạt động của dự án để chính thức đóng lại dự án
Chương 2: Một số nguyên tắc
2.1 Quản lý thay đổi
2.1.1 Kiểm soát thay đổi
Kiểm soát thay đổi dự án chính là việc đối chiếu giữa kế hoạch và thực tế thực hiện hiện tại, đồng thời điều chỉnh nếu cần thiết Tại quá trình kiểm soát, các thay đổi có thể xảy ra Việc thay đổi này có thể dẫn đến quá trình thực thi, có thể phải lập kế hoạch lại, hoặc cũng có thể quay lại giai đoạn thiết lập dự án Thay đổi thường không thể tránh khỏi trong các dự án Thay đổi thông thường sẽ tác động xấu đến thời gian và chi phí dự án
Vì thế các tổ chức nên có quy trình và phân chia vai trò cụ thể để quản lý, kiểm soát thay đổi Thay đổi trong giai đoạn thực hiện dự án đa phần mang tích chất tiêu cực, thể hiện việc tổ chức chưa đánh giá hết và hiểu rõ mục tiêu, công việc, làm phát sinh ra các yêu cầu mới không lường trước được trong quá trình triển khai dự án Thay đổi càng nhiều chứng tỏ quy trình quản lý, kiểm soát rủi ro chưa được áp dụng tốt
2.1 2 Một số mức độ thay đổi Cải tiến (improvement) là tăng lên hay giảm đi những yếu tố nào đó của
dự án để cho phù hợp hơn
Đổi mới (Innovation) là thay cái cũ bằng cái mới; còn được hiểu là cách
tân; là sự thay đổi một phần của dự án
Cải cách (Reform) là loại bỏ cái cũ, những cái bất hợp lý của dự án thành
cái mới có thể phù hợp với tình hình khách quan
Cách mạng (Revolution) là sự thay đổi trọng đại, biến đổi tận gốc; là sự
thay đổi căn bản
2.1.3 Các bước cơ bản của kiểm soát thay đổi
Bước 1 Nhận diện sự thay đổi: làm cho mọi người hiểu đúng mục đích, nội dung sự thay đổi
Trang 8Bước 2.Chuẩn bị cho thay đổi
Bước 3: Dự báo sự thay đổi, xác định các nhu cầu thay đổi
Bước 4 Tìm các yếu tố khích lệ, hỗ trợ “sự thay đổi”
Bước 5 Xác định mục tiêu cụ thể cho các bước chỉ đạo sự thay đổi
Bước 6 Xác định trọng tâm của các mục tiêu và các công việc cần làm để thay đổi
Bước 7 Xem xét các giải pháp
Bước 8 Lựa chọn giải pháp
Bước 9 Lập kế hoạch và chỉ đạo việc thực hiện
Bước 10 Đánh giá thay đổi
Bước 11 Đảm bảo sự tiếp tục đổi mới
2.2 Sơ lược về quy trình quản lý dự án theo chuẩn PMI
2.2.1 Quản lý cấu hình trong dự án phần mềm
*Quản lý cấu hình trong dự án phần mềm:Là tập các hoạt động để quản lý các thay đổi của phần mềm trong suốt vòng đời của nó.Một loại hoạt động bảo đảm chất lượng phần mềm, được áp dụng cho tất cả các pha của kỹ nghệ Bao trùm suốt tiến trình phát triển và tiến hóa của phần mềm
Ta có thể tham khảo định nghĩa ngắn gọn sau từ CMM và ISO 15504:
“Mục đích của QLCH là để thiết lập và bảo đảm tính toàn vẹn của các sản phẩm trung gian cũng như các sản phẩm sau cùng của một dự án phần mềm, xuyên suốt chu kỳ sống của dự án đó.”Nói cho dễ hiểu và gần gũi, QLCH bao gồm các công việc về nhận dạng, tổ chức, và quản lý các thay đổi đối với những sản phẩm đang được xây dựng bởi một nhóm lập trình viên, từ các sản phẩm trung gian đến sản phẩm sau cùng
Xác định các thay đổi
Kiểm soát các thay đổi
Bảo đảm các thay đổi đã được thực hiện
Báo cáo các thay đổi cho người quan tâm
Quản lý cấu hình khác bảo trì phần mềm:
Bảo trì phần mềm là các hoạt động kỹ nghệ xuất hiện sau khi phân phát phần mềm và nó đi vào hoạt động
Trang 9Quản lý cấu hình phần mềm là các hoạt động theo dõi và kiểm soát, từ bắt đầu dự án phát triển phần mềm và chỉ kết thúc khi phần mềm không hoạt động nữa Kết quả của tiến trình kỹ nghệ phần mềm là các thông tin có thể được chia thành 3 loại:
Các chương trình máy tính (cả mức nguồn và mức chạy được)
Các tài liệu mô tả chương trình máy tính đó (nhắm đến cả những người thực hành kỹ thuật lẫn những người dùng)
Các cấu trúc dữ liệu (cả bên trong và ngoài chương trình)
* Cấu hình phần mềm
Các khoản mục cấu thành lên các thành phần phần mềm được tạo ra như
là những chế tác của tiến trình kỹ nghệ phần mềm được tập hợp lại trong một cái tên chung gọi là cấu hình phần mềm
Các chế tác này có nhiều mức khác nhau
Bộ phận – tổng thể(phạm vi)
Chưa hoàn thiện- hoàn thiện(theo tiền trình chất lượng) ở các mức tiến hóa khác nhau(các phiên bản-version)
*Công cụ quản lý cấu hình
Đường mốc giới(baseline) là khái niệm được đặt ra trước mốc giới cấu hình có thể thay đổi nhanh chóng và không chính thức, sau mốc giới cần các thủ tục đặc biệt và chính thức để đánh giá và kiểm soát sự thay đổi cấu hình
Đường mốc giới để đánh dấu việc cập nhật hay phân phát một vài khoản mục cấu hình phần mềm Tại đường mốc các khoản mục cấu hình phần mềm tương ứng được đưa vào cơ sở dữ liệu dự án
Các khoản mục của cấu hình phần mềm
Đặc tả hệ thống
Kế hoạch dự án phần mềm
Đặc tả yêu cầu:
Đặc tả yêu cầu phần mềm.Nguyên mẫu thi hành được hoặc nguyên mẫu
“giấy tờ”Sổ tay sử dụng sơ cấp Các đặc tả thiết kế:
dữ liệu.kiến trúc.Môđun (thủ tục).giao diện đối tượng (nếu dùng kỹ thuật hướng đối tượng)
Trang 10Mã nguồn và kiểm thử:
Kế hoạch và thủ tục kiểm thử Các ca kiểm thử & các kết quả được ghi lại.Các sổ tay vận hành & sổ tay lắp đặt.Chương trình thi hành được.Các môđun
& mã thi hành đượcCác môđun đã liên kết Mô tả cơ sở dữ liệu
Lược đồ & cấu trúc các file nội dung hồ sơ ban đầu Sổ tay người sử dụng Các tài liệu bảo trì các báo cáo những vấn đề phần mềm các yêu cầu bảo trì đặt thay đổi kỹ nghệ các chuẩn & các thủ tục cho kỹ nghệ phần mềm 4, Xác định đối tượng cấu hình PM
Cần đặt tên không trùng cho các khoản mục cấu hình phần mềm, để kiểm soát quản lý và tổ chức lại theo phương cách hướng đối tượng
* Kiểm soát phiên bản
Có nhiều định nghĩa và cách hiểu khác nhau về version control là sự kiểm soát các phiên bản (version) khác nhau của một CI (bao gồm việc định danh và sự lưu trữ CI đó).Thế phiên bản là gì? một phiên bản là một thực thể mới của một CI sau khi đã qua một hoặc nhiều lần xem xét và thay đổi.Hiện có nhiều công cụ trên thị trường hỗ trợ cho việc kiểm soát phiên bản, một số công cụ thông dụng là: Visual Source Safe của Microsoft, ClearCase của Rational, CVS (nguồn mở).Mỗi phiên phản sẽ có một số ID đầy đủ, và được tăng dần cho mỗi phiên bản mới Bằng tổ hợp các thủ tục & các công cụ để quản lý các phiên bản khác nhau của các đối tượng cấu hình (đã được tạo ra trong tiến trình kỹ nghệ phần mềm)
Quản lý cấu hình cho phép người sử dụng đặc tả cáccấu hình thay thế của hệ thống phần mềm = lựa chọn các phiên bản thích hợp và gắn kết với các thuộc tính; nhờ đó mà cho phép đặc tả một cấu hình bằng mô tả tập các thuộc tính mong muốn
Để xây dựng một biến thể thích hợp của một phiên bản của một chương trình, mỗi thành phần của phiên bản được gán một “bộ thuộc tính” - là một danh sách các đặc trưng
Một phiên bản hay biến thể được xây dựng cần xác định thành phần nào được dùng hay cần thay đổi
Một cách khác để hình thành khái niệm về quan hệ giữa các thành phần, các biến thể, các phiên bản là biểu diễn chúng như là một vụng (pool) đối tượng
Trang 11Mỗi thành phần được cấu tạo bởi một bộ các đối tượng trong cùng một mức xét duyệt
Mỗi biến thể là một bộ các đối tượng trong cùng một mức xét duyệt Xác định khi các thay đổi mỗi phiên bản chủ yếu đã được thực hiện đối với một vài đối tượng
2.2.2 Kiểm soát thay đổi trong quản lý cấu hình
Khi phát triển hoặc bảo trì một sản phẩm phần mềm, việc thay đổi yêu cầu
là không thể tránh khỏi
Mục đích của change control là để kiểm soát đầy đủ tất cả các thay đổi ảnh hưởng đến việc phát triển một sản phẩm Đôi lúc chỉ một vài yêu cầu thay đổi nhỏ của khách hàng, tất cả các chặng của quy trình phát triển phần mềm từ thiết
kế, đến viết code, đến kiểm tra sản phẩm đều phải thay đổi theo
Nếu các thay đổi này không được kiếm soát chặt chẽ sẽ dẫn đến rất nhiều sai sót Xét ví dụ sau: 5 lập trình viên cùng làm trong một dự án, nhưng chỉ có 3 được thông báo về việc thay đổi thiết kế Kết quả là khi tích hợp, hệ thống sẽ không vận hành được
Yêu cầu trong kiểm soát thay đổi là mọi sự thay đổi phải được thông báo đến tất
cả những người hoặc nhóm làm việc có liên quan
2.3 Quy trình Six Sigma
2.3.1 Định nghĩa
Six Sigma là một hệ phương pháp cải tiến quy trình dựa trên thống kê nhằm giảm thiểu tỷ lệ sai sót hay khuyết tật đến mức 3,4 lỗi trên mỗi triệu khả năng gây lỗi bằng cách xác định và loại trừ các nguồn tạo nên dao động (bất ổn) trong các quy trình kinh doanh Trong việc định nghĩa khuyết tật, Six Sigma tập trung vào việc thiết lập sự thông hiểu tường tận các yêu cầu của khách hàng
và vì thế có tính định hướng khách hàng rất cao
Hệ phương pháp Six Sigma dựa trên tiến trình mang tên DMAIC: Define (Xác Định), Measure (Đo Lường), Analyze (Phân Tích), Improve (Cải Tiến) và
Control (Kiểm Soát) Six Sigma không phải là một hệ thống quản lý chất lượng, như ISO-9001, hay là một hệ thống chứng nhận chất lượng Thay vào đó,