تجزیه و تحلیل ایستا چیست؟
تجزیه و تحلیل ایستا روشی برای اشکال زدایی است که با بررسی خودکار کد منبع بدون نیاز به اجرای برنامه انجام می شود. این به توسعه دهندگان درک درستی از پایه کدشان را می دهد و به اطمینان از سازگاری، ایمن بودن و امنیت آن کمک می کند.
تحلیل کد ایستا چیست؟
تجزیه و تحلیل کد ایستا به عملیات انجام شده توسط یک ابزار تجزیه و تحلیل ایستا اشاره دارد که تجزیه و تحلیل مجموعه ای از کدها در برابر یک مجموعه (یا مجموعه های متعدد) از قوانین کدگذاری است.
تجزیه و تحلیل کد ایستا و تجزیه و تحلیل ایستا اغلب به جای هم به همراه تجزیه و تحلیل کد منبع استفاده می شود.
این نوع تجزیه و تحلیل به نقاط ضعف در کد منبع می پردازد که ممکن است منجر به آسیب پذیری شود. البته، ممکن است از طریق بررسی دستی کد نیز به این امر برسید. اما استفاده از ابزارهای خودکار بسیار موثرتر است.
آنالیز ایستا چه زمانی انجام می شود؟
تجزیه و تحلیل کد ایستا در اوایل توسعه، و قبل از شروع تست نرم افزار انجام می شود. برای سازمان هایی که DevOps را تمرین می کنند، تجزیه و تحلیل کد ایستا در مرحله "ایجاد" انجام می شود.
تجزیه و تحلیل کد ایستا با ایجاد یک حلقه بازخورد خودکار، از DevOps پشتیبانی می کند. به این ترتیب توسعه دهندگان زودتر متوجه مشکلات کدشان می شوند و رفع این مشکلات آسان تر خواهد بود.
تفاوت بین تحلیل ایستا و تحلیل پویا چیست؟
هر دو نوع عیوب را تشخیص می دهند. تفاوت در جایی از چرخه عمر توسعه است که نقص ها را در ان پیدا می کنند.
تجزیه و تحلیل ایستا قبل از اجرای یک برنامه، نقص ها را شناسایی می کند.
تجزیه و تحلیل کد پویا پس از اجرای یک برنامه، نقص ها را شناسایی می کند.
«این مطلب، بخشی از تمرینهای درس معماری نرمافزار در دانشگاه شهیدبهشتی است»
[1] https://owasp.org/www-community/controls/Static_Code_Analysis