Agile and Scrum: Traditional software development models built on statements of work which needs to be signed at an early stage of the development process. At early stage customers don’t know exactly what they wanted, and also not being able to articulate precisely their needs. Developers don’t know how to build it & during execution changes in product requested which can’t be avoided e.g. new regulatory directives, change in market etc.
Agile is not a mechanism for success, it’s a mechanism for making failure transparent so that team can adapt quickly (Empirical Process – Inspection, Adaption & Transparency). Agile allows development teams to work closely with business in order to overcome the ambiguity of the written description of systems in contracts, and to tailor their system to the needs of the end user. There are 4 Agile Core Values and 12 Principle.
Refer Agile Product Ownership in a Nutshell: Click Here
What is Agile?
Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams. Agile methods or Agile processes generally promote a disciplined project management process that encourages frequent inspection and adaptation, a leadership philosophy that encourages teamwork, self-organization and accountability, a set of engineering best practices intended to allow for rapid delivery of high-quality software, and a business approach that aligns development with customer needs and company goals. Agile development refers to any development process that is aligned with the concepts of the Agile Manifesto. The Manifesto was developed by a group fourteen leading figures in the software industry, and reflects their experience of what approaches do and do not work for software development. Read more about the Agile Manifesto.
What is Scrum?
Scrum is a term from RUGBY. It is an ordered formation of players, used to restart play, in which the forwards of a team form up with arms interlocked and heads down, and push forward against a similar group from the opposing side. The ball is thrown into the scrum and the players try to gain possession of it by kicking it backward toward their own side.Let’s define Scrum from Software Delivery perspective.
Scrum is a simple yet incredibly powerful set of principles and practices that help teams deliver products in short cycles, enabling fast feedback, continual improvement, and rapid adaptation to change.
Scrum is an Agile methodology.
- “process framework” is a particular set of practices that must be followed in order for a process to be consistent with the framework. (For example, the Scrum process framework requires the use of development cycles called Sprints, the XP framework requires pair programming, and so forth.)
- “Lightweight” means that the overhead of the process is kept as small as possible, to maximize the amount of productive time available for getting useful work done.