May 07, 2007
Coverity, Headway Team Up for Software Architecture Analysis Tools
Mapping and analysis technologies combined With architecture visualization
Coverity and
Headway Software have teamed up to "advance and commercialize" structural analysis and architectural control technologies. Leveraging Coverity's
Software DNA mapping technology and its own structural analysis and architectural control technology, Headway plans on building products that produce high-fidelity architectural diagrams.
Structure101, Headway's flagship structural analysis and architectural control tool, is available for Coverity's
Prevent SQS for Java software quality system. Structure101 provides control of Java software architecture through dependency management and analysis. Future versions of the product will support C and C++.
"In our view, a sound architecture is a pre-requisite for quality software, and we believe Headway provides the best solutions and the best understanding of this domain," said Coverity CTO Ben Chelf. "With Coverity's unique Software DNA technology, I'm confident that we can work with Headway to deliver C, C++, and Java architectural products that will be market leaders and raise the awareness of the value of architectural control."
On the Headway side of the equation, Chris Chedgey added that "with Coverity, we can help customers solve one of the biggest problems in software development projects -- code that is too complex for people to understand."
Developers can use both Coverity Prevent SQS and Structure101 from a single repository, adding complete source-code analysis to create an accurate map of a project's software DNA, identify defects, and security
vulnerabilities, manage and fix software defects, and control structural complexity.
Key features of Structure101 for Coverity Prevent SQS include:
- Dependency management with implementation models and diagrams of all dependencies
- Graphical dependency hierarchy views with choice of package, flat package, flat class, directory or jar views
- Auto-partitioning of large dependency graphs
- Measurement of excessive structural complexity (XS)
- Comparison of structure between different builds
- Ability to define and enforce the intended architecture, through simplified dependency graphs (or Architecture Diagrams)
- Unique Mapping of Architecture Diagrams to the physical code through simplified regular expressions
- Publication of Architecture Diagrams to a centralized repository for sharing across distributed teams
- Eclipse Plug-in that presents Architecture Diagrams to the developers
- Violations of defined architecture exposed as they are created