دانلود سمینار مهندسی کامپیوتر موضوع روش های تولید نرم افزار

دانلود مطالب دانشگاهی

 

مقدمه

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

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

بحران نرم افزار[1]

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

  • عدم بهره گیری کامل از قدرت سخت افزار
  • ناتوانی روش های تولید نرم افزار در پاسخگویی به افزایش تقاضا
  • هزینه های هنگفت تولید نرم افزار
  • عدم تحویل به موقع
  • عدم تامین نیازمندی های کاربر
  • کیفیت پایین و پایدار نبودن نرم افزار

با توجه به نتایج بررسی های گروه استاندلیش[2] که سالانه منتشر می شود، نرخ موفقیت پروژه های نرم افزاری در سال ۱۹۹۵ از بین هر ۶ پروژه، ۱ پروژه و امروزه از بین هر ۳ پروژه بیش از ۱ پروژه می باشد. نرخ موفقیت پروژه ها، در جدیدترین نتایج بررسی های این گروه در سال های اخیر که به صورت عمومی در دسترس همگان قرار داده شده است، افزایش زیادی را نشان می دهد؛ اما این نرخ همچنان باید نسبت به صنایع دیگر رشد بیشتری داشته باشد. براساس گزارش این گروه ۳۹ درصد از پروژه ها با موفقیت به پایان رسیده اند (یعنی پروژه در زمان مناسب با ویژگی های مورد نیاز کاربر بر اساس بودجه پیش بینی شده انجام شده است). ۴۳ درصد پروژه ها انجام شده اند؛ اما نتوانسته اند تمام ویژگی های یک پروژه ی موفق را کسب کنند. در آخر هم ۱۸ درصد پروژه ها شکست خورده اند و در حین انجام پروژه کنسل شده اند. بر اساس بررسی انجام شده توسط این گروه بزرگترین مشکل پروژه های نرم افزاری، تاخیر در تحویل پروژه به سفارش دهنده می باشد.

اگر پروژه ها را به دو دسته ی پروژه های بزرگ (بالاتر از ۱ میلیون دلار) و پروژه های کوچک (کمتر از ۱ میلیون دلار) تقسیم کنیم، به نتایج امیدوارکننده تری در کسب و کار های کوچک می رسیم. برخلاف پروژه های کوچک، پروژه های بزرگ آمار بسیار بدی به دست آورده اند و تنها ۱۰ درصد از پروژه ها موفق بودند که آمار ناامیدکننده ای است.

در مجموع می توان نتیجه گرفت وضعیت صنعت نرم افزار نسبت به گذشته بسیار بهبود یافته است. نتایج نمودار نرخ موفقیت پروژه ها به تفکیک مدل های مختلف توسعه نرم افزار، نشان از این دارد که نرخ موفقیت مدل های جدید توسعه نرم افزار نسبت به مدل های قبلی بالاتر رفته است. با مطالعه ی این نتایج مشخص می شود که فعالان حوزه ی نرم افزار برای موفقیت نیاز به تلاش و همت بیشتری نسبت به دیگر صنایع دارند]4[.

[1] Software Crisis

[2] Standish Group

بحران نرم افزار[1]

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

  • عدم بهره گیری کامل از قدرت سخت افزار
  • ناتوانی روش های تولید نرم افزار در پاسخگویی به افزایش تقاضا
  • هزینه های هنگفت تولید نرم افزار
  • عدم تحویل به موقع
  • عدم تامین نیازمندی های کاربر
  • کیفیت پایین و پایدار نبودن نرم افزار

با توجه به نتایج بررسی های گروه استاندلیش[2] که سالانه منتشر می شود، نرخ موفقیت پروژه های نرم افزاری در سال ۱۹۹۵ از بین هر ۶ پروژه، ۱ پروژه و امروزه از بین هر ۳ پروژه بیش از ۱ پروژه می باشد. نرخ موفقیت پروژه ها، در جدیدترین نتایج بررسی های این گروه در سال های اخیر که به صورت عمومی در دسترس همگان قرار داده شده است، افزایش زیادی را نشان می دهد؛ اما این نرخ همچنان باید نسبت به صنایع دیگر رشد بیشتری داشته باشد. براساس گزارش این گروه ۳۹ درصد از پروژه ها با موفقیت به پایان رسیده اند (یعنی پروژه در زمان مناسب با ویژگی های مورد نیاز کاربر بر اساس بودجه پیش بینی شده انجام شده است). ۴۳ درصد پروژه ها انجام شده اند؛ اما نتوانسته اند تمام ویژگی های یک پروژه ی موفق را کسب کنند. در آخر هم ۱۸ درصد پروژه ها شکست خورده اند و در حین انجام پروژه کنسل شده اند. بر اساس بررسی انجام شده توسط این گروه بزرگترین مشکل پروژه های نرم افزاری، تاخیر در تحویل پروژه به سفارش دهنده می باشد.

اگر پروژه ها را به دو دسته ی پروژه های بزرگ (بالاتر از ۱ میلیون دلار) و پروژه های کوچک (کمتر از ۱ میلیون دلار) تقسیم کنیم، به نتایج امیدوارکننده تری در کسب و کار های کوچک می رسیم. برخلاف پروژه های کوچک، پروژه های بزرگ آمار بسیار بدی به دست آورده اند و تنها ۱۰ درصد از پروژه ها موفق بودند که آمار ناامیدکننده ای است.

در مجموع می توان نتیجه گرفت وضعیت صنعت نرم افزار نسبت به گذشته بسیار بهبود یافته است. نتایج نمودار نرخ موفقیت پروژه ها به تفکیک مدل های مختلف توسعه نرم افزار، نشان از این دارد که نرخ موفقیت مدل های جدید توسعه نرم افزار نسبت به مدل های قبلی بالاتر رفته است. با مطالعه ی این نتایج مشخص می شود که فعالان حوزه ی نرم افزار برای موفقیت نیاز به تلاش و همت بیشتری نسبت به دیگر صنایع دارند]4[.

[1] Software Crisis

[2] Standish Group

برای ادامه دانلود این سمینار لطفا از طریق زیر ثبت سفارش بفرمایید

ثبت سفارش سمینار

انجام پایان نامه کامپیوتر، پروپوزال مهندسی کامپیوتر

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