At iTexico, we have found that the key to the successful completion and launch of an application project isn’t necessarily a secret, but a methodology: In fact, it is no secret that we subscribe to the Agile method of project implementation.
For the uninitiated, Agile is simply a way of organizing a software development project that fosters a hands-on, team-based approach that facilitates rapid delivery. This is because multiple projects are being completed simultaneously in phases called “sprints,” aptly named because of the frenetic pace in which the work is completed.
Because the customer is an active participant in the Agile process, decisions can be made on the fly, and work can be reprioritized constantly, keeping outcomes on track and ensuring timely delivery.
In some organizations, however, the chosen methodology is one that hearkens back to the early days of technology development. Named “Waterfall,” it’s a much more linear approach which involves a defined sequence of events. Each stage is a precursor to the next, and must be completed before the next stage can begin.
The customer, rather than being a part of the development team, assumes a more traditional role in the approval matrix, signing off on each stage before the next phase can begin. This opens up the possibility that an entire phase of work may have to be scrapped if it doesn’t pass muster at the approval phase.
Though you won’t find competing engineering teams rooting for their methodologies as you would football fans on opposite sides of the field, we at iTexico feel there are clear benefits to the Agile method – particularly with regard to our “nearshoring” approach to development. With resources positioned in the U.S. and Mexico, Agile development presents the opportunity to unify scrum teams across borders, working as a unit to achieve successful outcomes.
Here are other key differences between the two methodologies that we believe stack the deck in favor of Agile:
1.- The User is in Charge: In addition to the engineering product benefiting from constant and regular feedback from the customer, Agile development generally is constructed from “user stories” – a process that produces a user experience that has far superior benefits over the more rigid Waterfall methodology.
2.- Beta Test, More Quickly: If the customer is looking to launch a basic version of a working application post-haste, Agile can turn out a working model that can be improved upon in additional iterative sprints; while adding additional features and functions in Waterfall require a “start-from-the-beginning” approach, following the specific linear steps as prescribed.
3.- See the Future: As the product comes into focus, the customer is far more able to visualize the application through the Agile process then they can in the Waterfall methodology. That’s because Waterfall has a keen focus on the gathering and documenting of requirements – a process that can fall short in truly painting the picture for the customer of what the expected outcome will be. Though wireframes and mockups can alleviate this issue, they’re simply not as effective as the developed increments that are issued at the end of Agile sprints.
4.- Decreased Risk: Often, an application wish list is far more robust than the budget to support them. Agile allows for prioritization by value, meaning that the most critical features are implemented first – reducing the risk of delivering an unusable product if funding becomes an issue later.
5.- Waterfall tends to be an “all-or-nothing” methodology – great if time and resources are no object.Better Outcomes: By breaking down the project into the more manageable-sized “sprints,” Agile supports a greater commitment to quality assurance – allowing the project team a keener focus on high-quality development, testing and collaboration. The frequency of builds also supports the concept of improved quality as defects are often found and identified more quickly than if left to a “testing phase” late in the game.
In the methodology tug-of-war, we at iTexico see a clear benefit to using Agile. Beyond providing benefits to our company and our clients, we believe that end users benefit from a product that is better conceived, better built, and less fraught with unseen issues.