زنگ

کسانی هستند که این خبر را قبل از شما می خوانند.
برای دریافت مطالب تازه مشترک شوید.
پست الکترونیک
نام
نام خانوادگی
چگونه می خواهید The Bell را بخوانید
بدون اسپم

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

1.1 مقررات عمومی استانداردهای سری ISO 9000

اول ، معیارهای سری ISO 9000 به معنای کلیه استانداردهای بین المللی است که توسط کمیته فنی 176 "کیفیت اداری و تضمین کیفیت" سازمان بین المللی استاندارد سازی (ISO) تهیه شده است. در حال حاضر ، این سری شامل کلیه استانداردهای بین المللی با شماره های 9000 تا 9004 (شامل کلیه قسمت های ISO 9000 و ISO 9004) ، از 10001 تا 10020 (از جمله کلیه قسمت ها) و همچنین ISO 8402 می باشد. در زیر نام های اصلی ترین استاندارد های تشکیل دهنده این سری وجود دارد.

استانداردهای ISO 9000-1-94 در زمینه مدیریت کیفیت و تضمین کیفیت. قسمت 1. دستورالعمل های انتخاب برای استفاده.

استانداردهای ISO 9000-2-93 در زمینه مدیریت کیفیت و تضمین کیفیت. قسمت 2. دستورالعمل های عمومی برای استفاده از ISO 9001 ، ISO 9002 و ISO 9003.

استانداردهای ISO 9000-3-91 در زمینه مدیریت کیفیت و تضمین کیفیت. قسمت 3. دستورالعمل های استفاده از ISO 9001 در توسعه ، تحویل و نگهداری نرم افزار.

استانداردهای ISO 9000-4-93 در زمینه مدیریت کیفیت و تضمین کیفیت. قسمت 4. دستورالعمل های اجرای برنامه قابلیت اطمینان کلی.

سیستم های کیفیت ISO 9001-94. مدلی برای تضمین کیفیت در طراحی ، توسعه ، تولید ، نصب و نگهداری.

سیستم های کیفیت ISO 9002-94. مدلی برای تضمین کیفیت در ساخت ، نصب و نگهداری.

سیستم های کیفیت ISO 9003-94. مدلی برای تضمین کیفیت در کنترل محصول نهایی و آزمایش نهایی.

ISO 9004-1-94 مدیریت کیفیت اداری و عناصر یک سیستم کیفیت. قسمت 1. دستورالعمل.

ISO 9004-2-91 مدیریت کیفیت اداری و عناصر یک سیستم کیفیت. قسمت 2. دستورالعمل خدمات.

ISO 9004-3-93 مدیریت کیفیت و عناصر سیستم کیفیت. قسمت 3. راهنماهای مواد فرآوری شده.

ISO 9004-4-93 مدیریت کیفیت و عناصر سیستم کیفیت. قسمت 4. دستورالعمل های مربوط به بهبود کیفیت.

سیستم های کیفیت ISO 10011-1-90. دستورالعمل های تأیید. قسمت 1. بررسی ها.

سیستم های کیفیت ISO 10011-2-91. دستورالعمل های تأیید. بخش 2. معیارهای صلاحیت برای حسابرسان خبره سیستم های کیفیت.

سیستم های کیفیت ISO 10011-3-91. دستورالعمل های تأیید. قسمت 3. مدیریت اداری برنامه های حسابرسی.

ISO 10012-1-92 تضمین کیفیت تجهیزات اندازه گیری. الزامات. قسمت 1. سیستم های پشتیبانی اندازه گیری برای اندازه گیری تجهیزات.

دستورالعمل های کیفیت ISO 10013. مقررات توسعه (در مرحله انتشار)

ISO 8402-94 مدیریت کیفیت و تضمین کیفیت. واژگان.

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

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

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

علاوه بر این ، دستورالعمل ها و الزامات استانداردهای سری ISO 9000 با توجه به اهداف سیستم کیفیت که باید به دست آید بیان شده و راه هایی برای دستیابی به این اهداف را تعیین نمی کنند ، ترک حق انتخاب این روش ها به مدیریت سازمان است. استانداردهای این سری الزامات سیستم های کیفیت را از نیاز مشتری برای محصولات متمایز می کند. الزامات مربوط به سیستم های کیفیتی مکمل شرایط فنی محصولات می باشد. به عنوان مثال ، ISO 12207 چرخه عمر توسعه نرم افزار را تعریف می کند. فرایندها و مدلهای کیفیت مربوط به فرآیند تضمین کیفیت (2.3 از ISO 12207) توسط استانداردهای سری ISO 9000 ایجاد شده اند.

ISO 9000-1 چهار دسته کلی محصول را پوشش می دهد و انواع محصولات عرضه شده توسط هر سازمان را شامل می شود:

    وسایل فنی

    نرم افزار.

    مواد فرآوری شده.

الزامات سیستم های کیفیتی که در استانداردهای بین المللی سری ISO 9000 تعیین شده اند ، برای هر چهار دسته بندی کلی محصولات قابل استفاده است ، اما اصطلاحات و برخی از مفاد و جنبه های سیستم های مدیریت کیفیت ممکن است متفاوت باشد. این را می توان از نام استانداردهای ISO 9004 - 2 و ISO 9004 - 3 مشاهده کرد. لازم به ذکر است که هر سازمان حداقل محصولات دو دسته را ارائه می دهد. به عنوان مثال ، سازمانی که نرم افزار را توسعه می دهد علاوه بر این سرویس هایی را برای پشتیبانی از نرم افزار توسعه یافته به مشتریان خود ارائه می دهد.

هدف از دستورالعمل ها و الزامات استاندارد های بین المللی سری ISO 9000 ، برآورده کردن الزامات از منظر چهار جنبه مهم برای کیفیت محصول است.

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

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

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

4- کیفیت از طریق نگهداری. جنبه چهارم کیفیت به دلیل نگهداری فنی محصول در حین بهره برداری در صورت لزوم ، به منظور حفظ ویژگی های مورد نظر.

سری استانداردهای ISO 9000 دستورالعملهای کلی را برای مدیریت اداری و الزامات تضمین کیفیت خارجی در چهار زمینه ارائه می دهد.

استانداردهای بین المللی سری ISO 9000 مبتنی بر درک این واقعیت است که کلیه کارها از طریق فرآیندها انجام می شود (شکل 1 را ببینید). هر فرآیند دارای فاکتورهای ورودی است. نتیجه فرایند نتیجه است - محصولاتی که ملموس و ملموس نباشند. این فرآیند خود یک تحول ارزش افزوده است (یا باید باشد). در هر فرآیند ، مردم و / یا منابع دیگر تا حدی نقش دارند. برای مثال ممکن است خروجی یک برنامه ، خدمات بانکی ، یک محصول تمام شده (یا واسطه) برای هر دسته از کالاهای اصلی باشد. امکان اندازه گیری در ورودی ، در مراحل مختلف فرایند و همچنین در خروجی وجود دارد.

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

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

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

مدیریت کیفیت محصولات یا اطلاعات درون ساختار.

با در نظر گرفتن ساختار پیچیده اکثر سازمانها ، مهم است که فرآیندهای اصلی را به صورت جداگانه تفکیک کرده و همچنین فرایندها را بسته به اهداف مدیریت کیفیت اداری ساده و رتبه بندی کنید. نمونه ای از شبکه پیچیده فرآیندها ، سازمانی است که مطابق با ISO / IEC 12207 و DO-178 نرم افزار تولید می کند.

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

فرایندها

تامین کننده

مصرف كننده

الزامات

عوامل ورودی

عوامل خروجی

وضعیت و خصوصیات

تولید

وضعیت و خصوصیات

تولید

الزامات

بازخورد

بازخورد

پیمانکار فرعی

شکل 1.2 اتصال اتصال به فرآیندهای موجود در شبکه عرضه با حضور جریانهای مرتبط با محصولات و اطلاعات.

هر سازمانی باید شبکه پردازش ها و رابط های خود را تعریف و تأسیس کند و آن را مدیریت کند. این سازمان با پیاده سازی شبکه فرایندها ، سطح کیفی ثابت محصولات خود را ایجاد ، بهبود و تضمین می کند. این مبنای مفهومی استانداردهای سری ISO 9000 است. فرایندها و رابط های آنها باید به منظور اطمینان از کیفیت محصولات ، اشیاء تجزیه و تحلیل و بهبود مستمر باشند.

استاندارد ISO 9000-1 هنگام ارزیابی سیستم های کیفی هر سازمان ، توصیه می کند سه سوال مهم درمورد هر فرآیند ارزیابی شده از شبکه بپرسید.

آیا این فرایندها تعریف و مستند شده اند؟

آیا این فرایندها کاملاً کاربرد دارند و آیا مطابق مستندات انجام شده است؟

آیا این فرایندها در دستیابی به نتایج مورد انتظار مؤثر هستند؟

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

یكی از مهمترین انواع اینگونه فعالیتها كه بصورت سیستماتیک انجام می شود ، ارزیابی وضعیت و كیفیت سیستم كیفیت است كه توسط مدیریت سازمان مطابق با ISO 9001 ، 9002 ، 9003 انجام می شود. نتیجه گیری های انجام شده در فرآیند ارزیابی سیستم كیفیت باید منجر به افزایش كارآیی و اقتصاد آن شود. منبع اطلاعاتی برای چنین نتیجه گیری همچنین نتایج ممیزی داخلی و خارجی سیستم کیفیت است.

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

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

همچنین باید به موقعیت هایی توجه داشته باشید که در آن می توانید استانداردهای سری ISO 9000 و نحوه استفاده از تهیه کننده این سری را اعمال کنید.

استانداردهای بین المللی سری ISO 9000 برای استفاده در چهار وضعیت زیر در نظر گرفته شده است.

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

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

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

