agile management of tech debt and architecture with cast
TRANSCRIPT
Manage Architecture and Technical Debt at Agile Speed
• Control Architectural Quality and Evolution
• Detect Non-Functional Problems Early
• Measure and Manage Technical Debt
Challenge
When working with Agile, you need to control architecture, satisfy non-
functional requirements, and reduce technical debt in short iterations.
Agile quality techniques such as Test Driven Development and Unit
Testing are typically driven from the functional requirements. Short,
time-boxed iterations limit the time available for evaluating complex
interactions among components in different layers of the architecture
and for ensuring that the non-functional requirements for security,
reliability, maintainability, and performance have been met. Even more
challenging, non-functional, structural flaws are notoriously difficult
to detect with test cases. Since these application-level defects are
typically investigated during acceptance testing at the end of an
iteration or sprint, problems are detected when it is often too late to
make corrections before release. Consequently, these flaws become
technical debt to be remediated in future iterations.
Solution
The CAST Application Intelligence Platform (AIP) can be
incorporated into a continuous integration environment to evaluate
if newly integrated components:
• Violate rules of good architectural and coding practice affecting
security, robustness, changeability, performance efficiency, and
maintainability
• Create unintended side effects in other layers of the application
• Adhere to the application’s architectural rules
• Have structural problems that create technical debt
CAST AIP is a powerful application-level static analysis technology
that detects violations of architectural and coding practice standards,
as well as the difficult-to-test interactions across a multi-layer,
multi-language application. CAST AIP integrates into a continuous
integration environment to analyze the source code base, and parses
the entire application regardless of language searching for patterns
in the source code metadata that represent non-functional flaws.
It can also provide automatic documentation of the architecture
implemented in the source code.
continues >
CAST for Agile Development
• Non-functional Quality It can be difficult
to detect quality problems through test cases,
so CAST moves feedback forward during an
iteration or sprint. Since the development team
does not have to wait until acceptance testing
to identify problems in the code that can cause
outages, security breaches, performance
degradation, or data corruption, they are able
to identify and prioritize corrections much
earlier. Therefore, the most severe problems
do not get relegated to future sprints as
technical debt.
• Technical Debt By identifying the
violations of good architectural and
coding that constitute technical debt,
CAST provides a vehicle for measuring the
debt accumulating in an application. CAST
helps distinguish between benign problems
and the most severe violations that must
be remediated to avoid excessive cost
to IT and risk to the business customer.
CAST provides the information needed
to help development teams prioritize
refactoring decisions.
• Management Governance With CAST’s
management-level summary of the non-
functional health of applications, executives
can track the quality characteristics of their
application portfolio. At a glance, they can
gain insight into resource allocation needs by
identifying the applications at greatest risk
for cost and operational problems. They can
also track the architecture and non-functional
quality of their applications across releases
to identify trends in quality characteristics
that create future costs or risks.
• Sizing CAST provides up-to-date size
measures of the code base, not only by lines
of code, but also the functional size of the
application represented as automated
function points computed as closely as
possible to the specification of the International
Function Point User Group. In contrast to
manual counting, CAST’s function point counts
are consistent and updated automatically with
each execution of the technology, which can
provide additional calibration for effort
estimating and productivity analyses,
supplementing data available from such
sources as burn-down charts.
www.castsoftware.com
Europe 3 rue Marcel Allégot 92190 Meudon - France Phone: +33 1 46 90 21 00
North America 373 Park Avenue South New York, NY 10016 Phone:+1 212-871-8330
Questions?
Email us at [email protected]
Copyright © 01/2011 CAST All Rights Reserved
Learn more about CAST
www.castsoftware.comblog.castsoftware.com
www.facebook.com/castonquality www.slideshare.net/castsoftware www.twitter.com/OnQuality