Kiểm thử phần mềm

Kiểm thử phần mềm

Có nhiểu cảm nhận sai về kiểm thử phần mềm mà tạo ra nhiều lẫn lộn trong sinh viên. Nhiều sinh viên nghĩ kiểm thử phần mềm là việc chán ngán vì người kiểm thử ngồi trước máy tính chờ đợi người phát triển đưa cho họ mã để kiểm thử. Nhiều sinh viên tin rằng kiểm thử là “việc tạm thời” với họ để thu được kinh nghiệm trước khi tiến lên việc phát triển. Một số công ti phần mềm thuê người với đào tạo giới hạn để là người kiểm thử vì họ không có đủ kĩ năng để làm việc như người phát triển. Đây là các lí do tại sao phần mềm có nhiều lỗi và thường không thực hiện đúng.

Kiểm thử là qui trình sáng tạo hỗ trợ cho tổng thể qui trình phát triển phần mềm. Điều này chỉ xảy ra khi người kiểm thử làm nỗ lực hướng tới hiểu đóng góp của họ vào qui trình phát triển và cách cải tiến luồng công việc dự án và trao đổi với các thành viên tổ dự án khác. Những người kiểm thử có kinh nghiệm bao giờ cũng cải tiến kĩ năng của họ, điều cho phép họ tiếp cận tới kiểm thử từ cách tiếp cận đa ngành. Họ bao giờ cũng lấy sáng kiến để bịt kín lỗ hổng giữa người phát triển và người dùng. Họ hiểu quan điểm của người dùng bằng việc hiểu môi trường doanh nghiệp rồi trao đổi với người phát triển lí do tại sao lỗi cần được sửa theo cách nào đó. Họ cũng hiểu quan điểm của người phát triển rồi trao đổi với người dùng tại sao những chức năng nào đó phải được ưu tiên theo cách nào đó. Đó là lí do tại sao những người kiểm thử có kinh nghiệm không bao giờ chờ đợi cho tới khi mã được viết xong và bắt đầu kiểm thử. Họ bắt đầu sớm trong dự án ngay trong pha yêu cầu bởi vì họ phải phát triển các trường hợp kiểm thử để làm kiểm nghiệm phần mềm đó đáp ứng yêu cầu của người dùng.

Ngay cả ngày nay, ít sinh viên hiểu qui trình kiểm thử. Họ tin rằng kiểm thử nghĩa là kiểm mã của người phát triển để tìm lỗi mà không hiểu rằng họ phải được tham gia vào toàn thể qui trình phát triển phần mềm. Nhiều người thậm chí không biết vòng đời phát triển phần mềm và tầm quan trọng của chất lượng trong dự án phần mềm. Nhiều sinh viên không nhận biết về mục đích và mục tiêu doanh nghiệp của dự án như một phần của chức năng doanh nghiệp lớn hơn của công ty. Không may, nhiều chương trình đào tạo vẫn hội tụ vào khía cạnh lập trình mà không dạy về qui trình phần mềm và vai trò của người kiểm thử phần mềm trong qui trình phát triển toàn thể. Đó là lí do tại sao có nhiều hiểu lầm giữa những người phát triển và người kiểm thử mà tạo ra xung đột không cần thiết. Nhiều người kiểm thử không hiểu người phát triển, thấy họ không thân thiện, và cảm thấy không thoải mái với họ. Họ thường tránh xa người phát triển mà họ đáng phải làm việc cùng. Họ không biết cách chia sẻ quan điểm của họ với những người phát triển và làm đóng góp quan trọng cho dự án. Cuối cùng nhiều người kiểm thử chấm dứt một cách thụ động bằng việc chỉ kiểm thử mã thay vì tham gia vào toàn thể qui trình phát triển.

Người kiểm thử có kinh nghiệm không hành động thụ động. Họ bắt đầu sớm bằng việc gặp gỡ với người dùng để cho họ có thể hiểu được kiểu kiểm thử mà được mong đợi từ người dùng. Điều này cũng giúp ưu tiên hoá khu vực kiểm thử mà có thể được người dùng kiểm nghiệm. Họ bao giờ cũng khởi đầu các cuộc họp đều đặn điều cho phép họ và những người phát triển trao đổi thông tin. Cả hai bên cũng hiểu loại phản hồi được mong đợi trong các cuộc họp này và cùng nhau phát triển một qui trình được xác định để nhận diện và giải quyết các vấn đề cùng nhau. Bằng việc có qui trình được xác định tốt, họ có thể cải tiến trao đổi và trách nhiệm của từng tổ để đảm bảo chất lượng cao và quan hệ năng suất cho dự án.

