تضمین کیفیت
کیفیت توسط کاربران محصول، ارباب رجوع یا مشتریان، و نه جامعه به‌طور کلی، بدست می‌آید. محصولات قیمت پایین را در صورتی می‌توان به عنوان کیفیت بالا در نظر گرفت که کاربران محصول آن‌ها را اینطور یافته باشند.
تضمین کیفیت نرم‌افزار
تضمین کیفیت نرم‌افزار عبارتست از نظارت بر روند مهندسی نرم‌افزار و روش‌هایی که برای اطمینان یافتن از کیفیت آن مورد استفاده قرار می‌گیرند. روش‌هایی که بدین منظور ایجاد شده‌اند بسیار زیاد و متنوع هستند که هریک انطباق با چند مورد از استانداردها (مثل ایزو ۹۰۰۰ و یک مدل مثل CMMI) را بررسی و تضمین می‌کنند. روش‌های تضمین کیفیت نرم‌افزار کل فرایند توسعه نرم‌افزار را دربرمی‌گیرند. از جمله مراحل توسعه نرم‌افزار می‌توان به تعریف نیازمندی‌ها، طراحی نرم‌افزار، کدنویسی، بازبینی کد، مدیریت پیکربندی نرم‌افزار، تست، مدیریت پخش، یکپارچه سازی محصول اشاره کرد. تضمین کیفیت نرم‌افزار به اهداف، الزامات، توانایی‌ها، فعالیت‌ها، اندازه‌گیری‌ها و ارزیابی‌ها سامان می‌بخشد. تضمین کیفیت نرم‌افزار برحسب (ISO/IEC 15504 v.2.5 (SPICE یک فرایند حمایتی است که باید به وسیله طرح‌های از پیش تعیین شده و isO 15504 کیفیت را در تک تک محصولات، فعالیت‌ها و فرایندها به‌طور مستقل تضمین کند. پس از مباحث مطرح در چگونگی ایجاد نرم‌افزار و بحث‌های مربوطه؛ یکی از چالش‌های موجود بررسی مفهوم چیستی کیفیت نرم‌افزار و متعاقب آن معیارهای سنجش و روش‌های تضمین کیفیت آن است. صحبت از کیفیت نرم‌افزار و بررسی و سنجش آن تنها از طریق پاسخگویی به سوالات زیر و مشخص کردن روشی برای رسیدن به این پاسخ امکانپذیر است: ۱. تعریف صریح و دقیق معنا و مفهوم «کیفیت نرم‌افزار» ۲. ایجاد مجموعه ای فعالیت‌هایی که ما را از بالا بودن کیفیت محصولات نرم‌افزاری ارائه شده مطمئن می‌کنند. ۳. اجرا کردن فعالیت‌های کنترل و ضمانت کیفیت در همه پروژه‌های نرم‌افزاری ۴. استفاده از ابزارها در راستای توسعه استراتژی‌های بهبود فرایندهای نرم‌افزار و در نتیجه باکیفیت شدن محصول نهایی