LÀM SAO ĐỂ QUẢN LÝ CHẤT LƯỢNG TỐI ƯU VÀ LÂU DÀI?
28/06/2021 864

Có nhiều tiêu chuẩn để đánh giá chất lượng sản phẩm. Chúng ta thường nghe đến các tiêu chuẩn chất lượng ISO, GMP. Đặc biệt, khi nói đến phần mềm, tiêu chuẩn CMMI được sử dụng phổ biến và rộng rãi nhất.
Vậy hãy cùng CO-WELL Asia tìm hiểu tiêu chuẩn quản lý chất lượng CMMI là gì, các yếu tố ảnh hưởng đến chất lượng phần mềm và làm sao để đảm bảo chất lượng ở mức cao nhất có thể thông qua bài viết này nhé!
I.Tiêu chuẩn quản lý chất lượng CMMI
Tiêu chuẩn CMMI là thuật ngữ được nhắc đến nhiều trong các công ty thuộc lĩnh vực Công Nghệ Thông Tin.
CMMI là một tập hợp “các phương pháp thực thi tốt nhất – best practices” bắt nguồn từ những doanh nghiệp dẫn đầu trong ngành, liên quan đến các sản phẩm kỹ thuật và phần mềm. Các doanh nghiệp có thể đạt được CMMI từ mức độ 1 đến 5 tùy thuộc vào mức độ tuân thủ của các lĩnh vực hoạt động với các vùng quy trình theo yêu cầu của CMMI.
II.Quy trình quản lý chất lượng phần mềm
Trên thực tế có nhiều yếu tố ảnh hưởng đến chất lượng, cụ thể là:
- Process – Quy Trình bao gồm các yếu tố thủ tục, phương pháp thực hiện.
- Technology – Kỹ thuật bao gồm các yếu tố về công cụ, thiết bị và môi trường
- People – Con người bao gồm các yếu tố về năng lực, đào tạo và đặc biệt là động lực
Có thể nói chất lượng của một hệ thống phần mềm được chi phối bởi chất lượng của quy trình được sử dụng để phát triển nó
Từ các yếu tố để có thể quản lý chất lượng phần mềm, chúng ta hiểu được Tầm quan trọng của quy trình đối với chất lượng phần mềm cũng như năng lực của công ty/ dự án. Vậy muốn đảm bảo chất lượng phần mềm cần phải tuân thủ quy trình như thế nào?
CMMI yêu cầu việc đồng bộ hóa các quy trình với nhu cầu của doanh nghiệp để chúng trở thành một phần của văn hóa doanh nghiệp và không bị phá vỡ dưới sự áp lực của deadlines.
Đảm bảo chất lượng ngay từ giai đoạn phần tích spec đến nghiệm thu sản phẩm với quy trình như sau:
1. Confirm độ hiểu spec:
Cần xác định được:
- Mục đích/ chức năng của dự án
- Scope thực hiện dự án.
- Nếu là dự án maintain thì cần tiến hành điều tra để xác định phạm vi chỉnh sửa và phạm vi ảnh hưởng của dự án đến hệ thống phần mềm.
- Note lại những nội dung được đặc tả trong tài liệu: input, xử lý, output, validate…
- Note lại những nội dung bản thân chưa hiểu/ khó hiểu để có thể confirm với team dự án/ KH để làm rõ.
2. Meeting confirm độ hiểu spec:
- Sau thời gian đọc hiểu spec thì sẽ có các buổi họp nhằm mục đích confirm về độ hiểu spec của mọi người trong team trước khi bắt tay vào thực hiện dự án.
- Trong buổi meeting, mọi người trình bày độ hiểu của mình đối với từng câu chữ được đặc tả trong tài liệu yêu cầu mà khách hàng đã gửi.
- Những nội dung mà mỗi người chưa hiểu/ khó hiểu sẽ được bàn luận trong buổi meeting này, để mọi người xác định đúng hướng mà mình sẽ thực hiện trong quá trình làm dự án.
- Những nội dung mà team chưa thể chốt được/ chưa thể trả lời được thì sẽ confirm với khách hàng bằng Q&A.
3. Tạo Basic Design, Detail Design.
4. Thực hiện review tài liệu Basic Design, Detail Design
*(Nội dung bài viết này chỉ xoay quanh các công việc liên quan đến QA nên các hạng mục của DEV sẽ không đi vào cụ thể)
5. Quan điểm test (QDT)
- Sau khi hoàn thành buổi meeting confirm về độ hiểu spec thì QA sẽ tiến hành tạo Quan Điểm test.
- Dựa trên tài liệu yêu cầu của KH mà QA sẽ thực hiện đưa ra Quan điểm test để thực hiện kiểm tra chất lượng phần mềm.
- Khi thực hiện tạo xong QDT sẽ tiến hành review QDT theo trình tự như sau:
QA thực hiện self-review → Team Leader review → BSE review (→ PQA review tùy quy trình của mỗi công ty) → gửi Khách hàng review.(※) - Trong bất cứ khâu review nào nếu có comment thì QA sẽ thực hiện sửa chữa và quy trình review sẽ được lặp lại cho đến khi khách hàng approve sản phẩm thì sẽ chuyển qua khâu tiếp theo.
6. Tạo testcase
- Sau khi QDT đã được KH approve thì QA sẽ dựa vào QDT để viết testcase bằng cách triển khai các trường hợp test.
- Xác định điều kiện tiền đề
- Xác định giá trị input- output
- Xác định thao tác thực hiện
- Đối với dự án maintain thì sẽ thực hiện test và confirm trước chỉnh sửa.
- Khi tạo xong Testcase sẽ tiến hành review testcase theo thứ tự như đã mô tả ở (※)
7. Test và lấy evidence để đảm bảo chất lượng phần mềm
- Khi khách hàng đã approve testcase, QA sẽ thực hiện test và lấy evidence.
- Trong quá trình test nếu có issue xảy ra thì sẽ liên hệ team phát triển/ khách hàng để xử lý.
- Một số trường hợp cần update lại testcase cần phải log Q&A để hỏi ý kiến KH, KH approve thì mới tiến hành update testcase và thực hiện review lại testcase theo như mô tả ở (※)
- Khi thực hiện test nếu có bug hoặc issue xảy ra thì cần tiến hành log bug lưu lại để làm bằng chứng sau này.
8. Tiến hành buổi phân tích bug gặp phải trong quá trình thực hiện dự án.
- Sau mỗi dự án thì sẽ có buổi phân tích bug gặp phải trong quá trình làm dự án. Đó là những bug Teamlead review, BSE review, bug trả về từ phía KH. Tùy thuộc vào mật độ của bug, tính chất của bug, độ nghiêm trọng của bug mà mọi người sẽ cùng ngồi với nhau cùng phân tích và tìm ra giải pháp để tránh lần sau không bị mắc lại bug đã gặp.
- Sau buổi phân tích bug sẽ chọn lựa các bug điển hình để đưa vào checklist tiến hành triển khai ngang cho toàn bộ các dự án trong cùng hệ thống sau này.
Ngoài ra, một số trường hợp điển hình sẽ tiến hành làm knowhow về các issue thường gặp phải trong quá trình làm dự án.
9. Close từng giai đoạn dự án và tạo knowhow để quản lý chất lượng
Để đảm bảo chất lượng cho các dự án trong cùng hệ thống sẽ làm sau này, việc tạo knowhow nghiệp vụ là một việc làm quan trọng và cần thiết.
Vì sao phải làm knowhow nghiệp vụ?
- Knowhow nghiệp vụ được hiểu như là một sản phẩm trí tuệ của người đi trước.
- Tài liệu này không chỉ giúp cho các bạn tham gia dự án sau có thể dễ dàng nắm bắt nghiệp vụ của hệ thống, mà còn là đường tắt để giảm bớt thời gian điều tra nghiệp vụ hệ thống liên quan trong quá trình làm dự án.
- Knowhow nghiệp vụ đối với một số khách hàng còn là tài liệu hướng dẫn khi thực hiện hệ thống
- Dựa vào knowhow nghiệp vụ có thể đề xuất các nội dung tối ưu hệ thống cho khách hàng. Từ đó đạt được các lợi ích mà chuẩn quản lý CMMI hướng đến.
Hi vọng những chia sẻ ở trên sẽ giúp ích cho các bạn trong quá trình quản lý chất lượng phần mềm.
Kim Thu, CO-WELL Asia
Đọc thêm các bài viết về Kiểm thử phần mềm tại đây.
Follow fanpage CO-WELL Asia để cập nhật các thông tin hữu ích và thú vị.