Mẹo để lập kế hoạch và quản lý Testing Projects có hiệu quả
Lập kế hoạch kiểm thử dự án phần mềm là một trong những tài liệu quan trọng trong quá trình quản lý dự án. Đó là phương thức mà mỗi nhóm cá nhân sử dụng để quản lý các mục tiêu cần đạt được trong một dự án. Là cấp độ gần nhất mô tả rõ ràng, hợp lý cách kiểm thử một dự án phần mềm. Đặc biệt với một ...
Lập kế hoạch kiểm thử dự án phần mềm là một trong những tài liệu quan trọng trong quá trình quản lý dự án. Đó là phương thức mà mỗi nhóm cá nhân sử dụng để quản lý các mục tiêu cần đạt được trong một dự án. Là cấp độ gần nhất mô tả rõ ràng, hợp lý cách kiểm thử một dự án phần mềm. Đặc biệt với một dự án test, lập kế hoạch cho dự án không chính xác có thể gây ra những ảnh hưởng nghiêm trọng khi tiến hành test từng module cũng như khi kiểm tra và đảm bảo chất lượng tổng thể cho toàn bộ sản phẩm.
Trong phần hướng dẫn lập kế hoạch kiểm thử này , chúng ta sẽ tìm hiểu:
- Các bước lập kế hoạch kiểm thử tổng thể cho một dự án test.
- Đề cập đến một số trường hợp cụ thể trong quản lý resource, phân công công việc và kỹ năng báo cáo
Quy trình lập kể hoạch kiểm thử:
Dưới đây, là các bước tóm tắt các giai đoạn khác nhau trong quá trình lập kế hoạch kiểm thử.
Giai đoạn 1: Xem xét và phân tích các yêu cầu
Đây là bước đầu tiên đóng vai trò rất quan trọng trong bất kỳ dự án nào. Khi tiến hành phân tích các yêu cầu, test team cần nhận biết và xác định rõ những item nào cần phải được kiểm tra. Thường thì đó sẽ là những item cơ bản mà người dùng cuối sẽ sử dụng trong hệ thống nên cần được kiểm tra một cách chi tiết nhất có thể. Các item hoặc các tính năng được chọn test thường là phần hoạt động chính của sản phẩm, thường sẽ là các yêu cầu về chức năng. Có thể có một số yêu cầu phi chức năng như xác định hiệu suất hoặc sự tương tác giữa các chức năng của phần mềm. Những người nắm được nghiệp vụ và có thể định nghĩa được requiment sẽ tham gia vào hoạt động này. Các requiment sẽ được ghi chép lại và được sử dụng. Tất cả các ý kiến xem xét và phản hồi sẽ được tổng hợp thành một tài liệu chính thức cuối cùng.
Giai đoạn 2: Xác định phạm vi kiểm tra
Hoạt động xác định phạm vi kiểm tra là phần tiếp theo của giai đoạn phân tích yêu cầu và là một hoạt động độc lập. Khi các yêu cầu đã được làm rõ thì nhóm test sẽ căn cứ vào đó liệt kê ra những item nào cần được kiểm thử và item nào không. Hoạt động này nhằm mục tiêu xác định những vùng test bao phủ. Ví dụ: Nhóm thực hiện FVT (kiểm thử chức năng) và nhóm thực hiện SVT (kiểm thử hệ thống) sẽ có những phạm vi kiểm thử hoàn toàn khác nhau, và việc kiểm thử phần tính năng chung có thể được thực hiện hoặc không ở giai đoạn FVT. Ngoài ra nếu các dự án kiểm thử đòi hỏi tự động hóa, cũng sẽ căn cứ vào giai đoạn này để đánh giá tính khả thi. Khi phạm vi được xác định rõ ràng thì việc xác định rõ effort cũng như các item cần được kiểm thử sẽ trở nên dễ dàng và chính xác hơn.
Giai đoạn 3: Thiết kế các chiến lược kiểm thử theo phạm vi
Các đội kiểm tra sau khi thu thập các yêu cầu và xác định phạm vi của các kiểm thử sẽ đưa ra tài liệu chiến lược kiểm thử, xác định phương pháp kiểm thử để đạt được các mục tiêu kiểm thử. Một tài liệu chiến lược kiểm thử không cần phải cập nhật thường xuyên. Ở mức độ cao, nội dung của các tài liệu chiến lược kiểm thử sẽ bao gồm phạm vi và mục tiêu của kiểm thử, phương pháp, vai trò và trách nhiệm của từng cá nhân, các công cụ xác định để kiểm thử, các số liệu xác định, rủi ro và kế hoạch giảm thiểu, báo cáo và cơ chế theo dõi, vv
Giai đoạn 4: Xác định các công cụ cần thiết để kiểm tra và quản lý
Dựa vào việc tự động hóa những gì, tự động hóa bằng CLI (Command Line Interface) hoặc tự động hóa GUI thì sẽ xác định các công cụ kiểm thử tương ứng. Ngoài ra cần có các công cụ để kiểm tra quản lý giúp tạo và phân công công việc, theo dõi tiến độ kiểm tra, xác định các trở ngại và làm các báo cáo tiến độ. Chúng tôi sẽ thảo luận chi tiết trong phần thứ hai của hướng dẫn này.
Giai đoạn 5: Ước tính effort test và effort của cả team
Ước tính effort chính xác có thể ngăn chặn bất kỳ sự chậm trễ thời gian nào và giúp cân bằng các nguồn lực cần thiết. Các yếu tố chính sẽ ảnh hưởng đến hoạt động này là: số lượng người trong nhóm, kỹ năng của từng người trong nhóm, thái độ làm việc của thành viên. Việc ước tính effort là bắt buộc phải có.
Giai đoạn 6: Xác định lịch trình kiểm thử
Sau khi có được danh sách các item có thể kiểm thử sẽ tiến hành chia nhỏ thành các đầu mục hợp lý và ước tính effort đầy đủ cho từng đầu mục đó. Như vậy sẽ xác định được một lịch trình kiểm tra, đo lường chi tiết.
Giai đoạn 7: Kế hoạch hỗ trợ
Một dự án mới hay dự án nâng cấp từ một hệ thống đã tồn tại trước đó thì đều yêu cầu nhóm kiểm thử phải có kỹ thuật tốt để đảm bảo quá trình kiểm thử tổng thể đạt kết quả cao nhất.
Giai đoạn 8: Xác định và cài đặt các môi trường kiểm thử
Xác định các cơ sở hạ tầng là cần thiết để kiểm thử hệ thống và chuẩn bị tất cả các yêu cầu về phần cứng, phần mềm cần thiết cũng như kết nối mạng để hỗ trợ việc kiểm thử. Đây là một yếu tố rất quan trọng trong giai đoạn lập kế hoạch, sẽ chi phối sự ổn định của môi trường kiểm thử, và có tác động trực tiếp đến các lỗi tìm được của phần mềm.
Giai đoạn 9: Xác định các số liệu kiểm thử
Kiểm thử phần mềm Metrics và các phép đo số liệu kiểm tra nói chung là phương pháp định lượng để xác định chất lượng của sản phẩm hoặc hệ thống. Khi bắt đầu của bất kỳ dự án nào, các đơn vị đo lường cần thiết sẽ hỗ trợ trong việc xác định cơ hội nào để cải thiện chất lượng của dự án. Nói chung để đạt được mục tiêu đảm bảo chất lượng, các chỉ số chính là thước đo đánh giá chất lượng của sản phẩm và quy trình.
Giai đoạn 10: Tạo các kế hoạch kiểm thử, đánh giá và phê duyệt
Một tài liệu về kế hoạch kiểm thử không chỉ là kiểm thử trung tâm mà là việc giải thích các câu hỏi "kiểm thử cái gì", "khi nào thì kiểm thử", "kiểm thử bằng cách nào" và "ai sẽ là người thực hiện kiểm thử". Câu trả lời được xác định từ các tài liệu kỹ thuật như tài liệu mô tả các trường hợp kiểm thử (use case), tài liệu design, vv Đến đây, chúng ta đã thảo luận qua về các giai đoạn khác nhau trong quy hoạch dự án. Mỗi giai đoạn đã có hướng dẫn riêng nên phần này của bài viết nhằm mục đích nói về nhiệm vụ của lập kế hoạch. Những nhiệm vụ này nếu không phù hợp sẽ có ảnh hưởng xấu đến các nhóm kiểm thử và sản phẩm. Chúng ta hãy nhìn vào những nhiệm vụ, tầm quan trọng của nó và tham khảo các lời khuyên để linh động thay đổi thứ tự thực hiện của chúng nhằm quản lý các dự án bảo đảm chất lượng hiệu quả nhất có thể.
Quản lý hiệu quả một dự án kiểm thử
Khi các kỹ thuật lập kế hoạch hiệu quả được áp dụng, bất kỳ rủi ro hoặc lỗi có thể dễ dàng được xác định ngay cả trước khi kiểm thử thực sự bắt đầu. Mặc dù nhiệm vụ của mỗi người có tương quan với nhau, nhưng nó luôn đem lại giá trị nhất định.
Phân bổ và phân chia nhiệm vụ
Việc này dựa vào thông số khi ước lượng effort và số lượng thành viên trong team ở giai đoạn lập kế hoạch. Khi nắm bắt được kỹ năng, quan điểm, thái độ, số người của các đội sẽ căn cư vào đó để phân bổ các nhiệm vụ:
#1) Một thực tế rất tốt là hãy để cả đội của bạn ngồi lại với nhau và truyền đạt các mục tiêu cũng như lý do cho từng nhiệm vụ một cách rõ ràng. Một khi biết được cách làm phù hợp cho một công việc cụ thể trong dự án sẽ giúp mọi người định hình được một phương pháp hoàn thành chúng và từ đó giúp họ dễ dàng bước chân về phía trước.
#2) Chuẩn bị một biểu đồ kỹ năng của tất cả các thành viên trong nhóm và phân công nhiệm vụ cho từng thành viên với kỹ năng tương ứng. Cũng nên nhớ trao một cơ hội công bằng cho các thành viên mới.
Ví dụ: Nếu một nhiệm vụ quá lớn, nó có thể được giao cho một thành viên cứng và một thành viên mới. Việc làm này sẽ giúp các thành viên cứng bộc lộ các phẩm chất lãnh đạo và giúp các thành viên mới nâng cao kiến thức. Nếu một nhiệm vụ quá phức tạp, nên giao cho 2 hoặc nhiều thành viên cứng đảm nhận nó.
#3) Sau khi thực hiện giao nhiệm vụ và lên lịch trình làm việc bạn đã có được một bộ khung cơ bản. Việc tiếp theo phải làm là đưa nó cho các thành viên trong team review lại. Đồng thời cũng cần giải thích lý do giao việc như vậy . Trước khi hoàn thành việc phân công công việc cho từng thành viên, có một ý tưởng tốt là nên thảo luận với từng cá nhân xem họ đồng ý hay có đề nghị nào khác không. Nếu không có phản đối thì hãy thảo luận về tiến độ và các loại báo cáo tình trạng mà họ sẽ cần phải làm. Một thông tin phản hồi cũng có nghĩa là cá nhân đó không đồng ý với việc phân công công việc. Hãy thảo luận với cá nhân đó về lý do tại sao họ không đồng ý và tôn trọng ý kiến của họ. Nếu lý do mà có giá trị, hãy tìm một lựa chọn khác để phù hợp hơn, như vậy sẽ không có rủi ro và đảm bảo các nhiệm vụ được hoàn thành đúng tiến độ.
#4) Thống nhất các mong muốn thực hiện báo cáo. Cho phép các cá nhân quyết định, nếu họ muốn báo cáo bằng một bản cập nhật email hoặc sử dụng bất kỳ phương thức khác. Hãy gần gũi và tạo cảm giác rằng họ có thể tiếp cận bạn bất cứ lúc nào họ cảm thấy họ đang có vướng mắc hoặc nếu có bất cứ điều gì ngăn cản họ đạt được mục tiêu.
#5) Xác định các công cụ cần thiết để theo dõi tiến độ công việc. Điều này sẽ giúp xem xét kịp thời các nhiệm vụ chưa làm, những người đang giữ vững tiến độ và những việc đã hoàn thành.
Mẹo quản lý resource :
Ở đây, tôi sẽ chỉ nhắc đến một số khía cạnh như sau.
#1) Tester thường phải chịu áp lực cao do phải tuân thủ nghiêm ngặt deadline của dự án, hơn thế nữa còn hay phải xử lý các yêu cầu của khách hàng bị thay đổi đột ngột mà không đươc lùi lịch. Trong trường hợp này nếu bạn thấy trước rằng các mốc timelines có thể bị ảnh hưởng, hãy thảo luận với quản lý, và thay đổi phạm vi cho phù hợp . Một vấn đề quan trọng đó là luôn luôn phải giữ được mối quan hệ với những tester. Trao đổi với họ về tình hình hiện tại và chỉ ra các ảnh hưởng của những thay đổi có thể xảy ra.
#2) Một vấn đề quan trọng đó là luôn luôn phải giữ được mối quan hệ với những tester. Trao đổi với họ về tình hình hiện tại và chỉ ra các ảnh hưởng của những thay đổi có thể xảy ra.
#3) Sẽ luôn có những khiếm khuyết, các vấn đề kỹ thuật, các truy vấn mà khi giải quyết có thể ảnh hưởng trực tiếp đến tình trạng dự án. Hay luôn cố gắng để giảm bớt sự xung đột giữa các nhóm phát triển và kiểm thử để các vấn đề liên quan đến khiếm khuyết hoặc truy vấn kỹ thuật khác đều được dàn xếp một cách nhanh chóng. Hãy hiểu rằng trong mỗi người đều có quan điểm riêng, điều đó giúp họ tự tin để trình bày, hướng dẫn, thảo luận nằm giải quyết các vấn đề kỹ thuật hoặc các vấn đề khác hoặc bất kỳ điểm nào chưa thỏa đáng với nhóm phát triển.
#4) Lập kế hoạch luôn cần một khoảng thời gian dự trù. Vì đội test không phải lúc nào cũng có thể làm việc hết mình. “Chỉ có làm việc mà không có nghỉ ngơi làm Jack trở nên đần độn.” Là câu tục ngữ phù hợp khi nói đến đội test- những người luôn chịu nguy cơ cao cháy deadline của dự án. Vì vậy hay luôn có một khoảng thời gian backup để mọi người có thể nghỉ ngơi. #5) Phối hợp chặt chẽ với nhóm thử nghiệm sẽ giúp người quản lý nắm bắt được nghiệp vụ và tiến độ. Chúng tôi sẽ trình bày chi tiết trong các gạch đầu dòng tiếp theo.
Theo dõi kiểm tra / công cụ sử dụng để báo cáo
Nhà quản lý thì thường hay khó chịu khi nhận được thông tin về tình trạng thực tế. Dưới đây là một vài lời khuyên để giảm bớt sự khó chịu đó ở mức hợp lý nhất.
#1) Tester phải đối mặt với rất nhiều vấn đề trong quá trình test. Tuy nhiên họ luôn phải trả lời các câu hỏi về tiến độ cho rất nhiều cấp cán bộ. Việc báo cáo nhiều lần này thực sự phí phạm thời gian và không cần thiết. Vì vậy việc quan trọng là lấy được tiến độ của công việc bằng một cách ít rườm rà nhất có thể.
#2) Có các cuộc họp checkpoint / scrum thường xuyên với nhóm kiểm thử và phân tích, nếu mọi việc diễn ra suôn sẻ. Liên kết chặt chẽ với họ để biết được cách họ làm việc, họ đang làm gì, những gì cần tiếp tục thực hiện và những gì còn vướng mắc. Trong trường hợp một người đang cảm thấy quá tải, hãy chia lại kế hoạch để cân bằng.
#3) Sẽ có các cuộc họp thường xuyên với quản lý và hãy đưa ra bất kỳ câu hỏi liên quan đến tình trạng hiện tại và kiểm thử cá nhân. Ngoài việc đưa ra trạng thái của công việc hãy thử và giới thiệu các nhóm kiểm thử khác càng nhiều càng tốt. Nếu một kiểm thử đã bắt được một khiếm khuyết quan trọng hãy giới thiệu và đánh giá cao nó với mọi người. Điều này sẽ tạo động lực cho tất cả mọi người để nâng cao thành tích của họ.
#4) Báo cáo không cần phải đề cập quá chi tiết chỉ cần tính chính xác và minh bạch là đủ. Có những công cụ toàn diện có sẵn mà giúp đỡ trong toàn bộ kế hoạch kiểm tra - như Microsoft Project Planner hoặc dự án MS 2013.
Công cụ này giúp xác định các giai đoạn trong một dự án, tóm tắt yêu cầu chính của nhiệm vụ và thời gian backup cho mỗi người trong từng giai đoạn, ước tính nỗ lực, xác định phụ thuộc giữa các nhiệm vụ và phân bổ tài nguyên. Bằng cách này, giúp cho việc theo dõi và quản lý một dự án hiệu quả .
Phần kết luận
Mỗi giai đoạn trong quá trình lập kế hoạch có thể được thảo luận cụ thể hơn nhưng tài liệu này sẽ giúp các tester biết được vai trò của họ trong toàn bộ quá trình kiểm thử dự án. Đây là nỗ lực của chúng tôi để đưa ra các yếu tố khi lập kế hoạch kiểm tra cụ thể; có ảnh hưởng đến các đội kiểm tra trên cơ sở hàng ngày để thực hiện công việc của họ một cách hiệu quả. Tôi hy vọng bài viết này đưa ra một số khía cạnh rõ nét của việc lập kế hoạch cho dự án. Việc dành thời gian cho lập kế hoạch hiệu quả có thể chứng minh là công cụ trong việc đạt được các mốc quan trọng của dự án.