Discover PerformanceHP Software's community for IT leaders // March 2013
Locking in quality in a fast, cloud-driven world
Speed is a critical part of continuous delivery—but you have to balance it with quality.
Enterprise IT is getting more fragmented as organizations bring in a mix of SaaS, cloud-sourced, and on-premise applications. This approach has a lot of benefits, but it’s also driving complexity sky high—exactly when the apps team is expected to deliver faster than ever. But this era of always-connected consumers means the demand for continuous delivery—with accelerated development and testing, and effective, ongoing monitoring—isn’t going to change.
When an applications team is asked to accelerate its processes and juggle all of the management and execution balls, something is bound to drop—usually starting with quality. But quality isn’t expendable, so apps teams need a renewed focus on QA, with practices that suit the rules of this timely reality of continuous integration and delivery. Here’s how to get started.
It might seem obvious that quality matters. But the demands of continuous delivery mean that speed often eclipses quality as a top priority. Start by affirming, to your apps teams and the business, that quality is paramount. Always try to align your perspective on quality with business objectives. Start with: “High-speed delivery of poor customer experience isn’t the goal.”
To align quality with business goals, you must ensure that everybody agrees what “quality” actually means. In the world of continuous delivery, the definition of quality should embrace:
- Providing a high-quality user experience across devices and platforms. This means adhering to organizational platform requirements relying on automated quality, functional, and performance testing across all of the environments. This helps ensure that the experience meets the functional, responsiveness, and ease-of-use expectations of your target users.
- Ensuring security without compromising user flexibility. Your solution must meet the security requirements of the company and the security expectations of the consumer. Security and compliance requirements must be considered, implemented, and tested from the beginning.
- Aligning user expectations with business requirements. To achieve—and maintain—this balance, you need users and business owners to provide their initial requirements to the applications teams, then consistently supply feedback throughout the development process.
- Defining, delivering, and redefining strategic value. Your applications teams must be able to balance time and resources to invest in the things that matter most and that will meet the strategic goals of the organization. And then they have to continuously reassess those unmet priorities (“the backlog”). No organization has the resources to invest in low priorities.
As a next step, it’s essential to establish your tools and techniques, or best practices. Continually assess the health of the delivery process to make sure your processes are effective and don’t create bottlenecks. Track real-time metrics on key delivery parameters such as velocity, resource utilization, and defect resolution rate.
To keep quality at the center of the continuous integration and delivery processes, identify automated and manual testing tools that you need regularly (such as automated functional testing tools to support build verification and regressions) to deploy in-house. Testing tools that you’ll use less often (high-volume load testing, specific mobile device testing) or can’t afford to deploy in-house may make sense as SaaS implementations. The resourcing is more flexible, and you’ll still have the right tool at the right time.
The goal is to spend less time fixing last-minute problems—or worse, problems found in production by users. Your priorities for getting there are:
- A solid quality assurance process
- Real-time metrics on team and project effectiveness
- The ability to adjust as needed, based on those metrics
- The tools to drive efficiency through automation
A potential benefit is to be able to reallocate development and testing staff to higher-value sprints and projects—and ultimately deliver more value to your end user because you’re not stuck in a testing bottleneck or struggling to fight fires.
Reenergize the business
The push for continuous delivery requires a new mindset. No one’s experiencing that more intensely than the apps teams working to deliver high-quality solutions faster and faster. With speed alone turning out to be inadequate, apps leaders need to help their teams revisit the importance of quality with a new lens—continuous delivery with continuous quality.
For more on HP’s market-leading Quality Management and HP Agile Management solutions, read the white paper “Finding Agility in the Age of Applications” (reg. req’d).
Register for HP’s premier event for inspiration from industry leaders, the HP inside scoop, and a deep dive into tomorrow’s enterprise IT trends.
HP Software VP Paul Muller brings in HP and industry-wide experts each week for challenging discussions about trends in Big Data, mobility, IT security and more.
Forrester analyst Kurt Bittner discusses how to enhance Agile development with continuous integration and automated testing to deliver real business results.