AGILE SOFTWARE TESTING



Similar documents
CUSTOMER SUCCESS STORIES

Adopting a Continuous Integration / Continuous Delivery Model to Improve Software Delivery

QUICK FACTS. Helping a Software-as-a-Service Provider Scale up Automated Testing TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

Creating Customized Training for a Leading Insurance Company

Designing and Implementing IT Infrastructure Standardization for a Large Energy Company

QUICK FACTS. Facilitating Application Packaging on Behalf of a Global Professional Services Company

QUICK FACTS. Providing Application Development and Data Migration Support for a Leading Healthcare Company

QUICK FACTS. Managing a Service Operations Team for a Leading Software Developer. TEKsystems Global Services Customer Success Stories.

QUICK FACTS. Implementing Business Intelligence and Retail Signal Solutions for Sony PlayStation TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

QUICK FACTS. Enhancing the Marketing Campaign Management Portal for an SaaS Provider. TEKsystems Global Services Customer Success Stories

QUICK FACTS. Implementing Oracle Business Intelligence Applications 11g for a Fortune 500 Corporation

Facilitating a Windows 7 Upgrade and Application Packaging for a Major U.S. Bank

How To Improve Service Transition

QUICK FACTS. Providing an Infrastructure Managed Services Solution for a Telecommunications Provider

QUICK FACTS. Modernizing a Retailer s Point-of-Sale System from Off Shore. TEKsystems Global Services Customer Success Stories.

Manage projects effectively

QUICK FACTS. Replicating Canada-based Database Support at a New Facility in the U.S. TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

Helping an oil and gas company maximize a business intelligence investment

QUICK FACTS. Guiding the Identity and Access Management Strategy for Yale New Haven Health System TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

Software testing an agile environment

QUICK FACTS. Consolidating Service Desks Post-Merger for a Leading U.S. Energy Supplier TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

END TO END DATA CENTRE SOLUTIONS COMPANY PROFILE

Table of contents. Enterprise Resource Planning (ERP) functional testing best practices: Ten steps to ERP systems reliability

QUICK FACTS. Transitioning On-Site Support to an Off-Shore Model on Behalf of an Insurance Provider

Establishing a Mature Identity and Access Management Program for a Financial Services Provider

Increasing Business Efficiency and Agility for ATGbased. Systems. the business challenge: upgrading the development pipeline

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

Comprehensive Testing Services for Life Insurance Systems

QUICK FACTS. Establishing a Telephony Service Desk System to Enhance Telecommunications Support. TEKsystems Global Services Customer Success Stories

Bridging the Gap Between Acceptance Criteria and Definition of Done

Cisco Unified Communications and Collaboration technology is changing the way we go about the business of the University.

Accelerating Time to Market with Agile Testing

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

Terrace Consulting Services

QUICK FACTS. Mitigating Co-employment Risk for a Global Interactive Entertainment Company TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

QUICK FACTS. Delivering a Unified Data Architecture for Sony Computer Entertainment America TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

ICAgile Learning Roadmap Agile Testing Track

Cloud CRM. Scalable solutions for enterprise deployment

Accelerating software testing effectiveness using Agile methodologies..

Agile Development and Testing Practices highlighted by the case studies as being particularly valuable from a software quality perspective

Project Lifecycle Management (PLM)

Managing a 24x7x365 Support Center and Network Engineering for a Government Agency QUICK FACTS

Is your outdated billing system costing you time and money?

Scale agile throughout the enterprise A PwC point of view

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

Designing a Customized E-learning Solution for a Worldwide IT Company

The Customer. Manual and Automation Testing for a leading Enterprise Information Management (EIM) Solution provider. Business Challenges

Appendix A-2 Generic Job Titles for respective categories

Good Agile Testing Practices and Traits How does Agile Testing work?

Advisory Consulting. Maintain and support critical business applications with Managed Services

TDWI strives to provide course books that are content-rich and that serve as useful reference documents after a class has ended.

QUICK FACTS. Delivering Superior IT Support Services for a Video Game Maker TEKSYSTEMS GLOBAL SERVICES CUSTOMER SUCCESS STORIES

IT Operations Management: A Service Delivery Primer

Sonata Managed Application Lifecycle Services

Business Analyst - IT

A Performance-Driven Approach to Application Services Management

