This post originated from an RSS feed registered with .NET Buzz
by Sam Gentile.
Original Post: System Metaphor and Agile Project Experiences
Feed Title: Sam Gentile's Blog
Feed URL: http://samgentile.com/blog/Rss.aspx
Feed Description: .NET and Software Development from an experienced perspective - .NET/CLR, Rotor, Interop, MC+/C++, COM+, ES, Mac OS X, Extreme Programming and More!
I have been working on a pure Agile team the last few weeks employing all the practices. It has been quite satisfying for me returning to my “roots“ from the 90's. In some respects, I have been playing the role of Agile Coach as well as Agile Architect. We emphasize Whole Team with our on-site customer team of three and Egoless Programming. I am making decisions much more again in terms of Whole Team rather than Sam. Two examples: one is that I almost instantly gave up a brace style of 22 years because a Common Coding Style is critical to an Agile Team and it was in the best interest of the team. Another example: when choosing a User Story to work on the other day that arose from our Planning Game a few weeks ago, I had the choice to work on a “cool” architectural thing that needed to be done, or to pair with a team member on a less exciting FIT test. I chose the FIT test and pairing because it was the best thing for the Whole Team and the relationships we want to maintain.
The System Metaphor is arguably the most vague, or difficult concept of XP/Agile for people. We struggled for a long time with this on the original Wiki in the embryonic stages of XP. Kent, has for me, the best definition, ""The system metaphor is a story that everyone - customers, programmers, and managers - can tell about how the system works." I led a System Metaphor session today and the Whole Team thought together for hours on what our vision for the system is. Of course, in coming up with the key ideas and phrases that led us to our System Metaphor we learned a lot about our system. We had been implementing stories somewhat without the idea of the whole, the vision. Thats what the System Metaphor. It facilitates coming up with that shared vision and it led, as it should to our Architecture or at least key things we need to thing about.