فرآیند طراحی و توسعه نرم افزار
مرحله نیازمندیهای ناتمام، پیچیده و مبهم و حتی متضاد توسط مهندسان نرم افزار ماهر شناسایی میشوند. در این برهه تکه نرم افزارهای آماده، تجربه ‌شده و فعال ممکن است برای پایین آوردن ریسک و مشکلات نیازمندیها کمک کنند.
نیازمندیهای عمومی از کاربران جمع آوری شده و دامنه توسعه و تولید نرم افزار که باید تولید شود شناسایی و تحلیل میشود سپس مستندات بصورت شفاف نوشته می‌شوند. معمولاً به این مستند، مستند دامنه یا محدوده سامانه اطلاق میشود.