4- پس از صدور گواهینامه یا ثبت نام توسط شخص ثالث. در این شرایط ، سیستم کیفیت توسط نهاد صدور گواهینامه ارزیابی می شود و سازمان موافقت می کند چنین سیستم کیفیتی را برای همه مصرف کنندگان محصولات خود حفظ کند.

تأمین کننده می تواند هر دو روش برای استفاده از استانداردهای سری ISO 9000 را انتخاب کند: "روش با انگیزه مدیریت" و "روش با انگیزه شخص ذینفع". روش دوم رایج ترین در نظر گرفته شده است.

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

هنگام استفاده از روشی با انگیزه مدیریت ، مدیریت سازمان است که تلاش می کند تا نیازهای آینده و روند بازار را تعیین کند. نصب اولیه یک سیستم با کیفیت که باعث بهبود کیفیت محصول می شود ، توسط ISO 9004-1 (و سایر قسمت های ISO 9004) هدایت می شود. علاوه بر این ، تأمین کننده می تواند از استانداردهای ISO 9001 ، 9002 یا 9003 بعنوان یک مدل تضمین کیفیت استفاده کند تا کفایت سیستم کیفیت را نشان دهد تا بتواند گواهینامه را بدست آورد. سیستم کیفیتی که از این طریق اجرا می شود نسبت به آنچه که به روش اول اجرا می شود ، پرقدرت تر و مثمر ثمر است.

استانداردهای سری ISO 9000 به تهیه و استفاده از مستندات به عنوان فعالیتی که باعث افزایش ارزش می شود توجه زیادی می کنند. مستندات مربوطه نقش مهمی در فعالیتهای تضمین کیفیت زیر دارند:

در دستیابی به کیفیت محصول مورد نیاز؛

ارزیابی سیستم های کیفیت؛

در بهبود کیفیت؛

در حفظ سطح کیفی به دست آمده.

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

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

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

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

  • فیل کراسبی: کیفیت یعنی برآورده کردن نیازهای کاربر.
  • واتس همفری: کیفیت دستیابی به سطح عالی قابلیت استفاده است.
  • شرکت IBM: عبارت "کیفیت ناشی از نیاز بازار (کیفیت مبتنی بر بازار)" را ایجاد کرد.
  • معیارهای بالدریج: "کیفیت مشتری محور."
  • سیستم مدیریت کیفیت ISO 9001: کیفیت درجه ای است که خصوصیات ذاتی آنها را ملزم می سازد.

کیفیت قابل قبول - این میزان مطلوب و کمال مطلوب محصول ایجاد شده (خدمات) است که قادر به رضایت کاربران و در چارچوب محدودیت های طراحی داده شده می باشد.

کیفیت در فعالیتهای طراحی:

  • مدیریت الزامات ("ویژگی های کیفیت" به عنوان دسته ای از الزامات غیر کاربردی).
  • تست (به اصطلاح MTBF ، معیارهایی مانند MTTF - میانگین زمان تا عدم موفقیت ، یعنی میانگین زمان بین خرابی های سیستم شناسایی شده و غیره).

"کیفیت قابل قبول" را می توان با سطح خدمات در توافق نامه SLA - سطح سرویس مقایسه کرد. یعنی می توان کیفیت قابل قبولی را در نظر گرفت<количественно выраженный> سازش بین مشتری و پیمانکار در مورد خصوصیات کالایی که توسط پیمانکار به نفع منافع ایجاد شده است<решения задач> مشتری با در نظر گرفتن سایر محدودیت های پروژه (به ویژه هزینه ای که اغلب به عنوان "هزینه کیفیت" - "هزینه کیفیت" شناخته می شود).

شکل "حوزه دانش - کیفیت نرم افزار"

شکل "مدل سیستم مدیریت کیفیت"

اصول کیفیت نرم افزار

رضایت به الزامات کیفی (در الزامات اصلی کیفیت) ، همراه با ارتباط روشن با مهندسین از آنچه که کیفیت را تشکیل می دهد ، حاصل شده است<получаемого продукта>نیاز به بحث و تعریف رسمی در مورد بسیاری از جنبه های کیفیت دارد.

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

یک ایده مهم این است که نرم افزار مورد نیاز ویژگی های مورد نیاز کیفیت نرم افزار را تعیین می کند ، و همچنین بر روش های تعیین کمیت تأثیر می گذارد و برای ارزیابی این خصوصیات تدوین شده است.<соответствующие> ملاک پذیرش.

فرهنگ و اخلاق مهندسی نرم افزار (فرهنگ و اخلاق مهندسی نرم افزار)

از مهندسان نرم افزار انتظار می رود مسائل مربوط به کیفیت نرم افزار را بخشی از آنها درک کنند<профессиональной> فرهنگ.
جنبه های اخلاقی می تواند نقش مهمی در تضمین کیفیت نرم افزار ، فرهنگ و نگرش مهندسان داشته باشد.<к своей работе>. انجمن کامپیوتر IEEE و ACM کد اخلاقی و حرفه ای را بر اساس هشت اصل تهیه کرده اند که به مهندسان کمک می کند تا تعهد خود را نسبت به کیفیت و استقلال تقویت کنند.<в решении вопросов обеспечения достойного качества создаваемых программных продуктов> در کار روزانه خود

ارزش و هزینه های کیفیت

در حقیقت مفهوم "کیفیت" آنقدر آشکار و ساده نیست که ممکن است در نگاه اول به نظر برسد. برای هر محصول مهندسی ، تعداد زیادی وجود دارد<интерпретаций> کیفیت ، بسته به نوع خاص "سیستم مختصات". بسیاری از این دیدگاه ها باید در مرحله توسعه الزامات برای یک محصول نرم افزاری مورد بحث و تعیین قرار گیرند. ویژگی های کیفیت ممکن است به یک درجه یا درجه دیگر نیاز باشد ، ممکن است وجود نداشته باشد یا ممکن است شرایط خاصی را تعیین کند ، همه اینها ممکن است نتیجه یک مصالحه خاص باشد.

هزینه کیفیت را می توان با:

  • هزینه هشدار<дефектов> (هزینه پیشگیری) ،
  • هزینه ارزیابی
  • هزینه خرابی داخلی
  • هزینه شکستهای خارجی

نیروی محرکه پروژه های نرم افزاری تمایل به ایجاد نرم افزاری با مقدار مشخص است. مقدار نرم افزار در ممکن است به شکل مقدار بیان شود ، یا ممکن است نباشد. مشتری ، به عنوان یک قاعده ، ایده خود را در مورد سرمایه گذاری های حداکثر هزینه دارد ، در صورت دستیابی به اهداف اصلی ایجاد نرم افزار ، بازده آن پیش بینی می شود. همچنین ممکن است مشتری در مورد کیفیت نرم افزار انتظارات خاصی داشته باشد. گاهی اوقات ، مشتریان به مسائل مربوط به کیفیت و هزینه های مرتبط فکر نمی کنند. آیا مشخصات کیفی کاملاً تزئینی است یا هنوز هم بخشی جدایی ناپذیر از نرم افزار است؟ پاسخ احتمالاً جایی در وسط است ، زیرا تقریباً در چنین مواردی اتفاق می افتد و موضوع بحث در مورد میزان مشارکت مشتری در فرآیند تصمیم گیری و درک کامل هزینه و مزایای مرتبط با دستیابی به سطح معینی از کیفیت است. در حالت ایده آل ، بیشتر این تصمیمات باید هنگام رسیدگی به شرایط مورد نیاز اتخاذ شود ، اما ممکن است این موضوعات در کل چرخه عمر نرم افزار مطرح شود. وجود ندارد<“стандартных”> قوانینی در مورد چگونگی تصمیم گیری در این زمینه. با این وجود مهندسان باید بتوانند گزینه های مختلف و هزینه خود را ارائه دهند.

مدل ها و خصوصیات کیفیت

ISO / IEC سه مدل کیفیت نرم افزار مرتبط را تعریف می کند (ISO 9126-01 مهندسی نرم افزار - کیفیت محصول ، قسمت 1: مدل کیفیت):

  • کیفیت داخلی
  • کیفیت خارجی و
  • کیفیت در حین کار و همچنین مجموعه ای از کارهای مربوط به ارزیابی کیفیت نرم افزار (ارزیابی محصول نرم افزار ISO14598-98).

کیفیت فرآیندهای نرم افزاری (کیفیت فرآیند مهندسی نرم افزار)

مدیریت کیفیت (مدیریت کیفیت نرم افزار) و کیفیت فرآیندهای مهندسی نرم افزار (کیفیت فرآیند مهندسی نرم افزار) به طور مستقیم با کیفیت محصول نرم افزاری ایجاد شده مرتبط است.

دو کیفیت مهم برای کیفیت نرم افزار وجود دارد.

  • بلیط - مربوط به در نظر گرفتن سیستم مدیریت کیفیت عمومی ISO 9001-00 در ضمیمه پروژه های نرم افزاری است.
  • استاندارد مهم دیگر CMMI است، که در زمینه دانش "فرآیند مهندسی نرم افزار" مورد بحث قرار گرفته است ، توصیه هایی را برای بهبود روند ارائه می دهد. مناطق فرآیند CMMI (حوزه های صلاحیت) به طور مستقیم با مدیریت کیفیت:
    • تضمین کیفیت فرآیند و محصول (دسته فرآیند CMMI "پشتیبانی") ،
    • تأیید (تأیید ، دسته "مهندسی") و
    • گواهینامه (اعتبارسنجی ، دسته "مهندسی").

با انجام این کار ، CMMI طبقه بندی می کند مرور و حسابرسی به عنوان روشهای تأیید ، اما به عنوان فرآیندهای مستقل نیستند.

این استانداردها هنوز مکمل تلقی می شوند و صدور گواهینامه ISO 9001 به دستیابی به سطوح بالاتر بلوغ مطابق CMMI کمک می کند.

کیفیت محصول نرم افزار

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

ISO 9126-01 (مهندسی نرم افزار - کیفیت محصول ، قسمت 1: مدل کیفیت) دو سه مدل توصیف شده در آن ، ویژگی های مرتبط با آن و "ویژگی های زیر" کیفیت و معیارهای مفید برای ارزیابی کیفیت محصولات نرم افزاری را تعیین می کند.

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

  • مشخصات کامل سیستم مورد نیاز
  • مشخصات مورد نیاز نرم افزار برای اجزای سیستم نرم افزاری (مشخصات مورد نیاز نرم افزار ، SRS) ،
  • مدل ها
  • اسناد آزمون
  • گزارش های تولید شده در نتیجه کار تجزیه و تحلیل کیفیت.

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

بهبود کیفیت

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

  1. فرآیندهای چرخه زندگی
  2. فرآیند تشخیص ، از بین بردن و جلوگیری از خرابی / نقص و
  3. فرآیندهای بهبود کیفیت.

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

رویکردهایی مانند Tqm (مدیریت کیفیت کل) و PDCA (برنامه ، انجام ، بررسی ، قانون - برنامه ریزی ، اقدام ، تأیید ، واکنش / تعدیل) ابزاری برای دستیابی به اهداف با کیفیت هستند. پشتیبانی مدیریتی در اجرای فرایندها ، ارزیابی محصول و دستیابی به کلیه اطلاعات لازم کمک می کند. علاوه بر این ، برنامه توسعه ای که در حال توسعه است (برنامه بهبود معمولاً هدفمند بوده و کار واحد یا سازمان به عنوان یک کل را در بر می گیرد) به طور کامل تمام اقدامات و پروژه های بهبود را مشخص می کند.<отдельных аспектов деятельности> در یک بازه زمانی معینی که برای چنین پروژه هایی می توان با حل موفقیت آمیز وظایف مربوطه انجام داد. در عین حال ، پشتیبانی از مدیریت بدان معنی است که کلیه پروژه های بهسازی منابع کافی برای دستیابی به اهداف خود دارند. حمایت از مدیریت ارتباط نزدیکی با اجرای تعامل فعال در تیم دارد و باید از بروز مشکلات احتمالی (و مخالفت منفعل یا حتی فعال با اجرای برنامه بهبود یا پروژه های فردی آن) جلوگیری کرد. تشکیل کارگروهها ، حمایت از مدیران میانی و منابع تخصیص یافته در سطح پروژه - این موضوعات در زمینه دانش "فرآیند مهندسی نرم افزار" مورد بحث قرار گرفته است.

فرآیندهای کیفیت نرم افزار

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

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

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

  1. تعریف محصول مورد نظر از نظر ویژگی های کیفیت.
  2. فرآیندهای برنامه ریزی برای به دست آوردن محصول مورد نظر.

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

SQM می تواند برای ارزیابی محصولات نهایی و متوسط \u200b\u200bاستفاده شود. برخی از فرایندهای تخصصی SQM در استاندارد 12207 تعریف شده اند:

  • فرآیند تضمین کیفیت
  • روند تأیید
  • فرآیند صدور گواهینامه (فرآیند اعتبار سنجی)؛
  • فرآیند تجزیه و تحلیل مشترک (روند بررسی مشترک)؛
  • روند حسابرسی

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

فرآیندهای SQM شامل کارها و تکنیکها است ، طراحی شده برای ارزیابی چگونگی اجرای برنامه های ایجاد نرم افزار و اینکه چگونه محصولات واسطه ای و نهایی به خوبی الزامات مشخص را برآورده می کنند. نتایج این کارها قبل از انجام اقدامات اصلاحی مناسب ، در قالب گزارش برای مدیران ارائه می شود. مدیریت فرایند SQM بر این باور استوار است که داده های گزارش دقیق هستند.
همانطور که در این زمینه از تخصص شرح داده شده است ، فرایندهای SQM به هم نزدیک هستند. آنها می توانند با هم همپوشانی داشته باشند ، و گاهی اوقات حتی ترکیب می شوند. به نظر می رسد که آنها از نظر ماهیت واکنش پذیر هستند ، زیرا فرآیندهای موجود را در چارچوب عمل به دست آمده و محصولاتی که قبلاً تولید شده اند در نظر می گیرند. با این حال ، آنها در مرحله برنامه ریزی نقش عمده ای دارند ، به عنوان فرایندها و رویه های لازم برای دستیابی به ویژگی ها و سطح کیفی مورد نیاز طرفین ذی نفع.<проекта> نرم افزار.

مدیریت ریسک همچنین می تواند نقش مهمی در انتشار نرم افزارهای با کیفیت بازی کند. درج یک "خطر" منظم (به عنوان یک دائمی ، و نه دوره ای ؛ در اصل - نظم و انضباط) ریسک و<соответствующих> تکنسین کنترل<рисками> در فرآیندهای چرخه عمر نرم افزار می تواند پتانسیل تولید یک محصول با کیفیت را افزایش دهد. اطلاعات بیشتر در مورد مدیریت ریسک را می توان در حوزه دانش "مدیریت مهندسی نرم افزار" یافت.

تضمین کیفیت نرم افزار (SQA)

فرآیندهای SQA تأیید کنید که محصولات نرم افزاری و فرآیندهای چرخه عمر پروژه ، الزامات مشخص شده را برآورده می کنند. چنین تأییدهایی براساس برنامه ریزی انجام می شود<работ> (تصویب) و انجام مجموعه ای از اقدامات برای اطمینان از تبدیل شدن کیفیت به بخشی لاینفك نرم افزار.
چنين ديدگاهي حاكي از تدوين شفاف و دقيق مسئله و همچنين اين واقعيت است كه الزامات مربوط به آن تعريف شده و به طور واضح بيان شده ، كامل و بدون ابهام تفسير شده است.<программному> تصمیم گیری SQA می کوشد با انجام اقدامات مختلف در همه مراحل ، کیفیت را در روند توسعه و نگهداری تضمین کند<жизненного цикла>، که به شما امکان می دهد مشکلات را در مراحل اولیه شناسایی کنید ، که تقریباً در هر فعالیت پیچیده ای اجتناب ناپذیر است.

مدیریت ریسک یک ابزار مکمل جدی برای اطمینان از کیفیت نرم افزار است.

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

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

برای دستیابی به این مهم ، قبل از هر چیز ، لازم است که اهداف کیفی به طور واضح تعریف و درک شوند (و همچنین به طور واضح تفسیر شود ، که پیش نیاز هر هدف و الزامات مرتبط است). این ، بدون عدم موفقیت ، باید در برنامه های مدیریت مربوط منعکس شود.<проектом>توسعه و نگهداری

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

علاوه بر این ، برنامه SQA همچنین به موضوعات کار تضمین کیفیت مربوط به سایر انواع فعالیتهای شرح داده شده در آن می پردازد<различных> برنامه های توسعه نرم افزار ، که شامل تهیه ، نصب ، تعمیر و نگهداری نرم افزارهای سفارشی و / یا تکرار شده یا خارج از قفسه (خارج از قفسه ، COTS) مورد نیاز برای این پروژه نرم افزاری است. یک برنامه SQA ممکن است حاوی معیارهای پذیرش نرم افزار و اقدامات گزارشگری و مدیریتی برای اطمینان از کیفیت باشد.<и контролю над> کار

تأیید و اعتبار سنجی (V&V)

اعتبارسنجی و صدور گواهینامه نرم افزار - یک رویکرد سفارش برای ارزیابی محصولات نرم افزاری ، که در طول چرخه زندگی اعمال می شود. تلاش های انجام شده به عنوان بخشی از کارهای تأیید و صدور گواهینامه با هدف تضمین کیفیت به عنوان یک ویژگی کاملی از نرم افزار و برآورده کردن نیازهای کاربر انجام شده است.
V&V مستقیماً به مسائل مربوط به کیفیت نرم افزار پرداخته شده و از تکنیک های آزمایش مناسب برای تشخیص نقص استفاده می کند. V&V می تواند برای محصولات واسطه ای استفاده شود ، با این حال ، به حدی که مطابق با "مراحل" میانی باشد<соответствующих> فرآیندهای چرخه زندگی

فرایند V&V تعیین می کند که میزان محصول (نتیجه) کار یا توسعه و نگهداری دیگر نیازهای مندرج در چهارچوب این کارها را برآورده می کند ، و محصول نهایی اهداف تعیین شده و نیازهای کاربر را برآورده می کند.

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

هر دو فرآیند - تأیید و صدور گواهینامه - در مراحل اولیه توسعه و نگهداری آغاز می شود. آنها تحقیق می کنند فرصت های کلیدی محصول را هم در زمینه نتایج مستقیم قبل (محصولات واسط) و هم از نظر پاسخگویی به مشخصات مربوطه. هدف از برنامه ريزي V&V تأمين مراحل تأييد و صدور گواهينامه با منابع لازم ، تخصيص روشن نقش ها و مسئوليت ها است. اسناد طرح V&V حاصل شده و<детально> منابع ، نقشها و فعالیتهای مختلف و همچنین تکنیکها و ابزارهای مورد استفاده را توصیف می کند.
این طرح همچنین به جنبه های مدیریت ، ارتباطات (تعامل) ، سیاست ها و رویه های مربوط به فعالیت های تأیید و صدور گواهینامه و تعامل آنها می پردازد. علاوه بر این ، ممکن است مسائل مربوط به گزارش نقص و الزامات مستندسازی را منعکس کند.

ارزیابی (بررسی) و حسابرسی (بررسی و ممیزی)

پنج نوع ارزیابی و ممیزی:

  • بررسیهای مدیریت
  • بررسی های فنی
  • بازرسی ها
  • "پیاده روی"
  • ممیزی (audtis)

ارزیابی مدیریت (بررسیهای مدیریت)

هدف از ارزیابی های مدیریت پیگیری توسعه است<проекта/продукта>تعیین وضعیت برنامه ها و برنامه ها ، تأیید الزامات و تخصیص منابع یا ارزیابی اثربخشی رویکردهای مدیریتی مورد استفاده در رسیدن به اهداف.

ارزیابی های مدیریت از تصمیم گیری در مورد ایجاد تغییرات و انجام اقدامات اصلاحی مورد نیاز هنگام اجرای یک پروژه برنامه پشتیبانی می کند.

ارزیابی های مدیریت ، کفایت برنامه ها ، برنامه ها و الزامات را تعیین می کند ، ضمن نظارت بر پیشرفت یا عدم انطباق آنها. این ارزیابی ها می تواند در رابطه با محصول انجام شود ، در قالب گزارش های حسابرسی ، گزارش وضعیت (توسعه) ، گزارش های تحقیق و توسعه ، و همچنین انواع مختلف برنامه ها - مدیریت پروژه / پروژه مدیریت ریسک ، مدیریت پیکربندی ، امنیت<использования> نرم افزار (ایمنی) ، ارزیابی ریسک و غیره

بررسیهای فنی

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

ارزیابی فنی ، بدون نقص ، به وجود داده های ورودی زیر نیاز دارد:

  • فرمول بندی اهداف
  • محصول نرم افزاری خاص (در معرض ارزیابی)
  • از پیش تعیین شده طرح (طرح مدیریت پروژه)
  • لیست مشکلات (سؤالات) مرتبط با محصول
  • روشهای ارزیابی فنی

فرمان<технической оценки> یک روش ارزیابی داده شده را دنبال می کند. افراد واجد شرایط (از نظر فنی) یک نمای کلی از محصول (نماینده تیم توسعه) ارائه می دهند. مطالعه<продукта> در طول یک یا چند جلسه (بین کسانی که محصول را ارائه می دهند و کسانی که ارزیابی ارائه می دهند) برگزار می شود. ارزیابی فنی پس از اتمام تمام فعالیتهای تحقیقاتی درباره محصول توصیف شده است.

بازرسی ها

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

  1. افرادی که دارای سمت های مدیریتی (مدیران) در رابطه با اعضای تیم بازرسی هستند نباید در بازرسی ها شرکت کنند.
  2. بازرسی باید تحت هدایت یک رهبر بی طرف (مستقل از پروژه و اهداف آن) که در فنون بازرسی آموزش دیده است ، انجام شود.

بازرسی نرم افزار همیشه بر خلاف ارزیابی هایی که لزوماً به این امر نیاز ندارند ، نویسندگان یک محصول متوسط \u200b\u200bیا نهایی را شامل می شود. بازرسی ها (به عنوان واحدهای سازمانی موقت - گروه ها ، تیم ها) شامل یک رهبر ، ثبت ، یک بازرس و چند بازرس (از 2 تا 5) می شوند. اعضای تیم بازرسی می توانند در زمینه های مختلف تخصصی (دارای حوزه های مختلف شایستگی) باشند ، به عنوان مثال حوزه موضوع ، روش های طراحی ، زبان و غیره. در یک لحظه معین (دوره) زمانی ، بازرسی ها در رابطه با یک قطعه کوچک و کوچک از محصول انجام می شود (در اکثر موارد با تمرکز روی ویژگی های عملکردی یا سایر ویژگی های شخصی ؛ اغلب ، بر اساس قوانین فردی کسب و کار ، الزامات عملکردی یا ویژگی های کیفیت ، یادداشت نویسنده). هر یک از اعضای تیم باید قبل از جلسه بازرسی ، محصول نرم افزاری و سایر داده های ورودی را بررسی کند ، شاید برخی از تکنیک های تحلیلی را در قطعات کوچک از محصول یا به طور کلی محصول مورد استفاده قرار دهد ، به طور کلی ، در مورد دوم فقط یک جنبه از آن را بررسی می کند ، به عنوان مثال واسط ها. هر ناهنجاری که باید پیدا شود باید مستند باشد و اطلاعاتی به رهبر بازرسی ارسال شود. در طی روند بازرسی ، رهبر جلسه را هدایت می کند.<инспекции> و همه چیز را بررسی می کند<члены команды> آماده بازرسی

یک ابزار متداول که در هنگام بازرسی مورد استفاده قرار می گیرد ، یک چک لیست شامل ناهنجاری ها و موضوعات مربوط به جنبه ها است<программного продукта>علاقه برانگیخته ورق نتیجه اغلب ناهنجاری ها را طبقه بندی می کند و از نظر کامل بودن و صحت آن توسط تیم ارزیابی می شود. تصمیم برای انجام بازرسی مطابق با یک (هر) از سه معیار گرفته می شود:

  1. فرزندخواندگی<продукта> بدون نیاز یا کمی نیاز به پردازش
  2. فرزندخواندگی<продукта> با تأیید قطعات پردازش شده
  3. نیاز به بازرسی مجدد

جلسات بازرسی معمولاً بر خلاف ارزیابی فنی و ممیزی چندین ساعت طول می کشد که در بیشتر موارد بیشتر کار را شامل می شود و بر این اساس طولانی تر می شود.

قدم زدن

هدف از این رفت و آمد ارزیابی محصول نرم افزاری است. اجرای این برنامه به منظور آشنایی (آموزش) مخاطبان با محصول نرم افزاری انجام می شود.

اهداف اصلی این جابجایی عبارتند از:

  • ناهنجاری ها را جستجو کنید
  • بهبود محصول
  • بحث در مورد روشهای جایگزین اجرای
  • ارزیابی انطباق با استانداردها و مشخصات

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

حسابرسی

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

ممیزی یک فعالیت رسمی است که شرکت کنندگان در آن نقش های خاصی مانند حسابرس رهبری ، حسابرس دوم ، ثبت و آغازگر را انجام می دهند. ممیزی شامل نماینده واحد سازمان / سازمان مورد ارزیابی قرار می گیرد. در نتیجه ممیزی موارد عدم رعایت مشخص می شود و گزارشی تهیه می شود که برای تیم ضروری است<разработки> برای انجام اقدامات اصلاحی

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

ملاحظات عملی

مورد نیاز کیفیت نرم افزار

عوامل نفوذ

عوامل مختلفی در برنامه ریزی ، مدیریت و انتخاب اقدامات و تکنیک های SQM تأثیر می گذارد ، از جمله:

  • دامنه سیستمی که در آن نرم افزار اجرا خواهد شد (امنیت حیاتی<людей>) ، برای تجارت و موارد ضروری)
  • سیستم و نرم افزار مورد نیاز
  • چه مؤلفه هایی در سیستم استفاده می شوند - تجاری (خارجی) یا استاندارد (داخلی)
  • چه استانداردهای مهندسی نرم افزار در یک زمینه معین قابل استفاده است؟
  • چه روش ها و ابزارهای نرم افزاری برای توسعه و نگهداری و همچنین اطمینان از کیفیت و بهبود (محصول و فرایندها) استفاده می شود
  • بودجه ، کارکنان ، سازماندهی فعالیت های پروژه ، برنامه ها و برنامه ها برای کلیه مراحل
  • کاربران هدف چه کسانی هستند و هدف سیستم چیست
  • سطح صداقت سیستم

اطلاعات در مورد این عوامل تأثیر می گذارد که دقیقاً چگونه فرآیندهای SQM ساماندهی و مستندسازی می شود ، کدام یک از آثار SQM انتخاب خواهند شد (استاندارد سازی شده در پروژه ، تیم ، واحد سازمانی ، سازمان) ، چه منابع مورد نیاز و چه محدودیت هایی در تلاش برای کارگردانی اعمال می شود. برای اطمینان از کیفیت.

قابل اعتماد بودن

ضمانت - ضمانت<высокой> قابلیت اطمینان ، محافظت در برابر شکست.
در مواردی که عدم موفقیت سیستم می تواند منجر به عواقب بسیار ناگواری شود (چنین سیستمهایی گاهی در منابع انگلیسی به "اعتماد به نفس" یا "سیستم یکپارچگی بالا" گفته می شود ، در زبان روسی به بعضی اوقات به عنوان "سیستم های قابل اطمینان بالا" ، "در دسترس بودن زیاد" و و غیره) ضمانت کلی (کل) سیستم (به عنوان ترکیبی از سخت افزار ، نرم افزار و انسان) اصلی ترین و اولویت کیفیت مورد نیاز در رابطه با عملکردهای اساسی است.<системы>.

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

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

سطح یکپارچگی نرم افزار

سطح صداقت نرم افزار با توجه به پیامدهای احتمالی خرابی نرم افزار و احتمال بروز چنین خرابی مشخص می شود. هنگامی که جنبه های مختلف امنیتی (کاربرد و امنیت اطلاعات) از اهمیت برخوردار است ، هنگام تهیه برنامه های کاری در زمینه شناسایی منابع احتمالی حوادث ، می توان از تکنیک های تحلیل خطر (در زمینه ایمنی استفاده ، ایمنی) و تجزیه و تحلیل تهدید (در امنیت اطلاعات ، امنیت) استفاده کرد. تاریخچه خرابی سیستمهای مشابه همچنین می تواند به شناسایی مفیدترین تکنیکها برای تشخیص خرابی ها کمک کند<всесторонней> ارزیابی کیفیت نرم افزار.

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

خصوصیات نقص

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

در برابر پس زمینه تکامل (و ظهور روشها و زبانهای طراحی جدید) ، به همراه فناوریهای جدید نرم افزاری ، کلاسهای جدید نقص ظاهر می شوند. این امر مستلزم تلاشهای عظیمی برای تفسیر (و تصحیح) کلاسهای قبلاً تعریف شده از نقص (خرابی) است. هنگام ردیابی نقص ، یک مهندس نه تنها به کمیت آنها بلکه به نوع آن نیز علاقه مند است. توزیع نواقص براساس نوع از اهمیت ویژه ای برای تعیین ضعیف ترین عناصر سیستم ، از دیدگاه فناوری ها و راه حل های معماری مورد استفاده ، که منجر به نیاز به مطالعه عمیق آنها ، ایجاد پروژه های آزمایشی تخصصی ، تأیید اضافی مفهوم (اثبات مفهوم ، POC - یک رویکرد مکرر در هنگام استفاده می شود) فن آوری های جدید) ، جذب متخصصان شخص ثالث و غیره اطلاعات به خودی خود ، بدون طبقه بندی ، اغلب به سادگی برای کشف علل ناکامی ها بی فایده است ، زیرا برای تعیین راه های حل مشکلات ، آنها باید با انواع مناسب گروه بندی شوند. سؤال این است که یک طبقه بندی از نقایص را تعریف کنیم که برای مهندسین و سازمان به عنوان یک کل قابل توجه خواهد بود.

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

تعاریف جزئی از مفاهیم از این نوع به شرح زیر است:

  • خطا: "تفاوت ... بین نتیجه درست و نتیجه محاسبه شده<полученным с использованием программного обеспечения>”
  • عیب: "مرحله نادرست ، پردازش یا تعریف داده ها در یک برنامه رایانه ای"
  • شکست: “<Некорректный> نتیجه ناشی از کمبود "
  • خطای انسانی / کاربر: "عمل انسان منجر به نتیجه نادرست"

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

با توجه به نتایج SQM- کار با هدف کشف نقایص ، اقدامات لازم برای رفع نقص در محصول آزمایش انجام می شود. با این حال ، موضوع به این محدود نمی شود. اقدامات ممکن دیگری نیز وجود دارد که به شما امکان می دهد بازده کامل نتایج SQM مربوطه را بدست آورید. در میان آنها - تجزیه و تحلیل و تفسیر (خلاصه)<по обнаруженным несоответствиям/дефектам>، استفاده از تکنیک های ارزیابی کمی (به دست آوردن معیارها) برای بهبود محصول و فرآیند ، ردیابی نقایص و حذف آنها از سیستم (با کنترل مدیریتی و فنی اقدامات اصلاحی لازم). به نوبه خود ، منبع اطلاعات برای بهبود فرآیند ، به ویژه ، فرایند SQM است.

ناسازگاری ها و نقص های موجود در هنگام اجرای تکنیک های مربوط به SQM باید برای جلوگیری از تلف شدن ثبت شود. برای برخی از تکنسین ها (به عنوان مثال ، ارزیابی فنی ، ممیزی ، بازرسی) ، حضور ثبت کننده (ضبط کننده) لازم است ، دقیقاً برای ثبت چنین اطلاعاتی ، به همراه سؤالات (از جمله مواردی که نیاز به بررسی اضافی دارند) و تصمیماتی گرفته شده است. در مواردی که از ابزارهای اتوماسیون مناسب استفاده می شود ، آنها همچنین می توانند اطلاعات خروجی لازم در مورد نقص را ارائه دهند (برای مثال ، خلاصه آمار در مورد نقص ، مجریان مسئول و غیره). داده های نقص را می توان در قالب درخواست های تغییر جمع آوری و ضبط کرد (SCR ، درخواست تغییر نرم افزار) و متعاقباً می توان در انواع خاصی از بانکهای اطلاعاتی ثبت شد (به عنوان مثال ، برای پیگیری آمار متقاطع پروژه / آمارهای تاریخی برای تجزیه و تحلیل بیشتر و بهبود فرآیند) ، هم به صورت دستی و هم به صورت خودکار از ابزارهای تحلیل مناسب (تعدادی ابزار طراحی مدرن و ابزارهای تخصصی به شما امکان می دهد کد و مدل ها را با استفاده از معیارهای مناسب که برای اطمینان از کیفیت محصولات و فرایندها مهم هستند ، تجزیه و تحلیل کنید). گزارش های نقص به مدیریت سازمان / واحد یا ساختار سازمانی ارسال می شود (برای تصمیم گیری مناسب در مورد پروژه ، محصول ، فرایند ، کارکنان ، بودجه و غیره).

تکنیک های مدیریت کیفیت نرم افزار

تکنیک های SQM را می توان به چند دسته تقسیم کرد:

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

تکنیک های استاتیک

تکنیک های استاتیک نشان می دهد<детальное> تحقیق (بررسی) اسناد طراحی ، نرم افزار و سایر اطلاعات در مورد یک محصول نرم افزاری بدون اجرای آن. این تکنیکها ممکن است شامل موارد دیگری باشد ، همانطور که در زیر مورد بحث قرار گرفته است ، صرف نظر از میزان استفاده از ابزارهای اتوماسیون ، اقدامات مربوط به ارزیابی جمعی یا تحلیل فردی

تکنیک های فشرده مردم

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

تکنیک های تحلیلی

مهندسان نرم افزار به طور معمول از تکنیک های تحلیلی استفاده می کنند. از دیدگاه روشها و رویکردهای چابک ، افراد و تعاملها نشان می دهد<непосредственное> ارتباط و تعامل مداوم اعضای تیم.

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

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

سایر انواع رسمی تر تکنیک های تحلیلی به عنوان روشهای رسمی شناخته می شوند. آنها برای تأیید الزامات و طراحی مورد استفاده قرار می گیرند (مسلماً فقط در موارد واقعی امروزه در توسعه نرم افزارهای صنعتی). اعتبارسنجی برای قطعات حساس نرم افزار اعمال می شود (که معمولاً ارتباط چندانی با روش های رسمی ندارد - این یک روش طبیعی برای دستیابی به کیفیت قابل قبول و در عین حال به حداقل رساندن هزینه ها است). بیشتر اوقات ، آنها برای تأیید قسمتهای مهم سیستمهای حساس مانند موارد خاص مورد استفاده قرار می گیرند.<информационной> ایمنی و قابلیت اطمینان.

تکنیک های دینامیکی

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

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

بستگی به سازمان دارد<ведения> پروژه ها ، هنگام آزمایش سیستم های نرم افزاری در فرآیندهای SQA و V&V ، می توان کارهای آزمایش خاصی را انجام داد. با توجه به اینکه طرح SQM به مشکلات تست می پردازد ، این موضوع شامل برخی از نظرات آزمایش است.

آزمایش کردن

مراحل اعتبارسنجی<качества> در SQA و V&V شرح داده شده است<планах>، تحقیق و ارزیابی هر محصول خروجی (از جمله واسطه و نهایی) مربوط به مشخصات مورد نیاز نرم افزار ، برای موارد زیر:

  • قابلیت ردیابی
  • ثبات
  • کامل بودن / کامل بودن
  • صحت
  • و به طور مستقیم انجام<требований> (کارایی).

چنین تائیدیه ای همچنین مصنوعات خروجی فرآیندهای توسعه و نگهداری ، جمع آوری ، تجزیه و تحلیل و تعیین نتایج را در بر می گیرد. SQA-فعالیت تضمین می کند که انواع آزمون مناسب (ضروری در زمینه پروژه مشخص) برنامه ریزی ، توسعه و اجرا می شوند ، و V&V - تدوین برنامه های آزمون ، استراتژی ها ، سناریوها و رویه ها<тестирования>.
موضوعات مربوط به آزمون به تفصیل در زمینه دانش "تست" بحث شده است. دو نوع آزمایش وظایف تعیین شده توسط SQA و V&V را دنبال می کنند ، زیرا آنها مسئول کیفیت داده های مورد استفاده در پروژه هستند:

  • ارزیابی و آزمایش ابزارهای مورد استفاده در پروژه
  • آزمایش انطباق (یا ارزیابی تست های انعطاف پذیری) از قطعات و محصولات COTS (COTS - تجاری از قفسه ، محصول آماده استفاده) برای استفاده در محصول ایجاد شده.

بعضی اوقات ، سازمان های V&V مستقل ممکن است به توانایی نظارت بر روند آزمایش نیاز داشته باشند و در موارد خاص ، صدور گواهینامه (یا ، در بیشتر موارد ، مستند سازی / ضبط) اجرای واقعی<тестов> برای انجام آنها مطابق با مراحل مشخص شده از طرف دیگر ، می توان تماس با V&V برقرار کرد و می تواند با هدف ارزیابی خود آزمایش انجام شود: کفایت برنامه ها و رویه ها ، کفایت و صحت نتایج.

نوع دیگر آزمایش ، که تحت نظارت سازمان V&V انجام می شود ، آزمایش شخص ثالث است. چنین شخص ثالث به خودی خود توسعه دهنده محصول نیست و به هیچ وجه وابسته به توسعه دهنده محصول نیست. علاوه بر این ، شخص ثالث یک منبع مستقل برای ارزیابی است ، که معمولاً دارای مجوز مناسب می باشد (برای مثال ، سازمانی که یک استاندارد را تهیه می کند ، انطباق آن توسط یک متخصص مستقل ارزیابی می شود و اقدامات آن توسط سازنده استاندارد تأیید می شود). هدف از این نوع آزمایش ، بررسی محصول برای مطابقت با مجموعه خاصی از الزامات (به عنوان مثال ، امنیت اطلاعات) است.

اندازه گیری کمی کیفیت نرم افزار

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

اگر ویژگی های کیفیت به درستی انتخاب شوند ، چنین اندازه گیری ها می توانند کیفیت را (سطح کیفیت) از بسیاری جهات حفظ کنند. اندازه گیری ها می توانند به مدیریت تصمیم گیری کمک کنند. معیارها می توانند در یافتن جنبه های مشکل ساز و تنگناها در فرآیندها کمک کنند. Metrics ابزاری برای ارزیابی کیفیت کار خود توسط مهندسین است - هم برای اهداف تعریف شده توسط SQA ، و هم از نظر یک روند بهبود طولانی مدت.<достигаемого> کیفیت
با افزایش پیچیدگی داخلی و پیچیدگی نرم افزار ، مسائل مربوط به کیفیت فراتر از بیان اینکه نرم افزار در حال کار است یا کار می کند فراتر رفته است. سؤال این است - چقدر اهداف کیفی ارزیابی شده اند که به خوبی ارزیابی می شوند.

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

