User Tools

Site Tools


what_are_the_changes_in_culture_that_need_to_happen_with_agile

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
what_are_the_changes_in_culture_that_need_to_happen_with_agile [2017/02/27 08:25] hpsamioswhat_are_the_changes_in_culture_that_need_to_happen_with_agile [2023/08/14 11:45] (current) – ↷ Links adapted because of a move operation hans
Line 1: Line 1:
 ====== What Are The Changes in Culture That Need To Happen with Agile? ====== ====== What Are The Changes in Culture That Need To Happen with Agile? ======
  
-Note: this discussion is closely related to [[what_are_the_changes_in_management_approach_that_need_to_happen_with_agile|What Are The Changes in Management Approach That Need To Happen with Agile?]]+<WRAP todo>Work in progress</WRAP>
  
-The "inability to change the organization culture" is listed by most people as the biggest obstacle to implementing a Scrum / Agile approach. Here is a more detailed list of some of the culture changes that need to be made for an organization to become more agile in it approach:+The "inability to change the organization culture" is listed by most people as the biggest obstacle to implementing a Agile approach.
  
 +Some wit once said "if you think agile is simple, just try it". The basics of Agile are pretty simple (a focus on people and collaboration, continuous improvement through feedback, iterative and incremental delivery of value, etc). The problem is that while this is pretty simple, the result in your complex organization, when adopted is far from simplistic. What you see is the effect of "network effects" - small changes that ripple through your entire system and impact "everything" from governance, management, finance, budgeting, HR, architecture, and so on.
 +
 +Someone once asked me "what kinds of changes are we talking about?" The chart below captures some of the changes we see. Of course, "your mileage may vary". You will find that some these are bigger deals in your environment, while others just make sense and you will have no problem implementing thinking in your organization.
 +
 +<searchtable>
 +<sortable>
 ^ Traditional Organization ^ Agile Organization ^ Role ^ Comments ^ ^ Traditional Organization ^ Agile Organization ^ Role ^ Comments ^
 | "Local optimization" | "System optimization" | Management | In general, local optimization leads to sub-optimization of the system. Think about a delivery system set up where developers get bonuses for developing new features, while testing gets bonuses for finding bugs. In terms of delivery of value to the customer this system will result in behavior where developers will cut corners to show fast deliver, while testers will find hundreds of trivial bugs. We need to focus instead on "delivery of value to the customer" and optimize that system. The idea is to "watch the baton, not the runners". The baton is what is important in a relay race - if the runner with the baton crosses the finish line first, they win. Just watching the runners will mean that you will worry, for example, if your runners are not busy "running" while the baton is being moved by another runner. The question should be "what can the runner do to help move the baton". | | "Local optimization" | "System optimization" | Management | In general, local optimization leads to sub-optimization of the system. Think about a delivery system set up where developers get bonuses for developing new features, while testing gets bonuses for finding bugs. In terms of delivery of value to the customer this system will result in behavior where developers will cut corners to show fast deliver, while testers will find hundreds of trivial bugs. We need to focus instead on "delivery of value to the customer" and optimize that system. The idea is to "watch the baton, not the runners". The baton is what is important in a relay race - if the runner with the baton crosses the finish line first, they win. Just watching the runners will mean that you will worry, for example, if your runners are not busy "running" while the baton is being moved by another runner. The question should be "what can the runner do to help move the baton". |
-| Manage looking backward | Manage looking forward | Management | Traditional approach of managing by the numbers, focusing on “make the month” targets which is essentially manage looking backwards at these results. Instead we should bemanaging forwards by improving processes as a means of improving future results |+| Manage looking backward | Manage looking forward | Management | Traditional approach of managing by the numbers, focusing on “make the month” targets, and working to determine what went wrong (and in the worst case finding someone to blame). This is essentially managing by looking backwards. The problem is that while we can learn from past, we cannot change the past. Instead we should be managing forwardsimproving processes as a means of improving future results|
 | Resource efficiency | Flow efficiency | Management | The focus with agile is on delivering business value as a smooth flow. This may mean that the best thing for people to do is not to be busy the whole time. Traditional management focuses on "resource utilization" which often means you reduce the flow going through the system because of context switching and contention for scarce people or resources. | | Resource efficiency | Flow efficiency | Management | The focus with agile is on delivering business value as a smooth flow. This may mean that the best thing for people to do is not to be busy the whole time. Traditional management focuses on "resource utilization" which often means you reduce the flow going through the system because of context switching and contention for scarce people or resources. |
 | Large annual bets based on plan | Multiple small actively managed bets based on reality | Management | Traditional approaches to implementing an organization plan is to do a yearly plan, and then determine if we meet the plan. The agile approach assumes we have plans, but they are smaller, more regularly reviewed so we can more easily adapted based on the changing business situation. See [[why_should_we_start_without_doing_a_complete_analysis|Why Should We Start Without Doing a Complete Analysis?]], [[what_is_the_effect_of_batch_size_on_how_long_something_takes_to_get_done|What Is The Effect of Batch Size On How Long It Takes to Get Something Done?]]. This leads to ... | | Large annual bets based on plan | Multiple small actively managed bets based on reality | Management | Traditional approaches to implementing an organization plan is to do a yearly plan, and then determine if we meet the plan. The agile approach assumes we have plans, but they are smaller, more regularly reviewed so we can more easily adapted based on the changing business situation. See [[why_should_we_start_without_doing_a_complete_analysis|Why Should We Start Without Doing a Complete Analysis?]], [[what_is_the_effect_of_batch_size_on_how_long_something_takes_to_get_done|What Is The Effect of Batch Size On How Long It Takes to Get Something Done?]]. This leads to ... |
-| "Fixed" business case | "Conditional" business case | Management | See previous comment, [[blog:why_doesn_t_traditional_project_management_work_for_software_projects|Why Doesn't Traditional Project Management Work For Software Projects?]] and [[blog:how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]] |+| "Fixed" business case | "Conditional" business case | Management | See previous comment, [[what_is_the_best_approach_to_making_decisions_in_our_context|Why Doesn't Traditional Project Management Work For Software Projects?]] and [[how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]] |
 | Efficiency | Effectiveness | Management | According to Peter Drucker "efficiency is doing things right; effectiveness is doing the right thing." He then adds "There is nothing so useless as doing more efficiently what should not be done at all." With agile idea is to focus on business efficiency (delivering value) even at the expense of technical efficiency. | | Efficiency | Effectiveness | Management | According to Peter Drucker "efficiency is doing things right; effectiveness is doing the right thing." He then adds "There is nothing so useless as doing more efficiently what should not be done at all." With agile idea is to focus on business efficiency (delivering value) even at the expense of technical efficiency. |
-| "Project Management" | "Agile Portfolio Management" | Management | The agile approach is less about setting up and meeting project plans, and more about the continuous flow of features / value and "validated learning". See [[blog:why_doesn_t_traditional_project_management_work_for_software_projects|Why Doesn't Traditional Project Management Work For Software Projects?]] for more information |+| "Project Management" | "Agile Portfolio Management" | Management | The agile approach is less about setting up and meeting project plans, and more about the continuous flow of features / value and "validated learning". See [[what_is_the_best_approach_to_making_decisions_in_our_context|Why Doesn't Traditional Project Management Work For Software Projects?]] for more information. For an interim step see [[how_does_project_management_change_with_agile|How Does Project Management Change with Agile?]] |
 | "Command and control" management | "Servant leadership" and "empowerment" | Management | For knowledge work we want to leverage the abilities of our people and not assume management knows best. | | "Command and control" management | "Servant leadership" and "empowerment" | Management | For knowledge work we want to leverage the abilities of our people and not assume management knows best. |
 | "Iron triangle is scope, cost and schedule" | "Iron triangle is value, quality and constraints (scope, schedule, cost)" | Management | Traditional projects pretend that you fix two sides of the iron triangle so the third is variable. Reality is that quality suffers when the project is under pressure. Agile assumes quality is required, that we focus on value and there are constraints in how we get there. | | "Iron triangle is scope, cost and schedule" | "Iron triangle is value, quality and constraints (scope, schedule, cost)" | Management | Traditional projects pretend that you fix two sides of the iron triangle so the third is variable. Reality is that quality suffers when the project is under pressure. Agile assumes quality is required, that we focus on value and there are constraints in how we get there. |
 | Solution focus - "Bring me solutions, not problems" | Problem focus - "Bring me obstacles" | Management | Idea is that management are seen as place where problems are brought and worked aggressively to resolution. | | Solution focus - "Bring me solutions, not problems" | Problem focus - "Bring me obstacles" | Management | Idea is that management are seen as place where problems are brought and worked aggressively to resolution. |
