Agile Development Scrum

Agile Software Development in Micro Focus

As software developers ourselves, we have a great deal in common with other software providers who serve the demanding enterprise application market. We all face the same competitive pressures for faster development cycles and improved software quality. It is these pressures that drove us to move to new, more agile software development processes.

For this reason, we felt it would be of value to recount our transforming experience with agile techniques, and the benefits of the innovative Scrum project management methodology in particular.

Our journey started with a search for a more efficient project management tool, but quickly led to exploration of the highly recommended agile software development methodology. For Micro Focus, the business benefits of moving from more static, traditional development processes have been extraordinary, ranging from dramatically improved responsiveness to customer needs to greatly enhanced product quality. We firmly believe that these and other benefits are readily achievable by any development organization using a similar approach.

Scrum project management for agile development

At Micro Focus, we develop large and complex software products that are frequently used in business critical situations by major corporations worldwide. As a result, the demands on our development groups are extremely challenging. Not only is it vital that new product versions keep up with innovation in the fast moving IT industry, but software quality must always be rigorously maintained. Consequently, development managers in Micro Focus are always looking for new ways to improve their teams’ performance.

A major concern for our development community was that the project management package used for controlling software development was too heavyweight a tool for their needs. The package had comprehensive functionality, but development staff found it labor intensive to use and inflexible. Updating the plans and changing the order of tasks were time consuming activities.

A new approach to project management

It was the search for a more efficient approach to project management that led to the
agile development initiative in Micro Focus. The manager of the Revolve development team in North America decided to pilot the lightweight XPlanner open source project management tool, which is designed to support agile development. However, he also understood that any project management software needs compatible processes in order to be effective and so he turned to the Scrum project management methodology, which is widely promoted in agile development forums.

The basic principles of Scrum can be summarized as follows:

• It is a highly iterative process which takes an incremental approach to software production
• Development work is broken down into ‘sprints’ of thirty days or less, which deliver complete, working versions of the product
• Brief, daily ‘scrum’ meetings take place to check progress, agree next steps and identify any obstacles
• Multi-functional teams are used, representing all aspects of the development process
• The teams are empowered to manage all activities and make any decisions needed to remove obstacles and meet their goals
• The objective is to take the complexity out of product development
 
Changing a process as fundamental as product development is a major upheaval for any software organization and affects team structure, development processes and the way the team interacts with other parts of the company. As a result, there were some teething issues and a few iterations were needed before smooth operations were achieved.

The issues that needed to be resolved were understandable consequences of moving from sequential, or waterfall, processes, with clear separation of functionality, to the highly focused, multi-function teams of the agile approach. For example, QA and documentation teams were not accustomed to being involved at the start of a project and their processes had to be adapted to fit the new model.

These early adjustments were soon accomplished and the development manager was pleasantly surprised at how quickly the team took to the Scrum process. It was not long before reliable and efficient production was established and the early feedback from the developers was extremely positive. The initial pilot easily exceeded our expectations on all fronts.

The limitations of the waterfall process

The advantages of the Scrum approach can be most clearly illustrated by comparison with the traditional, waterfall development process it replaced. With the old process, expensively produced and extensive requirements specifications were set in stone at the start of the project. Each subsequent stage of design, implementation validation and documentation was carried out as separate operations by specialized teams, a process which was taking two years or more to complete.

A clear limitation of this process is the length of time taken. Not only does the customer have a long wait for new features, but there is also the real possibility of requirement priorities changing over time. Less obvious issues include the often severe impact on product quality caused by making a large number of changes at the same time and the high project management overhead that this method generated.

The productivity of these large projects was also a concern. The inflexibility of the methodology means that as much effort was spent on features that delivered little benefit as on vital enhancements. The complexity of plan inherent in the old processes, plus the lack of interaction between functional units, resulted in frequent impediments to progress, which was a major factor in driving change.

The benefits of Scrum

The most dramatic benefit the new Scrum process delivers is greater responsiveness to customer needs. A development project now consists of three sprints and a QA exercise, resulting in a fast, four month product release cycle. This means that urgent customer requests for new functionality and support of new operating system or database versions can be quickly addressed.

The reaction of the developers involved is especially interesting. A survey carried out only two months after the initial adoption of Scrum showed that 75% of the participants felt they were much more in control and a lot less stressed. They also reported markedly raised motivation and productivity resulting from the empowered, team oriented style of working.

The contents of product releases are now finely tuned to meeting customer requirements. With industry surveys indicating that 60% of software functions delivered are simply not used, improvement in this area was urgently needed.

Our risks are also significantly reduced. Because of the short duration of each development ‘sprint’, the cost of mistakes in requirement specification or design is limited to a few weeks of effort. In addition, the incremental approach to product change greatly reduces the risk to product stability and product quality has measurably improved.

The journey continues

The Revolve team’s successful experience with Scrum led to the spread of the process to all Micro Focus’ development groups. Today, a year later, consensus on the value of agile development is unanimous, as the more customer-centric approach has been proven to deliver enormous business benefits.

The effects of the agile methodology reach well beyond the development organization. Account managers can be more proactive in meeting their customers’ needs, customer support workloads are reduced and positive feedback from customers is of great value to the sales team. Also, better returns on development investment through improved productivity are always welcome.

The scope of the new processes is being extended to include more activities, such as requirements capture and, as Scrum processes can apply to any type of project, its benefits are being communicated throughout the company.

What started out as a simple search for a new project management tool has resulted in an impressive transformation of our development style, bringing huge gains in our competitiveness as a provider of ground breaking software products.

Promoting debate with the Micro Focus Application Provider Program

The objectives of our Application Provider Program go beyond just establishing a framework for business relationships. We also see great benefit in sharing knowledge and experiences for the community of ISVs that use Micro Focus products.

In the fast moving software industry, new concepts are emerging continuously. They may present valuable business opportunities or provide better ways of developing applications, but do they really work? The best insight into the hot topics in the industry, such as agile development or software as a service, comes from those who have tried them.

Through executive briefs, webcasts and other forums, we bring you our own experiences and those of our partners to shed much needed light on these subjects with the intention of promoting productive discussions. In addition to improving understanding, these initiatives provide an opportunity to develop these ideas further to deliver real business benefit.

people9