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