Agile Methods

Read Complete Research Material

AGILE METHODS

Agile Methods

Agile Methods

Introduction

Agile software development is a conceptual framework of software engineering that promotes development iterations throughout the project life cycle. There are many Agile development methods; the majority minimizes risk by developing software in short time frames. The software developed in a unit time is called an iteration, which should last from one to four weeks. Each of the life cycles includes planning, requirements analysis, design, coding, and documentation. Iteration should not add too much functionality to justify the launch of the product to market, but the goal is to have a demo (no errors) at the end of iteration. At the end of iteration the team re-evaluates project priorities.

Agile methods emphasize face-to-face communication rather than documentation. Most Agile teams are located in a simple open office, sometimes called "launch pads" (bullpen in English). The office should include reviewers, document writers, and help designers and project manager's iteration. Agile methods also emphasize that working software is the first step of progress. Combined with the preference for face-to-face communication, agile methods are often criticized and treated as "unruly" by the lack of technical documentation. (Mugridge, 2005, Pp. 115-138)

Values

There are four types of values:

The team ("People and interaction rather than processes and tools"): In order Agile team is more important than the tools (structural or control) or operating procedures. It is better to have a cohesive team that communicates, composed of developers (possibly varying levels), rather than a team of experts each operating in isolation. Communication is a fundamental concept. (Mugridge, 2005, Pp. 115-138)

The application ("Software functional rather than full documentation"): It is vital that the application works. The rest, including the technical documentation is a valuable but not an end in itself. Accurate documentation is useful as a means of communication. The documentation represents a significant workload, but may nevertheless be harmful if it is not updated. It is best to discuss thoroughly the code itself, and especially to transfer skills within the team (it goes back to the importance of communication).

Collaboration ("Collaboration with the client rather than contract negotiation): The client must be involved in development. One cannot simply negotiate a contract at the beginning of the project, and then ignore the demands of the customer. The client must cooperate with the team and provide continuous feedback on adapting the software to its expectations.

The acceptance of change ("Coping with change rather than follow a plan"): Initial planning and structure of the software must be flexible to allow for the changing demands of the customer throughout the project. The first releases of the software will often result in change requests.

Roles

The DSDM method is particularized by the specialization of project stakeholders in a notion of "roles". Thus we find in meetings DSDM executive sponsors, ambassadors, visionary users, users advisers, not to mention the facilitators. (Freeman, 2009, Pp. 45-55)

The Scrum asserts its difference in practices for short daily meetings (Stand-Up meeting). These working hours are common goals to improve the motivation of participants to synchronize tasks to unblock difficult ...
Related Ads