An agile approach to product development is an iterative process conducted by self-organizing teams in a collaborative environment. It means the product is constantly assessed against requirements and specifications and results in a high-quality product that meets stakeholders (often changing) needs in a timely manner.
Product development agile philosophy dictates that instead of releasing the entire specification of a product at the end of the release it is instead divided into iterations (also called sprints) that deliver partial requirements based on priority. During an iteration the development team works through the entire development cycle, from specification to testing, and then release a working product to stakeholders for assessment. The process is repeated based on the feedback received from stakeholders until all agreed functions have been included in the product. It is a methodology that produces results quickly and that can respond to changing requirements effectively.