In my role as a Director of Product Management at Borland, I have to deal with a lot of change so that quote from W. Edwards Deming really hits home. Let me explain.
Marketing discovers a new feature that is suddenly a "must have". A customer decides their top 10 defects are no longer as important as their new top 10 list. Senior management acquires a company with an existing product line and needs new integrations. Engineering decides yesterday's technology is passé and wants to start using a new technology. Sales expands to a new country and discovers a new set of localization requirements. Finance wants to cut license costs so they demand removal of all commercial components. And sometimes it is just as much my fault –- I do not always know what I really want until I can see some working software. At times, I just want to say, "Stop!"
Despite my wishes, I know the changes will not stop. Hence, I know from practical experience that change never stops, especially when it comes to requirements. Freezing requirements just means refusing to meet new needs. The success of my products depends on my ability to embrace change. Of course, this is easier said than done in my role as Product Manager.
The truth is that I have been coaching people about embracing change for a long time. In 2001 and 2002, I worked as a Mentor at TogetherSoft where I helped coach customers on adopting Feature Driven Development as a way to deal with change. I was also fortunate to observe some early adoption of Extreme Programming (XP). After Borland acquired TogetherSoft at the end of 2002, I saw more agile practices during customer engagements and started to observe Scrum and XP implemented on a large, enterprise scale. In 2005, I left field consulting behind to join the Borland engineering team as a Product Manager. It is in this role that I have been working as part of a broader Borland initiative to drive Agile practices, such as Scrum, into common use across the organization and my product team specifically.
Having been a part of Borland for nearly 5 years, I have experience in the application of many tools and techniques. I have taken a turn with many different techniques such as business process modeling, use case analysis, OOA/D with UML, and lately user stories and personas. I have also taken a turn with many different types of tools for requirements, modeling, change management, version control, and development. I comfortably consider myself a "tools person". I like using tools and, unlike some folks I have met in the Agile community, I think they play important role in software development -- just not more important than individuals and collaboration.
Through all of these experiences, I know one thing -- for all that experience, I still have a lot to learn. This is why I am so excited to start blogging. I look forward to the sharing of problems encountered and solutions tried. I hope you gentle readers will join me in exploring the challenges of being Agile in the modern business world. Together we just might find the path to survival.