Much like various areas of study, or activities, there are methodologies in software development that a good developer should be familiar with. These methodologies describe a process or framework for planning, creating, testing, deploying, and maintaining an information system.
Methodologies I relate to:
Agile promotes adaptive planning, evolutionary development, early delivery, continuous improvement and encourages rapid and flexible response to change.
Described in the Agile Manifesto as:
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.
A subset of Agile Methodology:
“Scrum emphasizes the idea of “empirical process control.” That is, Scrum uses the real-world progress of a project — not a best guess or uninformed forecast — to plan and schedule releases. In Scrum, projects are divided into succinct work cadences, known as sprints, which are typically one week, two weeks, or three weeks in duration. At the end of each sprint, stakeholders and team members meet to assess the progress of a project and plan its next steps. This allows a project’s direction to be adjusted or reoriented based on completed work, not speculation or predictions.” 
CMS.gov has a great reference that describes the principles, strengths, weaknesses, and use-cases for the Waterfall Model, Prototyping, Incremental, Spiral, and Rapid Application Development (RAD).
 http://scrummethodology.com. What’s Unique about Scrum?
- Posted In: Application Development, Good To Know, Methodology, Programming
- Tags: Agile, Framework, Information Systems, methodology, process, RAD, SCRUM, SDLC