Triển khai

Một phần của tài liệu luận văn: nghiên cứu hướng áp dụng mô hình CMMI ở các doanh nghiệp phần mềm vừa và nhỏ (Trang 50)

a) Huấn luyện (Đào tạo): Bộ phận xây dựng quy trình lên kế hoạch và thực

hiện huấn luyện, đào tạo cho toàn bộ các thành viên của các dự án nắm vững các kiến thức về quy trình và vai trò của mình trong dự án.

b) Triển khai diện rộng: Tiếp sau hoạt động huấn luyện là triển khai diện rộng

các quy trình cải tiến cho toàn bộ công ty.

c) Giám sát, đánh giá nội bộ: Bộ phận giám sát chất lượng quy trình thực hiện

xem xét, đánh giá lập báo cáo tình hình tuân thủ quy trình quy định, tổng hợp các điểm không phù hợp của quy trình so với thực tế, tổng hợp bài học kinh nghiệm trong quá trình triển khai để cung cấp dữ liệu cho các đợt cải tiến sau này.

Một số lưu ý trong quá trình triển khai:

Cần phải tăng cường công tác tuyên truyền phổ biến, đào tạo nhận thức cho cán bộ công nhân viên hiểu được các lợi ích mà CMMI mang lại.

Trong suốt quá trình triển khai cần phải được sự hỗ trợ tối đa từ người quản lý cấp cao.

Khi triển khai CMMI phải thực hiện một cách bài bản, không nóng vội. Cần phải xác định các vấn đề tồn tại đang gặp phải là gì, để từ đó tập trung vào giải quyết từng vấn đề đó theo thứ tự ưu tiên.

Cầnnghiên cứu và áp dụng các công cụ hỗ trợ cho các giai đoạn phát triển phần mềm. Một số công cụ hỗ trợ trong quá trình phát triển phần mềm thông dụng hiện nay các doanh nghiệp có thể sử dụngđược liệt kê tại Phụ lục 1.

nhân viên trong cơ quan dễ dàng tra cứu và tham khảo khi cần thiết.

Triển khai hệ thống quản lý cấu hình (quản lý mã nguồn, tài liệu), nên triển khai tập trung cho toàn bộ các dự án để thống nhất cách quản lý và kiểm soát thay đổi.

Cần lưu ý một số khó khăn khác có thể gặp phải trong qua trình triển khai CMMI để có những giải pháp đối phó kịp thời, một số khó khăn thường gặp phải như[2]: (1) Không đủ nguồn lực để xây dựng, hiệu chỉnh quy trình; (2) Các thành viên trong đội đảm bảo chất lượng thường xuyên bận rộn và phải thực hiện nhiều dự án, nên thời gian để trợ giúp cho đội dự án là hạn hẹp; (3) Sự bất đồng quan điểm giữa đội QA và đội dự án; (4) Văn hoá ngại thay đổi trong đội ngũ lãnh đạo cấp trung và đội dự án.

Như vậy với 9 vùng quy trình cần áp dụng so với tổng số 22 vùng quy trình của mô hình CMMI-DEV v1.3 được đề xuất trong mô hình CMMI-VSME, việc phân nhóm các vùng quy trình và triển khai theo nguyên tắc áp dụng từng vùng quy trình một nên phù hợp áp dụng cho các doanh nghiệp vừa và nhỏ tại Việt Nam.Mô hình CMMI-VSME hiện tại không tập trung vào giải quyết các công việc liên quan đánh giá và cấp giấy chứng nhận đạt CMMI mà chỉ đưa ra hướng tiếp cận cho doanh nghiệp trong việc cải tiến quy trình sản xuất dựa theo mô hình CMMI nhằm nâng cao chất lượng sản phẩm, giảm thiểu sai sót, tối ưu hoá chi phí và nguồn lực trong quá trình phát triển phần mềm.

CHƯƠNG 4

TRIỂN KHAI ÁP DỤNG VÀ ĐÁNH GIÁ

Dựa trên các đề xuất hướng áp dụng mô hình CMMI theo cách tiếp cận CMMI- VSME và khảo sát hiện trạng tại EVNIT, tác giả đề xuất cách thức áp dụng mô hình CMMI cho EVNIT theo các pha như sau:

