مدل‌های تکاملی سنتی

‏در طول سال‌های گذشته، بسیاری از افراد در دانشگاه‌ها و نیز شرکت‌های پیشروی صنعت نرم‌افزار، تلاش‌های زیادی برای ارائه و معرفی مدل‌ها و رویکردهای دیگری که جایگزین رویکرد مدل آبشاری شود، انجام داده‌اند. حاصل این تلاش‌ها، ارائه‌ی ده‌ها مدل فرآیند دیگر بوده است. یکی از راهکارها و تجارب موفق، رویکردی است مبتنی بر تکرار و تکامل که در مقابل رویکرد مدل آبشاری قرار دارد.

در رویکرد مبتنی بر تکرار و تکامل، فرصت یادگیری و بهبود تدریجی در سرتاسر چرخه‌ی تولید فراهم است. بدین ترتیب، در طول پروژه، امکان تصحیح به موقع اشتباهات وجود خواهد داشت. در صورت بروز اشتباه در یک تکرار، امکان جبران آن در تکرار بعدی وجود دارد. در حالی که همانطور که پیش از این نیز بیان شد، در مدل آبشاری بسیاری از اشتباهات در انتهای پروژه آشکار می‌شود و در نتیجه فرصت کمی برای تصحیح آنها وجود خواهد داشت. رویکرد مبتنی بر تکرار و تکامل به برنامه‌ریزی مستمر و پویا در طول پروژه نیازمند است، در حالی که در مدل آبشاری، برنامه‌ریزی، یک بار و آن هم در ابتدای پروژه صورت می‌پذیرد. مدل‌های افزایشی و حلزونی براساس رویکرد مبتنی بر تکرار و تکامل ایجاد شده‌اند، اما مدل حلزونی به دلیل تأکید بر مدیریت ریسک در هر تکرار توسط تحلیل ریسک، توانایی قابل توجهی در مدیریت ریسک دارد. در اینجا منظور از ریسک، کلیه‌ی شرایط، عوامل و نگرانی‌هایی است که می‌تواند مانع از دستیابی به موفقیت (شناسایی نیازهای دقیق مشتری، مقرون به صرفه بودن و در زمان مورد انتظار بودن) شوند. در واقع، یک تکرار، عبارت است از انجام متوالی فعالیت‌های لازم در یک بازه‌ی زمانی کوتاه و انجام چندین باره‌ی آن در طول بازه‌ی زمانی یک پروژه. بنابراین، به جای انجام فعالیت‌ها، به صورت یکباره و متوالی، چندین بار و در بازه‌های کوچک‌تری این مجموعه فعالیت‌ها را تکرار می‌نماییم. این مدل‌ها با رویکردی مبتنی بر تکرار و تکامل در هر تکرار نسخه‌هایی از نرم‌افزار را ارائه می‌دهند که هریک از قبلی کامل‏‌تر است. بنابراین برخلاف سایر مدل‌های فرآیند غیرتکاملی که با تحویل نرم‌افزار پایان می‌یابند، مدل‌های تکاملی را می‌توان طوری تطبیق داد که در سرتاسر عمر نرم‌افزار کامپیوتری قابل به کارگیری باشد.

توجه: در مدل‌های تکاملی در هر دور از تکرار نسخه‌ی کامل‌تری از نرم‌افزار تولید می‌شود.

مکانیزم نمونهسازی تکاملی

‏در نمونه‌سازی تکاملی، یک نمونه‌ی اولیه تولید می‌شود. در ادامه با اعمال اصلاحات بر روی نمونه‌ی اولیه، طی چند مرحله سیستم نهایی تولید می‌گردد. هدف از نمونه‌سازی تکاملی، تحویل یک سیستم عملیاتی به کاربران نهایی و شروع فرآیند تولید براساس نیازمندی‌هایی است که بهتر و بیشتر درک شده‌اند. کاربرد آن در مواردی است که نیازمندی‌های مشتری به طور کامل در ابتدای کار مشخص نباشد و یا نیاز به توسعه‌ی مبتنی بر تکرار و تکامل داشته باشیم. از مزایای نمونه‌سازی تکاملی می‌توان به درگیر کردن مشتری با فرآیند تولید سیستم که منجر به شناسایی بهتر نیازمندی‌ها می‌گردد، اشاره نمود.

توجه: به مکانیزم نمونه‌سازی تکاملی، الگوسازی باز نیز گفته می‌شود.

ارسطو خلیلی‌فر

مولف کتاب مهندسی نرم افزار راهیان ارشد

0 پاسخ ها

دیدگاه خود را ثبت کنید

آیا می خواهید به بحث بپیوندید؟
در صورت تمایل از راهنمایی رایگان ما استفاده کنید!!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *