This post originated from an RSS feed registered with Agile Buzz
by Simon Baker.
Original Post: We don't need no stinkin' process
Feed Title: Agile In Action
Feed URL: http://feeds.feedburner.com/AgileInAction
Feed Description: Energized Work's blog.
We're enjoying ourselves so much I'm wondering if it's illegal. We're working in a 4-man team with a new client (who consult for the Lean Enterprise Academy) and we're experimenting with some new techniques. Our goal is to create a product that is very kind to its users, so we're trying to stay as close as possible to the users' conceptual model and stop thinking like programmers all the bloody time. When we catch one another 'flipping' to techie mode we quickly 'flop' them back to user mode.
Keeping the interaction design simple, so that it can be easily learned by users, is difficult. We've used paper prototypes to explore options and we're also iterating the interaction design as part of developing the user stories. This approach is working well. We do, however, need more ready-access to users to help reduce rework. (When does iterating, and the learning that comes from it, become wasteful rework? A subject worthy of it's own post.)
Another thing is ... we don't need no stinkin' process. I reckon it's because our team is small, has only generalising specialists who have worked together for ages, we trust one another implicitly, and our environment is extremely collaborative and fun-packed. Ok, it's not entirely accurate that we have no process. I just wanted to use the Blazing Saddles clip. There is some semblance of a process but, honestly, it really, really doesn't feel like it. It just feels like the natural flow a conversation takes. Perhaps it's that the interactions are so second nature to us it just seems like everything is a conversation triggered by something that's happened or has been discovered:
Discuss a story in a pomodoro.
Pair up and pull its card into play.
Start slicing - working inwards from behaviour-driven Selenium acceptance tests, incorporating any non-functional and sysadmin work, while iterating the interaction design work.
Call a timeout and talk in a pomodoro when something important happens.
Deploy the accepted story to production.
Go again.
I guess it's essentially Kanban and one piece flow, perhaps with a few twists we've introduced over the years. We just say keep it moving - keep it working - keep it together - keep it real - and keep it coming. (We evolved to our kanban-like thing independent of the Kanban movement. Hopefully David Anderson will corroborate that claim. I think this is interesting because a mulitude of separated parties, working independently, have evolved their process, under their own interpretations of the Toyota systems, to arrive at something with similar kanban properties. Some may argue, perhaps correctly, that it was predictable given the specifics of the Toyota systems.)