Project, Program & Portfolio Management Help Leading Firms Deliver Value

PRACTICAL BUSINESS INTELLIGENCE STRATEGIES:

Tavant Technologies. Flexible Approach to Test Automation with Measureable ROI. White Paper. Madan Mohan Reddy B Santosh Kumar CH

SURVEY FINDINGS. Executive Summary. Introduction Budgets and Spending Salaries and Skills Areas of Impact Workforce Expectations

Workshop on Agile Test Strategies and Experiences. Fran O'Hara, Insight Test Services, Ireland

The Why & How of Managed Services

Functional Validation of SAP Implementation

Request for Proposal for Application Development and Maintenance Services for XML Store platforms

Achieve Economic Synergies by Managing Your Human Capital In The Cloud

Picasso Recommendation

Payer test platform: How to ensure compliance, reduce timeto-market and maximize return on investment

Brocade Network Monitoring Service (NMS) Helps Maximize Network Uptime and Efficiency

Digital Marketplace Services Service Definition

QUICK FACTS. Providing a Unified Communications Training Solution to End Users Across North America

CHOOSING THE MOST EFFECTIVE APPROACH TO VENDOR CONSOLIDATION

How do you manage the growing complexity of software development? Is your software development organization as responsive to your business needs as

Innovation Reimagined

Transformation through ICD-10 Adoption

MANAGEMENT CONSULTING ENTERPRISE SOLUTIONS IT OUTSOURCING. CAPABILITY briefing

Often Clients tend to use in-house functional resources for their testing and validation processes ending up with issues such as

CONSULTING SERVICES Business & technology consulting and managed services

THE WHY & HOW OF MANAGED SERVICES

Is it time to upgrade to an easy-to-use, customer-centric policy system?

Measuring Success Service Desk Evaluation Guide for the Midsized Business: How to Choose the Right Service Desk Solution and Improve Your ROI

Quality Assurance in an Agile Environment

Application Services Portfolio

Custom Software Development Approach

Agile Testing (October 2011) Page 1. Learning Objectives for Agile Testing

The Resource Management Life Cycle

Sonata s Product Quality Assurance Services

TALENT MANAGEMENT A KEY BUSINESS DRIVER

CONSULTING SERVICES Financial Systems Implementation Support

SOA Testing Services. Enabling Business Agility and Digital Transformation

Deloitte and SuccessFactors Workforce Analytics & Planning for Federal Government

SmartBear Software Pragmatic Agile Development (PAD) Conceptual Framework

Duck Creek. On-Demand

Agile So)ware Development

ENABLING TODAY S WIRELESS ENTERPRISE

What s new in the HP Functional Testing 11.5 suite Ronit Soen, product marketing John Jeremiah, product marketing

Autonomic computing: strengthening manageability for SOA implementations

Best practices in project and portfolio management

Overview. Microsoft Office Enterprise Project Management Solution. In this article

Transcription:

AGILE SOFTWARE TESTING Business environments continue to rapidly evolve, leaving many IT organizations struggling to keep up. This need for speed has led to an increased interest in the Agile software development methodology. Introduced in 2001, Agile s focus on customer service, quick delivery and continuous feedback has made it one of today s go-to development methodologies. However, adopting Agile in today s multi-vendor, multi-location project environment can be challenging since the methodology requires new ways of managing SLAs and holding vendors responsible for their deliverables. IT organizations that attempt to bring outsourcing vendors into their Agile environments or transition their Agile-novice vendors are often met with surprises when these vendors fail to keep pace. TEKsystems.com 1