4.1. Khởi động

Chuẩn bị:Thiết lập mô hình sản xuất theo sơ đồnhư trong Hình 4.1

Ban Giám đốc

Ban điều hành quy trình (Là Lãnh đạo Trung tâm) Phòng Quản lý chất lượng

Đội đảm bảo chất lượng phần mềm

(QA)

Đội kiểm soát chất lượng phần mềm (QC) Tổ quản lý quy trình (SEPG) Các Dự án phần mềm QTDA 01 QTDA 02 QTDA N

Hình 4.1: Mô hình tổ chức đề xuất cho EVNIT

Do trong EVNIT đã tồn tại các bộ phận Phòng Quản lý chất lượng, Tổ quản lý quy trình SEPG (SoftwareEngineeringProcess Group), nên chỉ cần thành lập thêm bộ phận Ban điều hành quy trình.

Thiết lập môi trường, công cụ hỗ trợ:

 Thiết lập hệ thống quản lý cấu hình, quản lý phiên bản mã nguồn tập trung (sử dụng công cụ SVN).

 Thiết lập kho lưu trữ dữ liệu quy trình, quy định trên hệ thống cổng thông tin nội bộ của EVNIT.

 Thiết lập hệ thống quản lý theo dõi xử lý lỗi và giao việc (sử dụng JIRA). (adsbygoogle = window.adsbygoogle || []).push({});

Đánh giá hiện trạng:Tổ quản lý quy trình thực hiện khảo sát, đánh giá mô hình

phát triển phần mềm hiện tại của EVNIT.Xem xét theo tiêu chí xếp mức trưởng thành mức độ 2 theo cách thức nêu tại mục 1.5.4, để đạt được mức tăng trưởng cấp độ 2 thì phải thoả mãn tất các các mục tiêu được đề cập tại mục 1.5.4 (chi tiết kết quả đánh giá được mô tả tại Phụ lục 2). Qua kết quả đánh giá cho thấy EVNIT chưa đạt được mức

tăng trưởng cấp độ 2 của mô hình CMMI, do chưa đáp ứng đầy đủ mục tiêu của các vùng quy trình được yêu cầu trong cấp độ 2 của mô hình CMMI.

4.2. Lập kế hoạch

Các công việc cần thực hiện trong pha lập kế hoạch bao gồm:

a) Lập kế hoạch tổng thể:Trưởng phòng quản lý chất lượng chịu trách nhiệm

xây dựng kế hoạch tổng thể nhằm đạt được mục tiêu cải tiến quy trình phát triển phần

mềm.

b) Lập kế hoạch chi tiết:Bộ phận quản lý quy trìnhchịu trách nhiệm xây dựng

kế hoạch chi tiếtđể triển khai các công việc được nêu trong kế hoạch tổng thể, căn cứ theo tình hình thực tế mà kế hoạch này có thể được điều chỉnh cho phù hợp.

4.3. Định nghĩa quy trình

Các công việc cần thực hiện trong pha định nghĩa quy trình bao gồm:

a) Xây dựng quy trình theo các nhóm:

Căn cứ theo các vùng quy trình được đề xuất áp dụng trong mô hình CMMI- VSME để xây dựng ra các vùng quy trình liên quan tương ứng, tình hình thực tế tại EVNIT chưa triển khai áp dụng quy trình tích hợp sản phẩm trong giai đoạn thử nghiệm nên sẽ không áp dụng, vùng quy trình Kiểm tra (VER) và Xác nhận (VAL) được cụ thể hoá trong quy trình kiểm thử. Một số ví dụ cụ thể của các quy trình bao gồm:

a.1/ Quy trình lập kế hoạch và quản lý dự án:

Quy trình quản lý dự án nhằm thiết lập các hoạt động, quy tắc, hướng dẫn để khởi động, lập kế hoạch, thực hiện, theo dõi và kiểm soát, đóng dự án. Sơ đồ quy trình bao gồm các bước được mô tả tại Hình 4.2.

Thực hiện dự án Đóng vòng lặp/pha/dự án Lập kế hoạch dự án/ pha/ vòng lặp Theo dõi và kiểm soát dự án Khởi động dự án

Hình 4.2: Sơ đồ quy trình lập kế hoạch và quản lý dự án a.2/ Quy trình Quản lý yêu cầu:

Yêu cầu sau khi đã được thống nhất với khách hàng được đưa vào quản lý trong bảng “Danh sách yêu cầu”. Mỗi một yêu cầu được quản lý bởi các trạng thái trong sơ đồHình 4.3.

Open Yêu cầu đã được thống nhất thực hiện Designed Implemented Tested Cancelled Pending Deployed Accepted Tạm dừng thực hiện

Khách hàng hủy yêu cầu

Yêu cầu được thiết kế

Yêu cầu được lập trình

Yêu cầu được kiểm thử

Yêu cầu được triển khai

Yêu cầu được chấp nhận (UAT)

Hình 4.3: Sơ đồ trạng thái yêu cầu

Thực hiện quản lý trạng thái của các yêu cầu trong theo nguyên tắc sau:

cầu phần mềm và đã được thống nhất với khách hàng.

Trạng thái Designed: khi các yêu cầu được thiết kế và tài liệu thiết kế được phê (adsbygoogle = window.adsbygoogle || []).push({});

duyệt, các yêu cầu ở trạng thái “Designed”

Trạng thái Implemented: khi các yêu cầu đã được lập trình bao quát hết trong

phần mềm, các yêu cầu ở trạng thái “Implemented”

Trạng thái Tested: khi các yêu cầu đã được thực hiện kiểm thử và đáp ứng, các

yêu cầu ở trạng thái “Tested”

Trạng thái Deployed: sau khi cài đặt triển khai hệ thống cho khách hàng, trạng

thái của các yêu cầu được đổi thành “Deployed”

Trạng thái Accepted: sau khi khách hàng thực hiện kiểm thử nghiệm thu các

yêu cầu, trạng thái yêu cầu được đổi thành “Accepted”

Trạng thái Cancelled: các yêu cầu do khách hàng hủy bỏ được đổi trạng thái

thành “Cancelled”

Trạng thái Pending: các yêu cầu do khách hàng đồng ý tạm dừng không thực

hiện tại thời điểm hiện tại của dự án a.3/ Quy trình đào tạo:

Quy trình này nhằm đưa ra các quy định cụ thể cho hoạt động đào tạo. Hoạt động đào tạo được thực hiện theo các bước được mô tả trong sơ đồ Hình 4.4

Quy trình đào tạo Người

thực hiện Lưu đồ

Người

thông qua Đầu vào Đầu ra

Phòng nhân sự

Nhu cầu đào tạo từ các bộ phận

Lập kế hoạch đào tạo

Chuẩn bị nội dung đào tạo

Thực hiện đào tạo

Đánh giá kết quả Giám đốc Phòng nhân sự Giám đốc Bộ phận phụ trách đào tạo Bộ phận phụ trách đào tạo Phòng nhân sự

Nhu cầu đào tạo từ các bộ phận

Các tài liệu đào tạo

Báo cáo kết quả đào tạo Các tài liệu đào tạo

Kế hoạch đào tạo Tổng hợp nhu cầu đào tạo

Các lớp đào tạo Xác định nhu cầu

đào tạo (adsbygoogle = window.adsbygoogle || []).push({});

a.4/ Quy trình phân tích và thiết kế

Quy trình này mô tả các bước chính trong hoạt động phân tích và thiết kế sản phẩm cho các dự án phần mềm được phát triển bởi các phòng phần mềm tại EVNIT. Sơ đồ quy trình bao gồm các bước được mô tả tại Hình 4.5.

Quy trình Phân tích & Thiết kế Người thực

hiện

Người thông

qua Lưu đồ Đầu vào Đầu ra

Lập kế hoạch phân tích & thiết

kế

Tìm hiểu & phân tích yêu cầu

Bắt đầu

Phê duyệt yêu cầu

Thiết kế giải pháp

Phê duyệt thiết kế (Khách hàng) Yêu cầu được

chấp nhận ? Không chấp nhận Chấp nhận Thiết kế được chấp nhận? Không chấp nhận Kết thúc Chấp nhận - Trưởng dự án - QA Lãnh đạo phòng phần mềm

Kế hoạch dự án Kế hoạch phân tích & thiết kế chi tiết

- Nhóm nghiệp vụ - Nhóm giải pháp - QA - Trưởng dự án Khách hàng - Trưởng dự án - QA Khách hàng - Nhóm nghiệp vụ - Nhóm giải pháp - QA - Trưởng dự án - Kế hoạch dự án - Kế hoạch phân tích & thiết kế chi tiết

Lãnh đạo phòng phần mềm

Phê duyệt thiết kế (nội bộ) Thiết kế được chấp nhận? Không chấp nhận Chấp nhận - Hội đồng xét duyệt kiến trúc và công nghệ phần mềm của Trung tâm - QA - QA - Trưởng dự án - Lãnh đạo phòng phần mềm Khách hàng - Trưởng dự án - QA - Phiếu khảo sát - Tài liệu Prototype - Tài liệu tìm hiểu nghiệp vụ - Tài liệu Phân tích và đặc tả yêu cầu

- Danh sách yêu cầu

- Tài liệu T hiết kế tổng thể hệ thống

- Tài liệu T hiết kế Cơ sở dữ liệu

- Tài liệu T hiết kế màn hình - Tài liệu Phương án tích hợp các thành phần

Biên bản làm việc trong đó có xác nhận của khách hàng thống nhất các yêu cầu đã xác định

Quyết định phê duyệt hoặc không phê duyệt của Hội đồng xét duyệt kiến trúc và công nghệ phần mềm của Trung tâm

Tài liệu Phân tích và đặc tả yêu cầu

- Phiếu khảo sát - Tài liệu Prototype - Tài liệu tìm hiểu nghiệp vụ - Tài liệu Phân tích và đặc tả yêu cầu

- Tài liệu Thiết kế tổng thể hệ thống - Tài liệu Thiết kế Cơ sở dữ liệu

- Tài liệu Thiết kế màn hình

- Tài liệu Phương án tích hợp các thành phần

- Tài liệu T hiết kế tổng thể hệ thống - Tài liệu T hiết kế Cơ sở dữ liệu (adsbygoogle = window.adsbygoogle || []).push({});

- Tài liệu T hiết kế màn hình

- Tài liệu Phương án tích hợp các thành phần

Biên bản làm việc trong đó có xác nhận của khách hàng về những phần được cho là quan trọng trong thiết kế hệ thống

a.5/ Quy trình kiểm thử

Quy trình này nhằm đưa ra hướng dẫn cụ thể về các bước thực hiện kiểm thử trong quá trình sản xuất, bảo trì phần mềm ứng dụng trong EVNIT. Sơ đồ quy trình bao gồm các bước được mô tả tại Hình 4.6

Quy trình kiểm thử (test) Người

thực hiện Lưu đồ

Người

thông qua Đầu vào Đầu ra

Lập kịch bản kiểm thử

Lập báo cáo Kiểm thử Bàn giao chương trình ứng dụng Lập kế hoạch kiểm thử Tạo/Cập nhật HDSD Thực hiện kiểm thử và Sửa lỗi Kết thúc Đánh giá tổng thể hệ thống Kiểm tra tính ổn định của chương trình/ Bản Build S ử a l ỗ i K h ô n g đ áp ứ n g Trưởng nhóm kiểm thử Nhóm kiểm thử Nhóm phát triển Nhóm kiểm thử -Nhóm kiểm thử -Nhóm lập trình Trưởng nhóm kiểm thử Nhóm kiểm thử -Phòng QA, - Đội Dự án - Quản trị dự án - QA - Quản trị dự án - QA Nhóm kiểm thử Quản trị dự án Quản trị dự án Quản trị dự án -Quản trị dự án -QA Trưởng phòng QA, QTDA -Kế hoạch dự án -Tài liệu thiết kế tổng thể

-Tài liệu Đặc tả yêu cầu -Các tài liệu thiết kế (Tổng thể, màn hình, CSDL) -Chương trình ứng dụng Chương trình ứng dụng được bàn giao -Kịch bản kiểm thử -Danh sách lỗi Kết quả kiểm thử

-Tài liệu Đặc tả yêu cầu -Tài liệu thiết kế

-Ứng dụng được đánh giá -Các tài liệu thiết kế (Tổng thể, màn hình, CSDL) -Đặc tả yêu cầu -Kịch bản kiểm thử -Báo cáo kiểm thử

- Kế hoạch kiểm thử

-Kịch bản kiểm thử -Dữ liệu kiểm thử

Biên bản hoặc email bàn giao

Biên bản bàn giao đánh giá Hoặc email bàn giao

-Kết quả kiểm thử được ghi nhận vào kịch bản kiểm thử

Báo cáo kiểm thử

Tài liệu hướng dẫn sử dụng

Báo cáo đánh giá tổng thể

a.6/ Quy trình quản lý cấu hình phần mềm

Quy trình quản lý cấu hình được xây dựng để mô tả các hoạt động quản lý cấu hình (tài liệu, mã nguồn, phiên bản, ...) củacác dự án phần mềm trong EVNIT. Sơ đồ quy trình bao gồm các bước được mô tả Hình 4.7

Quy trình quản lý cấu hình

Vai trò Tiến trình thực hiện Kết quả

Lập kế hoạch quản lý cấu hình

- Cán bộ QLCH dự án - Trưởng dự án - Cán bộ QLCH EVNIT - Cán bộ QLCH

dự án Thiết lập môi trường quản lý cấu hình

Làm việc với các thành phần cấu hình (adsbygoogle = window.adsbygoogle || []).push({});

Giám sát & Kiểm soát cấu hình

- Cán bộ QLCH dự án - Thành viên dự án - Trưởng dự án - Cán bộ QLCH dự án

Không thông qua

Kế hoạch quản lý cấu hình

Thông báo phê duyệt/ Không phê duyệt Kế hoạch quản lý cấu hình

Môi trường làm việc online / môi trường đồng bộ được thiết lập.

- Các CIs được thêm mới /cập nhật / thiết lập baseline/release - Báo cáo tình trạng thay đổi trên các CI - Báo cáo BaseLine/ Release

Báo cáo kiểm soát tình trạng cấu hình

Cập nhật và lưu Hồ sơ cấu hình dự án

- Cán bộ QLCH dự án Hồ sơ cấu hình dự án Cập nhật các thành phần cấu hình dự án - Cán bộ QLCH dự án Các thành phần cấu hình được cập nhật lên kho QLCH Trung tâm

Xét duyệt kế hoạch quản lý cấu hình

Thông qua kế hoạch

Hình 4.7: Sơ đồ quy trình quản lý cấu hình

trình được mô tả trong luận văn này có thể không trùng khớp với mô hình thực tế áp dụng tại EVNIT.

b) Đào tạo, triển khai thí điểm:Bộ phận triển khai quy trình thực hiện hướng

dẫn, đào tạo cho các thành viên trong đội dự án bằng cách hướng dẫn trực tiếp từng thành viên của dự án. Cán bộ QA được phân công trực tiếp tham gia vào dự án để hỗ trợ và hướng dẫn dự án, đồng thời tiến hành thu thập các điểm không phù hợp của quy trình so với thực tế, các khó khăn vướng mắc của đội dự án gặp phải, .v.v..

c) Điều chỉnh quy trình: Sau khi kết thúc giai đoạn triển khai thí điểm, căn cứ

vào các thông tin về các vấn đề gặp phải khi áp dụng quy trình, bộ phận xây dựng quy trình tiến hành cải tiến và hiệu chỉnh quy trình cho phù hợp với thực tế.

4.4. Triển khai

a) Huấn luyện: Bộ phận triển khai quy trình thực hiện hướng dẫn, đào tạo cho

các thành viên trong đội dự án thông qua các hình thức như tổ chức hội thảo hoặc hướng dẫn trực tiếp từng thành viên của dự án.

b) Triển khai diện rộng: Lập kế hoạch và thực hiện các công việc cần thiết để

triển khai áp dụng chính thức cho tất cả các dự án.

c) Giám sát, đánh giá nội bộ:Sau khi triển khai diện rộng cần thực hiện các

công việc kiểm tra, giám sát và đánh giá tính hiệu quả của việc cải tiến quy trình để từ đó có kế hoạch cải tiến hiệu chỉnh cho phù hợp với thực tế.

Một phần của tài liệu luận văn: nghiên cứu hướng áp dụng mô hình CMMI ở các doanh nghiệp phần mềm vừa và nhỏ (Trang 50)