The agile method defined
The general principles of the Agile Method
This method offers a light framework for assisting teams. It helps them function and maintain focus on rapid delivery. This focus assists capable organizations in reducing the overall risks associated with software development.
The Agile Method ensures that value is optimized throughout the development process. The use of iterative planning and feedback results in teams that can continuously align a delivered product that reflects the desired needs of a client. It easily adapts to changing requirements throughout the process by measuring and evaluating the status of a project. The measuring and evaluating allows accurate and early visibility into the progress of each project.
It could be stated that the Agile Method helps companies build the right product. Instead of trying to market software before it is written, the Agile Method empowers teams to optimize the release during its development. This allows the product to be as competitive as possible within the marketplace. It preserves the relevance of the critical market, and it ensures that a team’s work doesn’t wind up collecting dust on a shelf. This is why the Agile Method is an attractive developmental option for stakeholders and developers alike.
- Continually software development.
- Changing requirements are embraced for the client’s competitive advantage.
- Concentrate on delivering working software frequently. Delivery preference will be placed on the shortest possible time span.
- Developers and business people work together throughout the entire project.
- Projects are based on people who are motivated. We give them the proper environment and the support that they need.
- Face-to-face communication is the best way to transfer information to and from a team.
The three roles defined in Scrum are the ScrumMaster, the Product Owner, and the Team (which consists of Team members). The people who fulfill these roles work together closely, on a daily basis, to ensure the smooth flow of information and the quick resolution of issues.
PLAN
Discover & Define
DESIGN
Create Visuals
BUILD
Develop & Construct
BETA
Test & train
LAUNCH
Optimize & Go Live
Support
Monitor, Evaluate & Refine
ScrumMaster
The ScrumMaster is the keeper of the process. The ScrumMaster is responsible for making the process run smoothly, for removing obstacles that impact productivity, and for organizing and facilitating the critical meetings.
The ScrumMasters responsibilities include:
- Teach the Product Owner how to maximize return on investment (ROI), and meet his/her objectives through Scrum.
- Improve the lives of the development Team by facilitating creativity and empowerment.
- Improve the productivity of the development Team in any way possible.
- Improve the engineering practices and tools so that each increment of functionality is potentially shippable.
- Keep information about the Team’s progress up to date and visible to all parties.
The ScrumMaster should maintain a constant awareness of the status of the project (its progress to date) relative to the expected progress, investigate and facilitate resolution of any roadblocks that hold back progress, and generally be flexible enough to identify and deal with any issues that arise, in any way that is required.
The ScrumMaster’s general approach towards the Team is to encourage and facilitate their decision-making and problem-solving capabilities, so that they can work with increasing efficiency and decreasing need for supervision. The goal is to have a team that is not only empowered to make important decisions, but does so well and routinely.
Product Owner
The Product Owner is the keeper of the requirements. The Product Owner provides the “single source of truth” for the Team regarding requirements and their planned order of implementation. In practice, the Product Owner is the interface between the business, the customers, and their product related needs on one side, and the Team on the other. The Product Owner buffers the Team from feature and bug-fix requests that come from many sources, and is the single point of contact for all questions about product requirements.
Product Owner works closely with the team to define the user-facing and technical requirements, to document the requirements as needed, and to determine the order of their implementation.
Product Owner maintains the Product Backlog (which is the repository for all of this information), keeping it up to date and at the level of detail and quality the Team requires. The Product Owner also sets the schedule for releasing completed work to customers, and makes the final call as to whether implementations have the features and quality required for release.
Team
The Team is a self-organizing and cross-functional group of people who do the hands-on work of developing and testing the product. Since the Team is responsible for producing the product, it must also have the authority to make decisions about how to perform the work.
The Team is therefore self-organizing: Team members decide how to break work into tasks, and how to allocate tasks to individuals, throughout the Sprint. The Team size should be kept in the range from five to nine people, if possible. (A larger number make communication difficult, while a smaller number leads to low productivity and fragility.)
Note: A very similar term, “Scrum Team,” refers to the Team plus the ScrumMaster and Product Owner.