فهرست مطالب
مقدمه
الگوهای تولید نرمافزار
الگو آبشاری
الگو حلزونی
روش تکرارشونده و افزایشی
روش توسعه سریع نرمافزار
الگو (مدل) حلزونی
منابع
مقدمهاز مهمترین کارها در تولید نرمافزار استخراج نیازمندیها یا تحلیل نیازمندیهای آن سامانه است. مشتریان عمومی معمولاً تصور مفهومی، انتزاعی و مبهمی از نتیجه نهایی خواستههایشان دارند و نمیدانند به درستی نرمافزار مورد نظرشان چه کاری باید انجام دهد. در این مرحله نیازمندیهای ناتمام، پیچیده و مبهم، و حتی متضاد توسط مهندسان نرمافزار ماهر شناسایی میشوند. در این برهه تکه نرمافزارهای آماده، تجربهشده و فعال ممکن است برای پایین آوردن ریسک (و مشکلات) نیازمندیها کمک کنند. نخست نیازمندیهای عمومی از کاربران جمعآوری شده و دامنه توسعه و تولید نرمافزار که باید تولید شود شناسایی و تحلیل میشود، سپس مستندات بصورت شفاف نوشته میشوند. معمولاً به این مستند، مستند دامنه یا محدوده سامانه اطلاق میشود. برخی قابلیتها ممکن است در ابتدای پروژه به خاطر مسائل مالی یا نیازمندیهای غیر شفاف و نامشخص خارج از محدوده پروژه باشند. اگر تولید و توسعه نرمافزار برونسپاری شود (یعنی به شرکتهای خارجی محول شود) این مستندات به عنوان مستندات قانونی و حقوقی در نظر گرفته میشود؛ بنابراین در صورت اتفاق هرگونه دعوای حقوقی یا ابهام در مورد تعهدات دادهشده به کاربر، این مسائل قابل شفافسازی خواهد بود.
الگوهای تولید نرمافزار
الگو آبشاری
الگو حلزونی
روش تکرارشونده و افزایشی
روش توسعه سریع نرمافزار
روش برنامهسازی مفرط
الگو اسکرام
الگو (مدل) حلزونی
خصوصیت کلیدی الگو حلزونی مدیریت ریسک در تمام مراحل چرخهٔ تولید نرمافزار است. در سال ۱۹۸۸ میلادی بری بوهم به صورت رسمی الگو حلزونی فرایند تولید نرمافزار را منتشر کرد، که ترکیبی از بعضی کلیدهای تایید شده متدولوژی الگو آبشاری و نمونهسازی سریع است، اما احساس میشود الگو ارائه شده تاکید در ناحیه های کلیدی (الگو آبشاری) را با متدهای دیگری همچون بررسی دقیق و تحلیل دائمی ریسکها، سیستمهای خاص مناسب برای سامانه پیچیده و بزرگ، کوتاه تر کرده است.الگو حلزونی (باری بوهم، 1988)
الگو حلزونی این روش را با چهار نمودار که نشان دهند فعالیت های زیر است، به تصویر می کشد که فرایندها در چند مرحله تکرار انجام میشود:
1. تدوین و فرموله کردن برنامه ریزی خوب است برای شناسایی اهداف سیستم، قسمت های انتخاب شده جهت پیاده سازی برنامه، محدودیتهای واضح و مشخص پروژه.
2. تحلیل ریسک و مشکلات سامانه: ارزیابی تحلیلی برنامه های انتخاب شده، جهت مشخص کردن چگونگی شناسایی و از بین بردن ریسکها.
3. پیاده سازی پروژه: پیاده سازی تولید نرمافزار و تایید کارایی سامانه.
الگو حلزونی مبتنی بر ریسک، بر اختیارانتخاب گزینه ها و محدودیتها در سفارشها برای پشتیبانی استفاده مجدد نرمافزار و اینکه کیفیت نرمافزار میتواند در ادغام اهداف ویژه در تولید نرمافزار کمک میکند، تاکید میکند.
به هر حال الگو حلزونی شرایط محدود کننده زیر را دارا می باشد:
1. الگو حلزونی تحلیل ریسکها را تاکید میکند و بنابراین کاربران باید این تحلیل را قبول کنند و فکری برایش کنند (این مطالب را در نظر داشته باشند). این مسئله نیازمند اعتماد متقابل و همچنین تمایل به هزینه کردن برای رفع ایرادات، در هنگام تولید نرمافزار است و این دلیل استفاده شدن این الگو تولید نرمافزار پروژه های بزرگ است.2. درصورتیکه در هنگام پیادهسازی تحلیل ریسکها تاثیر منفی روی سود پروژه زیاد باشد نبایستی از الگو حلزونی استفاده گردد.3. تولید و توسعه دهندگان نرمافزار بصورت فعال حواسشان به ریسکهای قابل حل خواهد بود و به دقت آنها را در الگو حلزونی تحلیل میکنند.