Sau hơn một năm áp dụng cải tiến (07/2013 –05/2014) quy trình theo hướng đề xuất của tác giảtạiEVNIT, đã đạt được một số kết quả sau:
Về mặt tổ chức:EVNIT đã thành lập bộ phận:
Bộ phận chuyên trách quản lý hệ thống quy trình chất lượng (Phòng QA)
Tổ công tác xây dựng, cải tiến quy trình sản xuất (SEPG)
Ban điều hành quy trình
Về công tác xây dựng quy trình: Đã xây dựng và ban hành các quy trình:
Quy định khung quy trình phát triển phần mềm trong EVNIT.
Quy trình quản lý cấu hình phần mềm.
Quy trình phân tích và thiết kế, các biểu mẫu sử dụng trong các giai đoạn phát triển phần mềm, bao gồm biểu mẫu: Lập kế hoạch, Phân tích, Thiết kế, Kiểm thử, Biên bản xác nhận đào tạo, nghiệm thu, .v.v..
Quy trình Kiểm thử, Hướng dẫn kiểm tra an ninh bảo mật ứng dụng, Hướng dẫn kiểm tra hiệu năng hệ thống ứng dụng Web.
Quy định cập nhật tình hình hỗ trợ và xử lý yêu cầu vận hành bảo trì phần mềm.
Hướng dẫn lập trình an toàn ứng dụng Web. Về triển khai công cụ hỗ trợ:
EVNIT đã triển khai kho cơ sở dữ liệu tập trung để quản lý các quy trình, quy định để cán bộ công nhân viên dễ dàng tra cứu khi cần.
Các quy trình, quy định sau khi ban hành đã được tổ chức phổ biến cho các cán bộ công nhân viên thông qua các kênh thông tin như văn bản, kho quy trình quy định, website nội bộ của EVNIT, email, tổ chức đào tạo trực tiếp.Hiệu quả mang lại của việc triển khai áp dụng cải tiến quy trình theo mô hình CMMI:
Triển khai quy trình và các công cụ quản lý cấu hình đã giúp cho các dự án thuận lợi trong công tác quản lý, giúp cho các bộ phận dễ dàng hơn trong làm việc nhóm và chia sẻ các thư viện/ mã nguồn dùng chung. Khi chưa áp dụng công cụ và quy trình quản lý cấu hình, công tác xử lý hồ sơ thủ tục dự án mất nhiều thời gian do không kiểm soát được sự thay đổi của file khi có nhiều người cùng cập nhật thông tin.
Nhờ triển khai tốt quy trình về hoạt động đào tạo đã giúp cho năng lực của cán bộ nhân viên được nâng cao, thể hiện qua việc cử nhân sự tham gia các khoá đào tạo do NetPro, SaiGonCTT phối hợp với Bộ Thông tin Truyền thông tổ chức như: khoá học tổng quan về mô hình CMMI v1.3, tiêu chuẩn ISO 27001, kỹ nghệ phần mềm, kiểm thử, kỹ nghệ thu thập yêu cầu, .v.v.. bên cạnh đó cũng mời các đối tác như IBM, Oracle, Microsoft, .v.v.. tổ chức các buổi hội thảo giới thiệu sản phẩm công nghệ mới.
Áp dụng quy định cập nhật tình hình hỗ trợ và xử lý yêu cầu vận hành bảo trì giúp cho khách hàng hài lòng hơn do thời gian xử lý nhanh hơn trước, các vấn đề của khách hàng yêu cầu được cập nhật lên hệ thống theo dõi, được sự giám sát của QA hàng tuần và nhắc nhở đối với những yêu cầu của khách hàng chưa được giải quyết đúng quy định (Một số lợi ích mang lại đượcnêu tại Phụ lục 1).
Nhờ có quy trình kiểm thử, hướng dẫn lập trình an toàn, hướng dẫn kiểm tra an ninh bảo mật cũng giúp cho đội dự án phát hiện và hạn chế được các lỗi bảo mật trong quá trình xây dựng và phát triển phần mềm cũng như trong giai đoạn triển khai cho khách hàng. Áp dụng quy trình kiểm thử đã giúp cho việc phát hiện sớm lỗi trong các pha phát triển.
Bên cạnh các kết quả đạt được cũng còn những công việc chưa thực hiện được như: chưa triển khai được quy trình tích hợp sản phẩm, chưa hình thành được bộ chỉ số đo lường đánh giá dự án, một số quy trình vẫn đang triển khai thí điểm với một vài dự án chứ chưa triển khai toàn bộ, công tác giám sát dự án chưa được triệt để.
Một số vấn đề khó khăn vướng mắc thường gặp tại các doanh nghiệp khác cũng gặp phải đối với EVNIT như: Nguồn lực bị giới hạn, do phải tập trung nhân sự vào các dự án trọng điểm có yêu cầu tiến độ gấp nên thường phớt lờ việc áp các quy trình; tâm lý ngại đổi mới của một cán bộ công nhân viên.
Từ các kết quả đạt được sau khi triển khai thí điểm EVNIT, tác giả nhận thấy hướng cận mô hình CMMI theo mô hình CMMI-VSME tương đối phù hợp với mô hình doanh nghiệp có quy mô vừa và nhỏ theo cáchtự nghiên cứu áp dụng mô hình CMMI để cải tiến quy trình sản xuất.
KẾT LUẬN
Việc áp dụng mô hình CMM/CMMI để cải tiến quy trình sản xuất của các doanh nghiệp phần mềm là cần thiết.Triển khai áp dụng "nghiêm túc“ mô hình CMMI sẽ giúp doanh nghiệp phần mềm cải tiến quy trình sản xuất, nâng cao năng lực con người từ đó nâng cao chất lượng sản phẩm, nâng cao năng lực cạnh tranh, .v.v.. Tuy nhiên việc triển khai áp dụng CMM/CMMI vào doanh nghiệp vừa và nhỏlà rất khó khăn, cần sự kiên trìvà quyết tâm của toàn tổ chức và có lộ trình thực hiện rõ ràng. Các doanh nghiệpvừa và nhỏ không cần thiết phải đánh giá CMMI nhưng doanh nghiệp đó muốn khẳng định "năng lực" của mình thì phải áp dụng CMMI.Với các nội dung đã trình bày, luận vănđãthực hiện được một số nội dung sau:
Thứ nhất, đã nêu ra được bức tranh tổng quan về tình hình áp dụng CMMI tại Việt Nam và thế giới.
Thứ hai, đưa ra được một số kinh nghiệm áp dụng CMM/CMMI của một số doanh nghiệp hoạt động trong lĩnh vực sản xuất phần mềm, dịch vụ Công nghệ thông tin trong và ngoài nước, đưa ra một số mô hình áp dụng CMMI được đề xuất triển khai cho doanh nghiệp vừa và nhỏ tại một số nước trên thế giới.
Thứ ba, đã đưa ra một hướng tiếp cận áp dụng mô hình CMMI cho các đơn vị, tổ chức và các doanh nghiệp phần mềm tham khảo, chỉ ra được các bước, các công việc cụ thể mà doanh nghiệp cần áp dụng.Các đề xuất của luận văn được áp dụng thử nghiệm với một đơn vị hoạt động trong lĩnh vực sản xuất phần mềm là Trung tâm Công nghệ thông tin, chi nhánh Tập đoàn Điện lực Việt Nam.
Bên cạnh những kết quả đạt được, còn một số nội dung chưa thực hiện được: Thứ nhất, chưa xây dựng được hệ thống các quy trình, biểu mẫu,hướng dẫn áp dụng đối với các vùng quy trình cụ thể.
Thứ hai, hướng áp dụng mới chỉ được áp dụng tại 1 đơn vị hoạt động trong lĩnh phát triển phần mềm trong ngành điện, chưa được áp dụng và kiểm chứng tại các doanh nghiệp phần mềm khác.
Thứ ba, số lượng bài học kinh nghiệm triển khai của các tổ chức, doanh nghiệp trong và ngoài nước còn chưa nhiều, chưa khảo sát được nhu cầu và ý kiến của các doanh nghiệp về áp dụng cải tiến quy trình theo mô hình CMMI.
Trong thời gian tới, thực hiện khảo sát thêm các doanh nghiệp phần mềm khác để nắm được các nhu cầu áp dụng mô hình CMMI, từ đó đưa ra hướng tiếp cận áp dụng mô hình CMMI cho các mức độ trưởng thành mức cao hơn. Đồng thời, triển khai áp dụng mô hình đề xuất với các đơn vị khác trong ngành điện, từ đó đánh giá tính hiệu quả của mô hình và có sự cải tiến cho phù hợp với tình hình thực tế tại Việt Nam.
Một số đề xuất kiến nghị nhằm hỗ trợ cho việc áp dụng mô hình CMMI tại Việt Nam, đưa nội dung môn học về mô hình CMMI vào các khoá đào tạo trong các trường Đại học nhằm bổ sung kiến thức cho sinh viên, giúp hình thànhvăn hoá và tác phong làm việc chuyên nghiệp tạo tiền đề cho các em khi được làm việc ở các môi trường chuyên nghiệp.
TÀI LIỆU THAM KHẢO Tiếng Việt
[1] Vũ Anh Dũng, Lê Hải Yến, Vũ Phương Thảo, Xa Mạnh Hùng (2010), "Thực tiễn hữu ích trong việc triển khai chuẩn CMMI cho các doanh nghiệp gia công
phần mềm Việt Nam: Bài học từ FPT Software", Tạp chí Khoa học ĐHQGHN,
Kinh tế và Kinh doanh 26, tr.105-117.
[2] Phan Thế Đại (2014), "Nâng cao năng lực sản xuất phần mềm tại các đơn vị
công nghệ thông tin trong EVN", Hội nghị khoa học và công nghệ điện lực toàn
quốc 2014, tr.679-692.
[3] Trần Hoài Nam (2011), Nghiên cứu, áp dụng các hệ thống quản lý chất lượng
đối với doanh nghiệp hoạt động trong lĩnh vực công nghiệp công nghệ thông tin, Báo cáo nghiên cứu khoa học, Vụ công nghệ thông tin.
[4] Đồng Thị Bích Thuỷ, Trần Đan Thư, Hoàng Vũ Quỳnh Hà (2005), Mô hình
CMMI một cách tiếp cận cải tiến quy trình phần mềm, Nhà xuất bản Khoa học
kỹ thuật, tr.64-75, 152-157. Tiếng Anh
[5] Asem Bassam Mahmoud Isawi (2011), Software Development Process
Improvement for Small Palestinian Software Development Companies, Master
of Engineering Management, at Faculty of Graduate Studies, An-Najah National University, Nablus, Palestine.
[6] Barry W. Boehm (1988), “A Spiral Model of Software Development and
Enhancement”, IEEE Computer, Vol. 21, No.5, pp.61-72.
[7] Carlos Simões, Mariano Montoni (2014), "Applying statistical process control in small sized evolutionary projects: results and lessons learned in the
implementation of CMMI-DEV maturity level 5 in Synapsis Brazil", Journal of
Software Engineering Research and Development.
[8] Dennis M.Ahern, Aaron Clouse, Richard Turner (2004), CMMI Distilled: A
Practical Introduction to Integrated Process Improvement, Second Editton.
[9] Faisal Tehseen Shah (2010), Optimum Software Process Improvement
Paradigm for Quality Practices in Software Industry, Thesis of Institute of
Quality and Technology Management Faculty of Engineering and Technology, at University of the Punjab, Quaid-e-Azam Campus, Lahore-Pakistan.
[10] Fatih YUCALAR, Senol Zafer ERDOGAN (2009), "A questionnair based
method for CMMI level 2 maturity assessment", Journal of aeronautics and
space technologies, Vol. 4, No.2.
[11] Fergal Mc Caffery, Philip S. Taylor, Gerry Coleman (2007), "Adept: A Unified Assessment Method for Small Software Companies", IEEE Computer Society,
pp. 24-31
[12] G.K.Viju, Mohammed Merghany Abd Elsalam, Khalid Ahmed Ibrahim, Mohammed Jassim, Mohammed Jassim (2013), "The Impact of Software
Process Improvements in Small and Medium Scale Enterprises", International
Journal of Soft Computing and Engineering, Volume-3, Issue-4.
[13] G.K.Viju, Mohammed Merghany Abd Elsalam, Khalid Ahmed Ibrahim, Mohammed Jassim Mohammed Jassim (2013), "Important Problems in Adopting Software Process Improvement by the Small and Medium Enterprises
– A Comparative Analysis", Computer Science and Information Security.
[14] Hanna Oktaba (2008), Software Process Improvement for Small and Medium Enterprises: Techniques and Case Studies, Information Science Reference, IGI Global.
[15] ISO (2008), ISO 9001:2008 Quality management systems – Requirements. [16] Karen M. Davis (2008), RTI Software Development Methodology and CMMI,
International Field Directors & Technologies Conference.
[17] M.P.Thapliyal, Pratibha Dwivedi (2010), "Software Process Improvement in
Small and Medium Software Organisations of India", International Journal of
Computer Applications, Vol. 7, No.12.
[18] Mary Beth Chrissis, Mike Konrad, Sandy Shrum (2011), CMMI for
Development: Guidelines for Process Integration and Product Improvement,
Third Edition.
[19] Naresh Kumar, A. S. Zadgaonkar, Abhinav Shukla (2013), "Evolving a New Software Development LifeCycle Model SDLC 2013 with Client Satisfaction",
International Journal of Soft Computing and Engineering, Volume-3, Issue-1.
[20] Muhammad Ali Babar, Mahmood Niazi (2008), "Implementing Software Process Improvement Initiatives: An Analysis of Vietnamese Practitioners'
Views", IEEE International Conference on Global Software Engineering, pp.
67-76.
[21] Paula Monteiro, Ricardo J. Machado, Rick Kazman, Cristina Henriques,
"Dependency Analysis between CMMI Process Areas", Springer Science, pp.
263–275.
[22] Richard Bechtold, Joseph E. Chow (2011), “Applied CMMI in Small or Extremely Small Organizations: A Case Study of Successful Techniques and
Lessons Learned”, SEPG North America 2011.
[23] Ross Jeffery, Mark Staples, Mahmood Niazi, Alan Abrahams, Paul Byatt, Russell Murphy (2007), "An exploratory study of why organizations do not
adopt CMMI", The Journal of Systems and Software, pp. 833-895.
(ARC, V1.3), Software Engineering Institute.
[25] SEI-2010-TR-033 (2010), CMMI for Development, Version 1.3, Software
Engineering Institute.
[26] SEI-2006-TR-004 (2006), Performance Results of CMMI-Based Process
Improvement, Software Engineering Institute.
[27] SEI-1993-TR-024 (1993), Capability Maturity Model for Software, Version 1.1,
Software Engineering Institute.
[28] Zahoor Ul Islam (2011), Software Process Improvement Framework for
Software Outsourcing Based On CMMI, Master of Science Thesis in Software Engineering and Management, University of Gothenburg, Sweden.
PHỤ LỤC 1. MỘT SỐ LỢI ÍCH ĐẠT ĐƯỢC KHI ÁP DỤNG CMMI TẠI EVNIT
1. Thống kê các issue của 3 dự án được triển khai tới nhiều đơn vị trong EVN Số liệu thống kê các đối với các loại: lỗi chương trình, lỗi do người sử dụng và yêu cầu hỗ trợ (sau đây gọi chung là issue) của 3 dự án được triển khai diện rộng trong EVN, thời gian lấy dữ liệu từ khi EVNIT triển khai công cụ quản lý lỗi từ 03/2013 đến 05/2014.
Bảng 4.1: Thống kê số lượng issue của 3 dự án từ 03/2013 – 05/2013 Phần
mềm 03/2013 04/2013 05/2013 06/2013 07/2013 08/2013 09/2013 10/2013 11/2013 12/2013 01/2014 02/2014 03/2014 04/2014 05/2014 PROJ1 153 197 140 160 139 150 141 120 135 160 130 137 125 110
PROJ2 50 40 35 70 56 26 48 40 35 36 38 30 32 25
PROJ3 9 6 13 13 5 4 13 9 8 11 7 12 6 7
Qua số liệu thống kê và biểu đồ cho thấy trong thời điểm 3 tháng đầu (03/2013 đến 05/2013) khi chưa có áp dụng quy định cập nhật yêu cầu và quy trình kiểm thử, số lượng các vấn đề được ghi nhận có sự tăng giảm thất thường.Từ tháng 09/2013 đến 10/2013 là thời điểm đã triển khai thí điểm quy định cập nhật yêu cầu hỗ trợ và quy trình kiểm thử, số lượng issue chưa thấy có dấu hiệu giảm rõ rệt, do mới áp dụng quy trình nên cán bộ nhân viên còn bỡ ngỡ. Từ 11/2013 đã ban hành và triển khai diện rộng, nhờ có sự giám sát, hỗ trợ của bộ phận QA đã hỗ trợ nhiều cho đội dự án trong hoạt động kiểm thử và hỗ trợ giải đáp thắc mắc cho khách hàng nên số lượng issue ghi nhận được trong thời gian này có giảm rõ rệt.
Dự án PROJ01 có số lượng issue nhiều nhất so với các dự án còn lại, được chọn để phân tích số liệu theo các loại: Lỗi chương trình, Lỗi do người dùng, Yêu cầu hỗ trợ
0 50 100 150 200 250
Biểu đồ thống kê số lượng issue 3 dự án từ tháng 03/2013 - 05/2014
Bảng 4.2: Thống kê issue theo loại của dự án PROJ01 Loại 03/ 2013 04/ 2013 05/ 2013 06/ 2013 07/ 2013 08/ 2013 09/ 2013 10/ 2013 11/ 2013 12/ 2013 01/ 2014 02/ 2014 03/ 2014 04/ 2014 05/ 2014 Lỗi chương trình 56 68 64 83 54 68 51 55 57 52 53 43 49 48 47 Lỗi do người dùng 78 63 48 64 53 69 65 35 31 35 32 28 33 28 30 Yêu cầu hỗ trợ 19 66 28 13 32 13 25 30 47 73 45 66 43 34 23 Qua số liệu tại bảng Bảng 4.2 và biểu đồ Hình 4.8, thấy rằng từ thời gian 03/2013 đến 05/2013, số lượng lỗi chương trình và lỗi do người dùng chiếm số lượng nhiều, do chưa áp dụng quy trình kiểm thử và quy định cập nhật xử lý yêu cầu, cũng chưa có quy định về danh mục các biểu mẫu hỗ trợ (trong đó có biểu mẫu tài liệu hướng dẫn sử dụng). Từ tháng 09/2013, đã có áp dụng quy trình kiểm thử và quy định cập nhật yêu cầu hỗ trợ, nhưng số lượng issue lỗi do người dùng vẫn cao, do người sử dụng thiếu các tài liệu hướng dẫn sử dụng, hoặc có nhưng nội dung không được cập nhật kịp thời dẫn đến sử dụng sai các chức năng của chương trình. Từ thời điểm 01/2014, triển khai thí điểm áp dụng biểu mẫu cho các giai đoạn phát triển của dự án, trong đó việc cập nhật các tài liệu hướng dẫn sử dụng, hướng dẫn cài đặt được thực hiện tốt giúp giảm số lượng lỗi do người dùng xuống đáng kể.
Hình 4.8: Biểu đồ thống kê loại issue của dự án PROJ01 0 10 20 30 40 50 60 70 80 90
Thống kê issue theo loại lỗi của dự án PROJ01
PHỤ LỤC 2. MỘT SỐ CÔNG CỤ HỖ TRỢ CHO PHÁT TRIỂN PHẦN MỀM
STT Phân nhóm công cụ Chi phí Chức năng
I Theo dõi, giám sát lỗi
- Mantis Miễn phí Quản lý, theo dõi tình hình sửa lỗi - JIRA Có phí Quản lý lỗi và quản lý công việc II Quản lý dự án
- dotProject Miễn phí Quản lý công việc, tiến độ dự án - Microsoft Project Có phí Quản lý công việc, tiến độ dự án III Kiểm thử
- Testlink Miễn phí Quản lý test case, test plan, test scripts - Selenium Miễn phí Kiểm thử tự động ứng dụng trên nền
tảng Web-base
- Quick Test Pro Có phí Kiểm thử tự động ứng dụng trên nền tảng Web-base, Win-form
- JMETER Miễn phí Kiểm thử hiệu năng ứng dụng IV Quản lý cấu hình
- Visual SVN, CVS Miễn phí Quản lý phiên bản mã nguồn, tài liệu - Visual Source Safe Có phí Quản lý phiên bản mã nguồn, tài liệu V Thiết kế
- StarUML Miễn phí Công cụ mô hình hoá - Microsoft Visio Có phí Công cụ hỗ trợ thiết kế VI Phát triển
- Eclip, Net Bean IDE Miễn phí Công cụ lập trình - Visual Studio Có phí Công cụ lập trình
PHỤ LỤC 3. ĐÁNH GIÁ NĂNG LỰC QUY TRÌNH CỦA EVNIT THEO CMMI CẤP ĐỘ 2 Vùng quy trình Mục tiêu Thực tế Tỷ lệ đạt so với mục tiêu Quản lý cấu hình (CM) SG1 - Thiết lập các Baseline cho các sản phẩm công việc
Chưa thực hiện tạo và quản lý Baseline các sản phẩm công việc
0
SG2 - Theo dõi và quản lý các thay đổi trên các sản phẩm công việc
Tại nội bộ từng dự án đã có sử dụng các công cụ quản lý như CVS, Visual Source Safe, MKS
60%
SG3 - Thiết lập và duy trì tính toàn vẹn của các sản
phẩm công việc Chưa có
0
GG2 - Thể chế hoá quy trình được quản lý
Mới có quy ước về cập nhật mã nguồn dự án lên các kho lưu trữ, chưa có ban hành chính thức toàn