loading...
هک وامنیت
admin بازدید : 132 پنجشنبه 21 فروردین 1393 نظرات (2)

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

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

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

برای شناسایی باگ ها معمولاً قبل از ارائه نسخه عمومی یک نرم افزار، نسخه های آلفا و بتا را منتشر می کنند. این نسخه های آزمایشی در اکثر اوقات راه خوبی برای پیدا کردن باگ های جدید در یک نرم افزار است. کاربران از نسخه های آزمایشی استفاده می کنند و اشکالات برنامه را گزارش می کنند. معمولاً تیم های نرم افزاری برای این کار از نرم افزار های مدیریت باگ یا Bug Tracking و Issue Tracking استفاده می کنند تا عملیات ثبت باگ های جدید، بحث در مورد آن ها و رفع آن ها را مدیریت کنند. از این نرم افزارها می توان به Bugzilla، BugTracker.NET، JIRA و OTRS اشاره کرد.

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

ارسال نظر برای این مطلب
این نظر توسط gharibe در تاریخ 1393/01/26 و 13:25 دقیقه ارسال شده است

سلام دادا حسن خیلی اموزنده بود دمت گرمشکلک

این نظر توسط samaneh در تاریخ 1393/01/23 و 20:53 دقیقه ارسال شده است

سلام،خوبى؟ مطالبتوخوندم خيلى خوب بودن موفق باشى....فك كنم رمزموفراموش كردمشکلک
:-) عجب موزيكى!!! لايك....
Have agood tim---byeشکلک


کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • آرشیو
    آمار سایت
  • کل مطالب : 17
  • کل نظرات : 17
  • افراد آنلاین : 1
  • تعداد اعضا : 58
  • آی پی امروز : 5
  • آی پی دیروز : 8
  • بازدید امروز : 9
  • باردید دیروز : 37
  • گوگل امروز : 0
  • گوگل دیروز : 6
  • بازدید هفته : 133
  • بازدید ماه : 294
  • بازدید سال : 10,804
  • بازدید کلی : 70,733