-| "Do it right first time" | "Fail fast" | Management | Why fail fast? Would you prefer to find out that we went in the wrong direction at the end of the project, or close to the beginning? Traditional approaches mean you only find out at the end of the project that there is a problem. See [[blog:how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]] |+| "Do it right first time" | "Fail fast" | Management | Why fail fast? Would you prefer to find out that we went in the wrong direction at the end of the project, or close to the beginning? Traditional approaches mean you only find out at the end of the project that there is a problem. See [[how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]] |
 | "Best practices" | "Relentless improvement through experimentation" | Management | Best practices only work when the problem you are dealing with is simple. Most software projects, since we are inventing something that hasn't been done before, is more like "new product development" so it is a "complex" problem, not a simple or even complicated problem. This means a continuous "experimental" approach is required to improve how we work. | | "Best practices" | "Relentless improvement through experimentation" | Management | Best practices only work when the problem you are dealing with is simple. Most software projects, since we are inventing something that hasn't been done before, is more like "new product development" so it is a "complex" problem, not a simple or even complicated problem. This means a continuous "experimental" approach is required to improve how we work. |
 | "Phase gate reporting" | "Reporting based on working software" | Management | Traditional software development approaches report based on stage gate milestones and intermediary deliverables of documents (eg we completed this set of documents therefore we are X% complete). The problem with this approach is that you are reporting progress when no software is running. Worse because you have increasingly detailed planning based on existing assumptions, your plan moves further and further away from reality. The agile approach is to only report progress when some (even the tiniest sliver of the) functionality is working and potentially available to the user. And as Dantar P. Oosterwal says “There was in fact no correlation between exiting phase gates on time and project success. The data suggested the inverse was true."| | "Phase gate reporting" | "Reporting based on working software" | Management | Traditional software development approaches report based on stage gate milestones and intermediary deliverables of documents (eg we completed this set of documents therefore we are X% complete). The problem with this approach is that you are reporting progress when no software is running. Worse because you have increasingly detailed planning based on existing assumptions, your plan moves further and further away from reality. The agile approach is to only report progress when some (even the tiniest sliver of the) functionality is working and potentially available to the user. And as Dantar P. Oosterwal says “There was in fact no correlation between exiting phase gates on time and project success. The data suggested the inverse was true."|
-| "Bring project back on plan" | "Plan will evolve based on what we know" | Management | Lets face it, plan was put together when we knew the least about the project we were undertaking so it is safe to assume the plan is flawed. See also [[blog:how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]] and [[blog:why_doesn_t_traditional_project_management_work_for_software_projects|Why Doesn't Traditional Project Management Work For Software Projects?]] |+| "Bring project back on plan" | "Plan will evolve based on what we know" | Management | Lets face it, plan was put together when we knew the least about the project we were undertaking so it is safe to assume the plan is flawed. See also [[how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]] and [[what_is_the_best_approach_to_making_decisions_in_our_context|Why Doesn't Traditional Project Management Work For Software Projects?]] |
 | "Test quality into the product" | "Build a quality product" | Management | Quality is not something you achieve by a separate test phase. Everyone is responsible for doing quality work - quality first! In particular building in quality means that speed up the development process and creates a viable platform for future enhancements. | | "Test quality into the product" | "Build a quality product" | Management | Quality is not something you achieve by a separate test phase. Everyone is responsible for doing quality work - quality first! In particular building in quality means that speed up the development process and creates a viable platform for future enhancements. |
 | "Get 'r done" | "Software craftsmanship" | Management | With Agile you work to ensure a sustainable pace and build software to a high quality standard using modern development approaches. We are professionals and have professional standards that we meet for our work. We maintain those standards for all work. | | "Get 'r done" | "Software craftsmanship" | Management | With Agile you work to ensure a sustainable pace and build software to a high quality standard using modern development approaches. We are professionals and have professional standards that we meet for our work. We maintain those standards for all work. |
 | "Highest paid person makes the decisions" | "Decisions pushed to lowest level in the organization" | Management | This implies that the information as well as the authority to make those decisions is at the lowest level as well. Not all decisions are pushed down. Decisions that are made infrequently, or where there is benefit in centralizing (eg tool selection) might be candidates for higher decision levels. In general though, as Don Reinertsen says “Any inefficiency of decentralization costs less than the value of faster response time.”| | "Highest paid person makes the decisions" | "Decisions pushed to lowest level in the organization" | Management | This implies that the information as well as the authority to make those decisions is at the lowest level as well. Not all decisions are pushed down. Decisions that are made infrequently, or where there is benefit in centralizing (eg tool selection) might be candidates for higher decision levels. In general though, as Don Reinertsen says “Any inefficiency of decentralization costs less than the value of faster response time.”|
 | "Project Manager is the 'single wring-able neck'" | "Team is accountable" | Management | This goes with the accountability discussion. | | "Project Manager is the 'single wring-able neck'" | "Team is accountable" | Management | This goes with the accountability discussion. |
