Get certified - Transform your world of work today


The Agile Philosophy

The End of Myopia in Software Quality

28 November 2013

High-performing companies that operate in the information technology market stand out for their elevated quality standards and their respect for software project deadlines, thereby allowing greater competitiveness.

The evolution of efficacy in software engineering with regard to methodology in systemic development projects is notorious; it permits a better guarantee of quality and of meeting deadlines. However, there is still much more evolution needed, and it falls to us to reflect and identify where there has been shortsightedness in developing quality in software. Let’s look at these examples of myopia:
  1. Estimated deadlines: Software projects tend to lack details in their requisition, when they are not imprecise, which results in an unrealistic projection of the time that should be allotted.
  2. Developer performance: There is a natural tendency to have various levels of agility and quality in developing codes on our team; nevertheless, all team members should keep themselves up to date with regard to new technology and the evolution of their skills for structuring algorithms. As a result of this situation, despite the need to estimate the labor needed to complete a project, in practice this estimate tends to not be effective, which impacts the quality of the solution and compliance with deadlines.
  3. Changes in project requirements: We understand that unpredictability is one of the characteristics of a software project, since the natural course of a project tends to be seriously affected by external factors such as the appearance of new technologies, new priorities, or changes in system requirements. . . .

Analyzing the short-sighted rigidity of software projects

In the traditional process methods for carrying out engineering projects, we observe a concern with defining the stages in terms of tasks and interdependencies. However, in practice, the Cascade Model (Waterfall, as explained below) meets the formalistic needs of the process but fails at the dynamism in which negotiation with the client exists.

Diagram showing the stages of the Waterfall method

Clearer vision

Believing the in shortsightedness of the Waterfall model described above, a group of software engineers proposes the Agile method as a more effective solution for software development, which to them is summarized by the following:
  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

This new model, Agile, generates heated discussions and questions among professionals involved in software projects, as it focuses more intensely on dynamic interaction with the final client, to the detriment of procedural details for rigorously tested and documented software that respects and confirms previously agreed clauses and negotiations.

Witnessing the end of nearsightedness

The difficulty in maintaining quality in the face of the usual and natural changes required by clients has helped bring about countless tools that support Agile development, such as Test-Driven Development (TDD). It aims to subsidize the search for errors while testing the validation of the design requested by the client, which serves as additional documentation, while also making the programmer think about the restrictive aspects of the requirements as well as other advantages.

A final myopia

Which model tends to be the least shortsighted? Considering the dynamic nature of technological changes and the market, and the need to impress our clients, we believe that it will be the combination of creativity and fluidity in the Agile model, supported by various lessons learned from the traditional Waterfall model.

Innovations mark the future of software developers, and, like it or not, the more nearsighted models and their devotees will soon fall out of favor.

Opinions represent those of the author and not of Scrum Alliance. The sharing of member-contributed content on this site does not imply endorsement of specific Scrum methods or practices beyond those taught by Scrum Alliance Certified Trainers and Coaches.

Article Rating

Current rating: 3.5 (4 ratings)


Be the first to add a comment...

You must Login or Signup to comment.

The community welcomes feedback that is constructive and supportive, in the spirit of better understanding and implementation of Scrum.


Newsletter Sign-Up