What is Agile Software Development and Agile Manifesto?

Testers in agile team are called as team members, not identified by his/her skill specialization. In fact, testers and developers are together are called as Development team. The word “Development team” not only contains developers, but also testers who are actively involved in the development of the product increment. The testers form part of fully cross functional Agile team where they work with business representatives and developers in tandem. The team members of an Agile team communicate more frequently and informally to develop product with good quality.

Agile Software Development

Post 2000, motivated individuals with similar point of view, brought out a set of ideas and values that are known as the Agile Manifesto. There are four important aspects that make up the Agile Manifesto as listed below:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

Please note items on the left have greater value on them than items on the right; It should be read as left is important “over” right and should not to be replaced with “instead”.

Individuals and Interactions

People form the core of Agile software development and teamwork is given high importance than using a specific processes and tools. Any processes and tools should be used as a enabler to increase the team work rather than replacing it. Communication has also plays a vital role in enhancing the Teamwork.

Working Software

It has been a practice in Waterfall to deliver design documents, architecture documents or test plans, test cases etc to the customer before we deliver the real piece of working software.

  • However, in Agile way of working, this practice should be substituted with delivering piece of working software increment every iteration.
  • It doesn’t mean that we have to avoid documentation completely; but only necessary documentation is produced.
  • The valuable software should be delivered early and frequently during the development.
  • Agile development in a way helps in reducing the time taken for the product/software to reach the market giving scope for frequent feedback.

Customer Collaboration

Customers often do not know what they really want until they see something working.

  • Even more, those days are gone when customers gave specifications in thick binders.
  • In a rapidly changing era, upfront requirement specification seems to be a big challenge.
  • Frequent customer collaboration may help the development team to understand the needs of the customer in greater detail.
  • Writing contracts with the customers is a profit motive and collaboration is a purpose motive.
  • Purpose motive should be given more importance than profit motive.

Responding to Change

Change is constant and unavoidable in software development projects.

  • Most of the software organizations need to respond to changing business needs and regulation amendments for their survival.
  • In the current market scenario of digital world, the business priorities change at a faster pace frequently.
  • It is predominantly important that software development should adopt to the changing needs to meet the business goals.
  • The flexibility to accommodate changes into the plan is more significant than just writing a plan and following it.

Principles of the Agile Manifesto:

The core Agile Manifesto values are captured in twelve principles:

Agile Manifesto

The different Agile methodologies provide prescriptive practices to put these values and principles into action.