-| "Make decisions early" | "Make decisions at last responsible moment" | Management | Agile approach is to make sure when the latest time it is to make a decision so we can leverage information and learning before that time. Traditional approach often forces decisions when you do not have all the information and so you end up with inflexible and potentially inappropriate solutions. See also [[blog:how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]]|+| "Make decisions early" | "Make decisions at last responsible moment" | Management | Agile approach is to make sure when the latest time it is to make a decision so we can leverage information and learning before that time. Traditional approach often forces decisions when you do not have all the information and so you end up with inflexible and potentially inappropriate solutions. See also [[how_can_we_understand_the_real_value_of_fast_feedback_and_deciding_late|How Can We Understand the Real Value of Fast Feedback and Deciding Late?]]|
 | "FTE" | "Team" | Management | In agile the "unit of execution" is the Team. This idea implies that we no longer try to assign bits of people to projects, but rather bring work to high performance teams. The "team" needs to be treated as a corporate asset - something the organization has developed to high performance that we want to leverage. Note that this concept will effect hiring decision, performance appraisal, job descriptions and incentive plans. It will also effect physical layout of offices as face-to-face communication is the most effective mechanism of communication for a team. Another way to think about this is ... | | "FTE" | "Team" | Management | In agile the "unit of execution" is the Team. This idea implies that we no longer try to assign bits of people to projects, but rather bring work to high performance teams. The "team" needs to be treated as a corporate asset - something the organization has developed to high performance that we want to leverage. Note that this concept will effect hiring decision, performance appraisal, job descriptions and incentive plans. It will also effect physical layout of offices as face-to-face communication is the most effective mechanism of communication for a team. Another way to think about this is ... |
 | "Assign (bring) people to the work" | "Bring work to the team" | Management | Once you have high-performing teams in place it is better to leverage this high performance by bringing new work to the team, rather than thinking we can select the optimum group of people for the next task / project. Note that this removes the need to the great big "capacity planning" worksheet, where you allocate % time of FTE's to projects / tasks. | | "Assign (bring) people to the work" | "Bring work to the team" | Management | Once you have high-performing teams in place it is better to leverage this high performance by bringing new work to the team, rather than thinking we can select the optimum group of people for the next task / project. Note that this removes the need to the great big "capacity planning" worksheet, where you allocate % time of FTE's to projects / tasks. |
Line 34: Line 40:
 | "Late learning" | "Early learning" | Management | Projects come in late in traditional world because we find our late (i.e. when handed over to QA) that we have a problem with the project. With Agile, you might not like what you see, but at least you'll see it early, in time to do something about it. | | "Late learning" | "Early learning" | Management | Projects come in late in traditional world because we find our late (i.e. when handed over to QA) that we have a problem with the project. With Agile, you might not like what you see, but at least you'll see it early, in time to do something about it. |
 | "Sequential, serial development" | "Iterative and incremental development" | Management | For Agile you use a "lego" approach to building software. Try something. If it doesn't work out, try something else. If it works out, build on what you have. | | "Sequential, serial development" | "Iterative and incremental development" | Management | For Agile you use a "lego" approach to building software. Try something. If it doesn't work out, try something else. If it works out, build on what you have. |
