مرحله SR را می توان ” مرحله تحلیل مسئله ” چرخه حیات نامید.
هدف این مرحله تحلیل نیازهای کاربر بیان شده در URD و تهیه مجموعه ای کامل، به هم پیوسته و صحیح از نیازهای نرم افزار است.
بیان نیازهای نرم افزار از وظایف تولید کننده آن است. در این امر می بایست کاربران، مهندسین نرم افزار و سخت افزار و مجریان سیستم سهیم باشند.
توجه
مدیریت پروژه می بایست از مشاوره با تمامی افراد ذینفع اطمینان حاصل نماید، بدین ترتیب احتمال خطر ناقص بودن و بروز اشتباهات کاهش می یابد.
توجه
خروجی این مرحله ، سند نیازهای نرم افزار (SRD ) است. هر قدر تعریف آنکه نرم افزار ” چه” کاری را باید انجام دهد به دقت صورت پذیرد، به همان میزان از بررسی مجدد طرح و محصول نهایی اجتناب می شود. اگر چه ممکن است جنبه های ”چگونگی” عملکرد نرم افزار نیز عنوان شوند، ولی آنها می بایست از SRD حذف گردد، مگرآنکه جزو محدودیت های نرم افزار باشند.
ورودی های این مرحله
• سند نیازهای کاربر URD))
• طرح مدیریت پروژه نرم افزار برای مرحله SR
• (SPMP/SR)
• طرح مدیریت پیکربندی برای مرحله SR
• (SCMP/SR)
• طرح وارسی و اعتبار سنجی نرم افزار برای مرحله SR
• (SVVP/SR)
• طرح تضمین کیفیت نرم افزار برای مرحله SR
• (SQAP/SR)
فعالیت ها
فعالیت های مرحله بیان نیازهای نرم افزار الزامی است.
فعالیت عمده مرحله SR تبدیل خواسته های بیان شده کاربر در URD به نیازهای ضروری نرم افزار در SRD است.
این امر از طریق تجزیه و تحلیل مسئله آنچنانکه در URD تعریف شده است و بیان یک توصیف جامع و منسجم ازآنچه که نرم افزار باید انجام دهد، صورت می پذیرد.
SRD بیش ازآنکه نمایانگر دید کاربر از سیستم باشد حاوی نگرش تولید کننده نرم افزار به مسئله است. این نگرش می بایست براساس مدل شناخته شده و مستندی که از سیستم بنا نهاده شود.
توجه
طرح های مربوط به فعالیت های مرحله طراحی معماری (AD) نیز باید در مرحله SR تنظیم گردد. این طرح ها باید شامل مدیریت پروژه ، مدیریت پیکربندی، وارسی و اعتبارسنجی، و تضمین کیفیت باشند.
ساخت مدل منطقی
تولیدکننده نرم افزار الزامی است یک مدل مستقل از پیاده سازی، از آنچه که مورد نیاز کاربر است ایجاد نماید. این مدل که ” مدل منطقی ” نامیده می شود به منظور تهیه نیازهای نرم افزار مورد استفاده قرار می گیرد.
در کلیه پروژه ها به استثنای پروژه های کوچک، می بایست از ابزار CASE به منظور ساخت مدل منطقی استفاده کرد. این ابزار به سهولت مدل های منطقی غیر متناقض و با ثبات نرم افزار را تهیه می کنند.
توجه
الزامی است روش معتبری جهت تحلیل نیازهای نرم افزار اتخاذ گردیده و به طور مستقیم در طی مرحله SR به کار برده شود.
مدل منطقی، بوسیله تجزیه از بالا به پائین کارکرد اصلی - که از URD استنتاج می شود - به سلسله مراتبی از کارکردها ساخته می شود.
مدل سازی یک فرایند تکراری است. ممکن است لازم باشد که بخش هایی از یک مدل،پیش از دستیابی به یک توصیف کامل، جامع و منسجم بارها و بارها تعریف گردد.
یک مدل منطقی با کیفیت مطلوب می بایست در برگیرنده قوانین زیر باشد:
1- کارکردها می بایست دارای مفهوم واحد و روشنی باشند. اسامی کارکردها می بایست ساختار تعریف شده ای داشته باشند و به جای تعیین ”چگونگی” کار، ” نوع” کار را بیان نمایند. اسامی مناسب امکان استنتاج مولفه های طراحی با ارتباط قوی را به اسانی فراهم می سازند.
2- کارکرد ها می بایست مناسب سطحی باشند که در آن مطرح می گردند (به عنوان مثال ”محاسبه مجموع مقابله ای” (Calculate Checksum) نمیبایست در همان سطحی که ” وارسی فرمان ها” (Verify Commands) مطرح می گردد آورده شود)
3- واسط ها می بایست به حداقل کاهش یابند. این امر امکان استنتاج مولفه های طراحی با ارتباط ضعیف را به آسانی فراهم می سازد.
4- هر کارکرد نمی بایست به بیش از 7 کارکرد جزئی تر شکسته شود.
5- مدل نمی بایست اطلاعات مربوط به پیاده سازی را در بر گیرد. (به عنوان مثال پرونده، رکورد، وظیفه (Task) ، پیمانه (Module) )
6- خصیصه های اجرایی هر کارکرد (ظرفیت. سرعت و غیره) می بایست معین گردند.
7- کارکردهای مهم می بایست مشخص شوند.