7 مدل تولید نرم افزار بخش دوم (Spiral و V و Big Bang)
دوشنبه 04/اردیبهشت/1402 709 برنامه نویسی

7 مدل تولید نرم افزار بخش دوم (Spiral و V و Big Bang)

1- مدل آبشاری Waterfall Model چرخه حیات تولید نرم افزار

برای مشاهده کلیک کنید

2- مدل تکراری Iterative Model چرخه حیات تولید نرم افزار

برای مشاهده کلیک کنید

3- مدل حلزونی Spiral Model چرخه حیات تولید نرم افزار

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

مدل اسپایرال

طرح مدل حلزونی

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

طرح: این مرحله با طراحی ذهنی و در مرحله اولیه انجام می گیرد که شامل طراحی معماری، طراحی منطقی واحدها و بخش های مختلف محصول (پیمانه ها) طراحی فیزیکی و تهیه طرح نهایی است که در مراحل بعدی انجام می گردد.

ساخت یا تولید: در این مرحله، نرم افزار یا محصول واقعی با توجه به طرح نهایی و با در نظر گرفتن نیازهای مشتری تولید می گردد. پس از تولید نرم افزار یا محصول جهت آزمایش با درج شماره نسخه جهت دریافت نظر مشتری و اعمال تغییرات نهایی ارسال می گردد.

بررسی و ارزیابی و تجزیه و تحلیل ریسک: تجزیه و تحلیل ریسک عبارتست از، شناسایی، پایش امکانات فنی و مدیریت ریسک از جمله انطباق محصول با طرح نهایی و محاسبه هزینه با برآورد اولیه. در این مرحله مشتری نرم افزار را ارزیابی و نظرات نهایی خود را اعلام می نماید.

کاربرد مدل حلزونی

مدل حلزونی به نحو بسیار گسترده ای در صنعت نرم افزار مورد استفاده می باشد زیرا این مدل همگام با روند تولید طبیعی هر محصول بوده و در حالی که کمترین ریسک را برای مشتری می تواند به دنبال داشته باشد، منافع شرکت تولید کننده را نیز به همراه دارد. ذیلاً به چند نمونه از کاربرد این مدل اشاره می گردد:

  • در مواردی که بودجه دارای محدودیت است و هزینه ها جزو مسایل حیاتی بشماره میرود و ارزیابی نیز با اهمیت تلقی می گردد این مدل می تواند مطلوب باشد.
  • این مدل برای پروژه پر ریسک و نیز با ریسک متوسط، مدلی موثر محسوب می گردد.
  • مدل حلزونی برای پروژه های بلند مدت نیز مدلی مطلوب بشمار می رود. زیرا تعهدات انجام این پروژه به لحاظ ایجاد تغییرات بالقوه در الویت های اقتصادی بسیار زیاد بوده و نیازها نیز در طول زمان دچار تغییر می گردد.
  • در مواردی که مشتری به نیازمندی های خود کاملاً اطمینان ندارد نیز این مدل می تواند کاربرد داشته باشد.
  • در مواردی که نیازمندی های مشتری پیچیده و روشن ساختن آن ها نیاز به ارزیابی بیشتر دارد نیز این مدل می تواند کاربرد داشته باشد.
  • در مورد خطوط تولید محصول جدید که می باید در مراحل مختلف انجام گرفته و در هر مرحله نظر مشتری کسب شود نیز این مدل می تواند مورد استفاده قرار گیرد.
  • در مواردی که در چرخه تولید محصول انتظار ایجاد تغییرات اساسی می رود نیز این مدل موثر باشد.

مدل اسپیرال

مزایا مدل حلزونی

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

  • کاربران را در همان اوایل کار درگیر کار بر روی تولید سیستم می نماید.
  • تغییر نیازمندی ها را می توان با طرح وفق داد.
  • استفاده گسترده از پیش الگو ها امکان پذیر است.
  • مقررات را می توان بطور صحیح اعمال نمود.
  • کاربران بسیار زود سیستم را مشاهده خواهند نمود.
  • تولید را می توان به بخش های کوچکتر تقسیم و یا بخش های پر ریسک را زودتر انجام داد که این امر مدیریت ریسک را آسان تر می سازد.

معایب مدل حلزونی

