LDRA Testbed® - Statik Analiz ve Kod Kapsam Analiz Aracı
LDRA Testbed, kaynak kod testini ve yazılım uygulamalarının onaylanmasını ve doğrulanmasını sağlayan bir kalite kontrol aracıdır. Yazılımın güvenilir, yaygın ve olabildiğince hatasız olması gerektiği yerlerde LDRA Testbed paha biçilemez bir araçtır. LDRA Testbed kullanımı ile zamandan ve maliyetten büyük ölçüde kar edilir, verimlilik artar. Çok güçlü ve tamamen entegre bu araç takımı sayesinde yazılım geliştirme yaşamdöngüsündeki kilit noktalarda ileri düzeyde yazılım analiz teknikleri gerçekleştirilebilir. LDRA Testbed, Statik ve Dinamik Analiz süreçlerinde kullanılabilen tam donanımlı bir araçtır.
Statik Analiz
LDRA Testbed’in Statik Analizi, projede programlama standartlarının kullanılmasını, yazılımın karmaşıklığını ve diğer kalite özelliklerini düzenlenebilir kalite modeli ile kontrol edebilmeyi sağlar. Statik Analiz aynı zamanda çok sayıda yazılım hatasını da denetlemektedir.
Testbed Select Analysis |
Statik Analizin Faydaları Nelerdir?
- Sistemin daha iyi anlaşılması
- Kalite standartlarına uyumluluk
- Gereksiz ve kullanılmayan kodun belirlenmesi ve ayrıştırılması
- Sistemin karmaşıklığını saptamak ve raporlamak
- Otomatik analiz ile zamandan tasarruf
Statik Analiz Ne Zaman Kullanılmalı?
Statik Analiz yazılımın otomatik olarak belgelendirilmesi için ana bilgi kaynağıdır. Her bir prosedür ve prosedürle ilgili link için gerekli kontrol akış bilgisini oluşturur. Arayüzlerin taslağı oluşturulur, döngülerin yapısı sergilenir, complexity (karmaşıklık) ölçütleri oluşturulur. LDRA Testbed’in Statik Analizi, statik analizin tek gereksinim olduğu “safety-critical” kodun analizinde birçok uyumluluğu sağlamak üzere onaylanmıştır.
Ne tür analiz sonuçları elde edilebilir?
Graphical Results Menu |
Programlama Standartları Doğrulaması: kaynak kodun kullanıcı tarafından düzenlenebilen programlama standartlarına uyumluluğu kontrol edilir.Yapısal Programlama Doğrulaması: Kaynak kodun yapısına ilişkin raporlar oluşturulur.
- Complexity (karmaşıklık) Ölçütlerinin Oluşturulması: Cyclomatic Complexity, Knots, Essential Cyclomatic Complexity, Essential Knots ve daha birçok karmaşıklık ölçütü üzerinden raporlar sunulur.
- Variable Cross Reference (Çapraz Referanslı Değişken): Global ve lokal değişkenlerin prosedürler üzerinde ve sınırlarda kullanımına ilişkin raporlar sunulur.
- Ulaşılamayan Kod Raporlama: Gereksiz kodlarla ilgili raporlar oluşturulur.
- Static Data Flow Analysis (Statik Veri Akış Analizi): değişkenleri kaynak kod boyunca takip ederek, kuraldışı kullanımlar olduğunda bunları raporlar.
- Information Flow Analysis (Bilgi Akış Analizi) : Kaynak kod boyunca değişkenlerin birbirine bağımlılıklarını analiz eder.
- Loop Analysis (Döngü Analizi) : Döngü yapısını ve kodun derinliğini raporlar.
- Tekrarlı (Recursive) Prosedürlerin Analizi: Yukarıdaki tüm analizler tek tek ve setler halinde tekrarlı prosedürler üzerinde gerçekleştirilebilir.
- Prosedür Arayüzü Analizi: Her prosedür için arayüz, hatalara ve eksiklere karşı analiz edilir. Daha sonra arayüzler, entegrasyondaki hataları tespit edebilmek için sistemdeki çağrı grafiklerine yöneltilir.
Dinamik Analiz
Dinamik analiz test veri setlerini kullanarak, yazılımı çalıştırır ve yazılımın davranışlarını belirleyerek, test coverage raporları üretir. Kaynak kodun bu analizi yüksek kalite testlerin devamlılığını ve capture/playback araçlarının doğru kullanımını sağlar.
LDRA Testbed Dinamik Analizi kritik kodlar için kalite standartlarına ulaşmayı, kodun verimini artırmayı, regresyon testlerinin maliyetlerini azaltmayı ve yazılım hatalarını saptamayı sağlar.
Yazılım geliştirme ve iyileştirme süreçlerinde kullanıldığında, Dinamik Analiz teknikleri programın sağlamlığı ve güvenilirliği konularında önemli bir paya sahiptir.
Dinamik Analizin Faydaları Nelerdir?
- Yüksek kaliteli testler gerçekleştirme
- Regresyon testlerinden kaynaklı masrafı ve ekstra iş yükünü azaltma
- Yazılımdaki hataları ve kuralsızlıkları saptama
- Bakım maliyetlerini en aza indirme
- Sistemin/programın gereksiz parçalarını tespit etme
- Sistemin güvenilirliğini ve hatasızlığını sağlama
Dinamik Analiz Ne Zaman Kullanılmalı?
Dinamik Analiz yüksek seviyede güvenilirlik gerektiren yazılım uygulamalarında etkilidir. “Safety-critical” aviyonik yazılımlarında ve savunma sanayindeki projelerde ana gereksinimdir.
“Safety-critical” projeler dışında finans ve telekom sektörleri için de önemlidir. Gerçek anlamda maliyet tasarrufu sağlar ve açık ara farkla rakiplere üstünlük sağlamanıza yardımcı olur.
LDRA Tool Suite ile Dinamiz Analiz
Dynamic overview report showing the coverage for the set cashregister |
Coverage aşağıdaki seviyelerde ölçülebilir:
- Statement Coverage
- Branch/Decision Coverage
- LCSAJ Coverage
- MC/DC Coverage
- Dynamic Data Flow Coverage
LDRA Testbed Kullanımının Faydaları Nelerdir?
Unit, entegrasyon ve sistem testleri için idealdir.
- Yazılım yaşamdöngüsü boyunca kullanılabilir.
- Maliyet tasarrufu sağlayan analiz aracı, yazılım geliştirme ve test süreçlerinde oldukça faydalıdır.