Cisco is a global leader in networking solutions to some of the world’s top corporations, who depend on them to keep their mission-critical systems continuously operating. Cisco has actively invested in efforts to ensure that the quality of its software is world-class.
Cisco’s challenge revolved around getting their Java developers committed to a development testing process that would eliminate errors and generate clean code. Static analysis, unit testing, and code review were in need of particular attention.
Cisco’s products power many sites and applications across the Internet, so the company understands that much is riding on its ability to deliver high quality solutions. To meet constantly-rising customer demands and expectations, Cisco launched a far reaching initiative to drive excellence in terms of software quality.
“Cisco realizes that to remain at the forefront of the market, it has to have the best tools for increasing quality,” says Andy Chessin, a Technical Leader who is responsible for evaluating software testing products and tools and promoting their adoption.
One of Cisco’s challenges, however, revolved around getting its Java developers committed to a development testing process that would eliminate software errors and generate clean code. Developers and engineers are held accountable for meeting strict demands for testing code and quality, specifically static analysis, unit testing and code review.
Such high demands, however, cannot be met without sophisticated testing platforms and software. With this in mind, Cisco invested in Parasoft Jtest and Parasoft DTP and Chessin realized the necessity of developing a clear plan for implementing the technologies, training developers, and supporting adoption.
Now recognized simply as “the blueprint,” Chessin drew on the Parasoft DTP framework to create a plan that established roles, responsibilities, and expectations to drive implementation of Jtest among Cisco developers.
The results of these efforts have been phenomenal. Over the past few years, the number of developers using the Parasoft tool suite has grown explosively—rising from 24 to over 1100 regular users. What made the high adoption possible is that in addition to directives from Cisco’s senior leadership, successful implementation was tied to diligent planning and active support.
Chessin and his team have provided the infrastructure and assistance necessary to scale up the adoption of Parasoft tools. They met with developers to address questions, held educational lunches, and produced video-on-demand courses to support their training. Such moves proved extremely important to the success of the rollout. By providing resources to developers and architects in a just-in-time fashion, they were able to support the training and development of many more people than they could have using conventional training.
Meanwhile, Parasoft representatives actively addressed developer concerns and questions, and rapidly rolled out new features and capabilities necessary to support the usability and scalability of Jtest in Cisco’s demanding environment.
“Without the cooperation of Parasoft, I personally would have been a lot less successful,” says Chessin. “Things would have gotten done, but not as fast. Whatever I felt was a show-stopper or was getting
in the way was resolved right away.”
Enabling Automated Configuration
One key productivity boost came through automated configuration: Parasoft enables software architects to transfer a configuration of rules and settings for testing one code base to another codebase, such that modifications and new rules are easily configured.
This is especially helpful when developers work in different technologies such as Threads and Enterprise Java Beans. In a matter of seconds, rules can be turned on or off to protect the codebase without the manual introduction of new rules and settings. When the architect puts the new and tailored rules on the team server, they become instantly accessible to all developers.
Eliminating Errors in the Code
Productivity gains are realized by identifying errors in a way that helps developers improve their own accuracy. When a developer clicks on an error, for instance, documentation not only explains how a particular rule works but also provides an example of preferred code. Nightly builds of the code base have become cleaner as developers run Jtest at the desktop before checking in their code. By addressing software errors and defects earlier in the software development process, they eliminate quality problems that might otherwise have harmed productivity or created quality problems downstream.
Developer productivity has risen as a result of Parasoft DTP’s integration with the Eclipse IDE. The richness of the IDE enables developers to manage projects in a single location and switch between them. It also offers quick-fix functionality. In many cases, Parasoft DTP has provided a gateway for introducing this powerful tool and framework to developers.
“Parasoft Jtest has taught engineers how to be better developers. In the process of using Parasoft Jtest, we are getting fewer and fewer defects in the code base because developers are learning how to write better Java.”
– Andy Chessin, Technical Leader
While Cisco’s tool evaluation team considered other possible tools for Java-based software quality management, it has now clearly established Parasoft as the standard. “We have the best tool in this space that could be deployed in this company,” says Chessin.
TAKE THE NEXT STEP
Discover an effective framework to use when selecting a static analysis solution. Download the whitepaper.