Scrum, XP, Management and the Ethics of Agile Software Development

Agile software development and “value”

Release BurndownAs advocates of agile software development we focus on practices.

The hype on those practices is they produce software, “faster, cheaper, better.” And we sell our efforts with the promise of, “delivering value.”

We speak of value as if the definition is shared, self-evident, contained within our backlogs and measured by our burn ups.

At the same time we minimize the hard and long the struggle to achieve mastery, identify and address a material need, and sustain creativity and quality.

So, we win the opportunity to labor with our teams to incrementally deliver potentially shippable units of code to stated business priorities.

When those priorities are pointless, so is the software.

When those priorities are tactical and subjective, the values behind agile practice — sustainable effort, maintainable code, self-directed teams, collaboration and trust — become irrelevant.

The truth is there are definitions of “value” that sell us out whether or not material success accrues to someone as a result of the software development effort.

And so, an agile adoption that is true to its participants is an ongoing, perhaps excruciatingly gradual, but substantive conversation with the larger organization on the definition of value.

A set of practices is only companion to the human values that give our work meaning.

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

Agile NYC Presentation Handout

Here is a draft handout from my presentation at “Agile NYC”, Instilling Agile Values for Creativity, Self-Improvement and Organizational Change – A Manager’s Perspective.

http://idisk.mac.com/kenjudy-Public/papers/agile-values-outline.pdf

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

Oops… learning lessons over and over

Here are agile software development mistakes that kick my ass whenever I let them:

  • Know the assumptions in plans. Recognize when they change.
  • Don’t abuse time boxing. It is a toe hold for over-committing. When the time box ends, the work ends.
  • Doing Scrum means DOING SCRUM. Sloppy backlog. No Scrum. No Product Owner. No Scrum.
  • No iteration boundaries and no commitment doesn’t make me “lean”.
  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

10 Take Aways From the Bush Years

Trying to gather what I can from Bob Woodward’s column in the NYTimes, 10 Take Aways From the Bush Years. Basic management advice extracted the hard way from the record of our first MBA president. Among the lessons:

  • insist that everyone speak out loud in front of the others, even — or especially — when there are vehement disagreements
  • foster a culture of skepticism and doubt
  • insist on strategic thinking
  • embrace transparency
  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

Catastrophic mistakes

Untitled by LucKyL - WahoO from flickrConstrux has a white paper revisiting Stephen McConnell’s Software Development’s Classic Mistakes.

In it, they list ten mistakes most likely to produce catastrophic or serious consequences.

Half of them speak more to executive and product management than development:

  • #1 unrealistic expectations
  • #2 weak personnel
  • #4 wishful thinking
  • #7 lack of sponsorship
  • #10 lack of user involvement

Given my experience of organizations that means projects are marked for failure well before agile methods are even applied.

Under these circumstances, we can hope frequent delivery will either morph the project into something more valuable or cause it to die a quick and merciful death.

A better answer disperses transparency, collaboration and continuous improvement from the team room out to sponsors, stakeholders, support units, suppliers, customers and end users — from development and project management to economies.

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

Power

New York State Building by Kjudy Ways to justify power over others:

  1. Divine right
  2. Consent of the governed
  3. The lack of rebellion

Do you feel entitled to the authority you wield over others?

Does your power derive from willing support of those you lead?

Or is consent simply that people show up and do what you say?

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

The Functional Manager in Agile

Home Farm by Hellsgeriatric, on flickrTeam managers should till the soil with their teams.

Anything else is waste and waste must be rooted out.

Still it is hard.

Luke Melia wrote about how he performed as functional manager and dedicated 75% of his time pairing.

There are two tremendous challenges with this.

The first is limiting distractions in order to remain a reliable contributor.

Luke has tremendous reserves of focus and enthusiasm. As his manager, I did everything I could with our scrum master, Salim Divakaran, to support him, remove distractions and share workload.

The second challenge is being both the boss and a peer.

Luke recruited most of the team, he held weekly one on ones with each person, he insisted on unvarnished feedback, and is worthy of respect as both a peer and a manager.

