-
ویژگیهای قابل حصول از طریق مهندسی نرم افزار
ویژگیهای قابل حصول از طریق مهندسی نرم افزاربصورت زیر تعریف می شود:
مجموعه ای از صفات و مشخصه های مرتبط با محصولات نرم افزاری، كه زمینة تشریح، ایجاد و ارزیابی خصوصیات كیفیت محصول را از طریق مهندسی نرم افزار فراهم می آورند.
كیفیت در بر گیرنده مجموعه ای از خصوصیات كیفیت بوده، و هر یك از این خصوصیات كیفیت، با چندین ویژگی قابل حصول از طریق مهندسی نرم افزار مرتبط است. بعبارتی دیگر با بهره گیری از روشهای مهندسی نرم افزار برای ایجاد هر یك از ویژگیها، محصول نرم افزاری از نظر خصوصیات كیفیت مرتبط با آن ویژگی، تحت الشعاع قرار می گیرد.ویژگیهای قابل حصول از طریق مهندسی نرم افزار عبارتند از:
1_ مناسبت(ٍSuitability)
2- درستی و دقت در ارائة نتایج و تأثیرات(ِAccuracy)
3_ توانایی برقراری روابط موردنظر با دیگر سیستمهای تعیین شده(Interoperability)
4_ رعایت استانداردهای مرتبط با كاربرد(Compatibility)
5_ امنیت(Security)
6_ پختگی یا بلوغ(Maturity)
7_ تحمل خرابی(Fault Tolerance)
8- قابلیت بازگرداندن(Recoverability)
9_ قابل فهم بودن(Understandability)
10_ قابلیت یادگیری(Learnability)
11_ قابلیت اجرا(Operability)
12_ كارایی از نظر زمان (Time Efficiency)
13_ كارایی از نظر منابع(Resource Efficiency)
14_ قابل تحلیل بودن(Analysability)
15_ قابلیت تغییر(Changeability)
16_ ثبات یا پایداری(Stability)
17_ آزمون پذیری(Testability)
18_ تطبیق پذیری محیطی(Adaptability)
19_ قابلیت نصب(Installability)
20_ رعایت استانداردهای مرتبط با قابلیت حمل(Compliance)
یادآوری 1_ حصول میزان تصریح شده و مورد قبول ضمنی از ویژگی های فوق در انواع نرم افزارها دارای اهمیت است. اما در بودجة معین، ممكن است شرایطی رخ دهد كه حصول میزان موردنظر از یك ویژگی منجر به عدم توانایی در رسیدن به میزان موردنیاز از یك ویژگی دیگر می شود. نظر به اینكه حصول میزان تصریح شده و ضمنی از ویژگی ها، در قسمتهای حساس از نرم افزارهای حساس الزامی می باشد، بنابر این در تولید این قسمت ها، اصل بر حصول كلیة ضروریات است و در اینگونه موارد، هیچگونه محدودیتی پذیرفته نیست. اما حذف یا كاهش میزان مورد نیاز از ویژگی های غیر بحرانی، اگرچه منجر به كاهش كیفیت افزونه محصول می شود، قابل قبول است. در مورد هر ویژگی مرتبط با نرم افزارهای حساس، حصول میزان تصریح شده و ضمنی، در قسمتهای حساس از این نرم افزارها الزامی می باشد.
-
1_ مناسبت(Suitability)
مشخصه هایی از نرم افزار كه بر موجود بودن و تناسب مجموعة فعالیتهای نرم افزار با وظایف تصریح شده در مستندات نیازمندیها و موارد ضمنی دلالت دارند. مناسبت، یكی از ویژگیهای فرعی مرتبط با خصوصیت میزان پوشش دهی وظایف تعیین شده می باشد.
یادآوری 1_ با استفاده از ویژگی مناسبت، میزان تطابق بین وظایف، فرایندهای اصلی و فرعی، و عناصر تشكیل دهندة اصلی و فرعی، موجود در محیط واقعی(یا تعیین شده در مستند نیازمندیها)، با محیط ارائه شدة نرم افزاری سنجیده می شود.
یادآوری 2_ ویژگی مناسبت، مستقل از اندازه محصول است.
یادآوری 3_ نرم افزار در اصل بمنظور انجام وظایف مشخص و با رویه ها و رفتارهای متناسب ساخته می شود. بنابراین حصول میزان تصریح شده و ضمنی از مناسبت در انواع نرم افزارها(از هر اندازه و هر نوع )، دارای اهمیت است. اما حصول میزان تصریح شده و ضمنی، در قسمتهای حساس از نرم افزارهای حساس الزامی می باشد.
-
2_ درستی و دقت در ارائة نتایج و تأثیرات(ِAccuracy)
مشخصه هایی از نرم افزار كه بر ارائة نتایج درست و تأثیر گذاری صحیح، به میزان صحت تصریح شده در مستندات نیازمندیها و مورد قبول ضمنی دلالت دارند. درستی و دقت در ارائة نتایج و تأثیرات، یكی از ویژگیهای مرتبط با خصوصیت میزان پوشش دهی وظایف تعیین شده می باشد.
یادآوری 1_ با استفاده از ویژگی مذكور، میزان تطابق بین نتایج و دقت محاسبات، و تأثیرات ناشی از رفتارهای موجود در محیط واقعی(تعیین شده در مستند نیازمندیها)، با محیط ارائه شدة نرم افزاری سنجیده می شود.
یادآوری 2_ درستی و دقت در ارائة نتایج و تأثیرات، مستقل از اندازه محصول است و بهتر است میزان مورد نظر در مستند نیازمندی كلیة نرم افزارها اعلام گردد.
یادآوری 3_ حصول میزان تصریح شده و ضمنی از درستی و دقت در ارائة نتایج و تأثیرات، در نرم افزارهای علمی و مهندسی، تحلیل عددی، نرم افزارهای مالی و محاسباتی، و بطور كلی در موارد حساس از نظر دقت الزامی است.
-
3_ توانایی برقراری روابط موردنظر با دیگر سیستمهای تعیین شده(Interoperability)
مشخصه هایی از نرم افزار كه بر قابلیت فعل و انفعال و برقراری روابط تصریح شده، با سیستم های تصریح شده دلالت دارند. ویژگی مذكور، یكی از ویژگیهای مرتبط با خصوصیت میزان پوشش دهی وظایف تعیین شده می باشد.
یادآوری 1_ با استفاده از این ویژگی، میزان تطابق بین توانایی یا نیاز به برقراری ارتباطات داده ای و انجام همكاری با دیگر سیستمها در محیط واقعی، با آنچه در محیط نرم افزار عرضه می گردد سنجیده می شود.
یادآوری 2_ رعایت استانداردهای كامپیوتری(مانند انواع فایلهای استاندارد یا پروتكلهای ارتباطی خاص)، باعث افزایش این ویژگی در محصول می گردد.
یادآوری 3_ ویژگی توانایی برقراری روابط موردنظر با دیگر سیستم های تعیین شده، مستقل از اندازه محصول است.
-
4_ رعایت استانداردهای مرتبط با كاربرد(Compatibility)
مشخصه هایی از نرم افزار كه بر رعایت استانداردها، مقررات یا قواعد مربوط به كاربرد موردنظر در محصول، دلالت دارند. ویژگی مذكور، یكی از ویژگیهای مرتبط با خصوصیت میزان پوشش دهی وظایف تعیین شده می باشد.
یادآوری 1_ در صورت وجود و برقراری استاندارد(یا مجموعه ای از استانداردهای مرتبط) در محدودة بكارگیری محصول، استفادة دقیق از آن(ها) در تهیه و تدوین مستند نیازمندیها الزامی می باشد و مفاد موجود در مستند نیازمندیها نباید نافی ضروریات و نیازمندیهای آن استاندارد(ها) باشد.
یادآوری 2_ رعایت آندسته از استانداردهای صنعتی كه بیشتر به منظور یكنواخت نمودن كاربرد، عمومیت دادن و ایجاد ارتباط آسانتر بین نرم افزارها بوجود آمده اند، ممكن است زمینه ساز كاهش ویژگیهای دیگر(مانند كارایی) شود. این استانداردها در تولید بسته های نرم افزاری كاربرد بیشتری دارند اما در تولید محصولات سفارشی یا حساس كمتر مورد استفاده قرار می گیرند.
یادآوری 3_ ویژگی رعایت استانداردهای مرتبط با كاربرد، مستقل از اندازه محصول است.
-
5_ امنیت(Security)
مشخصه هایی از نرم افزار كه بر قابلیت آن در جلوگیری از دستیابی غیرمجاز، بصورت عمدی یا غیر عمدی به برنامه ها و داده ها دلالت دارند. امنیت، یكی از ویژگیهای مرتبط با خصوصیت میزان پوشش دهی وظایف تعیین شده می باشد.
یادآوری 1_ با استفاده از این ویژگی، میزان رعایت سطوح امنیت تصریح شده یا ضمنی مورد نیاز در محصول سنجیده می شود.
یادآوری 2_ ویژگی امنیت در بسیاری از نرم افزارهای كاربردی حائز اهمیت است، زیرا این سیستمها معمولاً اطلاعات خصوصی و محرمانه(مانند سوابق فردی، شغلی، مالی، سیاسی، كیفری، سازمانی و غیره) را در مقیاس های مختلف در خود نگهداری می نمایند.
یادآوری 3_ویژگی امنیت در مورد تخصیص مجوز اجرای برنامه ها نیز حائز اهمیت است. وجود یك سیستم صحیح امنیت و تخصیص وظایف به كاربران، برای سیستمهایی كه پذیرای تغییرات و رشد هستند دارای اهمیت و در نرم افزارهای حساس الزامی می باشد.
یادآوری 3_ ویژگی امنیت، با بزرگتر شدن اندازه، تعدد وظایف، جامعیت و تنوع اطلاعات و تنوع كاربران اهمیت بیشتری می یابد.
-
6_ پختگی یا بلوغ(Maturity)
مشخصه هایی از نرم افزار كه بر بسامد بروز شكست یا خطای ناشی از عیوب، دلالت دارند. پختگی(بلوغ)، یكی از ویژگیهای مرتبط با خصوصیت قابلیت اطمینان می باشد.
یادآوری 1_ ویژگی مذكور، یكی از ویژگی های اجرائی نرم افزار است كه ارزیابی و بهبود آن از طریق قراردادن، و یا بعبارتی نصب و بهره برداری نرم افزار در محیط نهایی استفاده، و یا ایجاد محیط مشابه با محیط نهایی امكان پذیر است. تجربه نشان داده است كه بسامد مذكور، در مقاطع اولیه از اجرای واقعی زیاد بوده اما بتدریج كاهش می یابد.
یادآوری 2_ كاهش بسامد بروز خطا بمعنای افزایش پختگی و افزایش آن بمعنای كاهش پختگی می باشد. بنابراین بزرگی و پیچیدگی نرم افزار با افزایش بسامد رابطة مستقیم و با پختگی رابطة معكوس دارد.
یادآوری 3_ رعایت قواعد مهندسی نرم افزار در پیاده سازی مانند پیمانه گرایی و ساختیافتگی و بطور كلی مواردی كه باعث افزایش قابلیت نگهداشت نرم افزار می شوند، با پختگی نرم افزار رابطة مستقیم دارند.
یادآوری 4_ ویژگی پختگی در قسمتهای حساس از نرم افزارهای حساس و بلادرنگ حائز اهمیت بسیار است. نظر به حساسیت ویژة این نرم افزارها، تلاشهای زیادی(شامل فراهم آوردن محیط واقعی و شبیه سازی شرایط ویژه، و نیز زیر بار قرار دادن و اجرای آزمایشات گوناگون) بمنظور حصول میزان تصریح شده از پختگی در مورد آنها انجام می شود. علیرغم این تمهیدات، بدلیل وجود احتمال بروز خطرات جانی،امنیتی و مالی در شرایط خاص، برای ایجاد اطمینان خاطر از روشهای دیگر(مانند تحمل خرابی) استفاده می شود.
-
7_ تحمل خرابی(Fault Tolerance)
مشخصه هایی از نرم افزار كه بر توانایی آن در مورد حفظ سطح مشخصی از كارایی در موارد بروز خرابی یا اشتباه در اجرای رفتارهای تعیین شده دلالت دارند. تحمل خرابی، یكی از ویژگیهای مرتبط با خصوصیت قابلیت اطمینان و برطرف كنندة نقائص ویژگیهای دیگر در عرضة مناسب آن است.
یادآوری 1_ ویژگی تحمل خرابی، بدلیل اهمیت فراهم آوردن قابلیت اطمینان، از ویژگیهای مهم در تولید نرم افزارهای حساس زمانی و بلا درنگ است. همچنین تا حدود زیادی مستقل از اندازه و وابسته به حساسیتهای موجود در نیازمندیها و جایگاه استفاده از نرم افزار است.
یادآوری 2_ حصول میزان حداقل(مورد قبول ضمنی) از این ویژگی، برای كلیة نرم افزارها الزامی می باشد. حداقل مذكور، بازگشت از شكست با حفظ ایمنی[1] می باشد كه سطح مشخصی از كارایی محسوب می شود.
-
8_ قابلیت بازگرداندن(Recoverability)
مشخصه هایی از نرم افزار كه بر
_توانایی بازگرداندن محصول نرم افزاری به سطح كارایی تعیین شده
_توانایی بازگرداندن داده هایی كه مستقیماً تحت تأثیر خرابی بوده اند
_زمان لازم و تلاش مورد نیاز برای انجام این كار
دلالت دارند. قابلیت بازگرداندن، یكی از ویژگیهای مرتبط با خصوصیت قابلیت اطمینان و برطرف كنندة نقائص ویژگیهای دیگر در عرضة مناسب آن است.
یادآوری 1_ حصول میزان حداقل(مورد قبول ضمنی) از ویژگی قابلیت بازگرداندن، برای كلیة نرم افزارها الزامی می باشد. حداقل مذكور ضامن قابلیت بازگشت به شرایط پیش از بروز اشكال، در مدت زمان و هزینة قابل قبول است.
یادآوری 2_ ویژگی قابلیت بازگرداندن، بدلیل اهمیت فراهم آوردن قابلیت اطمینان، از ویژگیهای مهم در تولید نرم افزارهای حساس و بلا درنگ است. همچنین تا حدود زیادی مستقل از اندازه و وابسته به حساسیتهای موجود در نیازمندیها و جایگاه استفاده از نرم افزار است.
-
9_ قابل فهم بودن(Understandability)
مشخصه هایی از نرم افزار كه بر تلاش كاربران برای شناخت و درك مفاهیم منطقی موضوعات موجود در نرم افزار و كاربرد آنها دلالت دارند. قابل فهم بودن، یكی از ویژگیهای مرتبط با خصوصیت قابلیت استفاده است.
یادآوری 1_ معمولاً در سیستمهای بزرگتر، اهمیت این ویژگی بیشتر است. افزایش این ویژگی، قابلیت نگهداشت را نیز افزایش می دهد.
برچسب برای این موضوع
مجوز های ارسال و ویرایش
- شما نمی توانید موضوع جدید ارسال کنید
- شما نمی توانید به پست ها پاسخ دهید
- شما strong>نمی توانید فایل پیوست ضمیمه کنید
- شما نمی توانید پست های خود را ویرایش کنید
-
قوانین انجمن