Cisco Cisco Unified Contact Center Enterprise 8.0(2) White Paper

Page of 4
White Paper
© 2011 Cisco Systems, Inc. All rights reserved. This document is Cisco Public Information. 
1
Agile Product Development at Cisco: 
Collaborative, Customer-Centered Software Development
Ten years after publication of the Agile Manifesto, the Agile Product Development Methodology is entering the 
mainstream of IT development. A recent Forrester Research survey reports that 45 percent of software profes-
sionals now use Agile methods, and many others use portions of the method.
Agile improves software quality by empowering highly skilled technical professionals to 
organize into self-managing, accountable, cross-functional teams to create products that 
deliver tangible business value. Cisco
®
 engineers have put the full principles of Agile 
development into practice, and worked closely with customers to create more valuable 
software through accelerated innovation and products that meet genuine market needs.
Despite Agile’s promise, its benefits do not come automatically. Instead, the shift from 
traditional “waterfall” software project management to an Agile methodology is a journey 
that requires a change in thinking and behavior. In this paper we describe our customers’ 
experiences while working with the group leading Cisco’s unified communications and 
collaboration business during its shift to Agile.
Cisco’s Collaboration and Communications Group (CCG) identifies market transitions 
in the way enterprises collaborate, and delivers collaboration software, devices, 
infrastructure, and services.
The group plays an important role in Cisco’s software leadership. CCG’s portfolio 
includes unified communications (for example, desk phones, softphones, voicemail, 
instant messaging, and Cisco WebEx
®
online conferencing with integrated video), desktop 
virtualization solutions, contact center solutions, the enterprise social software platform 
Cisco Quad™, and the Android-based enterprise tablet Cisco Cius™.
The Road to Agile
Like many enterprise IT vendors, Cisco has long used the waterfall development method, 
and the CCG team was no exception. However, as part of an ongoing commitment to 
accelerate innovation, the CCG engineering team began trying the Agile method in 2008.
According to CCG senior vice president and general manager, Barry O’Sullivan, “Waterfall 
worked reasonably well, but had some drawbacks. With a big, long development cycle 
and a big, long testing cycle it wasn’t very efficient. If we found something late in the test 
cycle it was hard to go back to the start and make changes.” The shift to Agile was, in 
many respects, a logical fit with Cisco’s culture of collaboration, both between customers 
and employees. “Part of Cisco’s culture is to be highly customer focused, and so the 
group desired a method with more formal and structured ways to get customer input into 
the development process,” O’Sullivan explains.
After successful trials, and with a transition plan already created, CCG announced 
Agile as the group’s primary methodology in November 2009. As part of the shift, CCG 
executives brought in new senior leaders with deep Agile expertise to guide, coach, and 
promote the process. The executive team also invested in training to support an Agile 
culture and an understanding of the process, and new technology tools for capturing 
customer feedback.
What Is Agile?
 is a group 
of 
based on 
, where requirements and 
solutions evolve through collaboration 
between 
.
The Agile Manifesto introduced the term in 
2001 and reads, in its entirety, as follows:
We are uncovering better ways of 
developing software by doing it and 
helping others do it. Through this work we 
have come to value:
•  Individuals and interactions over 
processes and tools
•  Working software over comprehensive 
documentation
•  Customer collaboration over contract 
negotiation
•  Responding to change over following a 
plan
That is, while there is value in the items on 
the right, we value the items on the left more.
What Is Waterfall?
Waterfall is a sequential design process in 
which progress flows in stages from the top 
to the bottom, with a great deal of time being 
spent in developing initial requirements, 
analysis, and design; and flowing steadily 
downward to testing and implementation. 
The model was developed for the 
manufacturing and construction industries, 
physical environments where after-the-
fact changes are prohibitively costly if not 
impossible, and later adopted for software 
as formal models for development did not 
exist at the industry’s inception. 
Source: Wikipedia