- In current dynamic software industry as competition is increasing it has become very important for the companies to increase care and attention to make the processing adaptable plus flexible. Companies and people who are willing to adapt and respond quickly to changes, also who are very much receptive to client’s overnight demand. This is what agile methodology is all about
- As far as definition is concerned this is a type of methodology defines the project management process, commonly used for software development, where demands and solutions evolve through the collaborative effort of self-organizing and cross-functional teams and their customers.
- It was developed in reaction to the shortcomings of traditional development methodologies such as the Waterfall approach, based on the ideals and principles of the Agile Manifesto. Because software is something that can be constantly improved, the software business is a highly competitive sector. This implies that in order to be competitive, developers must continually improve and reinvent their products and the Waterfall method’s linear, sequential approach just wasn’t cutting it.
History and development of Agile Development
In 90’s software industry was going through a crisis. To the surprise the businesses demand and requirement were not met. The estimated time between a business need and actual application was about three years. This provided little room for maneuver when it came to progress evaluations and modifications. As a result, it was quite likely that the project’s initial objectives, demands, and systems had changed by the time an actual application was produced. Professional leaders in the software community felt it was time for a new, fresh approach after squandering money and effort and cancelling several projects in the midst. Then, in 2001, 13 individuals gathered at a cold Utah ski lodge. Some of them had already begun to investigate a new software development method. They were all keen to find a technique that would validate what they were doing, which led to the development of the Agile Manifestos.
How does Agile project management works?
Agile’s main aim is to be clear and measurable by using six main deliverables to track progress and execute the action to develop and create the product.
The deliverables
- Product vision statement: A summary that articulates the goals for the product.
- Product roadmap: The high-level view of the requirements needed to achieve the product vision.
- Product backlog: Ordered by priority, this is the full list of what is needed to be done to complete your project.
- Release plan: A timetable for the release of a working product.
- Sprint backlog: The user stories (requirements), goals, and tasks linked to the current sprint.
- Increment: The working product functionality that is presented to the stakeholders at the end of the sprint, and could potentially be given to the customer.
With own set of characteristics and terminology, there are several framework within the Agile project management which is commonly used to develop and deliver a product. But all the framework share common principles and practices.
Two of the most popular ones that support the Agile development life cycle are Scrum and Kanban.
Scrum Methodology | Kanban methodology |
Scrum is an Agile framework that is used to put the concepts of Agile software development into action. It was developed by Jeff Sutherland and Ken Schwaber (who were also among the 13 people who signed the Agile Manifesto) and consists of five values: commitment, bravery, focus, openness, and respect. Its mission is to create, deliver, and sustain complex products through collaboration, accountability, and iterative development. | Kanban is a very visible approach of project management that is often utilised in Agile. It depicts the workflow process in order to detect bottlenecks early on in the process and produce a higher quality product or service. |
Scrum team roles Product owner: Product expert who represents the stakeholders, and is the voice of the customer. Development team: Group of professionals who deliver the product (developers, programmers, designers). Scrum master: Organized servant-leader who ensures the understanding and execution of Scrum is followed. | Its six general practices are: Visualization Limiting work in progress Flow management Making policies explicit Using feedback loops Collaborative or experimental evolution A concept that was developed in the production line of Toyota factories in the 1940s, Kanban achieves efficiency through visual cues to signal certain stages of the development process. The said cues are a Kanban board, Kanban cards, and sometimes even Kanban swimlanes. |
Scrum events Sprint: Iterative time boxes where a goal is accomplished. Time frame does not exceed one calendar month and are consistent throughout the development process. Sprint planning: Where the entire Scrum team get together — at the beginning of every Sprint — to plan the upcoming sprint. Daily Scrum: 15 minute time boxed meeting held at the same time, every day of the Sprint, where the previous day’s achievements are discussed, as well as the expectations for the following one. Sprint review: An informal meeting held at the end of every Sprint where the Scrum team present their Increment to the stakeholders, and discuss feedback. Sprint retrospective: A meeting where the Scrum team reflect on the proceedings of the previous Sprint and establish improvements for the next Sprint. | Kanban board: A visual management tool used to visualize the development process. It can be either physical (a whiteboard, sticky notes, and markers) or virtual (like Zenkit’s online project management tool), and can be used for personal productivity, as well as professional use. |
Scrum Artifacts Product backlog: Managed by the Product Owner, it’s where all the requirements needed for a viable product are listed in order of priority. Includes features, functions, requirements, enhancements, and fixes that authorize any changes to be made to the product in future releases. Sprint backlog: A list of the tasks and requirements that need to be accomplished during the next Sprint. Sometimes accompanied by a Scrum task board, which is used to visualize the progress of the tasks in the current Sprint, and any changes that are made in a ‘To Do, Doing, and Done’ format | Kanban cards and swimlanes: Cards that depict a work item/task in the work process. Used to communicate progress with your team, it represents information such as status, cycle time, and impending deadlines. A visual element on the board that allows you to further distinguish tasks/items by categorizing them. Flowing horizontally, it offers distinction and provides a better overview of the workflow. |