Agile has replaced waterfall, but have quality outcomes changed?

by

The software industry is moving very quickly from the traditional waterfall model to the agile methodology. We’re certainly producing software more quickly, but is the software we’re producing any better? Before we get into that though, let’s look at the reasons for this shift in mindset from waterfall to agile.

Firstly, there are a few concerns with the waterfall approach which are re-emphasized time and again. They include:

  1. The inability to adopt changes during the development phase because of initial scope freeze. (If the design phase has gone wrong, things can get very complicated in the implementation phase.)
  2. Key decisions are taken with little knowledge of project and product.
  3. Resource planning is not accurate as the full scope is not clear early in the cycle.
  4. Critical performance and integration issues are identified only at the end of the release cycle, (and the cost of fixing a problem at the end is very high).
  5. Working software is available only when testing is completed at the end of the release cycle.
  6. The feedback from stakeholders and customers is received very late, resulting in features not meeting their expectations. (Feedback is available only during UAT, which is too late and expensive to implement.)
  7. Deployment is possible only when all work is finished.
  8. Usually quality is addressed very late in the cycle, resulting in poor delivery.

The agile methodology facilitates an easy way to receive recurring feedback from the customers early in the release cycle, and thus will have a positive impact on the overall quality of the product.

The feedback comes from intermediate releases or quality checks before going to production. It also comes from more tests, build cycles, and early dialogue with customers.

Figure A: Acceptance of agile and waterfall methodologies based on success rate

The above results are based on the analysis of functional quality more than the structural quality.

However, structural quality is an integral part of the software product or project. Using static analysis tools -- which carry out the testing and validation of the software’s inner structure, source code, and design -- we can detect major architectural issues or design flaws in time.

Based on my experience as a Scrum Master, I have seen that in enterprise ADM, it is not always easy to reconcile the agile method with architectural constraints placed on legacy system components.

Therefore, introducing static analysis checks can make a big difference. The true value lies in the ability to track the evolving architecture of an agile project and how that fits with the overall application landscape.

As a Scrum Master, I was always looking for a solution which ensured a complete quality assurance by:

  1. Performing code and architectural reviews on the application or product being tested based on a defined set of rules.
  2. Prioritizing issues based on their impact on the business areas, functional features, module, and code.
  3. Giving a clear view on the key quality indicators such as security, performance, architecture, robustness, maintainability, transferability, and much more.

I couldn’t find anything close to what CAST offered. Therefore, I knew CAST was the right fit for me.

Filed in: Software Quality
Get the Pulse Newsletter  Sign up for the latest Software Intelligence news Subscribe Now <>
Open source is part of almost every software capability we use today. At the  very least libraries, frameworks or databases that get used in mission critical  IT systems. In some cases entire systems being build on top of open source  foundations. Since we have been benchmarking IT software for years, we thought  we would set our sights on some of the most commonly used open source software  (OSS) projects. Software Intelligence Report <> Papers
In our 29-criteria evaluation of the static application security testing (SAST)  market, we identified the 10 most significant vendors — CAST, CA Veracode,  Checkmarx, IBM, Micro Focus, Parasoft, Rogue Wave Software, SiteLock,  SonarSource, and Synopsys — and researched, analyzed, and scored them. This  report shows how each measures up and helps security professionals make the  right choice. Forrester Wave: Static Application Security Testing, Q4 2017  Analyst Paper
This study by CAST reveals potential reasons for poor software quality that  puts businesses at risk, including clashes with management and little  understanding of system architecture. What Motivates Today’s Top Performing  Developers Survey
Jayesh Golatkar Associate VP of Product Development at Deloitte India
Dynamic professional with right attitude and strong technical background. Passionate about Product development & conceiving new ideas. An Inspiring lead, effective communicator with excellent team building & interpersonal skills. Believes in leading by example. Successful in building & executing Product strategies. Proven ability to drive teams & product to success.
Load more reviews
Thank you for the review! Your review must be approved first
Rating
New code

You've already submitted a review for this item

|