2008-09-16 33 views

Trả lời

3

Điều gì khiến bạn không thể thực hiện quy trình của riêng mình? Nếu bạn tìm thấy một cái gì đó có thể tốt hơn ... chỉ cần làm điều đó. Nếu nó hoạt động, kiên trì với nó .. nếu không thử cái gì khác. Không có quy trình đặt trong đá nếu bạn muốn sự nhanh nhẹn.
Cụm từ được sử dụng thường xuyên hơn là mã 'shippable' ở cuối mỗi lần lặp lại. Điều đó có nghĩa là bạn có thể đưa nó cho người dùng cuối (như một loạt các DLL để sao chép một phần hoặc cá nhân cung cấp một đĩa CD/DVD) và anh ta sẽ thu được giá trị từ việc sử dụng nó. Mã như vậy đã vượt qua tất cả các bài kiểm tra đơn vị (nhà phát triển) và các bài kiểm tra chấp nhận (khách hàng/QA/Chuyên viên phân tích) được coi là cần thiết cho nó là "XONG!" Kiểm tra chấp nhận là mô phỏng kịch bản khách hàng đầu cuối.

Tôi không chắc chắn những gì bạn có nghĩa là bằng cách 'tiếp tục thử nghiệm và xác nhận' .. Tôi có thể nghĩ đến các hoạt động khác 'trước khi phát hành'

  • hoạt động nhất định như "Hội nghị tập huấn" và tạo nội dung có liên quan.
  • Bản trình diễn hoặc Triển khai đến các trang web Beta trong một tháng trước khi phát hành nếu triển khai của khách hàng hiếm hoặc không thể thực hiện thường xuyên.
  • Khách hàng tiềm năng/Chuyên gia/Dịch vụ xem xét kỹ lưỡng về sản phẩm mới mà họ đã nghe.

Bạn chỉ cần xếp nó vào cuối điểm cuối cuối cùng của bạn (Nếu bạn đặc biệt bi quan như tôi .. hãy lấy số liệu trung bình lịch sử .. nếu bạn phát hành sớm. Yay!) Vì vậy, nếu doanh nghiệp đã quyết định Iteration # 14 phân định một tập hợp các tính năng tốt có thể là một bản phát hành .. Nó chỉ là 'Thêm n tuần' sau khi kết thúc Iteration # 14 .. không có toán học phức tạp hoặc không chắc chắn vào thời điểm đó. Điểm mấu chốt là nếu bạn thường xuyên thu hút các bên liên quan/khách hàng, kết hợp phản hồi và duy trì chất lượng có thể chấp nhận được, sẽ không có bất ngờ phút cuối.

Nếu cần thiết, bạn thậm chí có thể thực hiện khởi động lăn .. nghĩa là nhóm đào tạo bắt đầu làm việc khi nhóm dev tiến vào Iteration # 13. Điều đó mang lại cho họ một tháng giả sử lặp lại 2 tuần .. và hy vọng bạn sẽ không có nhiều tính năng nhập vào lần lặp cuối cùng. Vì vậy, tối đa 2 tuần sau khi lặp lại # 14 và tuân theo tất cả các sắp xếp thiên thể/tổ chức, bạn nên có một bản phát hành và một sự nghỉ ngơi xứng đáng.

+0

Tôi đã làm việc với quy trình phát hành yêu cầu thử nghiệm ứng suất lâu dài của sản phẩm có độ tin cậy cao. Các bài kiểm tra căng thẳng bao gồm khối lượng dữ liệu rất lớn và nhiều điều kiện lỗi trùng lặp. Kiểm tra căng thẳng sẽ chạy trong vài ngày. Đó là loại "thử nghiệm thêm" mà tôi đã nghĩ đến. – Rachel

+0

có vẻ như không trả lời – BillR

1

Thử nghiệm tự động sau mỗi lần xây dựng tự động sẽ giúp bạn ít nhất là một phần của con đường.

+0

Tôi thứ hai sử dụng Sự kiện xây dựng để kiểm tra và tài liệu. –

0

Thêm kiểm tra hệ thống vào nhật ký chạy nước rút của bạn (trong Scrum) hoặc tương đương.

Tài liệu người dùng Ditto.

0

Việc thực hiện kiểm tra hệ thống thường quá chậm để tích hợp chặt chẽ vào phát triển nhanh. (Có những trường hợp ngoại lệ đối với điều này, ví dụ như một bộ kiểm tra trình duyệt được thiết kế tốt có thể chạy không chậm hơn nhiều so với các bài kiểm tra đơn vị điển hình.)

Một cách tích hợp là xây dựng qua đêm hoặc xây dựng liên tục, luôn luôn chạy, và có thể mất vài giờ để xây dựng và chạy tất cả các bài kiểm tra. Nếu một build vượt qua tất cả các bài kiểm tra (unit test + system tests), nó sẽ trở thành releasable, bạn có thể phân phối nhị phân đó hoặc snapshot của mã nguồn.Ý tưởng là có các phiên bản x của ảnh chụp nhanh mã nhị phân/mã, xác minh chúng không đồng bộ và phân phối các bản dựng xanh. Điều này sẽ làm việc cả với các bài kiểm tra hệ thống tự động cũng như các bài kiểm tra thủ công.

3

Trước tiên, hãy nhận ra rằng chiều rộng/chiều rộng của thử nghiệm bạn nói là tăng khi tiến trình dự án và phạm vi và/hoặc độ phức tạp của phần mềm. Cố gắng đặt nỗ lực này vào một lần lặp không hoạt động sau một hoặc hai lần lặp lại vì điều này. Quy tắc cảm giác tốt cho các lần lặp là mức công việc không đổi trong mỗi lần lặp lại, được xác định bởi vận tốc của dự án.

Giải pháp cho việc này sau đó có thể thực hiện một trong hai con đường: có hoặc không có tự động hóa. Tự động hóa ở các cấp độ kiểm tra cao hơn sẽ làm giảm nỗ lực để chạy thử nghiệm, làm cho công việc phù hợp bên trong lặp lại vì mỗi lần lặp sẽ chỉ tập trung vào phạm vi gia tăng/độ phức tạp tăng lên. Điều này không phải lúc nào cũng đạt được trong tất cả các bối cảnh của dự án, ngay cả khi đó là điều chúng tôi muốn. Tự động kiểm tra mức giá cao hơn là một điều đáng tiếc mà bạn nên nghiêm túc, nói cách khác, tránh đánh giá thấp những gì một người thử nghiệm hợp lý có kinh nghiệm mang đến cho bảng.

Nếu không có tự động hóa, sự cố sẽ chuyển sang một dựa trên quản lý kiểm tra. Song song, lặp đi lặp lại thử nghiệm thay đổi thời gian là một giải pháp ứng cử viên. Ví dụ, bạn có thể chọn thiết lập một backlog thử nghiệm cho các nhiệm vụ kiểm thử hệ thống được quản lý với cùng một nhịp như các phép lặp phát triển nhưng bị trì hoãn hoặc bị dịch chuyển theo thời gian, bằng một thời gian lặp lại đầy đủ. Điều này cho phép người thử nghiệm làm việc toàn diện trên các bản phát hành mới trong hộp cát riêng của họ và ưu tiên riêng của họ.

Tôi sẽ bênh vực rằng các bản thử nghiệm lặp lại được xây dựng trong sự cộng tác với các nhà phát triển, vì tôi sẽ lặp lại các nhà phát triển lặp lại được xây dựng trong sự cộng tác với người thử nghiệm. Tôi cũng sẽ ủng hộ một nhóm thử nghiệm có kinh nghiệm tự động hóa để họ có thể tự động hóa tedium và làm việc theo kiểu khám phá hơn. Danh mục kiểm tra tự động của họ sẽ tăng với mỗi lần lặp lại. Họ cũng nên có quyền truy cập vào các bài kiểm tra đơn vị phát triển và có thể chạy chúng trên các bản phát hành trong hộp kiểm thử nghiệm.

Làm việc ngoài giai đoạn như thế này không làm cho vấn đề phức tạp/phạm vi kiểm tra ngày càng tăng đi nhưng nó cung cấp cơ chế quản lý sự phức tạp đó. danh sách kiểm tra, v.v. dựa trên những gì họ nghĩ chung họ nên làm tiếp theo. Rất có thể họ sẽ đánh trúng các vật phẩm lớn.

Bảo toàn khả năng cho người thử nghiệm làm việc toàn diện và phát triển sự hiểu biết của họ và chia sẻ kiến ​​thức của họ về hệ thống thông qua kiểm tra tự động, tất cả dường như đáng phấn đấu.

Các vấn đề liên quan