مشكلات نرمافزاری؛ كابوس هر استارتآپ
اگر این روزها در زمینه شـــرکتهای استــارتآپی فناوریمحور فعال باشید حتما با مشكلات نرمافزاری دستوپنجه نرم كردهاید. این مشكلات میتوانند در مراحل مختلف تولید محصول ایجاد شوند. وبگاه سافتور تستینگ متریال به نشانی softwaretestingmaterial.com دستهبندی جالبی از این مشكلات ارائه كرده كه در ادامه بهآنها اشاره شده است:
باگ (Bug): معروفترین مشكل نرمافزاری است كه احتمالا اسم آن را زیاد شنیدهاید. باگ به معنی حشره موذی است و به شرایطی اطلاق میشود كه خطا یا اشتباهی در اجرای نرمافزار رخ داده باشد و موجب اجرانشدن آن شود. بهطور خلاصه هرگونه عدم انطباق در سیستم یا نرمافزار همراه در مرحله تست را باگ مینامند.
نقص (Defect): زمانی كه میان نتایج واقعی و نتایج مورد انتظار تفاوتی ایجاد شده باشد از آن استفاده میكنند. اگر یك توسعهدهنده (developer) مسألهای (issue) را بیابد و خودش در مرحله توسعه آن را حل كند به آن نقص یا دیفكت میگوییم.
خطا (Error): وقتی امكان اجرا (compile)
یك برنامه به دلیل مشكلات كدنویسی نباشد خطا یا Error رخ داده است. معمولا توسعهدهندهگان در مرحله توسعه این خطاها را پیدا میكنند.
شکست (Failure): وقتی محصول آماده میشود و در اختیار مشتری قرار میگیرد، دیگر نباید مسألهای در محصول وجود داشته باشد. اگر مشتری نهایی بعد از انتشار محصول (Release) مشكلی را بیابد به آن شكست یا فِیلر میگوییم.
تیمها برای جلوگیری از این مشكلات نیازمند تحلیلگر كیفیت (Quality Analyst) هستند. تحلیلگر كیفیت نرمافزار، مسؤول تنظیم اصول و شیوههایی است كه با كمك آنها بتواند كیفیت نرمافزار را بسنجد و تحلیل كند. همچنین مسؤول پیگیری متریكهای مرتبط با نرمافزار است. باید توجه كنید كه تحلیلگر كیفیت با تضمین كیفیت متفاوت است. تضمین كیفیت نرمافزار كه بهطور خلاصه به آن كیو اِی (QA) میگویند شامل روشهایی است كه در تمام مراحل توسعه نرمافزار (شامل تعریف پروژه، فهرست نیازمندیها، طراحی نرمافزار، كدنویسی، تست و...) فعالیتها، اهداف و دستاوردهای پروژه را سنجش میكند و بهدنبال راههای تضمین كیفیت در تمام این مراحل است. توجه به كیو اِی میتواند در كاهش زمان و مشكلات محصول نقش بهسزایی داشته باشد. عمده كارهایی كه در این فرآیند انجام میشود شامل موارد زیر است:
بررسی استانداردها و نظارت بر كیفیت
تست و آزمون
مدیریت امنیت، ریسك و تغییر
بازبینی و ممیزی
باگ (Bug): معروفترین مشكل نرمافزاری است كه احتمالا اسم آن را زیاد شنیدهاید. باگ به معنی حشره موذی است و به شرایطی اطلاق میشود كه خطا یا اشتباهی در اجرای نرمافزار رخ داده باشد و موجب اجرانشدن آن شود. بهطور خلاصه هرگونه عدم انطباق در سیستم یا نرمافزار همراه در مرحله تست را باگ مینامند.
نقص (Defect): زمانی كه میان نتایج واقعی و نتایج مورد انتظار تفاوتی ایجاد شده باشد از آن استفاده میكنند. اگر یك توسعهدهنده (developer) مسألهای (issue) را بیابد و خودش در مرحله توسعه آن را حل كند به آن نقص یا دیفكت میگوییم.
خطا (Error): وقتی امكان اجرا (compile)
یك برنامه به دلیل مشكلات كدنویسی نباشد خطا یا Error رخ داده است. معمولا توسعهدهندهگان در مرحله توسعه این خطاها را پیدا میكنند.
شکست (Failure): وقتی محصول آماده میشود و در اختیار مشتری قرار میگیرد، دیگر نباید مسألهای در محصول وجود داشته باشد. اگر مشتری نهایی بعد از انتشار محصول (Release) مشكلی را بیابد به آن شكست یا فِیلر میگوییم.
تیمها برای جلوگیری از این مشكلات نیازمند تحلیلگر كیفیت (Quality Analyst) هستند. تحلیلگر كیفیت نرمافزار، مسؤول تنظیم اصول و شیوههایی است كه با كمك آنها بتواند كیفیت نرمافزار را بسنجد و تحلیل كند. همچنین مسؤول پیگیری متریكهای مرتبط با نرمافزار است. باید توجه كنید كه تحلیلگر كیفیت با تضمین كیفیت متفاوت است. تضمین كیفیت نرمافزار كه بهطور خلاصه به آن كیو اِی (QA) میگویند شامل روشهایی است كه در تمام مراحل توسعه نرمافزار (شامل تعریف پروژه، فهرست نیازمندیها، طراحی نرمافزار، كدنویسی، تست و...) فعالیتها، اهداف و دستاوردهای پروژه را سنجش میكند و بهدنبال راههای تضمین كیفیت در تمام این مراحل است. توجه به كیو اِی میتواند در كاهش زمان و مشكلات محصول نقش بهسزایی داشته باشد. عمده كارهایی كه در این فرآیند انجام میشود شامل موارد زیر است:
بررسی استانداردها و نظارت بر كیفیت
تست و آزمون
مدیریت امنیت، ریسك و تغییر
بازبینی و ممیزی