هزینه فرآیند SQM یکی از این موارد است<проблемных> سؤالاتی که همیشه در فرایند تصمیم گیری در مورد چگونگی ساماندهی پروژه (کار طراحی) مطرح می شود. غالباً از مدلهای هزینه عمومی استفاده می شود که براساس تعیین چه موقع دقیقاً نقص تشخیص داده شده است و در صورت پیدا کردن نقص در مراحل اولیه چرخه زندگی ، چه مقدار تلاش برای صرفه جویی در مصرف آن باید صرف شود. داده های طراحی می توانند به یک تصویر واضح تر از ارزش کمک کنند.

سرانجام ، گزارش SQM به خودی خود نه تنها در مورد فرآیندهای خود (با فرض وضعیت فعلی آنها ، یادداشت نویسنده) ، بلکه همچنین در مورد چگونگی بهبود کلیه فرآیندهای چرخه زندگی ، اطلاعات مفیدی دارد.

اگرچه ، به عنوان ارزیابی های کمی (در این مورد ، نتایج ارزیابی ها ، و نه فرایند اندازه گیری) ، ویژگی های کیفیت می توانند به تنهایی مفید باشند (برای مثال ، تعداد الزامات راضی نشده و متناسب با چنین الزاماتی) ،<эффективно> از تکنیک های ریاضی و گرافیکی برای تسهیل تفسیر مقادیر متریک استفاده می شود. برای مثال چنین تکنیک هایی کاملاً طبیعی طبقه بندی می شوند:

  • بر اساس روش های آماری (به عنوان مثال تجزیه و تحلیل پارتو ، توزیع عادی و غیره)
  • آزمونهای آماری
  • تجزیه و تحلیل روند
  • پیش بینی (به عنوان مثال مدل های قابل اطمینان)

تکنیک های مبتنی بر روش های آماری و تست های آماری غالباً "عکس فوری" از مشکل آفرین ترین مناطق محصول نرم افزار مورد مطالعه را ارائه می دهند (و به هر حال ، همین مورد غالباً با توجه به فرایندها صادق است). نمودارها و نمودارهای بصری به طور تصویری به تصمیم گیرندگان کمک می کند تا جنبه هایی را برای تمرکز منابع شناسایی کنند<проекта>. نتایج حاصل از تجزیه و تحلیل روند ممکن است نشان دهد که برنامه خراب است ، به عنوان مثال ، در طول تست. یا اینکه شکست کلاسهای خاص تا زمانی که اقدامات اصلاحی در روند توسعه انجام نشود ، شایع تر می شود. تکنیک های پیش بینی در برنامه ریزی زمان تست و پیش بینی شکست کمک می کند.

ویژگی های کیفیت نرم افزار

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

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

یادداشت:

  1. استهلاک یا پیری نرم افزار رخ نمی دهد. محدودیت های قابلیت اطمینان به دلیل خطا در الزامات ، طراحی و اجرای آن آشکار می شود. عدم موفقیت به دلیل این خطاها بستگی به نحوه استفاده از نرم افزار و نسخه های نرم افزار قبلاً انتخاب شده دارد.
  2. در تعریف ISO 8402 ، "قابلیت اطمینان" به معنای "توانایی یک عنصر در انجام عملکرد مورد نیاز" است. در این استاندارد بین المللی ، عملکرد تنها یکی از ویژگی های کیفیت نرم افزار است. بنابراین ، تعریف قابلیت اطمینان برای "حفظ سطح کیفیت عملکرد خود" به جای "انجام عملکرد مورد نیاز" گسترش یافته است.

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

یادداشت:

  1. "کاربران" را می توان به عنوان اکثر کاربران مستقیم نرم افزار تعاملی تعبیر کرد. حلقه کاربران ممکن است شامل اپراتورها ، کاربران نهایی و کاربران غیرمستقیم باشد که تحت تأثیر این نرم افزار قرار گرفته اند یا به کاربرد آن بستگی دارند. عملی باید در طیف گسترده ای از شرایط عملیاتی کاربر در نظر گرفته شود که ممکن است بر نرم افزار تأثیر بگذارد ، از جمله آماده سازی برای استفاده و ارزیابی نتایج.
  2. عملی که در این استاندارد به عنوان مجموعه ای خاص از ویژگی های محصولات نرم افزاری تعریف شده است از نظر ارگونومی با تعریف متفاوت است ، جایی که سایر خصوصیات از جمله کارآیی و ناکارآمدی به عنوان مؤلفه های عملی در نظر گرفته می شوند.

قابلیت نگهداری - مجموعه ای از ویژگی های مربوط به میزان کار مورد نیاز برای تغییرات خاص (اصلاحات).
يادآوري - يك تغيير ممكن است شامل اصلاح ، بهبود يا سازگاري نرم افزار با تغييرات در محيط ، الزامات و شرايط كار باشد.

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

یادداشت:

  1. این مجموعه از خصوصیات مشخصه عملکرد نرم افزار برای برآوردن نیازها را نشان می دهد ، در حالی که سایر مجموعه ها عمدتاً زمان و چگونگی انجام آن را توصیف می کنند.
  2. در این ویژگی ، یادداشتی برای تعریف کیفیت برای نیازهای تعیین شده و برآورد شده در نظر گرفته می شود.

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

کیفیت محصول نرم افزار

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

اهمیت هر ویژگی کیفی با کلاس نرم افزار متفاوت است. به عنوان مثال ، قابلیت اطمینان برای نرم افزارهای سیستمهای حساس برای ماموریت مهم است ، کارایی برای نرم افزارهای سیستمهای حساس در زمان واقعی مهمترین کاربرد است و کاربردی بودن برای نرم افزارهای گفتگوی کاربر نهایی مهمترین است.

اهمیت هر ویژگی کیفی نیز بسته به دیدگاههای پذیرفته شده متفاوت است.

ارسال کاربر

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

کاربران ممکن است به سؤالات زیر علاقه مند باشند:

  • آیا ویژگی های مورد نیاز در نرم افزار وجود دارد؟
  • چقدر نرم افزار قابل اعتماد است؟
  • نرم افزار چقدر مؤثر است؟
  • آیا کاربر نرم افزار دوستانه است؟
  • مهاجرت نرم افزار و محیط دیگر چقدر آسان است؟

نمای برنامه نویس

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

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

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

معرفی مدیر

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

ارزیابی کیفیت محصول نرم افزار

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

شکل "مدل فرآیند ارزیابی"

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

مدل کیفیت فرآیند

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

شکل "مدل مفهومی کیفیت فرآیند توسعه"

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

دستورالعملهای استفاده از خصوصیات کیفیت

1 کاربرد

2 مفهوم کیفیت نرم افزار

2.1 معرفی کاربر
2.2 نمای برنامه نویس
2.3 ارائه سر

3.1 تعیین الزامات کیفیت

3.2 آمادگی برای ارزیابی

3.2.1 انتخاب معیارهای با کیفیت (شاخص ها)
3.2.2 تعریف سطوح رتبه بندی
3.2.3 تعیین ضوابط ارزیابی

3.3 روش ارزیابی

3.3.1 اندازه گیری
رتبه بندی 3.3.2
3.3.3 ارزیابی

1. معرفی

2 تعریف شاخص های کیفیت جامع

2.1 عملکرد

2.1.1 مناسب بودن
2.1.2 دقت
2.1.3 قابلیت همکاری
2.1.4 انطباق
2.1.5 امنیت

قابلیت اطمینان 2.2

2.2.1 بلوغ
2.2.2 تحمل عیب
بازیابی 2.2.3

قابلیت استفاده 2.3

2.3.1 قابل درک است
2.3.2 یادگیری
عملکرد 2.3.3

2.4 بهره وری

2.4.1 ماهیت تغییر در طول زمان (رفتار زمان)
2.4.2 رفتار منابع

2.5 حفظ

تحليل پذيري
2.5.2 قابلیت تغییر
پایداری 2.5.3
2.5.4 قابلیت آزمایش

2.6 قابلیت حمل

2.6.1 سازگاری
2.6.2 قابلیت نصب
2.6.3 انطباق
2.6.4 قابل تعویض (قابل تعویض)

یادداشت:

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

کیفیت پروژه

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

مدیریت کیفیت پروژه

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

اصول کیفیت (ISO 9000)

  1. تمرکز مشتری
  2. مسئولیت مدیریت
  3. درگیر کردن مردم
  4. رویکرد فرآیند
  5. رویکرد سیستماتیک به مدیریت
  6. پیشرفت مداوم
  7. تصمیم گیری واقعی
  8. روابط متقابل سودمند با تامین کنندگان

شکل "تفاوت در درک مدیریت کیفیت در ISO 9000 و PMBoK"

مدیریت کیفیت پروژه (PMI): فرایندهای فرعی

  • برنامه ریزی کیفیت
  • تضمین کیفیت
  • کنترل کیفیت

برنامه ریزی کیفیت

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

فرآیند برنامه ریزی کیفیت: ورودی ها

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

فرآیند برنامه ریزی کیفیت: ابزارها و فناوری ها

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

فرایند برنامه ریزی کیفیت: خروجی ها ، نتایج

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

تضمین کیفیت

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

فرآیند تضمین کیفیت: ورودی ها

  • دستورالعمل کار خروجی دیگر فرایند برنامه ریزی کیفیت.
  • نتایج اندازه گیری های کنترل کیفیت. خروجی فرایند کنترل کیفیت.

فرآیند تضمین کیفیت: ابزارها و تکنیک ها

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

حسابرسی کیفیت

