QA (Quality Assurance) là gì? Quy trình, phương pháp QA


Trước khi tìm hiểu Quality Assurance, chúng ta hãy hiểu:





Quality là gì?





Quality là điều cực kỳ khó xác định và nó chỉ được nói đơn giản: “Phù hợp với mục đích sử dụng hoặc mục đích”.





Tất cả là nhằm đáp ứng nhu cầu và mong đợi của khách hàng về chức năng, thiết kế, độ tin cậy, độ bền và giá cả của sản phẩm.





Assurance là gì?





Assurance không có gì khác hơn 1 tuyên bố tích cực về một sản phẩm hoặc dịch vụ, nhằm mang lại sự tự tin. Đó là sự chắc chắn về một sản phẩm hoặc dịch vụ, rằng nó sẽ hoạt động tốt.





Nó cung cấp sự đảm bảo rằng sản phẩm sẽ hoạt động mà không có bất kỳ sự cố nào.





QA - Đảm bảo chất lượng
QA – Đảm bảo chất lượng. Ảnh: callcentrehelper.com









Dừng lại chút nào, nếu bạn đang #open_to_work, thử nghía qua các công việc đang tuyển trên Gamba nhé. Vào LINK NÀY để xem các job Data hoặc scan QR Code ở bên dưới nhé.





Xem và ứng tuyển các 'QA' job
Xem và ứng tuyển các ‘QA’ job









Quality Assurance trong Software Testing (Kiểm thử phần mềm)





Quality Assurance (QA) được định nghĩa là một thủ tục để đảm bảo chất lượng của các sản phẩm hoặc dịch vụ phần mềm do một tổ chức cung cấp cho khách hàng.





QA tập trung vào việc cải tiến quá trình phát triển phần mềm và làm cho nó hiệu suất và hiệu quả theo các tiêu chuẩn chất lượng được xác định cho các sản phẩm phần mềm.





Quality Assurance cũng thường được gọi là QA Testing.





Quy trình Quality Assurance





Phương pháp Quality Assurance có một chu trình xác định được gọi là chu trình PDCA hoặc chu trình Deming. Các giai đoạn của chu trình này là:





  • Plan
  • Do
  • Check
  • Act




Quy trình Quality Assurance PDCA
Quy trình Quality Assurance PDCA




Các bước trên được lặp lại để đảm bảo rằng các quy trình trong tổ chức được đánh giá và cải tiến một cách định kỳ.





Hãy xem xét chi tiết các bước của Quy trình QA ở trên:





  • Plan – Tổ chức lập kế hoạch và thiết lập các mục tiêu liên quan đến quy trình và xác định các quy trình cần thiết để cung cấp sản phẩm cuối Chất lượng cao.
  • Do – Phát triển và kiểm tra các Quy trình và cả những thay đổi về mặt thực hiện trong các quy trình
  • Check – Giám sát các quy trình, sửa đổi quy trình và kiểm tra xem nó có đáp ứng các mục tiêu đã xác định trước hay không
  • Act – Quality Assurance tester thực hiện các hành động cần thiết để cải tiến quy trình




Một tổ chức phải sử dụng Quality Assurance để đảm bảo rằng sản phẩm được thiết kế và thực hiện với các quy trình chính xác. Điều này giúp giảm các vấn đề và lỗi trong sản phẩm cuối cùng.





Quality Control (Kiểm soát chất lượng) là gì?





Quality Control là gì?
Quality Control là gì? Ảnh: investopedia.com




Kiểm soát chất lượng thường được viết tắt là QC. Đây là một quy trình Kỹ thuật phần mềm được sử dụng để đảm bảo chất lượng trong một sản phẩm hoặc một dịch vụ.





Nó không liên quan đến các quy trình được sử dụng để tạo ra một sản phẩm mà thay vào đó, nó kiểm tra chất lượng của “sản phẩm cuối cùng” và kết quả cuối cùng.





Mục đích chính của QC là kiểm tra xem sản phẩm có đáp ứng các thông số kỹ thuật và yêu cầu của khách hàng hay không.





Nếu một vấn đề hoặc sự cố được xác định, nó cần được khắc phục trước khi giao cho khách hàng.





QC cũng đánh giá mọi người dựa trên bộ kỹ năng của họ và truyền đạt các khóa đào tạo và chứng chỉ.





Đánh giá này là bắt buộc đối với tổ chức dựa trên dịch vụ và giúp cung cấp dịch vụ “hoàn hảo” cho khách hàng.





