BrainBlog |
![]() |
![]() |
|
| BrainBlog is the Brains4All weblog. Established 2004 in The Netherlands. Brains have been working in IT since 1983, working on the internet since 1993. They have nothing particular to say, but their thoughts need a place to stay anyway. This is that place. | ![]() |
Pattern: OrientationNovember 27, 2007 |
marko
Because of our development process it is easy for us to work on the same project and even the same functionalities with the whole team together. As we explained before we use Stories to categorize and describe the necessary features for a project. Once we start on a story we split it up in tasks. Tasks are simple things comparable with todo's and can typically be accomplished by one pair of designers or programmers working together on the same computer. Tasks that do not produce actual code, like server maintenance or registering a domain name can be carried out by individuals working solo of course. Most tasks inside a story will however be development tasks and will be carried out by two people working together using a technique called Pair Programming. Using the orientation pattern it becomes really simple to switch pairs for developers. For it to work correctly you need to understand about the TDD (Test Driven Development) cycle, here it is; 1. Write a test Now stories will typically be split up into tasks, for example: * Write marketing text So you see this story includes a lot of different tasks, not all tasks are Design or Development tasks by a long shot. Still since those are most often carried out by a pair these are the most interesting when you're switching pairs halfway through a task. Let's look at these development tasks: * Submit a form and validate name and email Suppose I've finished with my registering the domain name tasks and I go and sit next to Serge. To help me orientate I can ask these simple questions: Marko: Hi, what are you working on? By asking these simple questions I can quickly orientate myself inside the pair. I know what task we're working on in the story, I know in which part of the TDD cycle we are. For me this is enough to be able to dive in almost immediately and add value to the pair. A funny side effect of this is that a task can be finished by completely different people that started it and almost everybody on the team may have worked on it. This helps to spread knowledge about the system throughout the team and helps you to keep code easy to change. Also by switching pairs frequently I've experienced a much higher sense of accomplishment and team effort. It also helps to keep a lot of energy in the team and if you change pair every 5-15 minutes it helps you prevent those Gung-Ho refactorings that seem to take forever. What are your experiences with switching pairs? CommentsPost a comment |
Recent entries
Archives
CategoriesBlogRoll |