این مدل، مدیریت را در تکمیل پروژه بسیار سخت مشغول نموده و این خطر وجود دارد که مدل حلزونی مدیریت را در یک چرخه نامعین گرفتار نماید، بدین خاطر این مدل نیاز به نظمی سخت در ایجاد تغییرات و دامنه درخواست تغییرات دارد و این نظم نقش بسیار مهمی در تولید و پیاده سازی موفقیت آمیز پروژه به عهده خواهد داشت.

  • مدیریت در این مدل بسیار پیچیده می باشد.
  • پایان پروژه را نمی توان بزودی تخمین زد.
  • با پروژه های کوچک و یا طرح های کم ریسک سازگار نبوده و هزینه آن برای پروژه های کوچک بسیار بالا می باشد.
  • روند عملیات پیچیده می باشد.
  • تعداد بسیاری از مراحل میانی نیازمند مستند سازی بیش از اندازه می باشد.

مدل V

4- مدل V در حلقه حیات تولید نرم افزار

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

طرح مدل V

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

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

این امر از اهمیت بسیاری برخوردار است و نیاز به مدیریت دقیق و حساب شده دارد، زیرا اغلب مشتریان از نیازها و انتظارات خود بطور کاملاً دقیق مطلع نبوده و یا اطمینان کامل ندارد برنامه ریزی و طراحی وآزمون قبولی در این مرحله انجام می گیرد زیرا نیازهای کاری را می توان به منزله ورودی آزمون قبولی مورد استفاده قرار داد.

طرح سیستم: زمانی که نیازمندی ها به نحوی روشن و مشروح و دقیق مشخص گردید، آنگاه می توان طراحی کل سیستم را آغاز کرد. طراحی سیستم شامل درک و تشریح کامل سخت افزار و ابزار ارتباطی مورد نیاز محصول در مرحله تولید می باشد. طرح آزمون سیستم نیز بر مبنای طراحی سیستم تدوین می گردد. انجام این امور در مراحل اولیه زمان کافی را جهت اجرای آزمایش در مراحل بعد باقی می گذارد.

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

طرح واحد ها و پیمانه ها: در این مرحله طرح داخلی کلیه واحد ها و پیمانه های سیستم با جزییات کامل مشخص و تدوین می گردد. این امر را طراحی در سطوح پایین نیز می نامند (LLD). در این طراحی آنچه که از اهمیت فوق العاده برخوردار است، این است طرح هر پیمانه باید در معماری سیستم با سایر پیمانه ها یا واحد ها و همچنین با سایر سیستم های خارجی سازگاری داشته باشد.

آزمون واحدها بخشی اساسی در روند تولید محسوب و باعث حذف اکثر نقایص و خطاها در همان مراحل اولیه می گردد. آزمون واحد ها می تواند در این مرحله و بر مبنای طراحی واحد های داخلی تدوین گردد.

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

مراحل تایید اعتبار: در ادامه به مراحل مختلف تایید و تصدیق اعتبار در مدل V اشاره می شود:

  • آزمون واحد: آزمایش های واحد که در مرحله طراحی پیمانه ها تدوین شده در خلال مرحله تایید اعتبار اجرا می گردند. تست واحد آزمایش در سطح کد می باشد که می تواند در حذف اشکال و خطاها در مراحل اولیه یاری رساند گرچه با این تست، کشف تمامی عیوب و نقایص ناممکن می باشد.
  • آزمون یکپارچگی: آزمون یکپارچگی با مرحله طراحی معماری نرم افزار مرتبط می باشد. آزمون یکپارچگی اصولاً جهت حصول اطمینان از هم زیستی و ارتباط پیمانه های داخلی در درون سیستم انجام می پذیرد.
  • آزمون سیستم: آزمون سیستم مستقیماً با مرحله طراحی سیستم مرتبط می باشد. آزمون سیستم عملکرد سیستم و ارتباط آن با سیستم های خارجی را کنترل می نماید. در بسیاری از موارد سازگاری سخت افزار و نرم افزار در هنگام اجرای آزمون سیستم کشف و اشکار می شوند.
  • آزمون قبولی: آزمون قبولی با مرحله تجزیه و تحلیل نیازهای کاری مرتبط بوده و شامل آزمون محصول در محیط کاری کاربر می گردد. آزمون قبولی، سازگاری محصول با سایر سیستم های موجود در محیط کاربر را آشکار می سازد. این امر مسایل غیر عملیاتی نظیر کاستی و نقص بارگذاری یا قراردادن اطلاعات در منبع ذخیره و یا نقص در کارایی را در محیط واقعی کاربر روشن می سازد.

مدل وی

کاربرد مدل V

