What is Agile Methodology of Software Development?

agile methodologies

While learning software engineering processes, you must have heard a term Agile and Agile Methodologies. Before going to learn Agile, lets revise the basic model of software development process and that Model is Water Fall Model. In water fall model we have seen how development cycle flows from planning to deployment. Here everything gets repeated over smaller time intervals. It is somehow similar to traditional incremental model. Where we keep planning, building, testing and deploying.

Agile Manifesto:

We are uncovering better ways of developing software by doing it and helping others do it.

Through this work we have come to value:

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation
Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.
Agile Principles:

1) Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2) Welcome changing requirements, even late in
development.  Agile processes harness change for the customer’s competitive advantage.

3) Deliver working software frequently, from a
couple of weeks to a couple of months, with a preference to the shorter timescale.

4) Business people and developers must work
together daily throughout the project.

5) Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6) The most efficient and effective method of
conveying  information to and within a development team is face-to-face conversation.

7) Working software is the primary measure of progress.

9) Agile processes promote sustainable development.
The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

10) Continuous attention to technical excellence
and good design enhances agility.

11) Simplicity–the art of maximizing the amount of work not done–is essential.

12) The best architectures, requirements, and designs
emerge from self-organizing teams.

13) At regular intervals, the team reflects on how to become more effective, then tunes and adjusts
its behavior accordingly.
         

Agile is considered as a philosophy. It is a way to build something functional over a small interval of time. Agile actually intends to produce smaller parts of working software over different intervals of time. It is easy to understand what agile methodology is? but actually difficult to implement. It is something that comes with experience and practice. Everybody is not capable of identifying the smaller functional parts of the software and even if they identify, it is difficult to implement over smaller period of time. One can always adopt this technique in life so as to make life easier. Because once you start following agile you make utilization of your skills and assets in the best possible way. Agile has become the most popular way of building softwares. It has also been adopted by companies in their overall processes. Developing something functional everyday. 

LEAVE A REPLY

Please enter your comment!
Please enter your name here