یکی از الزامات تولید نرم افزاری با کیفیت، وجود فرایندی مشخص و دقیق برای گزارش نمودن خطا ها و باگ های نرم افزار به “تیم توسعه” می باشد. با تهیه گزارش های دقیق و موثر از باگ ها می توان مطمئن شد خطایی از دید هیچ کس پنهان نمی ماند و به فراموشی سپرده نمی شود. همچنین یک گزارش خوب به تیم توسعه کمک می کند تا بتوانند با بازتولید و مشاهده خطا، درصدد رفع ایراد های موجود در نرم افزار برآیند.
در صورتی که خطایی با دقتِ کافی گزارش نشود، برنامه نویس ها از آنجایی که نمی توانند خطا را بازتولید نمایند و یا اینکه نرم افزار در سیستم آن ها به درستی اجرا می شود، احتمالا خطا را نادیده خواهند گرفت و ضعف موجود در نرم افزار همچنان باقی خواهد ماند.
به طور اساسی، هدف گزارش باگ این است که برنامهنویس عملکرد نادرست برنامه را جلوی خود ببیند. میتوانید شخصاً باگها را به برنامهنویسان نشان دهید، یا دستورالعملی بنویسید که با دنبال کردن آن برنامه دچار اشکال شود. اگر برنامه دچار اشکال شود، برنامهنویسان اطلاعات بیشتری جمع آوری میکنند تا بفهمند که علت بروز اشکال در کجاست. اگر برنامه برای آنها دچار اشکال نشود، از شما خواهند خواست تا اطلاعات بیشتری برای آنها جمع آوری کنید.
در گزارش باگها سعی کنید حقایق را شفاف بیان کنید «من داشتم با کامپیوتر کار میکردم و این باگ اتفاق افتاد» و فرضیههایتان را جدا از آنها مطرح نمایید «من فکر میکنم مشکل از اینجا باشد». میتوانید فرضیهای ارائه نکنید ولی حقایق را از قلم نیاندازید.
وقتی باگی را گزارش میکنید، میخواهید که آن باگ برطرف (fix) شود. دلیلی بر فحش دادن به برنامهنویس یا لجبازی کردن نیست: ممکن است اشکال از طرف او باشد و این مشکل شماست، و ممکن است حق داشته باشید که از دست او عصبانی شوید، ولی باگ وقتی برطرف میشود که شما اطلاعات کافی و مورد نیاز را در اختیار برنامهنویس قرار دهید.
اگر پیام خطایی میبینید آن را شفاف و دقیق به برنامهنویس بگویید. پیامهای خطا مهم هستند! در این مرحله برنامهنویس سعی نمیکند مشکل را حل کند، سعی میکند که آن را بیابد. او باید بداند که چه اشکالی بوجود آمده و پیامهای خطا بهترین تلاش کامپیوتر برای بیان این موضوع هستند. اگر راه بهتری برای نگهداشتن پیامهای خطا ندارید، آنها را روی کاغذی یادداشت کنید. گزارش اینکه برنامه پیام خطایی میدهد بدون نوشتن آن پیام خطا بیارزش است.
شفاف نوشتن در گزارش باگ ضروری است. اگر برنامهنویس نفهمد که شما چه میگویید، احتمالاً مثل این است که شما اصلا چیزی نگفتهاید.
دقیق باشید. اگر فرآیندی به دو طریق قابل انجام است بیان کنید که از کدام روش آن را انجام دادید. «من بارگذاری کردم» میتواند «روی دکمهی بارگذاری کلیک کردم» یا «من کلیدهای ALT+L را زدم» تصور شود. پس بگویید کدامیک را انجام دادهاید. گاه این موضوع اهمیت دارد.
آنچه نوشتهاید بخوانید. گزارش باگ را برای خودتان بخوانید و ببینید که از نظر خودتان شفاف است. اگر لیست اعمالی که باعث بروز باگ میشوند نوشتهاید، خودتان یکبار آنها را دنبال کنید و ببینید که چیزی را از قلم نیانداخته باشید.
خلاصه
مقصود از گزارش باگ نشان دادن اشکال برنامه به برنامهنویس است. اگر نمیتوانید اشکال را به برنامهنویس نشان دهید، دستورالعملی بنویسید که با پیروی از آن برنامه دچار اشکال میشود. در صورتیکه گام اول موفقیت آمیز نبود، و برنامهنویس نتوانست اشکال را ببیند، هدف دوم تشریح حالت بروز اشکال است. همه چیز را با جزییات توضیح دهید. بگویید چه چیزی میبینید و انتظار دارید چه چیزی ببینید. پیامهای خطا را یادداشت کنید، بخصوص پیامهایی که عدد در آنها وجود دارد.
وقتی کامپیوتر رفتاری غیر منتظره نشان میدهد، تکان نخورید. به هیچ چیز دست نزنید تا وقتی که آرام شوید. کاری که حدس میزنید خطرناک است انجام ندهید.
اگر میتوانید، با هر ابزاری سعی کنید ریشه مشکل را پیدا کنید، ولی اگر ریشه مشکل را یافتید، همچنان باید علایم بروز اشکال را در گزارشتان بنویسید.
در صورت درخواست برنامهنویس، برای ارائهی اطلاعات بیشتر حاضر باشید. اگر به اطلاعاتی نیاز نداشته باشد آن را از شما نمیخواهد. برنامهنویس سر به هوا نیست. نسخهی برنامهها را در دسترس داشته باشید چون به احتمال زیاد نیاز خواهند شد.
شفاف بنویسید. بگویید که منظورتان چیست و مطمئن شوید که از آن برداشت دیگری نمیشود.
از همه مهمتر، دقیق باشید. برنامهنویسان دقت را دوست دارند.