تحلیل ایستای برنامه

اگر تجزیه و تحلیل برنامه بدون اجرای واقعی برنامه انجام شود تحلیل ایستای برنامه نامیده می‌شود (اگر آنالیزبا اجرای واقعی برنامه انجام شود واکافت دینامیک برنامه نامیده می‌شود).[1]

در بیشتر موارد، تحلیل بر روی کد اجرا می‌شود.

این اصطلاح معمولاً به تحلیلی گفته می‌شود که با ابزارهای خودکار انجام شود و به تحلیل انسانی بازنگری کد گفته می‌شود.

ابزارها

گروهOMG بررسی ای دربارهٔ انواع نرم‌افزارهای تحلیل برنامه که برای اندازه‌گیری و ارزیابی کیفیت نرم‌افزار لازم است را نرم‌افزار منتشر کرد. این مستند سه سطح تحلیل برنامه را توصیف می‌کند.[2]

سطح Unit
تحلیلی که درون برنامه یا دورن یک روتین خاص انجام بشود، بی آنکه به دیگر بخش‌های برنامه کاری داشته باشد.
سطح فناوری
تحلیلی که به اندرکنش‌های واحدهای(unit) برنامه می‌پردازد تا دیدی کلی از برنامه به دست آورد و بتواند از مثب کاذب‌های آشکار پیشگیری کند.
سطح سیستم
تحلیلی که به اندرکنش‌های واحدهای(unit) برنامه می‌پردازد ولی به یک فناوری یا زبان برنامه‌نویسی خاص محدود نمی‌شود.

سطح دیگری از تحلیل برنامه می‌تواند تعریف بشود

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

جستارهای وابسته

روش های آنالیز ایستا

آنالیز ایستا معمولاً یا به صورت دستی یا با ابزار انجام می‌شود، در بهترین حالت پس از انجام تست کد توسط ابزار تیم تست به بررسی نتایج و تحلیل آن میپردازند و با تیم تولید همکاری می‌کنند.[3]

پیوند به بیرون

  • Syllabus and readings for Alex Aiken’s Stanford CS295 course.
  • Ayewah, Nathaniel; Hovemeyer, David; Morgenthaler, J. David; Penix, John; Pugh, William (2008). "Using Static Analysis to Find Bugs". IEEE Software. 25 (5): 22–29. doi:10.1109/MS.2008.130.
  • Brian Chess, Jacob West (Fortify Software) (2007). Secure Programming with Static Analysis. Addison-Wesley. ISBN 978-0-321-42477-8.
  • Flemming Nielson; Hanne R. Nielson; Chris Hankin. Principles of Program Analysis (1999 (corrected 2004) ed.). Springer. ISBN 978-3-540-65410-0.
  • "Abstract interpretation and static analysis," International Winter School on Semantics and Applications 2003, by David A. Schmidt
  • Code Quality Improvement - Coding standards conformance checking (DDJ)
  • Competition on Software Verification (SV-COMP)
  • Episode 59: Static Code Analysis Interview (پادکست) at Software Engineering Radio
  • Implementing Automated Governance for Coding Standards Explains why and how to integrate static code analysis into the build process
  • Integrate static analysis into a software development process
  • .NET Static Analysis (InfoQ)
  • Static Code Analysis - Polyspace
  • The SAMATE Project, a resource for Automated Static Analysis tools

منابع

  1. Wichmann, B. A.; Canning, A. A.; Clutterbuck, D. L.; Winsbarrow, L. A.; Ward, N. J.; Marsh, D. W. R. (Mar 1995). "Industrial Perspective on Static Analysis" (PDF). Software Engineering Journal: 69–75. Archived from the original (PDF) on 2011-09-27.
  2. http://www.omg.org/CISQ_compliant_IT_Systemsv.4-3.pdf
  3. «نسخه آرشیو شده». بایگانی‌شده از اصلی در ۱۳ ژانویه ۲۰۱۷. دریافت‌شده در ۲۶ آوریل ۲۰۱۷.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.