Rediscovering the Obvious

…stumbling in the footsteps of greatness

Archive for December, 2008

Announcing Lean & Kanban 2009 Miami

without comments

(Rescheduled to) May 6th-8th

http://www.leankanbanconference.com/

I’ll be speaking, as will many of the leading thinkers in the Lean and Kanban software movement. Definitely worth a look at the site, and I really hope to see many of you there!

The announcement from kanbandev:

The Kanban conference is happening and the registration site is open.

http://www.leankanbanconference.com/

The site is a little basic at the moment. David Laribee and I sat up
in the small hours and got to this minimum marketable feature state.
We’ll both be offline for a few days over New Year. We’ll make the
site look pretty and add some more features next week. For now you can
register.

We’re giving members of this list first priority on registration. The
event is limited to 125 folks. We expect it to sell out. We’ve
selected a superb venue the Mandarin Oriental Miami located on South
Beach at Brickell Quay right on the water.

http://www.mandarinoriental.com/miami/

Because of committed sponsors like Net Objectives and Ultimate
Software we are able to keep the registration fee down to only $800
per person for the full 2.5 day event. Registration includes an invite
to our evening reception on February 18th courtesy of Ultimate
Software. Breakfast and coffee breaks are included all 3 days. Lunch
is included on Wednesday and Thursday 18th and 19th.

Wednesday 18th February – Keynote Alan Shalloway – Lean Track and
Kanban Track sessions
Thursday 19th February – Keynote Don Reinertsen – open space all day
Friday 20th February – Keynote David J. Anderson – lightning talks for
2 hours

Please register now to avoid disappointment and book your flights to
Miami. Please be sure to make a reservation with the hotel. Ask for
the “David J. Anderson & Associates” event rate of $250 per night. The
hotel has indicated that it will honor this rate for extended bookings
prior or post the event subject to availability.

Our confirmed speakers are:

David J. Anderson
Alan Shalloway
Dean Leffingwell
Don Reinertsen
Peter Middleton
James Sutton
Clinton Keith
Amit Rathore
Corey Ladas
Karl Scotland
Eric Landes
Eric Willeke
Reni Elisabeth Phil Friis
Alisson Vale
David Laribee

and not yet confirmed…

Max Keeler and Linda Cook
Bob Stoddard (from the SEI)
Sterling Mortensen

Many of these people are regular contributors to this group and have
together created and lead the kanban movement over the last 18 months.
I believe this is the finest list of proponents of Lean software
development ever assembled.

With our 2.5 day format, we have one day of sessions in two tracks,
one day of open space and half a day of lightning talks. This will
give all attendees the chance to work with the experts directly.

I also need to thank WordClay who have kindly offered to sponsor the
publication of the proceedings. Each attendee will receive a book of
the proceedings – papers written by our many speakers. The book will
be available to everyone else after the event. Price to be determined.

Written by erwilleke

December 30th, 2008 at 9:39 am

Posted in Uncategorized

Design Stories – A bridge between roles

without comments

This idea has been forming among our architecture group this week and I think it has enough potential to open up for public discussion. I’m hoping to get some good criticism and references to prior art I can draw on.

 
Overview:
Traditional stories provide a solid structure for understanding what value a given set of work is supposed to accomplish (i.e. Analysis). They do not provide a good means of giving a team guidance on HOW that is to be accomplished. On the other end, we have a great set of practices from XP and other sources that provide a means of creating very good code through pairing, co-located teams, etc.
 
Unfortunately, there is a gap present in most organizations. Where do you create a consensus about the architectural metaphor, that set of patterns and approaches that allows a good application to scale beyond a single team. Things like SOA can pull that decision making process out to the extremes, where there’s a small body at the top working with services as a language, and teams that then take individual responsibility for their parts, but that doesn’t extend to UI-intensive applications or to the deep complexity inherent in some domains. The core of the message is that Agile doesn’t “do” detailed designs. There’s a good reason for that: Detailed designs traditionally create a large transaction cost for each unit of work going through the system. When you’ve reduced batch sizes, the transaction costs become a higher portion of the overall per-item cost, thus making the detailed designs painful.
 
The design story template is used as the next layer beyond an XP-sized analysis story. It provides a mechanism for crafting highly focused design with minimal transaction costs. It also allows for training other members of the team on the design approaches as a core part of creating the design. In essence, each design becomes the process of filling out a small, defined template in the same manner as writing an FDD feature name or writing a BDD story. The part of this that is most interesting to me is that the design story follows a standard order starting with most generic (the story-level goal) and proceeds to the very detailed (what methods need created). Because of this, the architect [1] may stop writing at any point and allow a developer to write the remaining elements. In our organization, it will be reviewed, and the last line will frequently be left off. In others, the architect may stop after the third line and let a highly capable team member take care of the rest with no further interaction. It is entirely by intent that this template includes aspects that are typically left to the developer and starts with items that are usually left to the analyst or project manager.  
 
This is a bridge between the value vision and the implementation, and provides a clear path towards training developers to handle harder, more abstract aspects as a part of their work and in a manner that is clearly relevant to their work.
 
Story:
In order to improve the user’s perceived performance through a reduction of RAM usage,
we need to load preview quality images for the current page only.
This requires to make changes to page display behavior in the client,
using the established page mediator pattern through the page mediator factory,
to provide interactions between the project model’s page changed event and the placement rendering
by creating a mediator named CurrentPageImageVisibilityMediator,
and writing the handler ProjectModel_CurrentPageChanged event that uses an ImageLoad asynchronous command to change the quality of the displayed image if the current page has become visible or ceased being visible.
 
Template:
In order to [goal of the story],
we need to [Decomposed software change supporting story].
This requires us to make changes to [the architectural/design components]
using [Identified patterns and approaches specific to the team/product]
to provide [specific interactions with existing components of this system]
by creating [specific class names to implement the patterns]
and writing [specific method names and behaviors]
 
Goals:
 

This came out of a few needs at Inkubook.

  • Developers wanting to grow in their craft and learn the design and architecture roles
  • Architects wanting to maintain enough control of the system’s shape, but be able to effectively delegate
  • Keep batch sizes small, thus needing to
  • Minimize the transaction costs of each batch.
  • Different developers have different abilities, and the approach needs to scale to any of them.
  • Need to identify responsibilities without overwhelming the process
  • The need to provide meaningful review early in the design process
Influences:
There were a number of easily identifiable previous influences on how I was thinking, such as:
  • Communication pattern of “Describe a need, then ask to have it described back to you”
  • My understanding of FDD the concept of a Design Memo
  • Knowledge of BDD’s “examples” notation
  • Desire to fit with an XP or BDD style “story” format and feel
  • The concept of the cone of uncertainty
Shu Ha Ri

[2] A good description of Shu Ha Ri can be found here.  To summarise, the concept comes from the Japanese martial art Aikedo and refers to the three stages of learning.

  • Shu is the first stage, where the student is imitating and following the master’s steps
  • Ha is the second stage, where the student is showing understanding, and breaking away from the master’s steps
  • Ri is the final stage, where the student is showing mastery and fluency by creating their own steps
  • Mapping the concept of Shu Ha Ri into this story template, I believe that developers will be able to progress through all three stages for each of the lines in the template, at times in parallel. I want to do more evaluation of the androgogical aspects of using this sort of progression for teaching our craft more effectively, but that is something for another day.
     
     
    Notes
     
    [1] I’m saying “architect” in the sense of “the person whose job is to define the approach used in designing the application and for teaching that approach to the various teams involved”. I understand the role changes based on system size and organizational structure.
     
    [2] Taken verbatim from http://availagility.wordpress.com/2008/11/05/is-kanban-only-suitable-for-mature-teams/

    Written by erwilleke

    December 18th, 2008 at 3:18 pm

    Posted in Uncategorized

    Thirsty Developer and “happenings”

    without comments

    Hello all! It’s been a good while since I’ve taken the time to do my own writing? Why is that? Here’s your list of excuses… err… reasons.

    First, and most importantly, I feel that this is the time of year when I should withdraw a bit from thep professional world and focus more attention on family and friends. It’s been a good month, and many good times are being had by all.

    Second, Inkubook.com’s had a great series of releases. We released the ability to print calendars the week before Thanksgiving, and we’ve released several massive performance improvements in the weeks since. We’re investing time now into using more of what the cloud has to offer, and as a result we’re discovering even more performance opportunities.

    Beyond that, I’ve been investing some of my remaining professional time into the local community. I spoke last month at the IndyNDA meeting, and then recorded a session with Larry Clarkin for The Thirsty Developer. This was released Monday at http://thirstydeveloper.com/2008/12/09/TheThirstyDeveloper44RealWorldSilverlight2.aspx.

    Additionally, I’ve become very invovled with various online forums and groups related to impoving the software development experience, specifically I am a moderator on the kanbandev group on Yahoo and a frequent contributor on kanbandev, real_options_discussion, and SW-Improve. This has consumed much of my time. It also is shaping up that I may be a co-producer for one of the stages at Agile 2009 in Chicago, but I’ll hold off further details until it’s fully committed.

    Merry Christmas to all!

    Written by erwilleke

    December 9th, 2008 at 2:52 pm

    Posted in Uncategorized