"امتحانات" ساختار یافته ای که "آموخته های آموخته شده" را تأیید می کند. انواع ممیزی با کیفیت عبارتند از:

  • داخلی خارجی
  • سیستم / محصول / فرآیندهای / سازمان ،
  • برنامه ریزی شده / منظم
  • خاص و پیچیده است.

فرآیند تضمین کیفیت: رسانه ها

بهبود کیفیت. این شامل اقدامات برای افزایش بهره وری و بهره وری پروژه به منظور ارائه مزایای اضافی برای صاحبان پروژه است.

کنترل کیفیت

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

فرآیند کنترل کیفیت: ورودی ها

  • نتایج کار. نتایج همیشه در روند همکاری ، اجرای و برنامه ریزی مجدد پروژه ظاهر می شوند.
  • برنامه مدیریت کیفیت. خروجی فرایند برنامه ریزی کیفیت.
  • دستورالعمل کار خروجی فرایند برنامه ریزی کیفیت.
  • لیست های تأیید

کنترل کیفیت: ابزارها و تکنیک ها

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

« هدف استفاده از ابزارها "نتایج یا تغییرات را ضبط کنید ، آنها را به صورت گرافیکی نمایش دهید و سپس مشکلات را به روشی مناسب شناسایی و تصحیح کنید."

فرآیند کنترل کیفیت: خروجی

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

منابع

  • http://sorlik.blogspot.com ، سرگئی اورلیک ، 2004-2005
  • Genelt A.E. کمک آموزشی در رشته "مدیریت کیفیت توسعه نرم افزار" 2007 ، سن پترزبورگ

مفهوم "کیفیت نرم افزار".

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

کیفیت نرم افزار - این مجموعه ای از خواص است که سودمندی محصول (برنامه) را برای کاربران مطابق با هدف و الزامات کاربردی تعیین می کند. علاوه بر این ، الزامات را می توان کاملاً گسترده تفسیر کرد ، که منجر به تعدادی از تعاریف مستقل از مفهوم "کیفیت" می شود. متداول ترین تعریف ISO 9001 است که مطابق آن کیفیت "درجه انطباق ویژگی های ذاتی با الزامات" است. کیفیت نرم افزار مفهومی نسبی است که فقط با در نظر گرفتن شرایط واقعی استفاده از نرم افزار ، مفهوم آن معقول است. بنابراین الزامات مربوط به کیفیت نرم افزار مطابق با شرایط و دامنه خاص نرم افزار تنظیم شده است.

مدل های کیفیت نرم افزارچهار سطح ارائه زیر را داشته باشید.

سطح اول با تعریف ویژگی ها (شاخص ها) از کیفیت نرم افزار مطابقت دارد ، که هر یک از آنها دیدگاه جداگانه ای را در مورد کیفیت کاربر نشان می دهد. مطابق با استانداردهای GOST R ISO / IEC 9126-93 ، GOST R ISO / IEC 12119-2000 ، GOST 28195-89 ، مدل کیفیت شامل شش ویژگی یا شش شاخص اصلی کیفیت است که ما آنها را به ترتیب برای اکثر کاربران مهم داریم:

  • عملکرد؛
  • قابلیت اطمینان عملکرد؛
  • سهولت استفاده؛
  • بهره وری؛
  • همراهی
  • قابل حمل

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

مجموعه ویژگی ها را برای هر یک از شاخص های کیفیت ذکر شده در نظر بگیرید (شکل 3.1).

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

به ویژگیها عملکرد مربوط بودن:

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

قابلیت اطمینان عملکردی. ویژگی های قابلیت اطمینان عملکرد نرم افزار شامل موارد زیر است:

  • بی عیب و نقص - صفتی که توانایی عملکرد نرم افزار را بدون خطا تعیین می کند.
  • درست - صفتی که میزان دستیابی به نتایج صحیح را نشان می دهد.
  • قابلیت کنترل - صفتی که کامل بودن و اثربخشی تشخیص خطا را در نتایج واسطه ای و خروجی مشخص می کند
  • تحمل خطا - صفتی که توانایی نرم افزار را برای انجام صحیح عملکردها در شرایط غیر عادی (خرابی سخت افزار ، خطاها در داده ها و رابط ها و غیره) مشخص می کند.
  • قابلیت اطمینان - صفتی که توانایی نرم افزار را در ایجاد خرابی عملکردی نشان می دهد سیستم اطلاعات;
  • بازیابی - صفتی که توانایی از بین بردن برنامه را مشخص می کند خطای نرم افزار و در صورت خرابی عملکردی ، مجدداً اجرایی و بازیابی داده را مجدداً راه اندازی کنید.
  • آمادگی - صفتی که توانایی یک برنامه برای یک برنامه دلخواه را برای انجام دقیق تبدیل تبدیل ارائه شده نشان می دهد.

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

شکل. 3.1

ویژگی های قابلیت استفاده عبارتند از:

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

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

ویژگی های عملکرد نرم افزار شامل موارد زیر است:

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

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

قابلیت نگهداری شامل ویژگی های زیر است:

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

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

قابلیت حمل شامل ویژگی ها است:

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

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

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

1

در این مقاله اطلاعات مختصری در مورد استاندارد ISO 9126 ”فناوری اطلاعات ارائه شده است. ارزیابی یک محصول نرم افزاری. ویژگی های کیفیت و دستورالعمل ها برای استفاده از آنها. " زیرا طیف سیستم های نرم افزاری گسترده ، سپس گروهی از سیستم ها برای ایجاد آزمایش انتخاب شدند. برای ارزیابی کیفیت این گروه از برنامه ها ، شرح مختصری در مورد برخی از سیستم های نرم افزاری ارائه شده است. بر اساس ویژگی های این گروه ابزارهای نرم افزاری، لیستی از خصوصیات تعیین کننده کیفیت برنامه ها تهیه شده است. با توجه به توصیه های استاندارد ISO 9126 ، مطالعه ای در مورد مشخصات گروه منتخب ابزارهای نرم افزاری انجام شد. به عنوان روشی برای تعیین مقادیر شاخص های کیفیت ، از ثبت خصوصیات (خواه یا نبود) و ارزیابی تخصصی استفاده کردیم. بنابراین ، روشی برای ارزیابی کیفیت یکی از انواع نرم افزارها مطابق با ISO 9126 ارائه شده است.

استاندارد

مشخصه

کنترل کیفیت

نرم افزار

1. Baranyuk V.V. ، Tyutyunnikov N.N. ارزیابی کیفیت لغت نامه های الکترونیکی و دائره المعارف // مهندسی نرم افزار. - 2012. - شماره 8. - س 29-37.

2. گلیچف A.V. ، Panov V.P. ، Azgaldov G.G. کیفیت چیست؟ - م.: اقتصاد ، 1968.135 s.

3. گورباچنکو I.M. نرم افزاری برای ایجاد سیستم های آموزشی خودکار // مشکلات مربوط به اطلاع رسانی منطقه. PIR-2005: مواد نهم کنفرانس علمی و عملی (کراسنویارسک ، 11 تا 12 اکتبر 2005). - Krasnoyarsk: CPI KSTU، 2005. - T. 2. - P. 132–135.

4. گورباچنکو I.M. تجزیه و تحلیل مقایسه ای سیستم های آزمون موجود // آزمایش در زمینه آموزش: مشکلات و چشم انداز توسعه: مطالب همایش علمی و کاربردی همه روسی. (کراسنویارسک ، 19-21 مه 2008) / سوراخ. ویرایش G.P. کارلوف - Krasnoyarsk: SibGTU، 2008. - S. 177–183.

5- لیپایف V.V. مشکلات تضمین کیفیت ابزارهای نرم افزاری پیچیده [منبع الکترونیکی]. - حالت دسترسی: http://quality.eup.ru/MATERIALY4/poksps.htm (دسترسی به 9 آوریل 2013).

6. لوزینین A.I. ، Shubinsky I.B. ویژگی های کیفیت نرم افزار و روش های ارزیابی آنها [منبع الکترونیکی]. - حالت دسترسی: http://www.ibtrans.ru/Estimating٪ 20methods.pdf (دسترسی به 12 مارس 2013).

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

1) كیفیت نرم افزار درجه ای است كه نرم افزار از تركیب مورد نیاز خود استفاده می كند. ؛

