
Here at Automata we use Agile development particularly the Scrum methodology. Scrum is rife with contention and brings out the inner fanboy in software developers and project managers, with rants and raves abounding out there on the web. We are ravers, with caveats.
We like scrum. Scrum does not ignore that the software development process can be as important as the final product itself. Paying attention to both of these factors is key in creating something utterly awesome. It helps us to break down work on projects into smaller chunks, and it makes managing a project transparent so there is hardly a chance for the client to be unpleasantly surprised.
We use Pivotal Tracker for managing our agile projects. It is a great application and I highly recommend it.
We take the idea that scrum is a framework quite seriously, and have chosen the methods that are most useful to us.
Most Effective
Daily Scrum – The daily scrum has been keeping Automata ticking for the last two years. Each morning we give a rundown of all the tasks we aim to accomplish that day, and while we try to stick to short and brief, sometimes we venture into project update territory. If we get to that point, we get the scrum back on track and talk about the project afterwards. At one point we had a crowbar to hold while we talked – looking intimidating helps to make sure you aren’t interrupted unnecessarily – but we have gotten a little bit better about this. Currently we have two scrums in our schedule, one with a client and one internally.
Sprints – Boy howdy do we like sprints. When you have a project that will take a minimum of six months to finish, being able to get to the end of a two week period with something to show for it keeps those doldrums away. Thanks to the daily scrum, if a piece is taking longer than anticipated, the client is aware of this fact in real time and adjustments can be made.
Sprint Planning – Having the ability to meet with a client on a regular basis and plan out the next two weeks is such a fabulous way to work. If the client/product owner wants to reprioritize a feature, it can be done easily and the trade offs are visible.
Effective
User Stories – User stories are most useful when designing a product and the feature set has not been determined. We tried creating user stories for a project with the features pre-cut, and it was actually harder to build the project that way.
Sprint Retrospectives – Here’s where the iterative part of scrum gets its time in limelight. For our processes around the office, these happen about once a quarter and we talk about what is working for us and what isn’t. With clients, we pair this meeting with the sprint planning.
Less Effective
Estimating Stories – I suspect we could be doing something differently with user stories and ranking tasks. There are lots of methods out there where the team has cards with the ranking on them and they flash it to each other a la blind man’s bluff (see photo). Because Automata is small, and because of the differences in working style, each developer rates their own task.
Burndown charts – We just aren’t finding them that useful right now. Maybe at one of our retrospectives we will decide to bring it back into the fold.

What are the cards that are stuck to your foreheads?
Just playing cards – AWESOME playing cards! They are my Psychonauts promotional deck. It’s covered with art from the best video game no one ever played – you played a kid who ran away from the circus to psychic summer camp and every “level” was inside of the head of different characters like a german modernist (white cube that transformed), hippie chick (psychedelic roller rink), an insane milkman (1950′s style suburbia but TWISTED) and a failed artist (let’s just say the level was called “Black Velvetopia”).