Several forces in the software industry are combining to dramatically shorten product cycle times for even the largest applications. These forces also shorten the feedback loops on an application's quality, usability, and customer relevance. As feedback loops shorten and the number of software deliveries goes up, it becomes paramount to inform and collaborate with employees, customers, and partners in a community setting.
Let me briefly share my perspective on how we can enable software teams to scale up their interactions from single-user conversations to collaborating across dozens, hundreds, and thousands of stakeholders. I'll also share my experience from the recent beta program of Agile Commons, a community where users, partners, and employees collaborated in an agile development process to define the top features during a seven-week release cycle.
Agile Makes Us Leaner - But Demands User Feedback Loops
Agile practices are being adopted by larger development efforts because they are intertwined with three forces driving fundamental change across the software industry - namely, software delivered as a service (SaaS), pay-as-you-go pricing, and Web 2.0 technologies. Together, these ideas are helping to wring out large amounts of waste in the software lifecycle and moving the industry away from shipping "products" toward providing software services that deliver a continuous stream of value.
While the software industry has been "doing" agile development for over a decade, what has recently changed? In the 90's, we were running small projects with XP and Scrum and delivering new releases in short time boxes. In 2007, the size of agile projects is increasing (e.g., Rally's Agile Lifecycle Management solution has many customers with over 75 users), while the release cycles are staying short. With multiple agile teams of developers and testers on faster cycle times, the importance of healthy user feedback loops skyrockets. So does the need to keep employees and partners apprised of the team's latest priorities and progress. Without a mechanism to quickly and openly collaborate with users on design decisions and feature rankings, you risk adding waste to the software process and delivering little value.
Producing rarely-used or never-used features wastes time and money in development, maintenance efforts, and opportunity costs. According to a Standish Group Survey, 64% of software features are rarely if ever used. [i] To avoid these losses, software organizations need to become masters of product feedback loops. Tight user feedback management and priority collaboration through flexible Web 2.0-based communities will become a required part of increasing agile scale and discipline. These communities provide a critical platform for engaging in dialogues, building trust, and encouraging promoters in the ecosystem of users, customers, and partners. They lead to deep customer understanding and less information hand-offs across the organization.
Why Agile and Web 2.0 Communities?
When people use the term ‘agile communities,' I think of consumer Web 2.0 communities like Facebook and mySpace that are tuned to the needs of agile development teams to test design ideas throughout the release cycle. Some of my favorite communities are those that actively engage the users - leaving behind the one-to-many publishing communication style of the past and bringing forward one-to-one and many-to-many communications of today:
- http://success.salesforce.com/ (Salesforce's customer community)
- http://www.dellideastorm.com/ (Dell's customer feedback community)
- http://www.agilecommons.com (the agile community that is home to Rally's customer community and Agile University)
By engaging the user community to help you dialogue, debate, and prioritize features upfront, you can reduce surprises, eliminate conceptual defects, and increase alignment with the customer's highest priorities. These user communities also improve transparency into the development roadmap and enable customers to rank and discuss the changing backlog.
Traditional enterprise support portals and forums like support.microsoft.com or