Scrum Methodology
Scrum is an interactive and incremental agile software development methodology facilitated in managing product development. It encompasses a “flexible, holistic product development strategy where a development team works as a unit to reach a common goal”, challenges assumptions regarding the “traditional, sequential approach” in product development, and enables teams to organize by themselves in encouraging physical co-location or closer on-line collaboration among the team members, as well as day-by-day face-to-face communication within the members and disciplines involved in a project.
A major principle of scrum is its recognition that during the development of a project the clients can change their minds regarding what they prefer and need (usually dubbed as “requirement churn”), and that unexpected challenges cannot easily be addressed in a usual predictive or strategic manner. As such, scrum adopts an empirical approach – accepting that the obstacle cannot be fully comprehended or defined, focusing instead on maximizing the developer's ability to deliver quickly and respond to emerging requirements.