Where did Agile project management come from?
Agile project management was developed in 2001, a small group of people, tired of the traditional approach to managing software development projects, designed the agile manifesto. It is a more improved method for managing the progress of software projects.
What is agile in “agile project management”?
Agile in “agile project management” is an iterative development methodology that values human’s feedback and communication , adapting to change , and producing working results.
It’s a process in which a team can manage a project, by breaking it up into several stages.
These stages are also called sprints, the term for iteration used in a popular agile project management development method known as Scrum. Sprints are generally short, running over days or weeks; they’re typically two to four weeks long. This kind of agile project management enables teams to release segments as they’re completed. Continuous release schedule allows for teams to demonstrate that these segments are successful and, if not, to fix flaws quickly. The belief is that this helps reduce the chance of large-scale failures, because there is continuous improvement throughout the project life cycle.
Why is Scrum important?
The importance of Scrum follows from its key philosophy — it helps software development teams work together effectively. They are able to deliver early and high-quality results while adapting to evolving circumstances, feedback, or user requirements.
Scrum encourages development teams to learn through their experiences, self-organize when resolving a problem, reflect on their wins and losses, and, as a result, reach continuous improvement.
Difference between Scrum and Agile project management
Scrum methodology is a workflow framework made up of sprints and reviews used to promote Agile project management.
You should know that agile project management is an approach and a mindset. It’s not a list of instructions, or a certification. In fact, trying to turn agile project management into a black-and-white template goes against everything that agile project management is. It’s all about efficient communication over documentation, convoluted email chains, or excessive meetings.
How does it work?
Scrum begins with clients describing how the end product will be used and what problem it will solve. First goal is to create something called a backlog, where all tasks and stories are stored. Those stories and tasks are created by Scrum Master in collaboration with product owners and stakeholders. Team members will collaboratively decide which person should work on which task, because Agile project management divides responsibility among more than one team member. Once the work begins, teams cycle through a process of planning, executing, and evaluating which might just change the final deliverable to fit the customer’s needs better. Main key is continuous collaboration, both among team members and with project stakeholders, to make fully-informed decisions.
Agile Project Management Roles
It takes a cooperative team of people to successfully complete a project.
Hierarchy of agile project management is based on competence, not authority. The performance is not based on pleasing the boss but instead, adding value to the customer. The organization uses a dynamic horizontal and vertical communication approach that is very interactive. Ideas can come from any person in any position, including the customer.
It is a network that is continually growing, learning, and adapting to the constant flux; it adds new value to the customers by exploiting the opportunities presented. If done right, the continued delivery of more value to the customers through less work results in more generous returns to the organization.
Have you ever wondered why GDPR Compliance is important for your business?
The agile project management clearly distinguishes the differences between exploitation and exploration. In an agile organization, all members are constantly exploring ways to add more value to the customer.
During the early years of agile project management, critics believed the small teams could never handle large, complex issues
Teams for agile project management are made up of many people and include the following 5 roles:
- Product owner
The person responsible for bridging the gap between the customer, business stakeholders, and the development team. In this case the product owner is an expert on the product and the customer’s needs and priorities.Above all, the product owner should be empowered to be decisive, making tough business decisions every day.
- Development team members
The people who create the product. In software development, programmers, testers, designers, writers, data engineers, and anyone else with a hands-on role in product development are development team members. With other types of product, the development team members may have different skills. Most importantly, development team members should be versatile, able to contribute in multiple ways to the project’s goals.
- Scrum master
The person responsible for supporting the development team, clearing organizational roadblocks, and keeping the agile project management process consistent. Scrum masters are servant leaders, and are most effective when they have organizational clout, which is the ability to influence change in the organization without formal authority.
Anyone with an interest in the project. Stakeholders are not ultimately responsible for the product, but they provide input and are affected by the project’s outcome. The group of stakeholders is diverse and can include people from different departments, or even different companies. For agile projects to succeed, stakeholders must be involved, providing regular feedback and support to the development team and product owner.
- Agile mentor
Someone who has experience implementing agile projects and can share that experience with a project team. The agile project management mentor can provide valuable feedback and advice to new project teams and to project teams that want to perform at a higher level. Although agile project management mentors are not responsible for executing product development, they should be experienced in applying agile principles in reality and be knowledgeable about many agile project management approaches and techniques.
What is a product backlog?
A product backlog is a prioritized list of work for the development team that is derived from the roadmap and its requirements. The most important items are shown at the top of the product backlog so the team knows what to deliver first. The development team doesn’t work through the backlog at the product owner’s pace and the product owner isn’t pushing work to the development team.
The backlog serves as the connection between the product owner and the development team. The product owner is free to re-prioritize work in the backlog at any time due to customer feedback, refining estimates, and new requirements. Once work is in progress, though, keep changes to a minimum as they disrupt the development team and affect focus, flow, and morale.
What are sprints?
A sprint is a short, timeboxed period when a scrum team works to complete a set amount of work. At the very heart of scrum and agile project management methodologies, and getting sprints right will help your agile project management team ship better software.
Many associate scrum sprints with agile software development, so much so that scrum and agile are often thought to be the same thing. But,they’re not. Agile project management is a set of principles and scrum is a framework.
The many similarities between agile project management values and scrum processes lead to a fair association. Sprints help teams follow the agile project management principle of “delivering working software frequently,” as well as live the agile project management value of “responding to change over following a plan.” The scrum values of transparency, inspection, and adaptation are complementary to agile project management and central to the concept of sprints.
Sprint planning is an event in scrum that kicks off the sprint. The purpose of sprint planning is to define what can be delivered in the sprint and how that work will be achieved. Sprint planning is done in collaboration with the whole scrum team.
The product owner describes the objective of the sprint and what backlog items contribute to that goal. The scrum team decides what can be done in the coming sprint and what they will do during the sprint to make that happen.
The development team plans the work necessary to deliver the sprint goal. Ultimately, the resulting sprint plan is a negotiation between the development team and product owner based on value and effort.
Sprint planning can’t be done without the product owner or the development team. The product owner defines the goal based on the value that they seek. The development team needs to understand how they can or cannot deliver that goal. If either is missing from this event it makes planning the sprint almost impossible.
A great starting point for the sprint plan is the product backlog as it provides a list of ‘stuff’ that could potentially be part of the current sprint. The team should also look at the existing work done in the increment and have a view to capacity.
The most important outcome for the sprint planning meeting is that the team can describe the goal of the sprint and how they will start working toward that goal. This is made visible in the sprint backlog.
What is a stand-up?
For software teams, the stand-up is like the team huddle. It’s even commonly known as the daily scrum, and reinforces “we” to keep everyone aware of the team’s landscape and progress.
Said another way, a stand-up is a daily meeting that involves the core team: product owners, developers, and the scrum master. Questions that are often asked in meeting :
- First question is, what did I work on yesterday?
- Second question is, what am I working on today?
- Third question is, what issues are blocking me?
These questions highlight progress and help flag team blockers. Also, it strengthens the team when everyone shares the progress they’re contributing to the team.
What is retrospective?
In order to best live the agile project management values, teams should meet regularly to check in and make adjustments. Most commonly, development teams apply this principle by hosting regular retrospective meetings, and while that meeting is the focus of much of this page, it’s not the only way to retro. More recently, the concept of retrospectives has made its way out of development teams and into all facets of business and teamwork.
Many of the core concepts in the agile project management are reinforced through retrospective meetings.
Implementing formal and thorough automated testing is a vital part of the agile process. The tests find and eliminate defects at their source to ensure that a working software package is delivered to the customer. Developers can create the test code under a safety net using a variety of available frameworks while simultaneously developing the software code. This method protects other features while making changes to the software. It is also a faster, more efficient way to find bugs in the program.
A key principle for agile project management methodologies is to have running software at all times. In practice, the only way to do this is by ensuring that all software development is regularly and automatically compiled, built, deployed and tested. This is usually done many times a day and at least once every time a developer “checks in” code as a main part of the development branch.
The principles of agile project management
- Satisfy the customer through early and continuous delivery of valuable software.
- Changing environments are embraced at any stage of the process to provide the customer with a competitive advantage.
- Deliver working software frequently.
- Stakeholders and developers collaborate closely on a daily basis.
- All stakeholders and team members remain motivated for optimal project outcomes.
- Face-to-face conversation whenever possible.
- Working software is the main measure of progress.
- Maintain a constant pace indefinitely.
- Give constant attention to technical excellence and good design.
- Simplicity is an essential element.
- Self-organizing teams are most likely to develop the best architectures and designs and to meet requirements.
- Regular intervals are used by teams to improve efficiency through fine-tuning behaviors.
Agile project management methodology adoption
It’s designed originally for the software industry, but many industries now use agile project management when developing products and services because of the highly collaborative and more efficient nature of the methodology. The following table shows adoption rates of the agile project management methodology in a variety of leading industries.
Examples of Agile project management
Books have been written on Agile project management, and it could be viewed from 100 different angles and through the scope of dozens of different industries. So, here are few examples of Agile project management in the real world.
A baseball manager has to be an Agile project manager to succeed.
Every season is a major project made up of 162 games plus playoffs, and each game is an iteration of that project. Imagine if a baseball manager put the same players in the same positions, batting in the same order for all 162 games despite injuries, poor performance, or bad matchups. That manager would probably not be very successful. In fact, Agile is all over baseball. Infield Scrum meetings at the pitcher’s mound, phone calls to the bullpen (not emails), a concrete result (win or loss) at the end of every iteration (game).
2. The Apple Genius Bar
The Apple Genius Bar is a great, real-world example of Agile project management in action. When you come in with your damaged iPhone or iPad, you don’t have to fill out a bunch of forms or wait in a series of lines. What makes the Genius Bar an agile project management process is the focus on communication. The associate you deal with asks you questions and takes notes. In other words: “individuals and interactions over processes and tools.
Some of the big names
Philips is another firm that has adopted agile project management principles. After numerous changes to management structure, the firm introduced several agile project management coaches that went to deploy Scrum principles such as Scrum boards and breaking down teams into smaller ones.
As a result of changes like this, teams could react to situations quicker, bureaucracy was removed, and it was ultimately easier for these smaller teams to take responsibility for their respective products.
Started shifting to Agile practices in Spain. Due to the success of deploying Agile it decided to bring the methodology to other countries such as the USA.
One project where agile principles were deployed was an application that consumers could use, called BVA Wallet. The application lets consumers manage their payment cards. The company’s head of business development went on to say that: “With agile methodology, we could develop and very rapidly have new releases” And that due to Agile BBVA has “come out with a lot of other functionalities like the ability to block and unblock cards, the ability to acquire a new card or cancel a card and the ability to convert a card payment into installments.”
BBVA is realizing some of the great benefits of Agile Developments that can bring a project such as predictable and rapid software delivery, thereby reducing the time to market their new products and services.
Simple answer to the question why all of these firms use Agile is to enhance their business processes!
The benefits of agile
Agile project management was originally developed for the software industry to streamline and improve the development process in an effort to rapidly identify and adjust for issues and defects.
It provides a way for developers and teams to deliver a better product, in a faster manner, through sprints. Agile project management can help ensure company-wide process and methodological alignment.
Some of the benefits are:
- More transparency
- More flexibility
- More productivity
- Higher quality deliverables
- Decreased risk of missed objectives
- Increased stakeholder engagement and satisfaction
Disadvantages of Agile
Scrum is not for all development teams or software development projects. There are disadvantages to implementing Scrum projects:
- There is a danger of scope creep if stakeholders keep adding functionality to the backlog. This could be encouraged by the fixed deadline.
- Losing any team members can hurt the progress of the project.
- Scrum teams do not work well when the Scrum Master micromanages their work.
- Scrum works best with small teams of experienced software developers. They need to be able to work quickly.
As with any other methodology, agile project management is not well-suited for every project, and sufficient due diligence is always recommended to identify the best methodology for each unique situation.
Agile project management may not work as intended if a customer is not clear on goals, the project manager or team is inexperienced, or if they do not function well under significant pressure. Throughout the development process, agile project management favors the developers, project teams and customer goals, but not necessarily the end user’s experience.
Due to its less formal and more flexible processes, agile project management may not always be easily absorbed within larger, more traditional organizations where there are significant amounts of rigidity or flexibility within processes, policies, or teams. It may also face problems being used with customers who similarly have rigid processes or operating methods.
Let’s get to know each other, visit my about me page.
You can also read this recommended topic about GDPR.