Trước hết, hầu như không có gì trong câu trả lời của @ DXM phù hợp với trải nghiệm của tôi với Agile và đặc biệt là không có Scrum.
Các Agile Manifesto khẳng định rằng trong khi tài liệu toàn diện là có giá trị, phần mềm làm việc có giá trị hơn. Vì vậy, tài liệu chắc chắn không phải là một điều xấu, nhưng nó thực sự cần được phục vụ để tạo ra phần mềm làm việc.
Các cá nhân và tương tác qua các quy trình và công cụ
Phần mềm làm việc trên tài liệu toàn diện
Hợp tác khách hàng qua đàm phán hợp đồng
Đáp ứng để thay đổi theo kế hoạch
Đó là, trong khi có giá trị trong các mục ở bên phải, chúng tôi đánh giá các mục ở bên trái nhiều hơn.
Đóng đinh từng chi tiết trước khi bắt đầu viết mã đã được chứng minh lãng phí hết lần này đến lần khác, vì vậy tài liệu nói chung được xử lý theo cách JIT (chỉ trong thời gian). Đó là, bạn ghi lại những gì bạn thực sự sẽ viết mã.
Một trong những cách phổ biến để thực hiện Scrum là sử dụng Câu chuyện của người dùng, được Chủ sở hữu sản phẩm duy trì và lưu trong Product Backlog. Product Backlog là một danh sách cấp cao khá cao về tất cả những thứ mà một giải pháp cần phải làm, và Câu chuyện người dùng nói chung là một cách có kích thước độc đáo để mô tả từng điều trong danh sách. Câu chuyện của người dùng không bắt buộc, nhưng dường như chúng là một cách tốt để không lạm dụng các chi tiết và truyền cảm hứng cho sự hợp tác thay thế.
Vì vậy, dù sao đi nữa, khi một câu chuyện được thực hiện - nhóm đã tạo, thử nghiệm và triển khai một cái gì đó đáp ứng các tiêu chí chấp nhận, câu chuyện không bị CHẤP NHẬN, nó chỉ đơn giản được đánh dấu được thực hiện trên hồ sơ tồn đọng - vì vậy, tồn đọng có một số dấu hiệu về những gì đã được thực hiện trong mỗi lần chạy nước rút - những câu chuyện và những điểm liên quan đến chúng. Đây là những gì cho phép bạn tính toán vận tốc, và là tài liệu có giá trị trong chính nó.
Tất cả những gì đã nói, Câu chuyện người dùng có thể là tất cả các tài liệu cần thiết để hiểu một yêu cầu, nhưng nhiều khả năng, đó là thứ để tạo ra một cuộc trò chuyện giữa khách hàng và nhóm phát triển. Như vậy, có bất kỳ số lượng những điều bạn có thể làm xung quanh cuộc trò chuyện đó. Nếu đó là một điều trực tiếp, như thường lệ, nhà phân tích / nhà phát triển có thể (và có thể, tùy thuộc vào tổ chức của bạn, nên) viết ra bất kỳ quyết định nào được đưa ra và lưu nó ở đâu đó, chẳng hạn như Wiki hoặc kho tài liệu. Nếu đó là một cuộc trò chuyện email, bạn có thể lưu email. Nếu đó là phiên bảng trắng, hãy chụp ảnh bảng bằng điện thoại di động của bạn và lưu nó. Vấn đề là, những điều này là những gì đang giúp bạn hoàn thành mã và có thể giúp bạn sau này nếu bạn cần tìm hiểu làm thế nào hoặc tại sao bạn lại làm như vậy.
Một phương pháp khác để nắm bắt các yêu cầu là ngay lập tức nhúng chúng vào các trường hợp thử nghiệm (mà tôi tin là những gì DXM đang nhận được). Điều này có thể thực sự hiệu quả, trong đó bạn cần phải kiểm tra cho từng yêu cầu nào. Trong trường hợp này, bạn có thể lưu trữ hiệu quả các yêu cầu của mình trong công cụ kiểm tra.
Nếu một câu chuyện được hoàn thành (và được chấp nhận) và sau đó người dùng thay đổi nhu cầu của mình, thì có lẽ bạn cần phải tạo một câu chuyện mới. Nếu bạn sử dụng wiki cho tài liệu của mình, bạn có thể liên kết câu chuyện mới trở lại bản gốc và tương tự liên kết câu chuyện gốc đó với nội dung mới để ai đó nhìn vào nó biết rằng mọi thứ đã thay đổi. Đó là điều tốt đẹp về wiki - thật dễ dàng và khá dễ dàng để liên kết các công cụ. Nếu bạn đang thực hiện phương pháp tiếp cận thử nghiệm, bạn sẽ cập nhật trường hợp thử nghiệm để đối phó với thay đổi hoặc tạo trường hợp thử nghiệm mới cho câu chuyện mới nếu mới và cũ không loại trừ lẫn nhau.
Cuối cùng, nó phụ thuộc vào nhu cầu của bạn là gì. Nếu điều chính là làm cho mọi người tăng tốc nhanh chóng, có lẽ nên cho ai đó viết một tài liệu trên tàu để giúp họ. Vì vậy, có ai đó làm điều đó. Như tôi đã đề cập, Wiki là một công cụ tuyệt vời để giữ thứ này, vì vậy bạn có thể xem xét các giải pháp của Atlassian có thể tích hợp Wiki Confluence với Jira và Greenhopper để theo dõi các câu chuyện / nhiệm vụ / khiếm khuyết của bạn và nói chung là quản lý dự án của bạn. Ngoài ra còn có rất nhiều công cụ khác để lựa chọn.