Sự khác biệt giữa Quality Control và Quality Assurance?





Đôi khi, QC bị nhầm lẫn với QA.





  • Quality Control là kiểm tra sản phẩm hoặc dịch vụ và kiểm tra kết quả.
  • Quality Assurance là kiểm tra các quy trình và thực hiện các thay đổi đối với các quy trình dẫn đến sản phẩm cuối cùng.




Quality Control vs. Quality Assurance
Quality Control vs. Quality Assurance




Ví dụ về các hoạt động QC và QA như sau:





Hoạt động Quality ControlHoạt động Quality Assurance
Kiểm tra toàn bộ (walkthrough)Kiểm tra chất lượng
Kiểm thửĐịnh nghĩa quy trình
Phát hiện lỗiNhận diện và lựa chọn công cụ
Kiểm tra checkpointĐào tạo về Quy trình và Tiêu chuẩn Chất lượng




Các hoạt động trên liên quan đến các cơ chế Kiểm soát và Đảm bảo Chất lượng cho bất kỳ sản phẩm nào chứ không phải về cơ bản là phần mềm. Còn đối với phần mềm:





  • QA trở thành SQA (Đảm bảo chất lượng phần mềm)
  • QC trở thành Software Testing (Kiểm thử phần mềm)




Khác biệt giữa SQA và Software testing





Bảng sau giải thích về sự khác biệt giữa SQA và Kiểm thử phần mềm:





SQAKiểm thử phần mềm
SQA là về quy trình kỹ thuật đảm bảo chất lượngKiểm thử phần mềm là kiểm tra một sản phẩm để tìm các vấn đề trước khi sản phẩm đi vào hoạt động
Bao gồm các hoạt động liên quan đến việc thực hiện các quy trình, thủ tục và tiêu chuẩn. Ví dụ – huấn luyện kiểm toánBao gồm các hoạt động liên quan đến xác minh sản phẩm. Ví dụ – thử nghiệm đánh giá
Tập trung vào quy trìnhTập trung vào sản phẩm
Kỹ thuật phòng ngừaKỹ thuật khắc phục
Biện pháp chủ độngBiện pháp phản ứng
Phạm vi của SQA được áp dụng cho tất cả các sản phẩm sẽ được tạo ra bởi tổ chứcPhạm vi của Kiểm thử phần mềm áp dụng cho một sản phẩm cụ thể đang được kiểm tra.




Thực hành tốt nhất trong Quality Assurance





  • Tạo môi trường kiểm thử mạnh mẽ
  • Lựa chọn tiêu chí phát hành sản phẩm một cách cẩn thận
  • Áp dụng kiểm thử tự động cho các khu vực có rủi ro cao để tiết kiệm tiền
  • Phân bổ thời gian thích hợp cho mỗi quy trình
  • Điều quan trọng là ưu tiên sửa lỗi dựa trên việc sử dụng phần mềm
  • Hình thành đội ngũ chuyên biệt để kiểm tra hiệu suất và bảo mật
  • Mô phỏng tài khoản khách hàng tương tự như môi trường sản xuất




Các chức năng Quality Assurance





Có 5 chức năng QA chính:





  1. Chuyển giao công nghệ: Chức năng này liên quan đến việc lấy tài liệu thiết kế sản phẩm cũng như dữ liệu thử và sai và đánh giá của nó. Các tài liệu được phân phối, kiểm tra và phê duyệt
  2. Đánh giá: Kế hoạch đánh giá tổng thể cho toàn hệ thống được chuẩn bị. Phê duyệt các tiêu chí kiểm tra để xác nhận sản phẩm và quy trình được thiết lập. Lập kế hoạch nguồn lực để thực hiện kế hoạch xác nhận được thực hiện.
  3. Tài liệu: Chức năng này kiểm soát việc phân phối và lưu trữ tài liệu. Bất kỳ thay đổi nào trong tài liệu đều được thực hiện bằng cách áp dụng quy trình kiểm soát thay đổi thích hợp. Phê duyệt tất cả các loại tài liệu.
  4. Đảm bảo chất lượng sản phẩm
  5. Kế hoạch cải tiến chất lượng




Chứng nhận Quality Assurance





Có một số chứng nhận trong ngành để đảm bảo rằng các Tổ chức tuân theo Quy trình Chất lượng Tiêu chuẩn.





Khách hàng coi đây là tiêu chí đủ điều kiện trong khi lựa chọn nhà cung cấp phần mềm.





