Agile and the Enterprise Part 2: Agile Quality Management

Read Agile and the Enterprise Part 1

 

A large institution will often be heavily regulated. An error can have massive financial and reputational repercussions. Quality attributes such as security, performance, reliability and availability cannot be compromised on.  Large organisations may already struggle to complete all the required QA checks within the Waterfall model. When trying to adapt Agile methods, an organisation can become overwhelmed with the amount of Quality Assurance that need be done in limited time.

 

Quality Assurance

While agile techniques cater to testing user stories under implementation, in a distributed environment each new feature can mean multiple integration points and interfaces, turning testing into a very large task. At such scale organisations are often required to use the traditional Waterfall testing phase at the end of Agile development to ensure that nothing has been broken and all systems play well when linked together, not to mention having all systems available in the test environment. This is where automation complements Agile by speeding up the lengthy tasks.

 

Test automation tools help with relieving resources from executing tests that need to run frequently, such as after each build. Tools for security and performance testing will also ensure automated validation of non-functional characteristics of your applications.  For manual testers, instead of spending time documenting the test steps upfront, exploratory testing is great technique to perform manual validation on the fly, while tools such as HP’s own Sprinter for Manual Testing record and document the testing actions performed. Service virtualization tools can mock up unavailable components of third party applications, allowing you to assure that your application sends correct requests to systems owned by other teams or vendors, even before you have access to the real system. But then we arrive at the biggest bottleneck of all, which is setting up a test environment to host a large distributed system. This is where agile infrastructure solutions such as cloud and automated provisioning and deployment tools help to take your organization to the next level of Agility.

 

Risk Exposure drives stringent testing requirements for various industries, especially if they are dealing with customers’ money and private information. The ability to execute large suites of functional and non-functional tests in a streamlined and automated manner is crucial. Capabilities for scheduling unattended test runs can shave weeks off the testing effort.  The ability to aggregate the results of all types of automated tests (such as unit, integration, functional, performance, etc), delivers a full picture of the overall quality while development teams focus on delivering new functionality.

 

System Integration

Enterprise systems are heavily integrated among themselves, and with third-party systems. When it comes to System Integration Testing, you rely on relevant applications to be available during development and in the test environment. Working in an Agile manner you will be required to have system integration testing early enough to allow for any defects to be addressed in subsequent sprints, while allowing enough time for each team to have their system ready for testing.  When working with distributed teams and applications, you can have two or more development teams working together on integration stories and ensure the integration is validated in development environment first; rather than waiting for the test environment to become available.  Agile management tools can really assist in such an arrangement. For example, HP Agile Manager allows you to link user stories to applications, teams, and group with other stories, helping you track the distributed development of an integration.

 

However, as I have already mentioned at the beginning of this post, when it is not possible to collaborate with other teams you can use service virtualization technology to stub out existing unavailable systems in either test or development environments.

 

Be sure to visit our dedicated Enterprise Agility page to find out how HP can help in this space.

 

Do you have distributed teams and systems at your organisation? How do you adapt Agile methods to your environment?

 

The views expressed in my contributions are my own and do not necessarily reflect the views and strategy of HP.

 

References:

Leffingwell, Dean. Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise. Addison-Wesley, 2011.

 

Leffingwell, Dean. Scaling Software Agility: Best Practices for Large Enterprises, Programs, and the Enterprise. Addison-Wesley, 2007

 

Scaled Agile Framework. URL:  http://scaledagileframework.com. Retrieved on 22 May 2013.

Leave a Comment

We encourage you to share your comments on this post. Comments are moderated and will be reviewed
and posted as promptly as possible during regular business hours

To ensure your comment is published, be sure to follow the Community Guidelines.

Be sure to enter a unique name. You can't reuse a name that's already in use.
Be sure to enter a unique email address. You can't reuse an email address that's already in use.
Type the characters you see in the picture above.Type the words you hear.
Search
About the Author


Follow Us
The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation