Agile software Overview
Agile software development is an incremental concept to software development, which is performed in a highly shared manner by self-organizing teams that readiness produces high quality software in a cost effective and timely manner, which meets the changing needs of its follower. Agile denoting-"quick and well-coordinated in movement", light in movement, cleverness in motion.
There are many agile methods and most of them try to minimize risk by developing software in limited time period called iterations and each iteration is like a mini software project of its own including all the necessary step to make a new functionality like analysis, planning, design, coding, testing and documentation. an agile software project mean to be capable of releasing new software at the end of every iteration. In many cases, software is released at the end of each iteration. This is particularly true when the software is web-based and can be released easily. Including all of these at the end of every team re-evaluates project priorities.
In Agile points of view they take care of the following point:
Individuals and interactions over all the process and development steps
Usually they take care of creating an engineering discipline for software development. They believe on the principles that might relate to the value of common sense, good people management principles. They provided all the necessary and supportive environment that need of the highly productive and motivated team for succeed and also allow the freedom to use of their (Development team) own development knowledge and skills and also encourage them to improve their skills and also trust them. These are basic human motivation principles and certainly not unique to the agile alliance.
Working software over large scope of documentation
The basic theme of agilites have not said that there is no need of the documentation but they are arguing against the concept of comprehensive documentation. Their main aim behind the minimal documentation could be the concept behind the documenting within the code was so simple while some of the software developer told that it means that no documentation but by agilities mind if the code was so simple; so well structured; and so neatly commented that it was intuitively easy to follow. They think about how easy it would be to maintain old code if that code conformed to well established structure and commenting standards. The agile methods do not preclude peer reviews or code walkthroughs. The same method followed agilites teams actually did these “processes,” think about how much less comprehensive the documentation would have to be.
Customer collaboration over contract negotiation
This value does not say no contracts. It acknowledges something to know to be true that requirements change. The idea behind the topic is only that development team should not create the long time period between engineer and the customer meeting the engineer should have to keep the customer close and the method that follow by the agile is about to regular contact between customer and the developer.
Responding to change over following a plan
The main theme behind the successful software development of agile is that there is no need of the plan but responding to change is more precious in comparison to following the plan. According to Agile's if we have to make our software more user friendly and flexible to work with prefect structure then we should have adopt the changes according to time requirement.