Nó thực sự phụ thuộc vào cách nhóm phần cứng của bạn sẽ phân phối các tạo phẩm hữu ích mà nhóm phần mềm của bạn có thể sử dụng để phát triển và cách các nhóm được thiết lập để giao tiếp với nhau.
Thông thường, bạn sẽ thấy nhóm phần cứng sẽ xây dựng một sản phẩm, đưa nó đến giai đoạn nguyên mẫu để thử nghiệm và chỉ sau đó, nhóm phần mềm mới nhận được bất kỳ loại tài liệu yêu cầu nào từ nhóm phần cứng. Không cần phải nói điều này không phải lúc nào cũng là cách tốt nhất, vì phần mềm thường được phát triển rất muộn trong quy trình và bạn thường thấy mình có ít sự lựa chọn ngoài làm việc với phương pháp dựa trên thác nước. Theo quan điểm của nhóm phần cứng, nếu họ đột nhiên cần thay đổi thứ gì đó, nhóm phần mềm sẽ không cần sửa đổi phần mềm của họ. Vấn đề ở đây tất nhiên là anh chàng phần cứng trung bình của bạn cần phát triển sản phẩm theo cách này và hy vọng rằng bất cứ điều gì sẽ có lợi cho anh ta với sự giúp đỡ của nhóm phần mềm.
Thay vào đó, nếu nhóm phần cứng của bạn đang xây dựng một sản phẩm và cập nhật các yêu cầu phần mềm khi họ đi, và thậm chí tốt hơn, nếu họ liên quan đến nhóm phần mềm sớm vì mỗi tính năng phần cứng đang được lên kế hoạch và mô phỏng, thì bạn có cơ hội cho nhóm phần mềm làm việc theo cách nhanh nhẹn hơn nhiều. Đương nhiên, điều này có nghĩa là nhóm phần cứng là khách hàng và cung cấp cho nhóm phần mềm một danh sách các vấn đề cần được giải quyết trong phần mềm. Nhóm phần mềm có thể thảo luận với khách hàng của họ về các ưu tiên tương đối của từng yêu cầu và ngay khi nguyên mẫu phần cứng sẵn sàng, phần mềm có thể sẽ có sẵn ở dạng phát hành sớm và có thể được sử dụng để giúp kiểm tra phần cứng. Nếu các yêu cầu thay đổi, nhóm phần mềm hy vọng sẽ có sự linh hoạt để thay đổi phần mềm khi họ đi, và có thể cung cấp phản hồi sớm cho nhóm phần cứng trước khi thiết kế phần cứng được cam kết nguyên mẫu. Nhóm phần mềm cũng có quyền truy cập trực tiếp vào khách hàng từ rất sớm trong dự án, điều đó có nghĩa là họ có thể hiểu rõ hơn về những gì họ cần chế giễu - và cách thực hiện - trong khi chờ phần cứng kiểm tra.
Trên thực tế, bạn sẽ không tìm thấy một phương pháp lý tưởng nào phù hợp với giá sách và tôi có thể đảm bảo rằng bạn sẽ có nhiều điều chỉnh để thực hiện bất kể phương pháp nào bạn chọn áp dụng hoặc phát triển. Vấn đề thực sự là bạn muốn thử và làm cho việc đồng bộ hóa giữa các nhóm trở nên dễ quản lý và có nghĩa là bạn cần tìm cách tăng số lượng liên hệ và đầu vào giữa hai nhóm càng sớm càng tốt trong quá trình, ngay cả khi nó có vẻ "lãng phí" hoặc "phản trực giác" để làm như vậy. Đây là một vấn đề lớn trong công ty mà tôi hiện đang làm việc. "Phụ huynh" châu Âu của chúng tôi đang phải vật lộn với vấn đề chính xác này, trong khi nhóm ở Oz dường như có thể giữ mọi thứ hoạt động trơn tru hơn một chút, và nó '