Cisco UK & Ireland Blog
Share

Why Agile is the new buzz word …


December 4, 2015


Traditionally Cisco software development has followed the Waterfall development methodology however as the software proliferation happens across the Cisco solutions portfolio therefore the software feature velocity needs to increase significantly to keep up with the market trends.

Waterfall is a product life-cycle management process governed by cross-function decision gate reviews and approvals. Like the product life-cycle, there are also similar Waterfall life-cycles for feature and system development.

The Waterfall development phases are as following:

abeel blog

In waterfall, development teams only have one chance to get each aspect of a project right. In an agile paradigm, every aspect of development — requirements, design, etc. — is continually revisited. When a team stops and re-evaluates the direction of a project every two weeks, there’s time to steer it in another direction.

One of the major setback of the Waterfall development philosophy is that the end customer’s exposure to the new feature happens at a set time frame therefore the end customer has no input/feedback as the feature development occurs.

The shortcomings of the Waterfall development methodology is summed perfectly in the words of one software development engineer:

“With waterfall, we spent 12 months planning for 4 months of engineering. With Agile, we spend 2 hours planning for 54 hours of engineering.
One word: productivity.”

As a result, Cisco software development team are rapidly moving towards Agile development philosophy as ‘Agile’ software development is a software development methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organising, cross-functional teams.

abeel blog 1

Agile development provides opportunities to assess the direction throughout the development lifecycle. This is achieved through regular cadences of work, known as Sprints or iterations, at the end of which teams must present a potentially shippable product increment. By focusing on the repetition of abbreviated work cycles as well as the functional product they yield, agile methodology is described as “iterative” and “incremental.”

One of the biggest benefits of the Agile development philosophy is that the end customer gets visibility of the new feature during the development phase. The software development teams and the end customer have the ability to interact, exchange ideas and ensure that the both set of audiences have the same understanding of the requirements.

Agile development methodology also gives the ability for the software development teams to address new requirements in a lot more flexible, dynamic and time effective method. It ensures that no amount of effort during the development stage is wasted and is reused during future feature development.

Therefore, Agile provides the following benefits:

  • A development methodology that incorporates iteration and continuous customer feedback to successively refine and deliver a product.
  • Agile uses continuous planning, continuous testing, and continuous integration, of both the project and the software.
  • Agile is lightweight, especially compared to traditional waterfall-style processes, and designed to be inherently adaptable to change.
  • Agile methods focus on empowering people to collaborate and make decisions together, quickly and effectively.

In a nutshell, Agile development process will ensure that Cisco is able to follow the rapidly changing trends whilst meeting the expectations of the industry and the more importantly its customers by producing solutions which are cutting edge, innovative and allow the customers to monetise these features by bringing new solutions to the market in a rapid time frame.

Leave a comment