1. what does agile mean? 2. what keeps us from being agile? 3. what can we do about this?

25
Obstacles to Agility Joan Starr Code4Lib 2007

Upload: gloriann-stevens

Post on 02-Jan-2016

75 views

Category:

Documents


3 download

DESCRIPTION

Obstacles to Agility. 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this? Total of 25 slides. What does “agile” mean?. Per the Agile Manifesto, 2001 Software is developed in short time-boxes (“iterations”). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Obstacles to Agility

Joan StarrCode4Lib 2007

Page 2: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

1. What does agile mean?

2. What keeps us from being agile?

3. What can we do about this?

Total of 25 slides

Obstacles to Agility

Page 3: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Per the Agile Manifesto, 2001 Software is developed in short time-boxes

(“iterations”). Each iteration results in functioning build. The team values real time communication over

documentation. The team--including programmers and subject matter

experts--is collocated. Progress is measured in working software.

What does “agile” mean?

Page 4: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Your development plan/task list is in short, 1-to-4 week iterations. A project is made up of many iterations.

At the end of each one, you generate a functioning build, creating prototypes whenever possible.

Also at the end of each iteration, you identify what can be done in the next cycle.

Your team includes a subject matter expert. You work closely with your teammates, holding brief,

stand-up meetings often. You measure progress with complete iterations.

What does “agile” look like?

Page 5: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Short answer:

To solve problems for your usersmore quickly and more frequently.

It’s also an exciting way to work…

Why bother?

Page 6: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

“Our users expect simplicity and immediate reward and Amazon, Google, and iTunes are the standards against which we are judged.”

University of California Libraries’ Bibliographic Services Task Force, Dec. 2005

“Academic libraries might just have a window of opportunity to leap into a future where we add value to our institutions in ways we've never imagined before or are only beginning to envision. But that window may already be in the process of slamming shut.”

Roy Tennant, Library Journal, Dec. 2006

Is this important?

Page 7: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Academic culture: our dear customers themselves! Project management practices Institutional hiring processes Our own work practices

So…what keeps us from agility?

Page 8: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Academic culture: a ‘non-participatory democracy’

Individuals do not want to be involved but do want veto power.

Individuals do not want to be represented by anyone else. They want a voice. Or not.

Academic culture

Page 9: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

What this means:

It can be difficult—if not impossible—to identify a small number of subject matter experts who can represent the customer base at large.

Project teams end up working with large committees of users. Committees of committees…

Academic culture

Page 10: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Aspects of academic culture Project management practices: how we run things! Institutional hiring processes Our own work practices

What keeps us from agility?

Page 11: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Projects typically do not have a single individual or committee that takes ownership responsibility for the project’s outcome.

Major project decisions often require input from a very diffuse decision-making structure.

Projects are allowed to drag on for years, sucking life from all surrounding beings.

Project management practices

Page 12: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

What this means:

Because no single entity can adjudicate conflicts over requirements, schedule, or funding, many players must be consulted. Time passes. Then, more time passes.

Individual team members have the life sucked out of them.

By the time it is delivered, the solution is out of date.

Project management practices

Page 13: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Aspects of academic culture Project management practices Hiring processes…at the beloved institutions where we

work! Our own work practices

What keeps us from agility?

Page 14: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Hiring processes and systems built for the academic job market are a bad fit for the technology market.

Many months elapse between the identification of a staffing need and the start date of a new employee.

Some shops don’t even have administrative control over their own openings.

Grant-funded staff members can’t be moved around as project work might require.

Hiring processes

Page 15: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

What this means:

Project teams are not able to get help when and where they need it.

Projects are slowed; schedules are warped to less-than-optimal configurations.

Hiring processes

Page 16: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Aspects of academic culture Project management practices Institutional hiring processes Work practices: time to look in the mirror…

What keeps us from agility?

Page 17: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

We value space and privacy over team collocation.

We don’t want to share work in progress.

We aren’t practiced in estimating how long it will take to accomplish project tasks.

We measure progress, well… how do we measure progress? Do we measure progress?

Work practices

Page 18: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

What this means:

We lose time communicating/coordinating with people in other locations.

We aim for perfection before getting feedback.

We can’t reliably predict what we can get done in the next time block.

We may not be working on what our customers want/expect.

Work practices

Page 19: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

1. Start small…

2. …with a new project…3. …and introduce it as a pilot.

What can we do about this?

Page 20: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Create a project Steering Committee/Advisory Council, with representatives from the stakeholding committees. Establish the group expectation of decision-making.

Identify a subject matter expert to serve as a user representative on the team. Give this person a meaningful role.

Use the “Pilot Project” label to encourage adoption of the new approach.

What can we do about: Academic culture

Page 21: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Identify a time-to-market goal, and review progress toward this goal at the close of each iteration.

Implement first versions (with 80% of functionality) quickly—in a few weeks or months. Automate well-understood processes first. Empower user representative as decision-makers. Aim for functionality, not perfection.

What can we do about: Project management

Page 22: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

No quick fix, so adopt a work-around strategy: Look for trade possibilities with other tech shops in

your university system (“salary transfer”); Establish standing relationships with contracting

agencies; Use independent contractors.

Assign temporary workers to production support activities, freeing up employees to do the cool (agile) work.

What can we do about: Hiring & Staffing

Page 23: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

Learn about and practice

agile programming techniques.

What can we do about: Work practices

Graphic from www.plunge.in

Page 24: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

A few resources

The Agile Alliance: http://www.agilealliance.org/

Extreme Programming: http://www.extremeprogramming.org

Scrum: http://www.controlchaos.com

Dynamic Systems Development Model: http://www.dsdm.org

Page 25: 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this?

[email protected]

Questions?