Cloud Foundry: Design and Architecture
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Mark Levison on Nov 24, 2010
How do you work with difficult and uncooperative people? People who are combative or unprofessional? People who seem actively opposed to the agenda?
Will Jessup notes that developers tend to be highly intelligent people and often won’t just do something because we say so. He suggests a dialogue:
"OK, we're going to do estimates for these cards"
"Why? I hate doing estimates"
"Do you have a better way of getting the client information about our best
estimate for how long this project is going to take? Without this we can't
get the budget approved and nobody gets paid."
"Hmm... no"
"So if we do this estimate we'll have our complete bs, total guess,
estimated timeline based on a bunch of stuff we know will change - but at
least it is something."
"OK =]"
Kevin Shine suggests that we should move from selling to getting them to buy in of their own accord: “There is a big mind shift between these 2 thinking approaches. One is collaborative and cooperative and the other is more command and control.” He goes onto suggest provide advice and support, let the team come to their own conclusions. He closes by saying: “You can’t force change on people. Instead, show them how the future might be and help them participate in creating it.”
Bachan Anand asks if the team is even aware of the problem(s), saying they can’t improve if they don’t perceive it as an issue. In addition he points out that a new Scrum Master needs time to gain the respect and trust of the team members.
Ashish Mahajan reminds us that Scrum is just a tool and not the goal. Lacking a clear and compelling and a sense of urgency the team doesn’t commit. Ashish goes onto suggest 1-1 coaching, root cause analysis and rigorous use of retrospectives to help team members discover issues on their own.
George Dinwiddie suggests looking at the problem from the other person's perspective. Why are they reacting this way? What do they believe that would explain their behavior? He recommends Dale Emery’s “Resistance as a Resource”, anything from Esther Derby on feedback. George has also compiled a bibliography of articles on feedback.
This reporter notes that it is difficult if not impossible to sell people on ideas, instead it's better to listen. Ask people questions that seek to understand the problems they have, not their problems with Scrum, but their bigger problems. Use Scrum to help them solve those problems and they will discover its value far faster. In addition this reporter suggested:
'Why' is a potentially dangerous question, there is a high likelihood that it put the person being asked on the defensive. Asking What/When/Where questions help us achieve many of the same ends without the defensive reaction. Instead of "Why not", try "What do you think won't work with planning poker" or "Can you tell me what you think the problem is?" We move the focus from the person to the problem.
Agile Maturity Model Applied to Building and Releasing Software
Five Key Practices to Agile ALM
Improving Software Delivery Cycles: Pre-requisites and Inhibitors
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
This discussion came up on a Scrum mailing list, clearly however the problem of difficult people is outside of "Scrum" per se. I kept Scrum in the item text because its the context people provided their words in.
Few people wake up in the morning and decide "I'm going to be difficult at work today." It's more accurate to say "he's difficult for *me* to work with."
Then you can get curious about why you have trouble relating. From his own point of view, the "difficult" person isn't trying to be difficult, he's trying to be helpful (even though it may not look like it, and you may not be the person he's trying to help.) Try to figure out who he might be helping, and you may see more options for action.
As for "resistance." put on your decoder ring and you'll find that it often means "the other person isn't doing what I want him to do with the speed and enthusiasm that I desire." Most people don't like to be told what to do. But many people are interested in solving problems. You could start by framing the problem, rather than pushing a solution. Until the other person agrees there's a problem, you are stuck in the big game, Who Gets to Tell Who What to Do.
Thanks Esther - I think you've made a very interesting point. We always need to bear in mind that "difficult" or any other label is just from our point of view or context. We need to step away from our context and see theirs. Like you I'm a big believer in helping people see the problem and letting them solve it. My problem is that I don't always remember to act in accordance with my beliefs.
Cheers
Mark Levison
Agile Pain Relief Consulting
Working with Difficult People and Resistance in Project :)
Andrej
www.agilemindstorm.com
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
Andrew Watson talks about the work of the OMG, where CORBA is alive and well (hint: in your car), UML and UML Profiles vs. custom Modeling languages, DDS and other middleware, and much more.
Sohil Shah discusses creating iPhone and Android enterprise mobile applications based on cloud services using the open source platform OpenMobster.
Paul Sanford presents the transformations supported by data throughout its life cycle, and how that can be better done with Splunk, an engine for monitoring and analyzing machine-generated data.
A common “best practice” for unit tests is to only write a one assertion in each test. I intend to question this advice by showing that multiple assertions per test are both necessary and beneficial.
John Rauser presents the architectural and technological evolution of Amazon retail websites starting with 1994 and ending with adopting Amazon Web Services.
Michael Stal discusses system architecture quality, how to avoid architectural erosion, how to deal with refactoring, and design principles for architecture evolution.
Every developer has had to integrate with another system, API or component. Tis article provides strategies to handle the change and for he separating system boundaries.
4 comments
Watch Thread Reply