Ngày nay, nhiều người phát triển và kiểm thử phần mềm không hiểu tầm quan trọng của việc có qui trình được xác định. Không có qui trình, tương tác sẽ xảy ra ở mức cá nhân và xung đột thường xảy ra. Người kiểm thử đổ lỗi cho người phát triển phạm phải quá nhiều lỗi. Người phát triển phàn nàn rằng người kiểm thử không hiểu tư duy logic của họ. Có qui trình được xác định rõ sẽ khử bỏ loại xung đột này và tránh các vấn đề con người giữa các thành viên tổ dự án. Người kiểm thử không có kinh nghiệm không hiểu nhu cầu duy trì trao đổi tốt với người phát triển. Họ không biết cách tham gia sớm vào trong dự án bằng việc tham dự vào mọi pha phát triển. Nhiều người chỉ đợi cho tới khi mã được viết xong rồi bắt đầu kiểm thử. Lúc đó là quá muộn và đó là lí do tại sao nhiều sản phẩm phần mềm có lỗi. Kĩ năng trao đổi là tiêu chí bản chất trong kiểm thử. Có người có kĩ năng đúng tạo điều kiện cho người kiểm thử duy trì mối quan hệ tốt với người phát triển và cấp quản lí, trong khi vẫn cho phép người kiểm thử hiểu quan điểm của người phát triển và cẩn thận về bản chất của lỗi được trình cho sửa.

Chức năng kiểm thử yêu cầu người kiểm thử phải tỉnh táo và nhận biết về những thay đổi bên trong sản phẩm phần mềm dưới kiểm thử vào mọi lúc và có khả năng ra quyết định đúng và thời điểm được yêu cầu. Người kiểm thử bao giờ cũng phải tìm phương tiện để cập nhật tri thức và kĩ năng của mình vì điều đó giúp cải tiến hiểu biết của họ về công việc của người phát triển. Bằng đào tạo liên tục những người kiểm thử sẽ phát triển kĩ năng được cần của họ để hiểu các điểm tinh tế hơn của qui trình kiểm thử phần mềm và cho phép họ đưa ra phán đoán tốt về khu vực rủi ro cao nên được tập trung cho kiểm thử trong thời gian giới hạn đã cho.

Kiểm thử là chức năng rất quan trọng mà mọi công ti phải có để đảm bảo về chất lượng của sản phẩm của mình. Nó là một nghề xứng đáng được nhiều kính trọng. Kiểm thử là nói rõ về tiến bộ và bao giờ cũng phải được tuân theo bằng các trường hợp kiểm thử chính xác để đảm bảo chất lượng của sản phẩm cuối. Hội tụ vào khách hàng là tính năng then chốt trong phát triển sản phẩm phần mềm chất lượng và điều quan trọng là mọi thành viên tổ dự án đều hiểu nghĩa của chất lượng theo khía cạnh này. Thành công của nỗ lực kiểm thử tuỳ thuộc vào sản phẩm phần mềm thành công. Ngày nay, phần mềm đang được thực hiện trong môi trường phát triển nhanh, điều mấu chốt hơn là có những người phát triển có kinh nghiệm để ngăn ngừa những rủi ro của việc chuyển giao sản phẩm phần mềm được kiểm thử kém.

Mặc dầu những người kiểm thử tới với kĩ năng, kỉ luật, tính sáng tạo và kinh nghiệm đa dạng, chất lượng của sản phẩm phần mềm tuỳ thuộc vào giá trị của những cá nhân này trong việc đóng góp hướng tới nỗ lực kiểm thử và thành công chung của qui trình kiểm thử. Điều quan trọng là những người kiểm thử được đào tạo cần thiết trong việc hiểu phần của họ trong nỗ lực kiểm thử. “Thực hành kém” của việc thuê người với kĩ năng giới hạn, những người có vài tháng đào tạo, những người sẵn lòng làm việc ít nên bị khử bỏ. Có nhiều khảo cứu kết luận rằng: “Tiết kiệm tiền bằng việc thuê người không có kĩ năng, trả lương thấp làm người kiểm thử bao giờ cũng tốn kém cho công ti nhiều hơn do vấn đề chất lượng kém.” Kiểm thử là nghề chuyên nghiệp quan trọng. Người kiểm thử đóng vai trò mấu chốt trong phát triển phần mềm và họ xứng đáng được thừa nhận nhiều hơn nữa về đóng góp của họ.

Tác phẩm, tác giả, nguồn

  • Tác phẩm: Quản lý dự án
  • Nguồn: Blog của giáo sư John Vu, Carnegie Mellon University.
  • Wiki hóa: https://kipkis.com

Có thể bạn muốn xem