Customer Involvement

The Agile Manifesto values “customer collaboration over contract negotiation.” A more traditional way of doing things would be to lock-in the system requirements early on in the project. Any subsequent…

Prabhu TL

Micro-Optimizing

This gene represents the adaptive nature of agile processes. We employ the term “Optimizing” because, in most agile methodologies, teams are empowered if not encouraged to modify aspects of the…

Prabhu TL

Refactoring

An incremental and feature driven approach to the development of software systems can produce sub-optimal architectures compared to a waterfall model, as discussed previously. One of the advantages of BDUF…

Prabhu TL

Waterfall/BDUF

Figure 14 depicts the flow of a classic Waterfall/BDUF approach: In the Analysis phase the requirements for the ATM system may be documented in a “System Requirements” document as the…

Prabhu TL

Iterative-Incremental

Another principle of the Agile Alliance is to “deliver working software frequently, from a couple of weeks to a couple of months.” ·         Take advantage of what was learned during earlier…

Prabhu TL

The Agile Genome

After review and analysis of many Agile methodologies, some of which were described in section 3.2, we come to find that they all share common characteristics. The project teams that…

Prabhu TL

Test Driven Development

Inspired by the “test first” philosophy from XP, Test Driven Development (TDD) starts the development process by coding automated test cases for the software features that are to be produced.…

Prabhu TL

A Brief Review of Agile Methodologies

This research aims to produce a System Dynamics model of Agile software projects. In order to model Agile, we must first understand the essence of agility: What makes software development…

Prabhu TL

Agile Software Development

In the 1990s, as the large software firms were “maturing” along the CMM dimension, and coinciding with the internet boom and massive growth in the commercial software industry, a parallel…

Prabhu TL

The Software Capability Maturity Model (SW-CMM)

To deal with the “software crisis” in the 1980s, the US Air Force prompted the Software Engineering Institute (SEI) to develop a method for selecting software contractors. A study of…

Prabhu TL