2) کیفیت نرم افزار - مجموعه ای از خصوصیات نرم افزار (PS) ، که مناسب بودن آن برای پاسخگویی به نیازهای داده شده یا ضمنی را مطابق با هدف خود تعیین می کند [کیفیت GOST 28806-90 ”کیفیت نرم افزار. اصطلاحات و تعاریف"].

هدف از این کار ، تدوین متدولوژی برای استفاده از الزامات استاندارد ISO 9126 برای ارزیابی کیفیت یکی از انواع ابزارهای نرم افزاری - سیستم های ایجاد آزمون است.

استاندارد ISO 9126

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

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

مدل کیفیت نرم افزار (ISO 9126)

نرم افزار سیستم تست

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

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

یک سیستم تست رایانه یک مؤلفه اساسی برای توسعه آینده یادگیری از راه دور است.

در حال حاضر ، بیشتر و بیشتر ابزارهای آماده برای تدوین برنامه های آموزشی شروع شده است. علاوه بر این ، این پیشرفت ها نه تنها خارجی (به عنوان مثال ، Adobe Acrobat ، Macromedia Authorware ، ToolBook II ، Quest و دیگران) بلکه داخلی نیز هستند (برای مثال ، HyperMethod ، "دانشیار" ، "Prometheus" ، پوسته شبکه "OROX" ، CADIS). ما در مورد برخی از آنها توضیحات مختصر می دهیم.

یكی از سیستمهای انجام آزمایشات "سازنده تست" یك سیستم جهانی برای آزمایش دانش است (سایت سیستم http://www.keepsoft.ru/simulator.htm است). این برنامه از پنج نوع سؤال پشتیبانی می کند: بسته (برای انتخاب یک یا چند پاسخ) ، باز کردن (ورودی یک پاسخ) ، انطباق و سفارش. این به شما امکان می دهد هرگونه آزمایش را انجام دهید. در تست ها می توان از موسیقی ، صداها ، تصاویر و فیلم ها استفاده کرد. هر داده ای را می توان در چاپگر چاپ کرد. بر روی یک رایانه ، آزمایش ها می توانند به طور مستقل توسط چندین نفر انجام شوند و با نام خود وارد برنامه شوند.

بسته بعدی سیستم تست INDIGO است (وب سایت - http://indigotech.ru/). در این سیستم همچنین می توانید کارهای تست از 5 نوع را ایجاد کنید. اما جدا از این ، یکی از ویژگی های طراح تست INDIGO پشتیبانی از گروه بندی سلسله مراتبی چند سطحی از سوالات آزمون توسط کارها ، مباحث و غیره است. از این گذشته ، اگر سؤالات آزمایشی در یک لیست خطی نمایش داده می شوند ، در ناوبری و درک مشکل که سؤال به چه چیزی مربوط می شود ، وجود دارد. در این سیستم می توانید وظایف مربوط به هر گروه را تعیین کنید تنظیمات فردی (به ویژه ، روش صدور عناصر تو در تو یا انتخاب تصادفی آنها).

بسته بعدی که مورد بررسی قرار می گیرد - VeralTest - مجموعه ای از برنامه ها برای ایجاد تست های برگشت و سازماندهی تست های رایانه ای چند کاربره (سایت - http://veralsoft.com/veraltest.shtml). انواع تست های برگشتی زیر در این سیستم ایجاد می شود - بسته (انتخاب یک پاسخ و انتخاب چندین پاسخ) ، وارد کردن یک متن متنی ، وارد کردن یک جواب عددی ، تطبیق سؤالات.

بسته نرم افزاری VeralTest در دو نسخه ارائه می شود:

اکسپرس VeralTest. به شما امکان می دهد تست های خودرانشی مستقل (آزمایش های exe) را ایجاد کنید که بدون نصب و پیکربندی مقدماتی بر روی هر رایانه قابل اجرا باشد ترکیب بسته VeraTest Express: ویرایشگر تست TestEditor و برنامه ResultViewer برای مشاهده نتایج آزمون.

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

علاوه بر این سیستم های نرم افزاری ، بسیاری از سیستم های دیگر نیز وجود دارند. برخی از آنها را می توان در وب سایت یافت - http://edu.of.ru/volsch31/default.asp؟ob_no \u003d 2300.

در جدول ویژگی های برخی از ابزارهای ایجاد سیستم های تست و مقایسه آنها آورده شده است.

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

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

اگر برای هر کاراکتر 1 امتیاز بگذارید ، معلوم می شود که از سیستم های Moodle در نظر گرفته شده 22 امتیاز ، سیستم UniTest - 15 ، "Test Constructor" - 11 ، INDIGO - 14 ، VeralTest - 12 (نسخه Express) و 16 (نسخه حرفه ای).

با در نظر گرفتن وجود سامانه ای برای تنظیم ترتیب ارسال بک های تست ، سیستمی برای تعامل بیش از یک شبکه رایانه ای و سایر عوامل ، سیستم های MOODLE ، INDIGO و VeralTest از پیشرفته ترین قابلیت ها برخوردار هستند. این سیستم ها هستند که بیشتر در هنگام تست دانش آموزان در عمل استفاده می شوند.

نتیجه

ارزیابی شاخص های کیفیت نرم افزار را می توان با روش ها و روش های مختلفی انجام داد. روش ارزیابی کیفیت ارائه شده در مقاله ، بر اساس اصول استاندارد ISO 9126 ، اجازه می دهد:

ارزیابی کیفیت سیستم های نرم افزاری با استفاده از سیستم های مختلف شاخص های کیفیت؛

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

ویژگی های مقایسه ای برخی ابزارها برای ایجاد دوره های آموزشی

عنوان

سازنده آزمون

اکسپرس / حرفه ای VeralTest

قابلیت اطمینان

کامل بودن (احتمال شکست)

پایین بالا

مقاومت در برابر خرابی (عملکرد)

بازیابی

در دسترس بودن سیستم پشتیبان

تست های ذخیره شده در یک پرونده جداگانه

راحتی استفاده

سهولت توسعه

در دسترس بودن دستورالعملهای مطالعه

پاک کردن

دسترسی قالب های آماده تست ها

+ (به انگلیسی)

در دسترس بودن سیستم جامع راهنمایی

راحتی و سهولت استفاده

حضور منو (دکمه) برای ایجاد یک تست

با گرافیک کار کنید

با صدا کار کنید

ایجاد دکمه های کنترل

توانایی ارزیابی خودکار پاسخ

تعیین مهلت برای پاسخ به سوالات

در دسترس بودن یک عملکرد برای تعیین زمان پاسخ به سؤالات

جواب محدودیت زمانی برای هر سوال

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

توانایی تقسیم سوالات براساس سطح دشواری

عملکرد

ویژگی های امنیتی (به عنوان مثال رمزگذاری تست)

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

کار در اینترنت

راحتی اسکورت

در دسترس بودن پشتیبانی فنی

ماژول های جداگانه

حضور تنظیمات برای مهندس

در دسترس بودن تنظیمات برای معلم

حضور تنظیمات برای فرد آزمون

قابلیت حمل

نسخه شبکه موجود است

+ (اینترنت)

دوره اشغال شده است

20.8 مگابایت / 60 مگابایت

بر اساس سیستم نصب شده شاخص هاي كيفي ، برنامه هاي مختلف را با يك هدف ارزيابي مي كنند تا بهترين آنها را شناسايي كنيد.

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

داوران:

Dorrer G.A. ، دکتر علوم فنی ، استاد ، رئیس. صندلی ، FSBEI HPE "دانشگاه فن آوری دولتی سیبری" ، کراسنویارسک؛

لوشینا V.V. ، دکتر علوم فنی ، استاد ، رئیس. گروه مدیریت کیفیت و روش های ریاضی اقتصاد ، دانشگاه فنی دولتی سیبری ، کراسنویارسک.

کار در تاریخ 05/07/2013 دریافت شد.

مرجع کتابشناختی

گورباچنکو I.M. ارزیابی کیفی نرم افزار برای ایجاد سیستم های آزمایش // تحقیقات بنیادی. - 2013. - شماره 6-4. - S. 823-827؛
URL: http://fundamental-research.ru/ru/article/view؟id\u003d31642 (تاریخ دسترسی: 07.20.2019). ما مجلات منتشر شده توسط انتشارات آکادمی علوم طبیعی را مورد توجه شما قرار می دهیم

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

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

مفهوم کیفیت نرم افزار

در نگاه اول ، "کیفیت نرم افزار" ممکن است یک مفهوم انتزاعی به نظر برسد. با این حال ، برای مدیران پروژه ، برنامه نویسان ، متخصصان آزمایش ، مهندسین QA و سایر شرکت کنندگان در فرایند توسعه محصول ، معیارهای کیفیت شفاف و قابل اندازه گیری هستند. ابتدا تعریف کلی را در نظر بگیرید.

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

این شاخص در حال حاضر با استاندارد بین المللی ISO / IEC 25010: 2011 تنظیم شده است. این استاندارد یک سیستم ارزیابی کیفیت نرم افزار چند سطحی را بر اساس هشت ویژگی اساسی ایجاد می کند.

تنظیمات کیفیت نرم افزار

مشخصات اصلی کیفیت نرم افزار مطابق با ISO / IEC 25010: 2011:

  1. عملکرد. در صورت انجام وظایف محوله به آن ، این نرم افزار به عنوان کاربردی شناخته می شود ، نیازهای کاربران را برآورده می کند. این جنبه نیاز به عملکرد صحیح و دقیق ، سازگاری کلیه مؤلفه های موجود در ترکیب دارد.
  2. قابلیت اطمینان. با قابلیت اطمینان ، نرم افزار به عنوان اجرای بی وقفه وظایفی که در شرایط مشخص برای یک زمان مشخص به آن اختصاص داده شده است ، درک می شود.
  3. قابلیت استفاده (قابلیت استفاده) این پارامتر میزان راحتی نرم افزار را برای کاربران ، قابلیت مشاهده آن ، سهولت کار و مطالعه مشخص می کند.
  4. بهره وری. پارامتر مطابق با درجه ای است که محصول در شرایط معین عملکرد لازم را ارائه می دهد.
  5. راحتی اسکورت. این شاخص سادگی آنالیز ، آزمایش ، تصحیح مؤلفه های نرم افزار ، نگهداری آن و همچنین میزان سازگاری با شرایط جدید را مشخص می کند.
  6. قابلیت حمل میزان سهولت انتقال آن به بستر دیگر. تضمین کیفیت نرم افزار شامل بررسی آن برای هر یک از پارامترهای ذکر شده ، شناسایی نقاط ضعف و عیب یابی است.
  7. سازگاری توانایی اجزای نرم افزار در تعامل با یکدیگر.
  8. امنیت ، یعنی تهدیدات همچنین می تواند با استفاده نادرست از نرم افزار ، تأثیرات خارجی افراد غیرمجاز ، خرابی تجهیزات فنی همراه باشد.

تضمین کیفیت و آزمایش

اصطلاحات "تست" و "تضمین کیفیت" ، البته به هم پیوسته هستند ، اما یکسان نیستند. تفاوت در چیست؟

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

وظایف متخصصان QA شامل موارد زیر است:

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

آزمایش کردن - بررسی نرم افزار برای انطباق.

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

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

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

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

زنگ

کسانی هستند که این خبر را قبل از شما می خوانند.
برای دریافت مطالب تازه مشترک شوید.
پست الکترونیک
نام
نام خانوادگی
چگونه می خواهید The Bell را بخوانید
بدون اسپم