Over the past year I’ve taken an active role at my organization of the agile coach (albeit a pretty crappy one) and in my time there tightening up our processes and culture, one thing I’ve come to realize is there are a couple of fundamental agile practices that are so easy to understand and yet difficult for many organizations to adopt.
I’m not referring to technical practices. Often as software developers we focus on the technical aspects of our jobs. While TDD/BDD, IoC, Pair programming, continuous integration and other things are important, we should also challenge ourselves to learn more about the business and what aspects of the software drive money into the company. In the end, it all comes down to the features that are baked into your products. What else pays the bills?
A hard change to make in an organization that is transitioning to agile is getting them to think in minimum marketable features. This type of thought and culture change is a core piece of being able to deliver software iteratively. Without focusing on MMF’s, we get caught up in feature bloat, neglect to release our software early/often and get bogged down in the process. I’ve come to find that feature organization and presentation are an extremely important piece of the puzzle. Without being deliberate with your features, you run the risk of a chaotic feature environment as features bleed into one another and become hard to distinguish. Which in turn makes them difficult to release in significant portions.
At the opposite side of the spectrum it is possible to release TOO many features in too short of a time span. This feels like the software is racing out the door as soon as your’re done compiling the code. While not as dangerous as never releasing features, it results in low quality software as ancillary sanity checks are not performed because of the rapid pace of release. I would argue that this is a better place to be in as far as deployments are concerned, however it’s a worse place to be when it comes to product quality.
I’m sure more posts along this vein will come. This is one I’ve been letting sit for awhile and with the transition to wordpress, I’m attempting to clear the backlog so to speak. Enjoy 🙂