The TEKsystems Approach to Agile Testing TEKsystems provides testing services using our proprietary quality management approach, which is based on standard Agile principles and augmented with our own expertise. Our services are customized to meet each client s unique business needs. We utilize proven testing approaches to effectively support the client s technical environment. Unlike many quality assurance (QA) organizations that struggle to maintain quality in fast-paced Agile environments, TEKsystems embraces an approach to quality assurance and testing that includes: 1. Adopting a team approach to identifying and addressing quality issues 2. Doing things right the first time 3. Reviewing quality throughout all stages of the development process 4. Automating tests early and often The chart below shows how Development, Business and QA work together to produce a quality application in an Agile project. QA Business Development Assigned Review Intent Clarified Walkthrough Developed TDD Coding Pair Programming / Code Review Set Criteria Test Creation Provide Automation Support Provide Feedback Desk Checks Execute Unit & Tests Final Desk Check Intent Confirmed Accept Deploy to QA Smoke Test Tested Sprint Demo Delivered Deploy to UAT Test Case Creation Automation Creation Exploratory Testing Regression Testing QA Signoff The Importance of Automation In order to meet ever-increasing regression testing needs, Agile project teams incorporate automation into their testing strategy. This strategy addresses all of the automated testing responsibilities of the entire team, including any unit testing performed by developers and incorporating the input provided by the business units. While customizable for every project, the automation testing strategy utilizes best practices based on previous experiences and real-world lessons learned. Each project s automation testing strategy includes the following components: Strategy development Maintainable test automation framework Level-specific tools and approach for each level of testing TEKsystems.com 2

High-impact automation, including automated unit testing Collaboration with Quality Assurance (QA) team for knowledge share and automated user story testing Tools aligned with the client environment, budget criteria, technologies and available skill sets An effective test automation strategy requires automating tests at three different levels, as shown in the diagram (at right). In the traditional waterfall test automation approach, unit tests constitute the smallest percentage of test automation the majority of automation is end-to-end regression. Automation begins after a long period of manual testing to find, resolve and close defects. Conversely, the Agile test automation pyramid calls for more automation at the unit and integration levels. In an Agile environment, this streamlined approach for test automation can be executed quickly and often. These low-level automated tests also provide precise information to developers when failures occur. Although end-to-end regression tests comprise the smallest percentage of test automation assets, their importance is vital. This type of automation is used in end-to-end test cases for regression testing and can test multiple stories as one business transaction scenario. These test cases are designed while new stories are developed and re-factored. Once the new stories are integrated into the application, test cases are executed manually to find and resolve issues and are only automated once all defects are corrected. Instead of creating a full suite of regression tests, end-to-end automation scripts are constructed in at least two suites: smoke tests and full regression tests. High-risk test cases for positive conditions are automated first, followed by automation to cover more negative conditions. A successful end-to-end test automation is dependent upon usage of the right framework and tool. The project team works together to select a tool that is compatible with the technologies chosen for the application and with a framework that is robust, scalable and easy to maintain. In-depth discussions on test automation allow developers to design code that is easier to automate (e.g., using unique object IDs or creating test hooks). The test team should also have familiarity and expertise with the chosen tool and framework in order to grow and maintain test automation independently. Traditional Waterfall Test Pyramid Unit tests constitute the smallest percentage of test automation the majority of automation is end-to-end regression. Automation begins after a long period of manual testing to find, resolve and close defects. Agile Test Pyramid Conversely, the Agile test automation pyramid calls for more automation at the unit and integration levels. In an Agile environment, this streamlined approach for test automation can be executed quickly and often. Key Characteristics of Successful Agile Testers Agile testers understand design discussions, help the business refine user stories, help developers test the backend logic, perform manual testing, provide feedback to the team, automate test cases and report problems as they arise. A successful agile tester should possess the following skills: TEKsystems.com 3

