Agile Programming Design to Accommodate Change
Short Description
Agile development provides a set of practices simple enough to engage developers, managers, and customers yet sufficiently sound and disciplined to build quality software with predictability (see www.agilemanifesto.org). Applications are expected to evolve over time as their requirements change, and agile development’s refactoring and testing practices accommodate software evolution. (Indeed, Extreme Programming’s maxim is “embrace change,” and today’s best developers view refactoring as a badge of honor.)
Website: martinfowler.com | Filesize: 967kb
No of Page(s): 4
Content
Refactoring improves code, usually increasing the function while reducing code bulk. However, such refactoring or restructuring often forces the application to undergo a complete development cycle, including unit, acceptance, and regression testing, followed by subsequent redeployment. In a large IT or engineering production system, this can be time consuming and error prone.
Agile programming is design for change, without refactoring and rebuilding. Its objective is to design programs that are receptive to, indeed expect, change. Ideally, agile programming lets changes be applied in a simple, localized way to avoid or substantially reduce major refactorings, retesting, and system builds.
Table-driven programming encompasses four well-known but perhaps forgotten agileprogramming techniques that help anticipate and accommodate many common changes.
…
Get the file Download here
Related Books:Related Searches: table driven programming, regression testing, software evolution, agile development, testing practices
Comments
Leave a Reply