So, here is the pattern: An experienced coach with people skills and authority over development practices pairing in with the developers. An experienced scrum master. Functional management residing in one or the other or divided up in some sensible and easily described way among the two of them.

This enables direct participation in the work, management attention to the team, and strategic contribution to the rest of the company.

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

Maslow’s Hierarchy of Needs

An excellent software developer’s creativity emerges from a passionately felt “higher need” to become their fullest self.

Maslow

“The specific form that these needs will take will of course vary greatly from person to person… It is not necessarily a creative urge although in people who have any capacities for creation it will take this form. The clear emergence of these needs rests upon prior satisfaction of the physiological, safety, love and esteem needs.”
A Theory of Human Motivation, A. H. Maslow (1943)

When an employment situation does not ensure a person’s basic needs (family security, self-esteem), sustained invention goes out the door.

“The urge to write poetry, the desire to acquire an automobile, the interest in American history, the desire for a new pair of shoes are, in the extreme case, forgotten or become of secondary importance. For the man who is extremely and dangerously hungry, no other interests exist but food

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

From Best To Worst

Performance GraphManagement structures are often designed to avoid failure. An unintended consequence is undermining top performers.

Marcus Buckingham describes this in First, Break All the Rules based on Gallup Research across a range of professions.

…in numerous job functions the best and the worst performers shared some, but not all, traits. Both the best and the worst salespeople have call reluctance; the mediocre performers did not. Both the best and the worst nurses had a personal connection with their patients; mediocre nurses stayed aloof. What was important is what the top performers did about this strong emotional link; they used it to empower and motivate them. The poor performers used it to shrink from effective action. Those with no emotional attachment lacked the motivation to excel.

Hospitals rotate shifts so that nurses cannot form personal attachments to patients. Prevents poor performing nurses from burning out. Doesn’t impact mediocre nurses who don’t engage anyway. Prevents the best nurses from giving the kind of care that improves patient outcomes.

Compulsory testing and centralized lesson plans are designed to ensure poor teachers raise poor student performance but makes it much harder for great teachers to innovate and personalize instruction and bores precocious students ready to go beyond core instruction.

If the core difference between poor and excellent performers is that the best are motivated and empowered by their emotional engagement to their work, then it follows if you demotivate and disempower your best performers you remove the distinction.

Under a poor leader, the exceptional will under-perform the mediocre.

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter

Free Agency, Teams and Knowledge Sharing

Paul from Oracle AppsLab has a post on whether viewing all employees as free agents would contribute to better knowledge management within an organization.

So if we found a way to enable people to build their own personal brand through activities we want to incent (like sharing, collaboration, etc), both employees and employers could be substantially better off

For me the high-concept is less interesting than how a management team would translate it into action.

For me, individuals should be rewarded for group performance allowing peers to recognize the outstanding contributions of individuals.

Knowledge sharing and creation springs from an environment of high trust and fair reward. This is best fostered in an organization composed of self-directed, cross-functional teams that demonstrate progress frequently and visibly against clear priorities. Rewards should be based on both team and organizational performance.

Balkanization

Team rewards motivate individuals to collaborate within their team and the team to raise up each other’s performance or eject members that can’t carry their weight. Individual rewards or advancement should result from a process that solicits input and obtains buy in from peers.

Organizational rewards motivate teams into healthy “bounded cohabitation”, bringing the best new learning to the rest of the organization, rather than dysfunctional “balkanization” where one team’s failure advantages another.

This requires management to take a coaching, facilitating role and senior leadership to set ambitious goals while embodying the values they expect others to embrace.

  • email
  • Print
  • Digg
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • del.icio.us
  • LinkedIn
  • Facebook
  • Twitter
ken h. judyExecutive manager, software developer, father and husband trying to do more good than harm.
Agile is about the material and human good we create when we respect our co-workers, tell truth to our employers, strive to improve, and care for the people affected by the software we help build.
CSPIEEE CSDP

Papers

Presentations

 

Site menu:


Meta

Creative Commons License
This work is licensed under a Creative Commons Attribution - Noncommercial - Share Alike 3.0 United States License.
Copyright © 2006-2010
Ken H. Judy.
This is a personal weblog. Views expressed are my own and not my employer.