ISO 9000





Tiêu chuẩn này được thiết lập lần đầu tiên vào năm 1987, và liên quan đến Hệ thống quản lý chất lượng. Điều này giúp tổ chức đảm bảo chất lượng cho khách hàng của họ và các bên liên quan khác.





Một tổ chức muốn được chứng nhận ISO 9000 được đánh giá dựa trên các chức năng, sản phẩm, dịch vụ và quy trình của họ.





Mục tiêu chính là xem xét và xác minh xem tổ chức có đang tuân theo quy trình như mong đợi hay không và kiểm tra xem liệu các quy trình hiện có có cần cải tiến hay không.





Chứng nhận này giúp:





  • Tăng lợi nhuận của tổ chức
  • Cải thiện thương mại trong nước và quốc tế
  • Giảm lãng phí và tăng năng suất nhân viên
  • Mang lại sự hài lòng cho khách hàng




Cấp độ CMMI





Capability Maturity Model Integrated (CMMI) là một phương pháp cải tiến quy trình được phát triển đặc biệt để cải tiến quy trình phần mềm.





Nó dựa trên khuôn khổ hoàn thiện quy trình và được sử dụng như một biện pháp hỗ trợ chung cho các quy trình kinh doanh trong ngành phần mềm.





Mô hình này được đánh giá cao và sử dụng rộng rãi trong các Tổ chức phát triển phần mềm.





CMMI có 5 cấp độ. Một tổ chức được chứng nhận CMMI cấp độ 1 đến 5 dựa trên sự hoàn thiện của Cơ chế đảm bảo chất lượng của họ.





  • Mức độ 1 – Ban đầu: Trong giai đoạn này môi trường chất lượng không ổn định. Đơn giản, không có quy trình nào được tuân theo hoặc ghi lại
  • Cấp độ 2 – Lặp lại: Một số quy trình được tuân theo có thể lặp lại. Cấp độ này đảm bảo các quy trình được tuân thủ ở cấp độ dự án.
  • Cấp độ 3 – Đã xác định: Tập hợp các quy trình được xác định và lập thành văn bản ở cấp độ tổ chức. Các quy trình đã xác định đó có thể được cải thiện ở một mức độ nào đó.
  • Cấp độ 4 – Được quản lý: Cấp độ này sử dụng các thước đo quy trình và kiểm soát hiệu quả các quy trình được tuân theo.
  • Cấp độ 5 – Tối ưu hóa: Cấp độ này tập trung vào những cải tiến liên tục của các quy trình thông qua học tập và đổi mới.




Mô hình Test Maturity (TMM)





Mô hình này đánh giá sự trưởng thành của các quy trình trong Môi trường thử nghiệm. Mô hình này cũng có 5 cấp độ, được định nghĩa dưới đây:





  • Cấp độ 1 – Ban đầu: Không có tiêu chuẩn chất lượng nào được tuân theo cho các quy trình thử nghiệm và chỉ các phương pháp đặc biệt mới được sử dụng ở cấp độ này
  • Mức độ 2 – Định nghĩa: Quá trình xác định. Chuẩn bị chiến lược kiểm thử, kế hoạch, trường hợp kiểm thử được thực hiện.
  • Cấp độ 3 – Tích hợp: Kiểm thử được thực hiện trong suốt vòng đời phát triển phần mềm (SDLC) – không gì khác ngoài việc tích hợp với các hoạt động phát triển, ví dụ: V- Model.
  • Cấp độ 4 – Quản lý và Đo lường: Việc xem xét các yêu cầu và thiết kế diễn ra ở cấp độ này và các tiêu chí đã được thiết lập cho từng cấp độ kiểm tra
  • Cấp độ 5 – Tối ưu hóa: Nhiều kỹ thuật phòng ngừa được sử dụng cho các quy trình kiểm thử và công cụ hỗ trợ (Tự động hóa) được sử dụng để cải thiện các tiêu chuẩn và quy trình kiểm thử.




Tóm lại





Quality Assurance là kiểm tra xem sản phẩm được phát triển có phù hợp để sử dụng hay không.





Vì vậy, tổ chức cần phải tuân theo các quy trình và tiêu chuẩn cần được cải tiến định kỳ. Nó tập trung chủ yếu vào chất lượng sản phẩm / dịch vụ mà chúng ta cung cấp cho khách hàng trong hoặc sau khi triển khai phần mềm.





Tham khảo: guru99.com