🚀Advanced Static Analysis Solutions for Ada Software
At Spazio IT, software quality is one of our core competencies. For over twenty years, we have supported organizations developing safety-critical and mission-critical software by providing advanced solutions for software verification, validation, code quality assessment, and compliance with international standards.
Building on this experience, we actively develop open-source technologies that bring modern static analysis and automated verification capabilities to the Ada and SPARK ecosystems.
Our suite provides a complete, modern solution for analyzing Ada source code, detecting quality and safety defects early, and integrating metrics seamlessly into Continuous Integration (CI) and DevSecOps workflows.
🛠️ AdaLang Analyzer
Intelligent Command-Line Static Analysis for Ada & SPARK
AdaLang Analyzer is a modern, independent static analysis framework for Ada based on Libadalang, the semantic analysis and parsing engine developed by AdaCore.
Rather than relying on superficial text matching or basic regex heuristics, AdaLang Analyzer analyzes the full abstract syntax tree (AST) and semantic context of Ada programs. This enables deep defect detection, precise diagnosis, and significantly reduced false positives.
✨ Key Features
- Deep Syntactic & Semantic Analysis: Rich AST navigation and type resolution powered by Libadalang.
- Control-Flow & Data-Flow Defect Detection: Uninitialized reads, dead stores, unreachable/dead code, and abnormal paths.
- Arithmetic & Numerical Safety: Division-by-zero checks, range violation risks, and numerical anomaly detection.
- SPARK-Readiness & Bounded Verification: SPARK construct verification and an optional bounded scalar verification mode (
--verify). - Exception Handling Verification: Detection of unhandled or improperly suppressed exceptions.
- Suspicious Expression Detection: Identification of logic redundancies, copy-paste conditional errors, and tautologies.
- Maintainability & Coding Standards: Enforces readability, complexity metrics, and customizable coding rules.
- Rich Output Formats: Generates diagnostics in standard formats including JSON, SARIF, CSV, and CSVX for easy ingestion into IDEs and CI/CD tools.
- Alire Support: Packaged for seamless installation via Alire (
alr).
Thanks to its modular architecture, new checks and custom company-specific guidelines can be incorporated with minimal effort.
- 🔗 GitHub Repository: https://github.com/mmartign/AdaLang_Analyzer
📊 SonarAdaPlugin
Bringing Ada Quality into SonarQube
Modern software engineering organizations rely on centralized dashboards to maintain code health across multi-language codebases.
To make Ada quality monitoring accessible without requiring expensive enterprise tiers, Spazio IT developed SonarAdaPlugin, enabling full Ada project analysis inside SonarQube (including Community Edition).
✨ Features
- Native Ada Language Recognition: File identification (
.ads,.adb), indexing, and syntax highlighting. - Software Metrics Collection: Lines of code (LOC), comment ratios, cyclomatic complexity, and code duplication detection.
- Third-Party Report Ingestion:
- Direct ingestion of AdaLang Analyzer reports (JSON/SARIF/CSV/CSVX).
- Ingestion of AdaControl reports.
- SonarQube Native Issue Reporting: Maps rules directly to SonarQube bugs, vulnerabilities, and code smells with precise source location markers.
- Unified Quality Gates: Monitor Ada code alongside C/C++, Java, Rust, Python, and JavaScript under standardized corporate Quality Gates and technical debt metrics.
- 🔗 GitHub Repository: https://github.com/mmartign/SonarAdaPlugin
🌐 A Complete Ada Quality Ecosystem
Together, AdaLang Analyzer and SonarAdaPlugin form an end-to-end open-source toolchain for Ada software quality assurance.
┌────────────────────────┐ ┌──────────────────────┐ ┌────────────────────────┐
│ Ada Source Code │ ───► │ AdaLang Analyzer │ ───► │ SARIF / JSON │
│ (.ads / .adb files) │ │ (Libadalang Engine) │ │ Report Output │
└────────────────────────┘ └──────────────────────┘ └───────────┬────────────┘
│
┌────────────────────────┐ ┌──────────────────────┐ │
│ Centralized Dashboard │ ◄─── │ SonarAdaPlugin │ ◄─────────────────┘
│ & CI/CD Quality Gate │ │ (SonarQube Server) │
└────────────────────────┘ └──────────────────────┘
🚀 Benefits
- End-to-End Automation: Seamless integration into GitHub Actions, GitLab CI, Jenkins, and modern DevSecOps pipelines.
- Early Defect Detection: Find arithmetic issues, dead code, and logic bugs during development rather than in late testing or runtime.
- Standards Compliance: Strengthens adherence to strict quality guidelines across safety-critical domains.
- Reduced Total Cost of Ownership: Bridges the tooling gap for open-source and small-to-medium teams using open-source infrastructure.
🛡️ Supporting High-Integrity Software Development
Static analysis is an essential pillar in high-integrity software engineering, enabling engineering teams to:
- 🔍 Identify defects early before software enters hardware-in-the-loop or flight testing.
- 📈 Improve maintainability by eliminating dead paths and enforcing clean design rules.
- 🛠️ Manage technical debt via automated, objective tracking across code evolution.
- 🛡️ Support international safety standard compliance (e.g., DO-178C, ECSS, EN 50128, ISO 26262).
Spazio IT tools are engineered to support developers, system integrators, and research centers in mission-critical domains:
- ✈️ Aerospace & Space Systems
- 🛡️ Defense
- 🚆 Railway & Transportation
- 🏭 Industrial Automation & Robotics
- ⚡ Critical Energy & Infrastructure
🤝 Open Source & Community
Both AdaLang Analyzer and SonarAdaPlugin are actively maintained open-source projects.
We welcome collaboration, issue reports, rule proposals, and contributions from:
- 👨💻 Ada & SPARK developers
- 🏢 Industrial partners & tool builders
- 🎓 Universities & verification researchers
- 🌍 The international Ada community
⭐ Get involved: Visit github.com/mmartign to test the tools, file issues, or contribute to next-generation open-source static analysis for Ada.