Demonstated QA expertise Ability to manage software quality Robust Agile knowledge and test management experience Practical knowledge of software design and a rchitecture Keen understanding of an integrated development environment Familiarity with the programming language being used Exceptional test automation skills Business domain knowledge Intuitive understanding of the end users usability needs Strong communication skills Since it is often difficult to find testers who possess all of these skills, IT organizations may want to pair an automation engineer and a manual tester. Another alternative is to have your test team initiate two streams: one with a functioning testing track and the other with a test automation track. Keep in mind that you will also need to institute a sound knowledge transfer process to facilitate communication between the two streams. Benefits of Partnering with an Agile-Experienced Vendor An Agile-experienced partner can successfully leverage the agile methodology, processes and associated human capital skills to enable businesses to achieve the following benefits: Synergy between Business, Development and QA Open communication and trust are hallmarks of successful partnerships. Collaboration enables constant testing and consistent feedback beyond the confines of typical vendor-client relationships. An experienced QA partner can present options rather than constraints. A Proven Agile Testing Methodology Agile teams follow development best practices such as unit testing, test-driven development, code reviews, continuous integration, source code management and automatic build deployment. An effective QA partner must also follow a proven test methodology including test planning, test case design, test automation, defect tracking, test environment and data management. There must be mutually agreed-upon processes to ensure that the Agile QA process runs smoothly from beginning to end. Project Governance Your partner should have dedicated project oversight to ensure your project runs as expected. A formal Project Management Office (PMO) utilizes sound methodologies, best practices and lessons learned from other similar projects to complete QA initiatives on time and within expectations. Further, it is highly advisable to have an independent governance office that provides oversight to your PMO and holds it accountable. This will help you gather and leverage lessons learned, enhance processes and focus on continuous improvements that evolve over time. Ensure That the Right Skills Are in Place A knowledgeable QA partner will help build a project team with the appropriate skills, comprised of internal resources or contract technical professionals. A Collaborative Approach QA is no longer confined to a phase guarded by rigid gating rules, and its effectiveness is no longer solely measured by the number of defects it finds. In an Agile environment, quality is a team responsibility. An Agile partner must facilitate a proactive, creative and open project environment that fosters new ideas and collaboration between business stakeholders and the QA team, so QA s ultimate value defect prevention is witnessed in action. An Agile partner must be willing to take on any task to help the team deliver the best possible product to clients. In order to work effectively with business managers and software developers through all iterations, Agile testers need to understand design principles, help the business refine user stories, assist developers in testing the backend logic, perform manual exploratory testing, participate in desk checks and provide feedback to the team, automate test cases and, most importantly, speak up when problems occur. TEKsystems.com 4

Proven Quality Outcomes: Real World Examples HMSA needed a partner to assist with identification of future QA projects, requirements and resources for initiatives. It sought a partner that could support its largest effort, a HIPAA 5010 project that required substantial changes to the claims process, as well as the associated data and applications. TEKsystems presented a 30-day work analysis, identifying upcoming projects and the QA and testing requirements needed for each initiative. Our QA & Testing practice provided a managed service solution to assist HMSA with prioritizing testing needs, optimizing testing tools and templates, and continually improving the process. Apollo Group s QA department was tasked with reducing testing cycle times and maintenance costs while improving test coverage. The goal was to establish sustainable automation architecture to easily advance its automation initiative and eventually automate regression testing on more than 30 mission-critical applications. Via an assessment, TEKsystems determined that our BPT Accelerator Solution would provide Apollo with a smooth and efficient implementation of its existing BPT product suite, resulting in a faster return on investment. The BPT Accelerator was successfully installed, configured and implemented into Apollo s environment. This solution has facilitated a 75% reduction in implementation time due to our proprietary code libraries and a 30% cost savings from remote sourcing options provided during the planning and development phases. To improve its PeopleSoft capabilities, ETS embarked on a major initiative to add four new modules, including General Ledger, Projects, Contracts and Time and Labor, and upgrade its current development environment, PeopleTools, across the entire platform of 11 modules. TEKsystems testing efforts were successful through the implementation of a risk-based QA and testing approach and methodology to ensure adequate testing coverage, the development and implementation of an automation strategy and improved documentation to complement the functional testing efforts and the cross-training of the QA resources to extend their QA and testing capabilities beyond their initially targeted modules. TEKsystems QA and testing support enabled the client to accomplish its production release goal encompassing the new modules and business processes within the forecasted budget. Conclusion IT organizations are under ever-increasing pressure to deliver results in the form of software products that drive improvements to the bottom line, all while facing reductions in IT budgets. As IT leaders continue to search for new ways to automate and streamline processes, Agile will become the rule, not the exception, to managing QA projects. The Agile methodology represents a departure from traditional approaches and will require a shift in commitment and responsibilities among team members. Working with an experienced Agile partner can help clients adopt Agile principles, navigate challenges and realize the quality and flexibility associated with Agile practices. ABOUT US People are at the heart of every successful business initiative. At TEKsystems, we understand people. Every year we deploy over 80,000 IT professionals at 6,000 client sites across North America, Europe and Asia. Our deep insights into IT human capital management enable us to help our clients achieve their business goals while optimizing their IT workforce strategies. We provide IT staffing solutions, IT talent management expertise and IT services to help our clients plan, build and run their critical business initiatives. Through our range of quality-focused delivery models, we meet our clients where they are, and take them where they want to go, the way they want to get there. Written by: Akemi Micallef, Manager of Solutions Delivery TEKsystems.com 5