Monday, August 25, 2008

Jugs: Intro to Agile and Scrum

This afternoon, I am pleased to give an introduction to Scrum to members of the Java User Group Switzerland.

What is Scrum? How do you carry out a project using Scrum? What are the instruments for planning and control. How do you get started?

The topics:
  • Sprint Planning & Demo, Daily Scrum, Retrospective
  • The Roles: Product Owner, Scrum Master und Team
  • Overall Planning and Reporting: Product and Sprint Backlog, Burn Down Charts
  • What is the difference between Scrum and other approaches (Lean, RUP, XP)?
  • Patterns for getting started
I am told that Jugs is expecting a good turn out, so I am really excited!

The slides to my presentation are online: Introduction to Agile Project Management with Scrum

Reminder: Jugs and /ch/open members have special conditions for the next Scrum Training in Zürich. If you need Scrum training, this is your chance!

[Update: Based on the feedback from yesterdays event, I have revised the slides to provide more information about how to monitor progress and react to slower progress then planned. I have also fixed the typo's ;-) ]

Monday, August 18, 2008

Big Scrum Projects: Allianz Project Light Beacons

Besides successful start-ups, at least three "name brand" European companies have committed to Scrum for their software development: Nokia (source of the Nokia test), SAP, and Allianz Deutschland (Germany).

At the most recent gathering of the German Scrum User Group, Simon Roberts presented how Allianz committed to and introduced Scrum. Simon described Project "Leuchtfeuer" - transitioning the Enterprise to Scrum via a series of lighting beacons.

His metaphor reminds me of the airway lighting beacons used in the 1920s and 30s. At night, pilots flew from light beacon to light beacon, enabling navigation over long distances for the first time. Even today, approach light beacons play a critical role in the precision approaches which allow aircraft to land in bad weather.

Simon's "airway" has nine waypoints:
  1. Sponsor - don't leave home without one.
  2. Initiate - get outside help
  3. Ignite - light the first beacon with a pilot project
  4. Diversify - light more beacons with additional projects
  5. Promote - do good and talk about it
  6. Professionalize - training, training and a center of excellence
  7. Establish - light still more beacons
  8. Consolidate - align with corporate strategy
  9. Integrate - Corporate Governance, SOX, CMMI etc.
Sponsor - Having support from a senior executive is critical. Successful change is a combination of top down and bottom up. Bottom up alone isn't enough, which means that Stealth Scrum won't work. Top down (the classic consultant driven approach) has its limitations as well; the successful transition requires both top level and grass roots support.

Initiate - Corporations will usually need outside help. Reading a book without practical experience isn't enough. The need is not so much for classical consulting, but rather for coaching of the teams and management as they build experience and overcome problems using Scrum.

Ignition - The first project. Here top-down meets bottom up. The first project should "a real project, not too easy, not too critical". Lots of coaching will be needed, especially during the first few sprints. Successes are the basis of support, both grass-roots and top level.

Diversify - After initial success, add more projects. Do different types of projects. If the first project was a web application, try a mainframe project. Ensure that enough coaching is available for the new teams.

Promote - Internally and externally. Top Management needs to see results and give buy in. Allianz competed for and won this year's IT Strategy Prize from CIO Magazine, and Agile was part of the application. Simon recommended the patterns of Fearless Change: Champion Skeptic, Corporate Angel, Corridor Politics... and many open informational events.

Professionalize - Scrum Masters and Product Owners need the corresponding training (CSM, CSPO). Eventually the company should establish a Scrum Center which serves as a resource for helping Teams and Product Owners do Scrum better.

Establish - work with Customers, Project Management Office, Corporate Education, etc. to make Scrum an offical option or even the preferred open for software development management.

Consolidate - at this point, Scrum has demonstrated successes at the base and support from top management. If the strategy has been emergent, now is the time to consider an Enterprise Transistion Team which assures defines the strategy and assures alignment of IT operations with business strategy.

Integrate - The enterprise is still has Laws, Regulations and Standards, e.g. Corporate Governance, Compliance, Standards and Frameworks that it needs to comply with. Scrum can be integrated into all of them (e.g. SOX, CMMI, ITIL). Don't worry about it, but don't start too soon either.



A fascinating talk about a practical introduction of Scrum into a very large organization. You can download his slides at ScrumCenter.org.

I would have liked to hear a bit about the business results of this program. Has the company become more innovative? What impact has it had on the productivity, employee retention, effectiveness, corporate results? Allianz Deutschland is making a substantial change in their corporate processes. Is it worth it?

Simon and his partner Christoph Mathis have agreed to talk about Scrum in the Enterprise at the Scrum Breakfast in Zurich. This promises to be an interesting discussion! December 3, 2008 -- mark your calendars! And if you want an invitation, let me know!

Wednesday, August 13, 2008

Stars out, dzone in

A few weeks ago, I turned on blogger.com's rating gadget. A nice toy, but really only that.

Since I started writing for agilesoftwaredevelopment.com, I have learned to appreciate the value of social networking sites in general, and dzone in particular.

DZone is a digg-like site, where you can submit and vote on the links relevant to developers. You can vote articles up and down (which I appreciate for the feedback) and the good articles are shared with other developers.

So when you read an article:
  • if you hate it give it a thumbs down (to keep people away and tell me never to write such trash again) or 
  • if like it, give it a thumbs up, and share it with the developer community!

Certified Scrum Practitioner

I received a nice email today from the the Scrum-Alliance, Subject: CSP Application Approved (and Next Steps). So what does it mean to be a Certified Scrum Practitioner? How do you become a CSP?

The process for applying is relatively simple. After you have been a CSM for a year, you download the form, answer the questions and send it in. They only ask for money when your application is approved. (+1 for customer friendliness -- that was the item "Next Step" in the E-Mail.).

The application "form" -- template would be a better word -- consists of 14 essay questions about a particular Scrum project, 5 questions about Scrum in general, and one question about your work with other Scrum Masters to promote Scrum and the Scrum Communitity.

So a CSP is expected to
  1. Have actually worked with Scrum in a real project
  2. Really understand Scrum ("get it")
  3. Promote Scrum
  4. Be able to write coherently about Scrum and his/her experience with Scrum.
This last two criteria makes the CSP different from any multiple choice based certification, which can be evalulated by a computer. Somebody has to actually read the application.

Value of the CSP

A certification can offer value in many ways. It can:
  • improve your market value/be prerequisite for certain jobs
  • recognition for your skill
  • be a step on a career path
How does the CSP measure up?

Market Value: There are some 25'000 CSMs out there and only about 800 CSPs. So there is some exclusivity in being a CSP. But... a search of Monster.com produced exactly 59 jobs for a Scrum Master, 7 jobs postings requiring a CSM. I found one requiring "CSP equivalent", but it had expired. Conclusion: doesn't appear to be a career move. Of course, I'm not looking for a job, but rather coaching and training assignments, so the estimate of market value is even harder to judge.

Skill Recognition: Yes, somebody has read my application and said effectively, "you're doing good, keep up the nice work". Of course, I already knew that, but it's nice to get some warm fuzzies from the Scrum Alliance confirming that. That there are only 800 people worldwide who have taken this step is also nice. Of course, there are many more than that doing Scrum at high level without the stamp of approval.

By comparison, the German language Project Managment Forum in Xing has over 32'000 members. Don't have any figures on actual, PMP or ITIL certifications, but it seems it must be a much larger number.

Career Path: Since the change in the qualifications for becoming a Certified Scrum Trainer (CST), the CSP is a stepping stone to becoming as CST. This is where I see the major value. I like giving courses and look forward to becoming a CST.

So its done and is worth celebrating. I will bring a some Prosecco to the September Scrum Breakfast to toast this step forwards. Hope to see you there!

Scrum Breakfast in Zürich, September, Offshoring

This month we look at pushing the envelope with Scrum.
 
Scrum emphasizes communication and collocation. Offshoring is by defnition not collocated and communication is limited by distance, language and cultural barriers. Some say Scrum and Offshoring don't mix. Others say Scrum is the best way to do offshoring.

Fredi Schmidli, Country Manager Switzerland of swiss IT bridge, the software development company with development resources mostly in Vietnam, will present how the business works, what has been successful, where there could be improvement. Then we will discuss as a group how Scrum can be applied to the problem.

Location: namics zürich, konradstrasse 12/14, 8005 Zürich
Date: September 3, 2008,
Time: Doors open at 8.00, Talk starts at 8.35, Finish by 10.00

As usual, namics will offer the coffee and croissants.

The talk and discussion afterwards are in German.

Registration through Xing the Contact Page.

Live Webinar Broadcast

This event will be broadcast live as a webinar. If you can't join us on site, join us on line. Webinar infrastructure thanks to the friendly support from swiss IT bridge.

Please register for the webinar on Xing.

I look forward to seeing you there!

Tuesday, August 12, 2008

Has Scrum Supplanted XP...?

... or are they together "just agile"?

Artem reported in his Notes after Agile 2008 that Scrum and XP are blurring to form a generic "just agile" process. Is this the case? Or is Scrum displacing XP? Are the two merging or converging?

Google Insights tells an interesting story. Google Insights is a nifty little tool which lets you enter search criteria and see how interest in those criteria has developed over time.


The graph above shows the development of the queries around Scrum (blue line) and XP (red line) and agile software development (yellow line). The interest in agile appears to have been fairly constant since 2004, with a relative interest of 9. (But wait, Computer and Technology's share of the Internet pie is declining, so interest must be rising among IT people. I think.).

In 2004, XP was the "name brand" agile framework, scoring 92 compared to 23 for Scrum. Today, the situation has reversed, Scrum scores 87, XP a mere 9.

Some of this is surely due to fuzz in the data. The search term "Scrum" includes related searches like "scrum xp" and Extreme Programming includes "scrum". This would support the conclusion of convergence.

I have always found it difficult to say exactly where Scrum stops and XP begins. So many of the practices overlap, and even among those that don't, there's nothing mutually exclusive between Scrum and XP. (And Jeff Sutherland just published a blog entry on Scrum and Lean, in which he claims "The first Scrum implemented all the practices we know as Scrum today plus all of what later became known as XP practices....")

But still there is this shift to Scrum, this change in branding, as measured by Google. I wonder if we are not seeing the effects of the Certified Scrum Master program. I have argued before that the CSM is excellent marketing. Could that have made the difference, or are there other factors which explain this shift?

Monday, August 11, 2008

Towards a better burn down chart

One of the most important advancements of Scrum and XP compared to other frameworks is the use of a burn down chart rather than milestones to measure progress. It is simple and clear, measures real progress, but has one problem, how do you show scope changes?

Jürgen at ASD recently summarized a couple of alternatives for maintaining the release burn down chart. I suppose every Scrum Master has their way of doing things, so here's mine...

What is a a burn down chart?

As a pilot, I like to think of a burn down chart as being like the glide path of an airplane on final approach. An instrument in the cockpit tells you if are above or below the ideal glide path. If you are stabilized on the glide path (usually 3 degrees at a big airport) you will hit the runway at the designated touch down point. If you are too high, you will not make it to the runway unless you increase the rate of descent (which is not always easy to do). If you are too low, watch out for the trees!

A burn down chart tracks how much value has yet to be delivered. So at the start of the project, you make an initial estimate of each feature in Story Points and add up all the features to get the total, say 120 Story Points. Then after each Sprint and for each story that is done, you deduct the story points for those features from the total.

What if your won't make your deadline?

So if you have a total of 120 Story Points and you finish 10 Points in the Sprint, you would expect to need 12 Sprints to complete the project. If your planning calls for 6 Sprints, you have a problem. So you work on improving your velocity (e.g. by removing impediments) and reduce the scope.

Improving your velocity is like increasing your rate of decent. Removing Scope is like magically moving the airplane closer to the ground by adjusting the altimeter (works great in the flight simulator, but not in a real airplane).

Tracking Scope in the Burn Down Chart

Which brings us back to the question, how do we show changes of scope on the burn down chart? Jürgen summarized the alternatives:
  1. Recalculate the initial total and redraw the chart. Not good. Hides the changes which have been made to the scope.

  2. Create a "burn-up" chart as proposed by Alistair Cockburn. He proposes adding a 100% line which moves up and down as the scope changes. His concept is "earned value". The analogy becomes climbing a mountain rather than landing an airplane.

    Perhaps if I were a mountain climber I would have a different attitude (and I do admit, "upper right" is generally good in business graphics), but the idea that the height of the mountain is going to change is somehow counter intuitive.

  3. Move the target line above or below the origin as the scope changes. Our airplane is still landing, but we change the altitude of the airport (You can't even do that in a flight simulator!). Again, it works, but for me it is counter intuitive. Explaining a target that is less than zero can also be a challenge.

A Better Burn Down Chart

I have used the following "flight simulator" approach in the last few projects and find it satisfying.
Progress is graphed on a burn down chart. The target is 0 Story Points. The results of a Sprint are plotted at the end of the sprint. This line usually has a downward slope, worst case is horizontal if no progress is made Then any changes to the scope are applied. This is a vertical line, up for added scope, down for removed scope. It's as if the airplane were repositioned up or down while on approach.

    In the example, you can see that the Team was initially slower than planned -- a common problem. After two Sprints, the response was to reduce scope and increase velocity (e.g. by removing impediments or adding capacity). After four sprints it was clear that they were in good shape and could take on some additional functionality without risking the release date.

    The advantages of this approach? It doesn't require any redrawing. There is no need to explain negative number targets — the target is always zero. It is clear whether the product owner (vertical change) or the team (sloping change) has changed the amount of work remaining.

    It is easy to graph on paper or with Excel (use an X-Y line plot) so give it a try and let me know what you think!

    Wednesday, August 6, 2008

    Scrum Certification: What's it worth?

    In response to my article, Scrum Alliance Quietly Changes Certified Scrum Trainer Requirements, an anonymous poster wrote:
    Any self-respecting developer will laugh at this certification program and people sporting the title. You can't be serious thinking this will in any way help you in your career.
    Certification is a very controversial issue. But strictly speaking, Scrum certifications are not for developers, but for Scrum Masters, Product Owners and in particular, Trainers. Whether it helps the careers of CSM's is an interesting question, but it is certainly good for the careers of CSTs!

    When we are honest about the certification program, it is about certifying the trainers, not the newly minted Scrum Masters. (See the interview with Mike Cohn).

    It is also about branding, and has been quite successful. The acceptance of the CSM program is high (especially from corporate customers, and this is where the money is). I believe the CSM program is an important reason why Scrum is better accepted than say, XP, in corporate management circles.

    A side effect of the change in certification path is that the requirements for becoming a CST are now secret - you cannot download the questionnaire from the Scrum Alliance, unless you are already a CSP. Here an email I received from Carole Marks of the the Scrum Alliance:
    "This CST application package is restricted to those members that have Certified Scrum Practitioner (CSP) membership status.... If you are not currently a CSP, you will need to start at that level of certification..."
    Hmm. I think there is potential for improvement, both in the certification of CSM's and CST's. But I think it's best to leave that discussion to the appropriate forum...