Phụ thuộc vào dự án, nếu bạn đang làm việc một mình trong một dự án nhỏ, có thể có ý nghĩa hoàn hảo để thực hiện nghiên cứu và điều tra công nghệ của bạn như là một phần của sự phát triển. Và mặc dù không phải là một phần của Agile, tất nhiên một phương pháp Agile có thể được sử dụng để thêm một số điều khiển cho điều này. Tuy nhiên, điều này làm cho quá trình rất khó dự đoán / hoặc hộp thời gian. Có thể ổn, thậm chí nhanh hơn, nếu làm việc một mình trong một dự án nhỏ hoàn toàn là của bạn, hãy để yêu cầu của bạn mở ra khi bạn học chúng. Sử dụng các nguyên tắc tốt trên đường đi và nhất quán và bạn không cần phải tính lại quá nhiều.
Trong công việc, chúng tôi sử dụng Kanban, Scrum và các cách tiếp cận thác nước truyền thống hơn. Phụ thuộc vào dự án, tôi thấy rằng các phát triển phức tạp với các yêu cầu trước được xác định rõ là không phù hợp nhất với nhanh nhẹn, nhiều người sẽ không đồng ý.
Trước khi chúng tôi bắt đầu làm việc ngay cả trên một dự án nhanh (tất cả nhưng đơn giản nhất là), chúng tôi tạo một số tài liệu. Chúng tôi có một giả lập (nếu ui tập trung), một tập hợp các yêu cầu và một đặc tả chức năng.
Phát triển sẽ được yêu cầu tạo ra thông số kỹ thuật từ thông số chức năng và trong quá trình này, chúng tôi sẽ chỉ định công nghệ và thực hiện bất kỳ nghiên cứu trực tiếp nào mà chúng tôi cần. Quá trình này có vẻ rất quan trọng đối với tôi, vì nó mang đến cơ hội nhìn thấy những lỗ hổng trong các yêu cầu / thông số chức năng - và đưa ra các quyết định công nghệ lớn trước những người có kinh nghiệm và kiến thức hệ thống để đưa ra quyết định như vậy.
Mặc dù vậy, điều quan trọng là thông số chức năng có thể là danh sách các gạch đầu dòng và thông số kỹ thuật thường sẽ là một mô hình, với một số điểm đạn và chỉ đạo công nghệ, có thể chỉ 3 hoặc 4 trang trong một số trường hợp.
Ngay cả khi chạy một dự án nhanh, chúng tôi tạo tài liệu:
- Tất cả các tài liệu có một chi phí.
- Phát triển chống lại việc di chuyển và xác định các yêu cầu cấp cao có chi phí.
- Sự cân bằng chính xác ở trên phụ thuộc vào dự án của bạn, văn hóa và con người.
- Chúng tôi tài liệu Chỉ trong thời gian, tài liệu đã lỗi thời.
- Chúng tôi tài liệu hầu như không đủ / vừa đủ.
- Chúng tôi không duy trì hoặc cập nhật các tài liệu này, chúng tôi không nỗ lực nhiều vào chúng. Chúng nhỏ. Chúng tôi hy vọng sẽ ném chúng đi.
- Chúng tôi giải quyết những ẩn số lớn như quyết định công nghệ, yêu cầu mơ hồ và kiến trúc lên phía trước.
- Chúng tôi biết những gì chúng tôi đang phát triển trước khi chúng tôi bắt đầu.
- Chúng tôi tin tưởng các nhà phát triển đưa ra quyết định sáng suốt xung quanh tài liệu và thảo luận về bất kỳ vấn đề nào.
- Chúng tôi coi trọng việc giao tiếp qua tài liệu, vì vậy chúng tôi hy vọng tất cả những người liên quan sẽ giao tiếp thường xuyên.
- Chúng tôi tài liệu hệ thống (tổng quan) sau khi phát triển, không trong, không trước.
Bạn thấy có một thác nước nhỏ trong quá trình nhanh nhẹn của chúng tôi.
Nếu bạn làm việc một mình, hãy tạo một mô hình trả trước (sơ đồ!) Và chơi và chọn công nghệ, sau đó khi bạn có khái niệm về các yêu cầu cấp cao này, hãy tiến lên và phát triển theo cách lặp nhanh nhẹn, nhưng hãy xem xét các nguyên tắc tốt và nhất quán khi bạn đi và bạn sẽ cần phải tái yếu tố ít hơn, nhiều yếu tố lại khi bạn đi.
Nhưng nói chung, nếu có một chi phí thực sự liên quan (không phải là sở thích) hãy biết những gì bạn đang phát triển trước khi bạn viết mã, nhưng đừng lãng phí quá nhiều thời gian để viết tài liệu sẽ trở nên dư thừa nhanh chóng vì bạn sẽ thay đổi ý định và nên thay đổi tâm trí của bạn trong quá trình phát triển khi bạn trở nên thông tin tốt hơn. Và dự án của bạn có thể thay đổi quá trình, nhưng bắt đầu từ một nền tảng tốt, được xác định rõ.