باگ چیست و تاثیری در عملکرد وب سایت دارد؟

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

در پاسخ دقیق به سوال باگ چیست می توانیم بگوییم\” وجود اشکالات در کد یا طراحی برنامه که عملکرد برنامه را تحت تاثیر قرار می دهند که باعث می شود نتایج غیرمنتظره یا نادرست برگرداند، را باگ می گوییم\”. بیشتر اشکالات توسط طراح، در کد یا طراحی آن است.

براین اساس، فرآیند یافتن باگ و از بین بردن آن از برنامه، دیباگ (Debug) نام دارد.

اشکالات نرم افزار چه مواردی می تواند باشد؟

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

\"باگ

از بدترین باگ های تاریخ که فراموش نشدند:

  1. در دهه ۱۹۸۰ اشکالات در کد کنترل کننده دستگاه موسوم به Therac-25، ( که برای پرتودرمانی استفاده می شود ) منجر به مرگ بیماران می شوند.
  2. در سال ۱۹۹۶ ، موشک ۱ میلیارد دلاری به نام آریان، ۵ چند ثانیه پس از پرتاب به دلیل وجود اشکال در برنامه رایانه راهنمایی، نابود شد.
  3. در سال ۱۹۶۲، ایراد در نرم افزار پرواز فضا پیما \” ماینر اول\” باعث شد تا این موشک مسیر خود را از مسیر مورد انتظار تغییر دهد.
  4. در دهه ۱۹۹۰، در نسخه جدید AT&T، اشکال در کنترل نرم افزار 4ESS# سوئیچ های از راه دور، باعث خراب شدن بسیاری از رایانه ها شد.

چگونگی بروز یک باگ نرم افزاری

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

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

همچنین، باگ های نرم افزاری می توانند اثرات موج دار ایجاد کنند. به عنوان مثال، دستگاه پرتونگاری Therac-25 در دهه ۱۹۸۰ از تعدادی از ایرادهای نرم افزاری رنج می برد، و به دلیل اثر موج دار آن اشکالات، در حقیقت چندین بیمار درگذشت.

چگونه اشکالات نرم افزاری شناسایی و تصحیح می شوند؟

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

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

نتیجه

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

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

منبع

تگ ها :
باگ امنیتی,باگ وب سایت
اشتراک گذاری :

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *