دوشنبه , اردیبهشت ۳ ۱۳۹۷
خانه / تحقیقات و مقالات / استفاده مجدد نرم‌افزار

استفاده مجدد نرم‌افزار

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

تکنیک بازیابی از زمانی که توابع نرم افزار کارآیی مطلوبی دارد مورد بررسی قرار می گیرد. هر چند، بررسی ویژگی های غیر تابعی (کیفیتی) نرم افزار سیستم کاری دشوار است. علت شکست سیستم ناشی از عملکرد، امنیت، کاربرد یا دقت نامناسب آن است. بنابراین نگرانی از کیفیت سیستم در صدر روش های بازیابی نرم افزار قرار می گیرد. برای مثال، در طراحی سفینه Spirit در سازمانNASAیا تابع cosine از کتابخانه دلخواه ریاضی را نمی پذیرفت، یا به دنبال آن می گشت و امکان داشت آنرا بپذیرد. یک سازندهبازیابی شده در قسمت ظرافت، کارایی و امنیت به یک شرط سخت برخورد می کرد.

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

 

فواید استفاده مجدد نرم افزار:

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

کاهش هزینه تنها مزیت استفاده مجدد نیست. استفاده مجدد سیستماتیک در فرآیند طراحی و ساخت دارای مزایای زیر نیز می باشد.

۱- افزایش قابلیت اعتماد


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


۲- کاهش ریسک فرآیند

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

۳- استفاده موثرازمتخصصین

 

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


۴- پذیرش استاندارد
بعضی از استانداردها مانند استانداردهای واسط کاربری، می توانند به عنوان مجموعه ای از کامپوننت ها و اجزای قابل استفاده مجددپیاده سازی شوند. استفاده از واسط های کاربری استاندارد، قابلیت اطمینان را افزایش می دهند در نتیجه زمانی که به کاربران یک واسط آشنا ارائه شود، کمتر اشتباه می کنند.

۵- توسعه سریع

آوردن یک سیستم به بازار به سریعترین وجه ممکن اغلب از همه هزینه های توسعه مهم تر است. استفاده مجدد نرم افزار تولید سیستم را سریع تر می کند، زیرا هر دو زمان توسعه و تأییدکاهش می یابد.

درباره‌ رضا رمضانی

رضا رمضانی

جوابی بنویسید

ایمیل شما نشر نخواهد شدخانه های ضروری نشانه گذاری شده است. *

*