کاربرد مدل V تقریباً مشابه مدل آبشاری می باشد، زیرا هر دو مدل از نوع متوالی و ترتیبی می باشد. نیازها نیز قبل از اینکه پروژه شروع شود روشن و آشکار می باشند زیرا در هر دو مدل معمولاً برگشت به قبل و اعمال تغییرات بسیار پر هزینه می باشد. از این مدل معمولاً در حوزه تولید پزشکی و تولیدات دارویی استفاده می شود زیرا حوزه های مذکور حوزه هایی بسیار منضبط می باشند. سناریوهای زیر جهت استفاده از مدل V بسیار مناسب می باشند.

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

مزایای مدل V

یکی از امتیازات مدل V این است که درک و کاربرد آن آسان می باشد. سادگی این مدل مدیریت آن را نیز سهل تر می سازد

  • این مدل دارای نظم و ترتیب کاملی است و مراحل در زمان تعیین شده تکمیل می گردد.
  • برای پروژه های کوچکتر مناسب است زیرا در این پروژه ها نیازمندی ها به خوبی می تواند تعریف شوند.
  • درک و کاربرد آن سهل و آسان است. مدیریت این مدل به دلیل استحکام و قدرت ثبات آسان است. هر مرحله در این مدل دارای روندی مشخص جهت بررسی و تحویل می باشد.

معایب مدل V

از معایب مدل وی غیر قابل انعطاف بودن در مقابل تغییرات است و به همین دلیل در دنیایی که نیازها دایم در حال تغییر بوده و این امر در جهان پویای امروز متداول است انجام تغییرات در این مدل عملی پرهزینه محسوب می گردد.

  • ریسک بالا دارد و انعطاف در قبال تغییرات ندارد.
  • مدل نامناسب برای پروژه های پیچیده و موجودیت گرا object oriented می باشد.
  • مدلی ضعیف جهت پروژه های طولانی و مداوم است.
  • مدلی غیر مناسب برای پروژه هایی که تغییر نیازهای آن ها توام با ریسک بالا می باشند.
  • برگشت و تغییر کاربرد مدل که در هر مرحله آزمون قرارداد با اشکال فراوان روبرو می شود.
  • تا آخرین مرحله چرخه حیات هیچ نرم افزاری تولید نمی گردد.

مدل بیگ بنگ

5- مدل بیگ بنگ Big Bang چرخه حیات تولید نرم افزار

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

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

طرح و کاربرد مدل بیگ بنگ

در این مدل تمامی منابع موجود جهت تولید و برنامه نویسی مورد استفاده قرار می گیرد و تمامی توجهات معطوف تولید شده و توجه اندکی به برنامه ریزی می شود. نیازمندی ها زمانی که مطرح می گردد، مورد توجه قرار گرفته و پیاده سازی می شوند. اعمال هر گونه تغییر، موجب بازنویسی برنامه نمی گردد.

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

مدل بیگ بنگ

مزایای مدل بیگ بنگ

یکی از مزایای این مدل سادگی آن است و نیاز اندکی به برنامه ریزی دارد. مدیریت این مدل بسیار سهل و نیازمند هیچ رویه خاصی نیست.

  • مدلی بسیار ساده است.
  • نیاز اندک به برنامه ریزی دارد.
  • مدیریت آن آسان است.
  • منابع اندکی مورد نیاز می باشد.
  • قابلیت انعطاف بسیاری برای برنامه نویسان دارد.
  • کمک آموزشی مناسبی برای دانشجویان و تازه واردها در این رشته است.

معایب مدل بیگ بنگ

مدل بیگ بنگ مدلی بسیار پر ریسک بوده و تغییر در نیازمندی ها و یا عدم درک نیازها می تواند حتی منجر به نقض یا از بین رفتن کل پروژه شود. این مدل صرفاً جهت پروژه های کوچک و تکراری که دارای حداقل ریسک می باشند مناسب است.

  • مدلی نامطمئن و پر ریسک است.
  • برای پروژه های بزرگ و موجودیت گرا مدل مناسبی نیست.
  • مدلی ضعیف برای پروژه های طولانی و مداوم است.
  • در صورت عدم درک نیازمندی ها، می تواند بسیار پر هزینه باشد.

6- مدل چابک Agile Model چرخه حیات تولید نرم افزار

برای مشاهده کلیک کنید

7- مدل تولید سریع Rapid Application Development (RAD) چرخه حیات تولید نرم افزار

برای مشاهده کلیک کنید

درباره این مطلب دیدگاهی بنویسید...

آدرس پست الکترونیک شما منتشر نخواهد شد.

نظرات (0)