Chà, câu trả lời trực tiếp cho câu hỏi của bạn sẽ là Mu Tôi sợ - không có đủ thông tin chi tiết để đưa ra dự đoán có căn cứ cho dù bạn nên hay không bỏ thử.
Điều duy nhất tôi khá tích cực là mức độ nhanh nhẹn nên được điều khiển bởi nhu cầu của khách hàng / thị trường (mà bạn không có thông tin về).
- Ví dụ, là một người dùng IDE, tôi hoàn toàn hạnh phúc khi nâng cấp lên phiên bản mới một lần hoặc có thể hai lần một năm và tôi không bao giờ vội vàng làm điều đó. Tức là nếu chu kỳ phát hành của họ là 3 tháng ( 12 tuần ) thì tôi hoàn toàn hài lòng với điều đó.
Mặt khác, tôi có thể dễ dàng tưởng tượng, giả sử, công ty thương mại tài chính phá sản nếu phải mất hơn một tháng để phần mềm của họ thích ứng với những thay đổi của thị trường - chu kỳ thử nghiệm 12 tuần trong trường hợp này sẽ là một con đường dẫn đến địa ngục. Bây giờ - nhu cầu sản phẩm của bạn trong vấn đề này là gì?
Một điều khác cần xem xét là chất lượng cấp độ nào được yêu cầu để phục vụ nhu cầu khách hàng / thị trường của bạn?
- Trường hợp điển hình - trong một công ty tôi từng làm việc, chúng tôi thấy chúng tôi cần một số tính năng mới trong một sản phẩm được cấp phép từ một số nhà cung cấp phần mềm. Không có tính năng này, chúng tôi phải chịu đựng khá mạnh mẽ, vì vậy, chúng tôi thực sự muốn chúng nhanh nhẹn và cung cấp cập nhật trong vòng một tháng.
Và vâng, họ có vẻ nhanh nhẹn và vâng, họ đã phát hành bản cập nhật đó trong một tháng (nếu chu kỳ QA của họ là 12 tuần thì có khả năng họ đã bỏ qua nó). Và tính năng của chúng tôi hoạt động hoàn toàn tốt - đoán chúng tôi có nên hoàn toàn hạnh phúc? Không! chúng tôi đã phát hiện ra một lỗi hồi quy showstopper trong một số chức năng hoạt động tốt trước đây - vì vậy chúng tôi đã phải chịu đựng với phiên bản cũ hơn.
Một tháng nữa trôi qua - họ đã phát hành một phiên bản mới: tính năng của chúng tôicũng có nhưng lỗi hồi quy tương tự cũng có: một lần nữa, chúng tôi đã không nâng cấp. Và một tháng nữa.
Cuối cùng, chúng tôi đã có thể nâng cấp chỉ nửa năm sau rất nhiều vì sự nhanh nhẹn của họ.
Bây giờ, hãy xem xét kỹ hơn một chút trong 12 tuần mà bạn đề cập.
Những lựa chọn bạn đã xem xét để rút ngắn chu kỳ QA? như bạn có thể thấy từ ví dụ trên, chỉ cần bỏ qua nó có thể không cung cấp cho bạn những gì bạn mong đợi để tốt hơn, nhanh nhẹn và xem xét các cách khác nhau để giải quyết nó.
Ví dụ, bạn đã xem xét các cách để cải thiện khả năng kiểm tra sản phẩm của mình chưa?
Hoặc, bạn đã xem xét giải pháp vũ phu chỉ cần thuê thêm QA? Tuy nhiên, có vẻ đơn giản, trong một số trường hợp, đây thực sự là con đường để đi. Tôi đã thấy quản lý thiếu kinh nghiệm đang cố gắng khắc phục các vấn đề về chất lượng sản phẩm bằng cách thuê một cách mù quáng ngày càng nhiều nhà phát triển cao cấp, nơi chỉ cần một cặp kiểm thử viên chuyên nghiệp trung bình là đủ. Khá thảm hại.
Điều cuối cùng nhưng không phải là ít nhất - tôi nghĩ người ta nên nhanh nhẹn về việc áp dụng các nguyên tắc nhanh nhẹn. Ý tôi là, nếu các yêu cầu của dự án không nhanh nhẹn (ổn định hoặc thay đổi chậm), thì tại sao phải bận tâm? Tôi đã từng quan sát quản lý hàng đầu buộc Scrum trong các dự án đang hoạt động hoàn hảo mà không có. Thật là một sự lãng phí. Không chỉ không có cải tiến trong việc giao hàng của họ mà tệ hơn, tất cả các nhà phát triển và người thử nghiệm đều trở nên không hài lòng.
cập nhật dựa trên sự làm rõ được cung cấp trong các ý kiến
Đối với tôi, một trong những phần quan trọng nhất của Agile là có một bản phát hành có thể chuyển đổi vào cuối mỗi lần chạy nước rút. Điều đó ngụ ý một số điều. Đầu tiên, một mức độ thử nghiệm phải được thực hiện để đảm bảo không có lỗi hiển thị nếu bạn nghĩ rằng bạn có thể phát hành bản dựng cho khách hàng ...
Shippable phát hành tôi thấy. Hừm. Hừm. Cân nhắc thêm một hoặc hai Lean vào ly cocktail Agile của bạn. Ý tôi là, nếu đây không phải là nhu cầu của khách hàng / thị trường thì điều này chỉ có nghĩa là lãng phí tài nguyên (thử nghiệm).
Tôi không thấy tội phạm gì khi coi việc phát hành cuối Sprint chỉ là một số điểm kiểm tra thỏa mãn nhóm.
- dev: yeah rằng một cái nhìn đủ tốt để vượt qua người thử nghiệm; QA: yeah rằng một cái có vẻ đủ tốt cho trường hợp nếu cần thử nghiệm thêm shippable - thứ như thế. Nhóm (dev + QA) hài lòng, đó là nó.
... Điểm quan trọng nhất mà bạn đưa ra là vào cuối câu trả lời của bạn về việc không áp dụng nhanh nhẹn nếu các yêu cầu không nhanh nhẹn. Tôi nghĩ rằng đây là tại chỗ. Khi chúng tôi bắt đầu làm nhanh, chúng tôi đã quay số và hoàn cảnh có ý nghĩa. Nhưng kể từ đó, mọi thứ đã thay đổi đáng kể và chúng tôi đang bám vào quá trình mà nó có thể không còn ý nghĩa nữa.
Bạn đã nhận nó chính xác. Cũng từ những gì bạn mô tả, có vẻ như bạn đã đạt đến trạng thái (sự trưởng thành của nhóm / quản lý và mối quan hệ khách hàng) cho phép bạn sử dụng phát triển mô hình lặp thường xuyên thay vì Scrum. Nếu vậy thì bạn cũng có thể quan tâm để biết rằng theo kinh nghiệm của tôi trong các trường hợp như lặp đi lặp lại thường xuyên đó cảm thấy năng suất hơn Scrum. Năng suất cao hơn nhiều - đơn giản là có quá ít chi phí, đơn giản là việc tập trung vào phát triển dễ dàng hơn nhiều (để QA tương ứng tập trung vào thử nghiệm).
- Tôi thường nghĩ về điều đó của Ferrari (như lặp đi lặp lại thường xuyên) so với Landrover (như Scrum).
Khi lái xe trên đường cao tốc (và dự án của bạn dường như đã đến đường cao tốc đó ), Ferrari đã đánh bại Landrover.
Đó là off-road nơi một người cần xe jeep không phải xe thể thao - Ý tôi là nếu yêu cầu của bạn không thường xuyên và / hoặc nếu kinh nghiệm làm việc nhóm và quản lý không tốt, bạn sẽ phải chọn Scrum - đơn giản vì cố gắng đi thường xuyên sẽ giúp bạn bị mắc kẹt - như Ferrari sẽ bị mắc kẹt ngoài đường.
Sản phẩm đầy đủ của chúng tôi thực sự được tạo thành từ nhiều bộ phận nhỏ hơn mà tất cả có thể được nâng cấp độc lập. Tôi nghĩ rằng khách hàng của chúng tôi rất sẵn lòng nâng cấp những thành phần nhỏ hơn thường xuyên hơn. Dường như với tôi rằng có lẽ chúng ta nên tập trung vào việc phát hành và QA'ing những thành phần nhỏ hơn đó vào cuối nước rút thay vào đó ...
Trên âm thanh như một kế hoạch tốt. Tôi đã làm việc trong một dự án như vậy một lần. Chúng tôi đã phát hành các bản phát hành hàng tháng với các bản cập nhật được bản địa hóa trong các thành phần rủi ro thấp nhỏ và đăng xuất QA cho những bản này dễ dàng như nó có được.
- Một điều cần lưu ý cho chiến lược này là có một xác minh có thể kiểm chứng được rằng sự thay đổi được bản địa hóa ở nơi dự kiến. Ngay cả khi điều này có liên quan đến việc so sánh tệp từng bit một cho các thành phần không thay đổi, hãy tiếp tục hoặc bạn sẽ không vận chuyển nó. Điều quan trọng là, QA là người chịu trách nhiệm phát hành chất lượng chứ không phải chúng tôi là nhà phát triển.
Điều đau đầu của người kiểm tra là đảm bảo rằng những thay đổi bất ngờ đã không xảy ra - bởi vì thật lòng mà nói, với tư cách là một nhà phát triển, tôi có đủ thứ khác để lo lắng về điều đó quan trọng hơn với tôi. Và vì điều đó, họ (những người thử nghiệm) thực sự cần bằng chứng chắc chắn rằng mọi thứ đang được kiểm soát với việc phát hành mà họ đã thử nghiệm.