-| "Dependency management" | "Aggressive removal of dependencies" | Management | This starts with setting up teams that are focused on developing features (not components) so that functionality can be developed without creating a dependency management nightmare, but goes much further than this (see [[blog:why_should_we_work_harder_to_eliminate_the_effect_of_dependencies|Why Should We Work Harder to Eliminate the Effect of Dependencies?]] for more information). |+| "Dependency management" | "Aggressive removal of dependencies" | Management | This starts with setting up teams that are focused on developing features (not components) so that functionality can be developed without creating a dependency management nightmare, but goes much further than this (see [[why_should_we_work_harder_to_eliminate_the_effect_of_dependencies|Why Should We Work Harder to Eliminate the Effect of Dependencies?]] for more information). |
 | "Compliance" | "Engagement" | Management | Management model aimed at having engaged people, as engaged people make better decisions, are more responsive and produce more. | | "Compliance" | "Engagement" | Management | Management model aimed at having engaged people, as engaged people make better decisions, are more responsive and produce more. |
 | "Cost focus" | "Value focus" | Management | Traditional model is based on cost accounting with little discussion of the value we get as a result of this. Agile changes model to focus on value delivery, where value, as in "lean" is defined by "what the customer sees as valuable". Also most agile approaches improve ability of team to focus. | | "Cost focus" | "Value focus" | Management | Traditional model is based on cost accounting with little discussion of the value we get as a result of this. Agile changes model to focus on value delivery, where value, as in "lean" is defined by "what the customer sees as valuable". Also most agile approaches improve ability of team to focus. |
Line 59: Line 65:
 | Status is assess through document (phase-gate) review | Status is assessed by seeing working code at cadence boundaries | PM | | | Status is assess through document (phase-gate) review | Status is assessed by seeing working code at cadence boundaries | PM | |
 | Release date determined by wishful thinking | Release dates are fixed - manage scope expectations | PM | | | Release date determined by wishful thinking | Release dates are fixed - manage scope expectations | PM | |
 +| Meetings / events / reports happen at convenience of manager | Meetings / events / reports happen at convenience of team / train | Manager | This is part of servant leadership. Idea is to ensure that management doesn't slow the team / train down. |
 +</sortable>
 +</searchtable>
 +
 +
 ====== Need To Know More? ====== ====== Need To Know More? ======
  
   * [[https://findingmarblesdotcom.files.wordpress.com/2011/12/agile_mindset.jpg|Excellent graphic describing some of the transitions from the perspective of traditional project management viewpoint]]   * [[https://findingmarblesdotcom.files.wordpress.com/2011/12/agile_mindset.jpg|Excellent graphic describing some of the transitions from the perspective of traditional project management viewpoint]]
   * FYI: I expect to edit this list as I figure out better ways of saying things and identify other changes that are required. And I expect to focus this list and edit it to make it more concise as it is pretty lengthy at the moment.   * FYI: I expect to edit this list as I figure out better ways of saying things and identify other changes that are required. And I expect to focus this list and edit it to make it more concise as it is pretty lengthy at the moment.
- +  * This discussion is closely related to [[what_are_the_changes_in_management_approach_that_need_to_happen_with_agile|What Are The Changes in Management Approach That Need To Happen with Agile?]]
-Note: page is getting big so need to refactor. Perhaps based on "things that are general" vs "things that a coach would need to change"?+
  
  
 {{tag>Consultant Tools CultureChange Organization FAQ PresentationIdea ToDo}} {{tag>Consultant Tools CultureChange Organization FAQ PresentationIdea ToDo}}
- 
- 
-~~LINKBACK~~ 
-~~DISCUSSION~~ 
/home/hpsamios/hanssamios.com/dokuwiki/data/attic/what_are_the_changes_in_culture_that_need_to_happen_with_agile.1488212749.txt.gz · Last modified: 2020/06/02 14:25 (external edit)