Agile way of working

From apppm
(Difference between revisions)
Jump to: navigation, search
(Organisational practises)
(The making of the Agile Manifesto)
 
(38 intermediate revisions by one user not shown)
Line 1: Line 1:
 +
== Abstract ==
 +
This article provides a brief introduction to the history of agile and how the agile manifesto came to be. Furthermore, it dives into the agile WoW, explaining its methods and applications. Within this chapter, the focus is on the organisational practices and the implementation of agile in project management. The section on agile project management provides some key methods and principles that project managers can apply in order to make their projects, programmes or portfolios more agile. As part of the agile WoW different methodologies are mentioned as well. Methodologies such as scrum and kanban are explained in more detail with examples provided. The last chapter revolves around the comparison between the agile and waterfall methods and their limits and benefits. Annotated bibliography is provided at the end.
  
 
== Agile and its origins ==
 
== Agile and its origins ==
Line 6: Line 8:
 
However, “agility” as a word representing the Agile Methodology can be better defined through the words of Dr. David F. Rico in Broad Introduction: Agile Methodologies <ref name="Rico">Rico, D. F. (2022). Broad Introduction: Agile Methodologies. Retrieved from Dave´s Lean & Agile Webpage: http://davidfrico.com/rico18l.pdf</ref>:
 
However, “agility” as a word representing the Agile Methodology can be better defined through the words of Dr. David F. Rico in Broad Introduction: Agile Methodologies <ref name="Rico">Rico, D. F. (2022). Broad Introduction: Agile Methodologies. Retrieved from Dave´s Lean & Agile Webpage: http://davidfrico.com/rico18l.pdf</ref>:
  
* The ability to create and respond to change in order to profit in a turbulent global business environment
+
* "The ability to create and respond to change in order to profit in a turbulent global business environment"
* The ability to quickly reprioritize the use of resources when requirements, technology, and knowledge shift
+
* "The ability to quickly reprioritize the use of resources when requirements, technology, and knowledge shift"
* A very fast response to sudden market changes and emerging threats by intensive customer interaction
+
* "A very fast response to sudden market changes and emerging threats by intensive customer interaction"
* Use of evolutionary, incremental, and iterative delivery to converge on an optimal customer solution
+
* "Use of evolutionary, incremental, and iterative delivery to converge on an optimal customer solution"
* Maximizing BUSINESS VALUE with right-sized, just enough, and just-in-time processes and documentation
+
* "Maximizing BUSINESS VALUE with right-sized, just enough, and just-in-time processes and documentation"
  
 
The origins of agile methods date back to the 90s when primarily in the software development industry and other industries such as aerospace, defence and manufacturing, the traditional methods were simply not suitable anymore when it came to timely product delivery (Agilemania, 2021).  Companies and the developers within quickly started developing their own methodologies and mixing old with new. The new methods had a big focus on close collaboration, business value and self-organised teams. In this time methods such as Scrum, Extreme Programming, Feature Driven Development (FDD and Dynamic System Development Method (DSDM) were established and implemented AgileAlliance. <ref name="AA">(2022). Agile 101. Retrieved from Agile Alliance: https://www.agilealliance.org/agile101/</ref>.  
 
The origins of agile methods date back to the 90s when primarily in the software development industry and other industries such as aerospace, defence and manufacturing, the traditional methods were simply not suitable anymore when it came to timely product delivery (Agilemania, 2021).  Companies and the developers within quickly started developing their own methodologies and mixing old with new. The new methods had a big focus on close collaboration, business value and self-organised teams. In this time methods such as Scrum, Extreme Programming, Feature Driven Development (FDD and Dynamic System Development Method (DSDM) were established and implemented AgileAlliance. <ref name="AA">(2022). Agile 101. Retrieved from Agile Alliance: https://www.agilealliance.org/agile101/</ref>.  
Line 23: Line 25:
 
The second meeting with the same group took place in Utah in 2001, where the birth of the Agile Manifesto took place. The Agile Manifesto consists of the four mentioned values <ref name="manifesto">Highsmith, J. (2001). Agile Manifesto. Retrieved from Agile Manifesto: https://agilemanifesto.org/</ref>:
 
The second meeting with the same group took place in Utah in 2001, where the birth of the Agile Manifesto took place. The Agile Manifesto consists of the four mentioned values <ref name="manifesto">Highsmith, J. (2001). Agile Manifesto. Retrieved from Agile Manifesto: https://agilemanifesto.org/</ref>:
  
* Individuals and interactions over processes and tools,
+
* "Individuals and interactions over processes and tools",
* Working software over comprehensive documentation,
+
* "Working software over comprehensive documentation",
* Customer collaboration over contract negotiation,
+
* "Customer collaboration over contract negotiation",
* Responding to change over following a plan,
+
* "Responding to change over following a plan",
 
+
  
 
and of 12 main principles <ref name="manifesto" />:
 
and of 12 main principles <ref name="manifesto" />:
  
# Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
+
# "Our highest priority is to satisfy the customer through early and continuous delivery of valuable software."
# Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
+
# "Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage."
# Deliver working software frequently, from a couple of weeks to a couple of months, with a preference for the shorter timescale.
+
# "Deliver working software frequently, from a couple of weeks to a couple of months, with a preference for the shorter timescale."
# Businesspeople and developers must work together daily throughout the project.
+
# "Businesspeople and developers must work together daily throughout the project."
# Build projects around motivated individuals. Give them the environment and support they need and trust them to get the job done.
+
# "Build projects around motivated individuals. Give them the environment and support they need and trust them to get the job done."
# The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.  
+
# "The most efficient and effective method of conveying information to and within a development team is face-to-face conversation."
# Working software is the primary measure of progress.
+
# "Working software is the primary measure of progress."
# Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
+
# "Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely."
# Continuous attention to technical excellence and good design enhances agility.
+
# "Continuous attention to technical excellence and good design enhances agility."
# Simplicity--the art of maximizing the amount of work not done--is essential.
+
# "Simplicity--the art of maximizing the amount of work not done--is essential."
# The best architectures, requirements, and designs emerge from self-organizing teams.
+
# "The best architectures, requirements, and designs emerge from self-organizing teams."
# At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.
+
# "At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly."
  
 
Since 2001 and the forming of the Agile Alliance by the software developers, agile has spread beyond the software industry and is nowadays a popular choice of management, whether that be organisational, team, project, program or portfolio management.
 
Since 2001 and the forming of the Agile Alliance by the software developers, agile has spread beyond the software industry and is nowadays a popular choice of management, whether that be organisational, team, project, program or portfolio management.
 +
 +
'''Example:'''
 +
A great example of agile used in other industries is the Lonely Planet. They are the largest publisher in the world for travel guide books. In 2012 the legal team decided to implement an agile approach, meaning that they began using whiteboards, task cards, stand up meetings and running the work in sprints <ref name="example">Scott J. (2018). GANTTPRO. Retrieved from GANTTPRO: https://blog.ganttpro.com/en/agile-in-non-software-industries-with-examples//</ref>.
  
 
== Agile WOW (way of working) ==
 
== Agile WOW (way of working) ==
 
=== Introduction ===
 
  
 
When transitioning into an agile business it is important to consider volatility and uncertainty levels. Therefore, based on that the agile approaches within a business will differ. The key part of the transition is to be open towards the change  <ref name="GCob">Charles G. Cobb, P. (2011). Making Sense of Agile Project Management: Balancing Control and Agility. JOHN WILEY & SONS, INC.</ref>. With change such as the incorporation of agile methodologies also comes the transition of organisational and working methods, or so-called Agile WOW <ref name="ganesan">Ganesan, A. (2022). Agile Ways of Working (WoW) - Know your WoW now! Retrieved from Jile: https://www.jile.io/blogs/agile-ways-of-working</ref>.
 
When transitioning into an agile business it is important to consider volatility and uncertainty levels. Therefore, based on that the agile approaches within a business will differ. The key part of the transition is to be open towards the change  <ref name="GCob">Charles G. Cobb, P. (2011). Making Sense of Agile Project Management: Balancing Control and Agility. JOHN WILEY & SONS, INC.</ref>. With change such as the incorporation of agile methodologies also comes the transition of organisational and working methods, or so-called Agile WOW <ref name="ganesan">Ganesan, A. (2022). Agile Ways of Working (WoW) - Know your WoW now! Retrieved from Jile: https://www.jile.io/blogs/agile-ways-of-working</ref>.
Line 56: Line 58:
 
Some of the key organisational practises that should be considered in an agile environment are <ref name="GCob" />:
 
Some of the key organisational practises that should be considered in an agile environment are <ref name="GCob" />:
  
* Teamwork &#x2192; The team works as an integrated individual entity, where collective ownership of the project is taken.
+
* '''Teamwork''' &#x2192; The team works as an integrated individual entity, where collective ownership of the project is taken.
* Respect for people, self-organisation, and empowerment &amp; The team works together to establish the course of the project and the division of workload. The team works as one when carrying the responsibility and when facing failure.
+
* '''Respect for people, self-organisation, and empowerment''' &#x2192; The team works together to establish the course of the project and the division of workload. The team works as one when carrying the responsibility and when facing failure.
* Transparency and trust &amp; Risks and issues are commonly shared with the business user, and he/she/they are involved in the process of recognising and resolving them.
+
* '''Transparency and trust''' &#x2192; Risks and issues are commonly shared with the business user, and he/she/they are involved in the process of recognising and resolving them.
  
 
Incorporating these methods also means that the right people with the right mindset have to be selected. People with the following characteristics such as collaborative, committed, focused, open, courageous, and honest are more prone to adapt well to the agile WOW <ref name="cole">Rob Cole, E. S. (2015). Agile project management: A practical guide to using Agile, Scrum and Kanban. Pearson Education.</ref>.
 
Incorporating these methods also means that the right people with the right mindset have to be selected. People with the following characteristics such as collaborative, committed, focused, open, courageous, and honest are more prone to adapt well to the agile WOW <ref name="cole">Rob Cole, E. S. (2015). Agile project management: A practical guide to using Agile, Scrum and Kanban. Pearson Education.</ref>.
  
 
+
'''Example:'''
rarr, rightarrow, RightArrow, srarr, ShortRightArrow
+
A great example of good agile organizational practices is that of Dee Dee Trotter. An athlete that won two Olympic gold medals in 2004 and 2008. In the 2012 race, she had slim chances for another gold medal due to a knee injury. However, by being a member of the team USA, she felt responsible to consider the whole team and not just herself. With trust and transparency in mind, she brought the issue forth to the team, and together they made a decision that she will withdraw from the race and a replacement runner will substitute her. The team ended up winning another gold medal <ref name="dee">Wilson F. (2022). DZone Retrieved from Jile:https://dzone.com/articles/4-awesome-teamwork-examples-for-agile-teams</ref>.
  
 
=== Agile project management ===
 
=== Agile project management ===
  
In traditional project management, the Project Manager plays a key role when making decisions and delegating the tasks. However, in agile project management, the roles are not strictly defined, and the role and the tasks of the project manager are not solely performed by one individual. Some of these tasks that would normally be the responsibility of the project manager, but are the responsibility of the team are <ref name="GCob" />:
+
In traditional project management, the Project Manager plays a key role when making decisions and delegating the tasks. However, in agile project management, the roles are not strictly defined, and the role and the tasks of the project manager are not solely performed by one individual. A lot of tasks that would normally be the responsibility of the project manager, are the responsibility of the team <ref name="GCob" />.
 +
 
 +
'''Team responsibilities:'''
  
 
* Most of the time the decisions are collectively made by the team.
 
* Most of the time the decisions are collectively made by the team.
Line 75: Line 79:
 
* If the team is using Scrum as their framework, the project manager will normally take on the role of the Scrum Master.
 
* If the team is using Scrum as their framework, the project manager will normally take on the role of the Scrum Master.
  
To effectively incorporate an agile project management approach a correct mindset must be developed first. A system thinking approach should be undertaken when facing an agile project. This means that the focus should be on the big picture and not on smaller technicalities. Secondly, the project should enable the possibility to increase customer value. And lastly, through the course of the project, the methodologies should be adapted to better fit the project itself and the problem. Meaning that the project should not be force-fitted into a specific methodology <ref name="GCob" />.
+
Three things should always be considered when wanting to effectively incorporate an agile project management approach <ref name="GCob" />:
 +
# '''Correct mindset''' &#x2192; A system thinking approach should be undertaken when facing an agile project. This means that the focus should be on the big picture and not on smaller technicalities.
 +
# '''Customer value''' &#x2192; The project should enable the possibility to increase customer value
 +
# '''Adaptation''' &#x2192; Through the course of the project, the methodologies should be adapted to better fit the project itself and the problem. Meaning that the project should not be force-fitted into a specific methodology
  
 
Overall, it is very hard to define how an agile project should be managed and what exactly will the project manager's role be, as it differs based on the project, framework, methods, etc. However, there are principles that can easily be incorporated, specifically in a hybrid agile approach to strengthen and improve project agility.
 
Overall, it is very hard to define how an agile project should be managed and what exactly will the project manager's role be, as it differs based on the project, framework, methods, etc. However, there are principles that can easily be incorporated, specifically in a hybrid agile approach to strengthen and improve project agility.
  
The first principle is Rolling Wave Planning. Here the project manager can take the initiative to execute a brief upfront planning to avoid delays in later stages where the upfront planning is normally done collectively by the team. The project manager should use a risk-and-value based approach to acquire the appropriate level of upfront planning needed and its conclusions should be presented to and approved by the sponsors and stakeholders. The second principle is Customer Collaboration, where the methodology should be adapted to maximize the inclusion of the customer in the project. Collective Ownership is another principle, where it is important that the project manager takes on a role of a facilitator, instead of an authoritative figure. Ownership should be collective within the team. Therefore, the manager should encourage strong teamwork and individual empowerment. Validation over verification should also play a key role in an agile environment, meaning that the final product fits the customer's needs, rather than meeting all the documentation requirements. When it comes to failure the agile philosophy is to “fail early and fail often”, meaning that with each iteration adjustment and improvement should be made in order to reach the final goal. Daily stand-up meetings which are quick and focused are highly recommended. They are called stand-up meetings because it is recommended to do them while standing up to ensure a proactive and timely meeting. The last principle is Timeboxing, where meetings or set events are executed in a fixed time, and if more time is required a new meeting or event is set. This is a great method to use to increase productivity in a set time and to avoid unnecessary costs due to prolonging the meeting or event in question <ref name="GCob" />.
+
'''Principles to help the Project Manager (PM) establish their role in an agile project <ref name="GCob" />:'''
 +
 
 +
* Rolling Wave Planning  
 +
: Here the project manager can take the initiative to execute a brief upfront planning to avoid delays in later stages where the upfront planning is normally done collectively by the team. The project manager should use a risk-and-value based approach to acquire the appropriate level of upfront planning needed and its conclusions should be presented to and approved by the sponsors and stakeholders.
 +
* Customer Collaboration
 +
: Here the PM should take the initiative to adapt the methodology to maximize the inclusion of the customer in the project.
 +
* Collective Ownership
 +
: It is important that the PM takes on a role of a facilitator, instead of an authoritative figure. Ownership should be collective within the team. Therefore, the PM should encourage strong teamwork and individual empowerment.
 +
* Validation over verification
 +
: This means that the final product should fit the customer's needs, rather than meeting all the documentation requirements. The PM should take care that this is achieved and help the team by removing bureaucratic barriers.
 +
* Fail early and fail often
 +
: With each iteration adjustments and improvements should be made in order to reach the final goal. The PM should consult the team and work on successfully implementing the necessary changes.
 +
* Daily stand-up meetings
 +
: The PM should lead and schedule the daily stand-up meeting, which should be quick and highly focused. They are called stand-up meetings because it is recommended to do them while standing up to ensure a proactive and timely meeting.
 +
* Timeboxing
 +
: Incorporating timeboxing means that meetings or sets of events are executed in a fixed time, and if more time is required a new meeting or event is scheduled. This is a great method to use to increase productivity in a set time and to avoid unnecessary costs due to prolonging the meeting or the event in question.
  
 
All these principles can easily be incorporated into any project, whether that might be agile or traditional. However, the goal is that they provide a more agile oriented management with a customer-focused product.
 
All these principles can easily be incorporated into any project, whether that might be agile or traditional. However, the goal is that they provide a more agile oriented management with a customer-focused product.
Line 85: Line 107:
 
=== Frameworks ===
 
=== Frameworks ===
  
In agile WOW there are different frameworks that can be used in order to make product development and teamwork more agile. Meaning that the team is able to work flexibly with optimized performance. Based on the given project, program or portfolio different frameworks or a combination of two might be chosen. The frameworks act as a guideline that can be adapted from project to project.
+
In agile WOW there are different frameworks that can be used in order to make product development and teamwork more agile. Meaning that the team is able to work flexibly with optimized performance. Based on the given project, program or portfolio different frameworks or a combination of two might be chosen. The frameworks act as a guideline that can be adapted from project to project. Following are the descriptions of the two most popular agile frameworks: Scrum and Kanban.
  
 
==== Scrum ====
 
==== Scrum ====
Line 91: Line 113:
 
Scrum is the most popular model in agile management, and it is heavily oriented around iteration management. The scrum model consists of predefined events and roles. The predefined events are time-boxed. This means that a set time is used on an event and if more time is required a new event will be scheduled instead of extending the time on the current one. The events are sprint, sprint planning, daily scrum, sprint review and sprint retrospective. The roles are the scrum master, the product owner, and the team <ref name="scrum">Scrum.org. (2022). What is Scrum. Retrieved from Scrum.org: https://www.scrum.org/resources/what-is-scrum</ref>.
 
Scrum is the most popular model in agile management, and it is heavily oriented around iteration management. The scrum model consists of predefined events and roles. The predefined events are time-boxed. This means that a set time is used on an event and if more time is required a new event will be scheduled instead of extending the time on the current one. The events are sprint, sprint planning, daily scrum, sprint review and sprint retrospective. The roles are the scrum master, the product owner, and the team <ref name="scrum">Scrum.org. (2022). What is Scrum. Retrieved from Scrum.org: https://www.scrum.org/resources/what-is-scrum</ref>.
  
The goal of the project is achieved through multiple sprints, each lasting approximately a month. One sprint consists of the above-mentioned events. The sprint is initiated through sprint planning, where the product backlog is filled with tasks arranged based on the level of importance. Throughout the whole duration of the sprint daily scrum is executed. The daily scrum is a meeting within the team that is never longer than 15min. This reduces the complexity and ensures that everyone is on board and fully informed about the state and changes of the product. If relevant the scrum master and the product owner also participate in the meeting. At the end of the sprint, there is a sprint review, where the team and the stakeholder gather for an evaluation of the sprint and to note down possible changes and adaptations to the product. The last stage of the sprint is the sprint retrospective, where the team analyses the sprint in terms of people, tools, processes, and interactions (Scrum.org, 2022).
+
The goal of the project is achieved through multiple sprints, each lasting approximately a month. One sprint consists of the above-mentioned events. The sprint is initiated through sprint planning, where the product backlog is filled with tasks arranged based on the level of importance. Throughout the whole duration of the sprint daily scrum is executed. The daily scrum is a meeting within the team that is never longer than 15min. This reduces the complexity and ensures that everyone is on board and fully informed about the state and changes of the product. If relevant the scrum master and the product owner also participate in the meeting. At the end of the sprint, there is a sprint review, where the team and the stakeholder gather for an evaluation of the sprint and to note down possible changes and adaptations to the product. The last stage of the sprint is the sprint retrospective, where the team analyses the sprint in terms of people, tools, processes, and interactions <ref name="scrum" />.
  
In terms of the roles, the Scrum Master is in charge of maintaining and having an overview of the processes. He/She acts as a facilitator towards the team. Meaning that he/she makes sure to remove the teams’ obstacles, external interferences during the project work and interferes when conflicts arise. The Scrum Master is also the bridge between the team and stakeholders in terms of communication and has an active role in supporting the Product Owner <ref name="GCob" />.
+
In terms of the roles, '''the Scrum Master''' is in charge of maintaining and having an overview of the processes. He/She acts as a facilitator towards the team. Meaning that he/she makes sure to remove the teams’ obstacles, external interferences during the project work and interferes when conflicts arise. The Scrum Master is also the bridge between the team and stakeholders in terms of communication and has an active role in supporting the Product Owner <ref name="GCob" />.
  
The Product Owner acts as a representative for the stakeholders and the company. The Product owner is, therefore, in charge of the product backlog and its profitability. This means that he/she sets the product requirements, which are normally based on a customer-centric approach, and sorts them based on the importance. After each iteration, the Product Owner must readjust and re-evaluate the set requirements/tasks. The Product Owner, therefore, plays a key role in the sprint planning stage <ref name="GCob" />.
+
'''The Product Owner''' acts as a representative for the stakeholders and the company. The Product owner is, therefore, in charge of the product backlog and its profitability. This means that he/she sets the product requirements, which are normally based on a customer-centric approach, and sorts them based on the importance. After each iteration, the Product Owner must readjust and re-evaluate the set requirements/tasks. The Product Owner, therefore, plays a key role in the sprint planning stage <ref name="GCob" />.
  
The Team normally consists of approximately seven people, and they are the main responsible when it comes to tasks such as design, analysis, testing, etc. Their role is to select the sprint goals from the backlog and to define the goals and wanted results for the sprint. They are a self-organized team and have the responsibility of keeping track that the goal is being reached within the set time <ref name="GCob" />.
+
'''The Team''' normally consists of approximately seven people, and they are the main responsible when it comes to tasks such as design, analysis, testing, etc. Their role is to select the sprint goals from the backlog and to define the goals and wanted results for the sprint. They are a self-organized team and have the responsibility of keeping track that the goal is being reached within the set time <ref name="GCob" />.
  
 
Scrum can easily be incorporated into projects of all shapes and sizes as long as they are agile. Projects that are based on other methods will have a difficult time incorporating Scrum and executing it efficiently. It is also not suitable to use when the work is highly individual.
 
Scrum can easily be incorporated into projects of all shapes and sizes as long as they are agile. Projects that are based on other methods will have a difficult time incorporating Scrum and executing it efficiently. It is also not suitable to use when the work is highly individual.
 +
 +
'''Example:'''
 +
An example of how Scrum works. Anna, the product owner, meets with the customer to discuss their needs. The needs represent the backlog. Afterwards, Anna chooses the most important tasks, which her team will work on in the first sprint. The team meets daily to discuss the day's target and roadblocks, which the scrum master works on removing. Once the sprint is concluded Anna delivers the work, checks the backlog and selects new tasks for the next sprint. The sprints continue until the project is concluded.
  
 
==== Kanban ====
 
==== Kanban ====
Line 115: Line 140:
  
 
A very important part of the Kanban framework is also the WiP limit (Work in Progress limit). This limit is set per employee and ensures that not too many tasks get stuck in the “in-process” stage not being complete. Most often the limit per employee is 3 tasks. Another aspect of this framework is also getting tasks from “in process” into “done”, where defining the criteria for complete tasks is of key importance <ref name="cole" />.
 
A very important part of the Kanban framework is also the WiP limit (Work in Progress limit). This limit is set per employee and ensures that not too many tasks get stuck in the “in-process” stage not being complete. Most often the limit per employee is 3 tasks. Another aspect of this framework is also getting tasks from “in process” into “done”, where defining the criteria for complete tasks is of key importance <ref name="cole" />.
 +
 +
Due to its easy implementation ability, Kanban can be used in almost any industry and within their projects. However, most often kanban can be seen in the software development industry and within industries where agile and lean principles are already incorporated.
  
 
== Agile VS Waterfall ==
 
== Agile VS Waterfall ==
  
 +
=== What is Waterfall ===
 +
Before we dive into agile versus waterfall methodology, it is important to understand what waterfall methodology actually is.
  
=== Agile ===
+
The waterfall process consists of sequential phases that are executed in a set order. Once the first phase is finished the project will naturally progress into the second one and so forth. The typical waterfall method will consist of the following sequential phases:
 +
* Requirements
 +
* Design
 +
* Develop
 +
* Integrate & Test
 +
* Implementation / Development
  
 +
When using the waterfall approach certain assumptions can be made regarding the project process:
 +
* The users will sometimes fully define or even over define the requirements for the product without seeing it until it is a finished product.
 +
* These requirements will stay unchanged throughout the project.
 +
* The requirement will have detailed documentation in order to make them more understandable to developers.
 +
This process is often seen as a way to have a higher overview and control over costs and schedules. However, that is seldom reality, especially if the requirements are uncertain.
 +
In that case, the requirement uncertainty could cause low adaptability, which will lower customer satisfaction, or if changes are permitted, this could lead to additional bureaucracy and time delays. <ref name="GCob" />
  
''Benefits:''
+
However, waterfall methods are recommended especially when the project consists of the following attributes <ref name="water1">Try QA. (2022). What is Waterfall model. Retrieved from TryQA: http://tryqa.com/what-is-waterfall-model-advantages-disadvantages-and-when-to-use-it/#Examples_of_Waterfall_Model</ref>:
 +
* Clear and well-defined requirements
 +
* Stable product definition
 +
* High availability of resources
 +
* Short term projects
  
+ Faster development, high productivity and motivation
+
'''Exampel:'''
 +
A great example of the usage of the waterfall method is the construction and manufacturing industry, where strict planning and documentation is of key importance. A project within this industry has little to no space for adaptation and changes, which could lead to severe delays and extreme cost increases. On top of that, the project has a set order in which the project has to be executed. For example, when building a house some materials can be pre-ordered, however, before building the walls the foundation has to be laid first <ref name="water2">Dillon L. (2022). ClearpointStrategy. Retrieved from ClearpointStrategy: https://www.clearpointstrategy.com/waterfall-project-management/#5</ref>.
  
+ High level of flexibility
+
=== Comparisson between Agile & Waterfall ===
  
+ Learning outcomes provided throughout the process
+
{| class="wikitable"
 
+
!colspan="4"|Agile VS Waterfall
+ Customer focused approach
+
|-
 
+
|colspan="2"|Agile
+ Teams manage projects
+
|colspan="2"|Waterfall
 
+
|-
+ Communication is more efficient
+
|Benefits
 
+
|Limits
''Limits:''
+
|Benefits
 
+
|Limits
- Difficult to implement
+
|-
 
+
|Faster development, high productivity and motivation
- Requires a lot of organisational changes, if the company´s work culture is not already agile
+
|Difficult to implement
 
+
|Control and predictability over cost and schedule
- Not suitable for all projects
+
|Strict bureaucratic control that can lead to delays and increased costs
 
+
|-
- High uncertainty and low control in projects
+
|High level of flexibility
 +
|Requires a lot of organisational changes, if the company´s work culture is not already agile
 +
|Lower dependency on skilled resources
 +
|The control factor can heavily affect the response to needed change or adaptation
 +
|-
 +
|Learning outcomes provided throughout the process
 +
|Not suitable for all projects
 +
|Consistent within many businesses’ environments
 +
|Low focus on improvement and learning
 +
|-
 +
|Customer focused approach
 +
|High uncertainty and low control in projects
 +
|Higher efficiency for low uncertainty products
 +
|Limited involvement of the customer
 +
|-
 +
|Teams manage projects
 +
|
 +
|The scope is defined at the beginning
 +
|
 +
|-
 +
|Communication is more efficient
 +
|
 +
|Defined team roles
 +
|
 +
|}
  
 
<ref name="GCob" />
 
<ref name="GCob" />
  
 +
== Anotated bibliography ==
  
=== Waterfall ===
+
Agile Alliance. (2022). Agile 101. Retrieved from Agile Alliance: https://www.agilealliance.org/agile101/
 +
: This website is called Agile Alliance and was created by the founders of the Agile Manifesto, making this source highly reliable. The website provides great insight into agile, its glossary and history. The agile principles and the manifesto can also be found on this website. The website also contains a blog where different topics connected with agile methodologies and management can be explored. This source is very relevant for any individual interested in agile practises and their origins.
  
''Benefits:''
+
Charles G. Cobb, P. (2011). Making Sense of Agile Project Management: Balancing Control and Agility. JOHN WILEY & SONS, INC.
 +
: This book is a great starter kit on understanding agile project management, its methods and how to implement it. The book provides clear guidance on how to become more agile and what are the benefits and the limits of it. It also provides case study examples to increase the understanding of the process. The source itself is very reliable as the information comes from published literature. One of the limits of this source is that even tho the book dives deeply into project management methodologies it does not cover frameworks such as scrum or kanban. The book itself is very relevant to the subject and can be of great use when dealing with project, program and portfolio management.
  
+ Control and predictability over cost and schedule
+
Rob Cole, E. S. (2015). Agile project management: A practical guide to using Agile, Scrum and Kanban. Pearson Education.
 
+
: This book offers a great introduction to agile, its principles and how it differs from the waterfall method. Through the book, practical examples are provided and the agile method is often compared to the waterfall from the pros and cons side. The book also offers a deeper understanding of the frameworks, where scrum and kanban are also explained in more detail. The source is very reliable as the information comes from published literature. This source can be very useful for anyone wanting to understand and incorporate agile frameworks.
+ Lower dependency on skilled resources
+
 
+
+ Consistent within many businesses’ environments
+
 
+
+ Higher efficiency for low uncertainty products
+
 
+
+ The scope is defined at the beginning
+
 
+
+ Defined team roles
+
 
+
''Limits:''
+
 
+
- Control and predictability over cost and schedule
+
 
+
- Lower dependency on skilled resources
+
 
+
- Consistent within many businesses’ environments
+
 
+
- Higher efficiency for low uncertainty products
+
 
+
- Limited involvement of the customer
+
 
+
<ref name="GCob" />
+
  
 
== References ==
 
== References ==
  
 
<references />
 
<references />

Latest revision as of 12:17, 20 March 2022

Contents

[edit] Abstract

This article provides a brief introduction to the history of agile and how the agile manifesto came to be. Furthermore, it dives into the agile WoW, explaining its methods and applications. Within this chapter, the focus is on the organisational practices and the implementation of agile in project management. The section on agile project management provides some key methods and principles that project managers can apply in order to make their projects, programmes or portfolios more agile. As part of the agile WoW different methodologies are mentioned as well. Methodologies such as scrum and kanban are explained in more detail with examples provided. The last chapter revolves around the comparison between the agile and waterfall methods and their limits and benefits. Annotated bibliography is provided at the end.

[edit] Agile and its origins

Before we dive into the origins of Agile methodology it is important to first understand the word “agility”. As defined by the Cambridge dictionary [1] the word “agility” represents the ability to move your body quickly and easily.

However, “agility” as a word representing the Agile Methodology can be better defined through the words of Dr. David F. Rico in Broad Introduction: Agile Methodologies [2]:

  • "The ability to create and respond to change in order to profit in a turbulent global business environment"
  • "The ability to quickly reprioritize the use of resources when requirements, technology, and knowledge shift"
  • "A very fast response to sudden market changes and emerging threats by intensive customer interaction"
  • "Use of evolutionary, incremental, and iterative delivery to converge on an optimal customer solution"
  • "Maximizing BUSINESS VALUE with right-sized, just enough, and just-in-time processes and documentation"

The origins of agile methods date back to the 90s when primarily in the software development industry and other industries such as aerospace, defence and manufacturing, the traditional methods were simply not suitable anymore when it came to timely product delivery (Agilemania, 2021). Companies and the developers within quickly started developing their own methodologies and mixing old with new. The new methods had a big focus on close collaboration, business value and self-organised teams. In this time methods such as Scrum, Extreme Programming, Feature Driven Development (FDD and Dynamic System Development Method (DSDM) were established and implemented AgileAlliance. [3].

[edit] The making of the Agile Manifesto

The frustration with traditional methods continued to increase, especially in the software industry. One of the first to speak up on this topic was Jon Kern, who in 2000 organised a meeting in Oregon with 17 other software developers in order to look for new ways of bringing software products faster to the market. The meeting concluded with two outcomes [4]:

  • To solve the product-market fit and unfinished product problem- shortening the delay of benefits to customers.
  • To ensure the usefulness of the new software and improve it- gathering feedback from customers.

The second meeting with the same group took place in Utah in 2001, where the birth of the Agile Manifesto took place. The Agile Manifesto consists of the four mentioned values [5]:

  • "Individuals and interactions over processes and tools",
  • "Working software over comprehensive documentation",
  • "Customer collaboration over contract negotiation",
  • "Responding to change over following a plan",

and of 12 main principles [5]:

  1. "Our highest priority is to satisfy the customer through early and continuous delivery of valuable software."
  2. "Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage."
  3. "Deliver working software frequently, from a couple of weeks to a couple of months, with a preference for the shorter timescale."
  4. "Businesspeople and developers must work together daily throughout the project."
  5. "Build projects around motivated individuals. Give them the environment and support they need and trust them to get the job done."
  6. "The most efficient and effective method of conveying information to and within a development team is face-to-face conversation."
  7. "Working software is the primary measure of progress."
  8. "Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely."
  9. "Continuous attention to technical excellence and good design enhances agility."
  10. "Simplicity--the art of maximizing the amount of work not done--is essential."
  11. "The best architectures, requirements, and designs emerge from self-organizing teams."
  12. "At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly."

Since 2001 and the forming of the Agile Alliance by the software developers, agile has spread beyond the software industry and is nowadays a popular choice of management, whether that be organisational, team, project, program or portfolio management.

Example: A great example of agile used in other industries is the Lonely Planet. They are the largest publisher in the world for travel guide books. In 2012 the legal team decided to implement an agile approach, meaning that they began using whiteboards, task cards, stand up meetings and running the work in sprints [6].

[edit] Agile WOW (way of working)

When transitioning into an agile business it is important to consider volatility and uncertainty levels. Therefore, based on that the agile approaches within a business will differ. The key part of the transition is to be open towards the change [7]. With change such as the incorporation of agile methodologies also comes the transition of organisational and working methods, or so-called Agile WOW [8].

[edit] Organisational practises

Some of the key organisational practises that should be considered in an agile environment are [7]:

  • Teamwork → The team works as an integrated individual entity, where collective ownership of the project is taken.
  • Respect for people, self-organisation, and empowerment → The team works together to establish the course of the project and the division of workload. The team works as one when carrying the responsibility and when facing failure.
  • Transparency and trust → Risks and issues are commonly shared with the business user, and he/she/they are involved in the process of recognising and resolving them.

Incorporating these methods also means that the right people with the right mindset have to be selected. People with the following characteristics such as collaborative, committed, focused, open, courageous, and honest are more prone to adapt well to the agile WOW [9].

Example: A great example of good agile organizational practices is that of Dee Dee Trotter. An athlete that won two Olympic gold medals in 2004 and 2008. In the 2012 race, she had slim chances for another gold medal due to a knee injury. However, by being a member of the team USA, she felt responsible to consider the whole team and not just herself. With trust and transparency in mind, she brought the issue forth to the team, and together they made a decision that she will withdraw from the race and a replacement runner will substitute her. The team ended up winning another gold medal [10].

[edit] Agile project management

In traditional project management, the Project Manager plays a key role when making decisions and delegating the tasks. However, in agile project management, the roles are not strictly defined, and the role and the tasks of the project manager are not solely performed by one individual. A lot of tasks that would normally be the responsibility of the project manager, are the responsibility of the team [7].

Team responsibilities:

  • Most of the time the decisions are collectively made by the team.
  • The team plans the schedule based on a consensus-driven approach.
  • Reporting and tracking progress is normally deformalized and part of the team´s flow.
  • The team self-manages and the key team members are signed on the project full time until the project is concluded in order to lessen the resource planning.
  • If the team is using Scrum as their framework, the project manager will normally take on the role of the Scrum Master.

Three things should always be considered when wanting to effectively incorporate an agile project management approach [7]:

  1. Correct mindset → A system thinking approach should be undertaken when facing an agile project. This means that the focus should be on the big picture and not on smaller technicalities.
  2. Customer value → The project should enable the possibility to increase customer value
  3. Adaptation → Through the course of the project, the methodologies should be adapted to better fit the project itself and the problem. Meaning that the project should not be force-fitted into a specific methodology

Overall, it is very hard to define how an agile project should be managed and what exactly will the project manager's role be, as it differs based on the project, framework, methods, etc. However, there are principles that can easily be incorporated, specifically in a hybrid agile approach to strengthen and improve project agility.

Principles to help the Project Manager (PM) establish their role in an agile project [7]:

  • Rolling Wave Planning
Here the project manager can take the initiative to execute a brief upfront planning to avoid delays in later stages where the upfront planning is normally done collectively by the team. The project manager should use a risk-and-value based approach to acquire the appropriate level of upfront planning needed and its conclusions should be presented to and approved by the sponsors and stakeholders.
  • Customer Collaboration
Here the PM should take the initiative to adapt the methodology to maximize the inclusion of the customer in the project.
  • Collective Ownership
It is important that the PM takes on a role of a facilitator, instead of an authoritative figure. Ownership should be collective within the team. Therefore, the PM should encourage strong teamwork and individual empowerment.
  • Validation over verification
This means that the final product should fit the customer's needs, rather than meeting all the documentation requirements. The PM should take care that this is achieved and help the team by removing bureaucratic barriers.
  • Fail early and fail often
With each iteration adjustments and improvements should be made in order to reach the final goal. The PM should consult the team and work on successfully implementing the necessary changes.
  • Daily stand-up meetings
The PM should lead and schedule the daily stand-up meeting, which should be quick and highly focused. They are called stand-up meetings because it is recommended to do them while standing up to ensure a proactive and timely meeting.
  • Timeboxing
Incorporating timeboxing means that meetings or sets of events are executed in a fixed time, and if more time is required a new meeting or event is scheduled. This is a great method to use to increase productivity in a set time and to avoid unnecessary costs due to prolonging the meeting or the event in question.

All these principles can easily be incorporated into any project, whether that might be agile or traditional. However, the goal is that they provide a more agile oriented management with a customer-focused product.

[edit] Frameworks

In agile WOW there are different frameworks that can be used in order to make product development and teamwork more agile. Meaning that the team is able to work flexibly with optimized performance. Based on the given project, program or portfolio different frameworks or a combination of two might be chosen. The frameworks act as a guideline that can be adapted from project to project. Following are the descriptions of the two most popular agile frameworks: Scrum and Kanban.

[edit] Scrum

Scrum is the most popular model in agile management, and it is heavily oriented around iteration management. The scrum model consists of predefined events and roles. The predefined events are time-boxed. This means that a set time is used on an event and if more time is required a new event will be scheduled instead of extending the time on the current one. The events are sprint, sprint planning, daily scrum, sprint review and sprint retrospective. The roles are the scrum master, the product owner, and the team [11].

The goal of the project is achieved through multiple sprints, each lasting approximately a month. One sprint consists of the above-mentioned events. The sprint is initiated through sprint planning, where the product backlog is filled with tasks arranged based on the level of importance. Throughout the whole duration of the sprint daily scrum is executed. The daily scrum is a meeting within the team that is never longer than 15min. This reduces the complexity and ensures that everyone is on board and fully informed about the state and changes of the product. If relevant the scrum master and the product owner also participate in the meeting. At the end of the sprint, there is a sprint review, where the team and the stakeholder gather for an evaluation of the sprint and to note down possible changes and adaptations to the product. The last stage of the sprint is the sprint retrospective, where the team analyses the sprint in terms of people, tools, processes, and interactions [11].

In terms of the roles, the Scrum Master is in charge of maintaining and having an overview of the processes. He/She acts as a facilitator towards the team. Meaning that he/she makes sure to remove the teams’ obstacles, external interferences during the project work and interferes when conflicts arise. The Scrum Master is also the bridge between the team and stakeholders in terms of communication and has an active role in supporting the Product Owner [7].

The Product Owner acts as a representative for the stakeholders and the company. The Product owner is, therefore, in charge of the product backlog and its profitability. This means that he/she sets the product requirements, which are normally based on a customer-centric approach, and sorts them based on the importance. After each iteration, the Product Owner must readjust and re-evaluate the set requirements/tasks. The Product Owner, therefore, plays a key role in the sprint planning stage [7].

The Team normally consists of approximately seven people, and they are the main responsible when it comes to tasks such as design, analysis, testing, etc. Their role is to select the sprint goals from the backlog and to define the goals and wanted results for the sprint. They are a self-organized team and have the responsibility of keeping track that the goal is being reached within the set time [7].

Scrum can easily be incorporated into projects of all shapes and sizes as long as they are agile. Projects that are based on other methods will have a difficult time incorporating Scrum and executing it efficiently. It is also not suitable to use when the work is highly individual.

Example: An example of how Scrum works. Anna, the product owner, meets with the customer to discuss their needs. The needs represent the backlog. Afterwards, Anna chooses the most important tasks, which her team will work on in the first sprint. The team meets daily to discuss the day's target and roadblocks, which the scrum master works on removing. Once the sprint is concluded Anna delivers the work, checks the backlog and selects new tasks for the next sprint. The sprints continue until the project is concluded.

[edit] Kanban

Kanban when directly translated means signboard or billboard. It is easy to implement and can act as a good, simplified replacement or support to Scrum. It has a big advantage of low cost and the ability to be used by individuals or a team to manage everything from workload to full scale projects. To describe Kanban words of Rob Cole can be used: “Kanban is the concept that all work starts life as to-do and ends up as done” [9].

Kanban consists of three guiding principles [9]:

  • Start with what you do now.
  • Agree to pursue incremental, evolutionary change.
  • Respect the current process, roles, responsibilities, and titles.

The first thing that is needed when beginning the Kanban implementation is a Kanban board. The board consists of three columns: to do, in-process and done. These three columns represent the workload and the flow of it from the beginning to the end. The to-do area acts as a backlog, therefore, it is important that the tasks can contribute to the business value. Kanban backlog is very similar to other agile work stacks (fx. Scrum), however, it does have some of its own specifications. For example, in Kanban it is preferred that the tasks are of a similar size, meaning that larger tasks should be broken down into smaller more manageable pieces. The backlog in Kanban is also reviewed more often, sometimes even on daily basis. And lastly, the tasks are taken for the backlog only when the resources allow to do so [9].

A very important part of the Kanban framework is also the WiP limit (Work in Progress limit). This limit is set per employee and ensures that not too many tasks get stuck in the “in-process” stage not being complete. Most often the limit per employee is 3 tasks. Another aspect of this framework is also getting tasks from “in process” into “done”, where defining the criteria for complete tasks is of key importance [9].

Due to its easy implementation ability, Kanban can be used in almost any industry and within their projects. However, most often kanban can be seen in the software development industry and within industries where agile and lean principles are already incorporated.

[edit] Agile VS Waterfall

[edit] What is Waterfall

Before we dive into agile versus waterfall methodology, it is important to understand what waterfall methodology actually is.

The waterfall process consists of sequential phases that are executed in a set order. Once the first phase is finished the project will naturally progress into the second one and so forth. The typical waterfall method will consist of the following sequential phases:

  • Requirements
  • Design
  • Develop
  • Integrate & Test
  • Implementation / Development

When using the waterfall approach certain assumptions can be made regarding the project process:

  • The users will sometimes fully define or even over define the requirements for the product without seeing it until it is a finished product.
  • These requirements will stay unchanged throughout the project.
  • The requirement will have detailed documentation in order to make them more understandable to developers.

This process is often seen as a way to have a higher overview and control over costs and schedules. However, that is seldom reality, especially if the requirements are uncertain. In that case, the requirement uncertainty could cause low adaptability, which will lower customer satisfaction, or if changes are permitted, this could lead to additional bureaucracy and time delays. [7]

However, waterfall methods are recommended especially when the project consists of the following attributes [12]:

  • Clear and well-defined requirements
  • Stable product definition
  • High availability of resources
  • Short term projects

Exampel: A great example of the usage of the waterfall method is the construction and manufacturing industry, where strict planning and documentation is of key importance. A project within this industry has little to no space for adaptation and changes, which could lead to severe delays and extreme cost increases. On top of that, the project has a set order in which the project has to be executed. For example, when building a house some materials can be pre-ordered, however, before building the walls the foundation has to be laid first [13].

[edit] Comparisson between Agile & Waterfall

Agile VS Waterfall
Agile Waterfall
Benefits Limits Benefits Limits
Faster development, high productivity and motivation Difficult to implement Control and predictability over cost and schedule Strict bureaucratic control that can lead to delays and increased costs
High level of flexibility Requires a lot of organisational changes, if the company´s work culture is not already agile Lower dependency on skilled resources The control factor can heavily affect the response to needed change or adaptation
Learning outcomes provided throughout the process Not suitable for all projects Consistent within many businesses’ environments Low focus on improvement and learning
Customer focused approach High uncertainty and low control in projects Higher efficiency for low uncertainty products Limited involvement of the customer
Teams manage projects The scope is defined at the beginning
Communication is more efficient Defined team roles

[7]

[edit] Anotated bibliography

Agile Alliance. (2022). Agile 101. Retrieved from Agile Alliance: https://www.agilealliance.org/agile101/

This website is called Agile Alliance and was created by the founders of the Agile Manifesto, making this source highly reliable. The website provides great insight into agile, its glossary and history. The agile principles and the manifesto can also be found on this website. The website also contains a blog where different topics connected with agile methodologies and management can be explored. This source is very relevant for any individual interested in agile practises and their origins.

Charles G. Cobb, P. (2011). Making Sense of Agile Project Management: Balancing Control and Agility. JOHN WILEY & SONS, INC.

This book is a great starter kit on understanding agile project management, its methods and how to implement it. The book provides clear guidance on how to become more agile and what are the benefits and the limits of it. It also provides case study examples to increase the understanding of the process. The source itself is very reliable as the information comes from published literature. One of the limits of this source is that even tho the book dives deeply into project management methodologies it does not cover frameworks such as scrum or kanban. The book itself is very relevant to the subject and can be of great use when dealing with project, program and portfolio management.

Rob Cole, E. S. (2015). Agile project management: A practical guide to using Agile, Scrum and Kanban. Pearson Education.

This book offers a great introduction to agile, its principles and how it differs from the waterfall method. Through the book, practical examples are provided and the agile method is often compared to the waterfall from the pros and cons side. The book also offers a deeper understanding of the frameworks, where scrum and kanban are also explained in more detail. The source is very reliable as the information comes from published literature. This source can be very useful for anyone wanting to understand and incorporate agile frameworks.

[edit] References

  1. Dictionary, C. (2022). Agility. Retrieved from Cambridge Dictionary: https://dictionary.cambridge.org/dictionary/english/agility
  2. Rico, D. F. (2022). Broad Introduction: Agile Methodologies. Retrieved from Dave´s Lean & Agile Webpage: http://davidfrico.com/rico18l.pdf
  3. (2022). Agile 101. Retrieved from Agile Alliance: https://www.agilealliance.org/agile101/
  4. Agilemania. (2021, March 30). The Complete History of Agile Software Development. Retrieved from Agilemania: https://agilemania.com/history-of-agile-software-development/
  5. 5.0 5.1 Highsmith, J. (2001). Agile Manifesto. Retrieved from Agile Manifesto: https://agilemanifesto.org/
  6. Scott J. (2018). GANTTPRO. Retrieved from GANTTPRO: https://blog.ganttpro.com/en/agile-in-non-software-industries-with-examples//
  7. 7.0 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 Charles G. Cobb, P. (2011). Making Sense of Agile Project Management: Balancing Control and Agility. JOHN WILEY & SONS, INC.
  8. Ganesan, A. (2022). Agile Ways of Working (WoW) - Know your WoW now! Retrieved from Jile: https://www.jile.io/blogs/agile-ways-of-working
  9. 9.0 9.1 9.2 9.3 9.4 Rob Cole, E. S. (2015). Agile project management: A practical guide to using Agile, Scrum and Kanban. Pearson Education.
  10. Wilson F. (2022). DZone Retrieved from Jile:https://dzone.com/articles/4-awesome-teamwork-examples-for-agile-teams
  11. 11.0 11.1 Scrum.org. (2022). What is Scrum. Retrieved from Scrum.org: https://www.scrum.org/resources/what-is-scrum
  12. Try QA. (2022). What is Waterfall model. Retrieved from TryQA: http://tryqa.com/what-is-waterfall-model-advantages-disadvantages-and-when-to-use-it/#Examples_of_Waterfall_Model
  13. Dillon L. (2022). ClearpointStrategy. Retrieved from ClearpointStrategy: https://www.clearpointstrategy.com/waterfall-project-management/#5
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox