You are on page 1of 7

Business Analyst and Test Analyst The Diminishing Divide

White Paper

Executive Summary In todays fiercely competitive world, customers seek high-quality software, and they want it quick and at low cost. Gone are the days when testing used to be the last step of a project. With increasing demand for quality products and quick delivery timelines, companies cannot afford to make mistakes and then redo activities to eliminate them. Quality has become todays new mantra. Faced with these pressures, organizations shift their focus on testing at a very early stage. If not planned correctly Quality check can become a major bottleneck and a costly affair. Some organizations overdo testing with the hope of catching every defect, which results in high project cost and delayed deliveries. Assuring quality without compromising on costs and test schedules has become the need of the hour. To do so, companies need a consistent, business-driven process to decide which functions and requirements are most important to test and in what order.

Business Analyst in SDLC A project typically starts with requirement gathering and analysis. Business-analysis skills are applied by projects during initial requirement analysis throughout System Development Life Cycle (SDLC) to reduce project costs and optimize the use of resources. A key function of the business analyst is to gather and document the user requirements needed to solve a particular business problem or achieve a business activity. From these requirements, the business analyst generates an exhaustive study of the regulatory, business, user and functional requirements. Business analysts employ the art of modeling to support and enhance text-based requirements by organizing information into coherent ideas. The use of business-analysis models such as business models, process models, data models and workflow models can all be applied to sourcing management. Business analysts develop test scripts, test plans and test scenarios to determine whether the requirements have been met and desired deliverables achieved. When the deliverable is met, the business analysts command of the requirements can complement the training team in developing user support tools, including training manuals and reference materials. However, with todays demand for high quality deliverables experts are being sought for by companies to administer each activity in a project. In recent times, the role of test analyst has been enhanced with responsibilities of a business analyst with respect to software testing.

Test Analyst in SDLC Erstwhile, typically, test analysts were included in the project at a much later stage when the developed software or a part of the software was ready for testing. A project following the waterfall SDLC model will have project activities or phases aligned one after another. Many argue that it is a bad idea in practice as no project can be completely finished without moving into the next. For example, the business analyst gathering and documenting requirements may not be aware of the design issues. Hence, starting design phase well before completion of requirements documentation will help evade design issues. Similarly, various phases of project like development and implementation are cascaded well ahead, so that risk is managed in a proper way.

Role of Test Analyst

Test Case

Test Data

Test Result

Test Reports

Design Test Cases

Prepare Test Cases

Run Tests

Analyze Results

Following this trend, companies have now come to understand the importance of test analysis phase. In this increasingly complex software development era, it is extremely important to include testing as early in the project as possible. In today's iterative world, testing needs to be included at the project's inception. Even today, the requirements phase of a project generates most of the defects. Over 50% of the defects are injected during the requirements phase. This is important because this phase forms the foundation for the product that future work will be built on. Therefore, if the requirements are not correct, there may be fundamental issues that do not surface until the subsequent phases. The worst part is that these defects go detected until the final stages of the project. The cost to redesign or to change the coding of the software will be humungous and have an adverse effect on the timelines. In a way, all the project cycles will need to be repeated to eliminate the defects induced during requirements phase. A new trend has begun to include test analyst in a project right from the requirement-gathering phase. Test analysts participate in requirement analysis and determine the test scenarios. This activity changes the outlook of the business analyst in a big way. The business analyst tends to further probe into the requirements to get clarity for the various test scenarios proposed by the test analyst. This activity also helps the design team in understanding all possible scenarios that will be required to be addressed by the system. The benefits of including test analysts throughout the project have the following benefits: Risk assessment and mitigation Clarity in requirements Project stakeholders like BA, design and development team are aware of various scenarios that need to be addressed. Reduction in time allotted during testing phase for creation of test scenarios and test cases. No separate schedule required for training the testing team on requirements This sort of job enrichment in test analysts profile calls for functional and technical expertise at par with a business analyst. Due to the enhanced role, a test analyst has to play; companies now look for resources with complete SDLC experience. 3i Infotech was earlier following the waterfall model for its projects. Test analysts came into action only during the start of testing phase. The test analysts spent considerable amount of time to understand the requirements and the system design. The test analysts then begin writing test scenarios and test cases for the scenarios based on their understanding of the requirement. Conflicts on unhandled scenarios were inevitable. Following the trend, projects have started including test analysts during requirement gathering phase and the difference in quality of deliveries is commendable. The project schedules have shortened as various

activities now take place hand in hand. The severity of defects has dramatically reduced. The below given pictorial graph depicts the difference in severity and effect of defects before and after modifications of the SDLC model. The series 1 graph depicts the defect generation by work product when a test analyst is included in the initial stages of a project life cycle. The series 2 depicts the defect categorization for a project that follows the typical waterfall model.

Defect Categorization Chart


1200 1000
Defects

800 600 400 200 0 BSD FSD SDD Coding Test Plan/Test Case

Series1 Series2

Work Product
Legend Business Study Document Functionality Specification Document System Design Document

BSD FSD SDD

At 3i Infotech, projects are broadly categorized based on its size as small, medium and large. This categorization is done taking into account the project schedule, complexity of requirements and the number of resources working on the project. Due to less complexity in requirements, small projects are not adversely affected from errors arising from requirements gathering or issues in product design. However, in case of medium and large sized projects much is at stake and hence, inclusion of test analysts during initial stages of projects has become a necessity. When comparing projects executed by 3i Infotech, tremendous improvements were observed in large projects wherein the SDLC model was tweaked to bring in better quality and competency. Following is a snapshot of the outcome that a small difference in approach to quality assurance has made.

SMALL SIZE PROJECTS

MID SIZE PROJECTS

In the above graphs, the expense incurred to rectify a defect that arises during different phases of the project is shown. Here the expense factor is arrived at based on the time and number of resources required to handle a defect.

LARGE SIZE PROJECTS Testing Phase - Business Analyst (BA) and Test Analyst Business analysts primary role is to coordinate with the customer to provide the requirements for software development. However, he is also equally responsible for testing the developed applications at various points of time to ensure that the requirements completely match the customer expectation. In addition, it is not uncommon for the BA to coordinate with the test manager for the estimation of testing effort, since he is the owner of the requirement from the companys perspective. In most cases, BA will also be involved in the preparation of test cases or review of the test cases written by the testing team member since he is considered requirement Guru. On comparing the different set of activities performed by the business analyst and test analyst during the testing phase, it is often construed that both of them do more or less the same role. Business analyst tests the product from the requirement and business scenario perspective and ensures that the system meets the requirements specified in the document. Test analyst further test the product against all possible ad hoc scenarios. Test analyst executes the pre defined test scripts, which cover more than the requirements mentioned in the requirement document. The key focus areas differ in way the business analyst and test analyst approach the testing phase. Test analyst goes one-step ahead, does various negative testing and focuses on usability issues. In situations where the enhancements are being tested, test analyst who is completely aware of the system from having tested the application multiple times will test if the existing functionalities are not broken during the enhancement code. The Business Analyst might miss this out during his testing. During the testing phase, the test analyst is primarily responsible to execute the test case and identify bugs in the application to ensure that the product/application is delivered to the customer with minimal bugs. His role does not end when the issue is identified and passed on for development. Many a times the issues need to be simulated to the development team who might not be completely aware of the scenarios and issues. Test analyst goes beyond the activity of testing and does invariably the role of the Business Analyst. He simulates the issue, explains the functional scenario to the technical team so that they are able to understand the issue and handle the same in the coding. In real life, scenario business analyst who is considered the source of the requirement is less preferred by the Developers to fix the bugs identified by the tester. They rely more on the test analyst for clarity to fix the bugs.

Consolidate, Standardize, Partner As a first step towards achieving such benefits, 3i Infotech has a Test/QA Center of Excellence that defines, develops and maintains test processes, standards and templates; chooses and maintains testing tools and trains staff in their use, and creates test and management metrics while striving for continuous process improvement. This center is scalable and sustainable across multiple projects and built on the strength of existing, proven tools and processes rather than a rip and replace of all existing test efforts. It is not an isolated research laboratory, rather a conduit for sharing best test and QA practices with application design and development, business analysts and security groups. Using virtualization to create a production-like environment also helps reduce costs by eliminating the need for a standalone testing infrastructure, and increases the likelihood of finding defects by creating a test environment that closely resembles the actual production environment. These centers achieve the greatest results when they seek specialized knowledge from trusted outside vendors. 3i Infotech, for example, offers a range of consulting services that have already helped more than 80 organizations across the globe to assess the maturity of their Test/QA functions, develop customized enterprise testing roadmaps, or simply determine which testing functions best lend themselves to outsourcing.

Conclusion The recent economic crisis is an opportunity for Test/QA organizations to not only prove their value within their businesses, but to position those businesses to thrive as the economy continues to recover. . Becoming quality leaders, though, will require them to centralize the Test/QA function, standardize on common tools and processes, and smash organizational silos, as well as partner with internal users, external business partners, and trusted outside vendors. The result: Healthier test/QA organizations; higher quality, more stable applications and increased value for customers and shareholders. This gives businesses a consistent, business-based methodology for determining what level of software testing will deliver business value and the highest possible customer satisfaction.

About 3i Infotech
3i Infotech (www.3i-infotech.com) provides software products and IT services for the Banking, Financial Services & Insurance (BFSI); Manufacturing, Retail & Distribution; and Government verticals. The Company's quality certifications include ISO 9001:2008 for BPO, ISO/IEC 27001:2005 for Data Center Operations and ISO/IEC 20000-1:2005 for Data Center Management Services. The Company has embarked on re-appraisal under SEI CMMI ML 5 for some of its software development Centers in India. By using its domain knowledge and through continuous investment in technologies, 3i Infotech enables corporations transform their businesses through its expertise in enterprise-class software solutions, software services including Testing Services, information security consulting, system integration services, IT infrastructure and Disaster Recovery solutions.

For more information, contact: marketing@3i-infotech.com or visit www.3i-infotech.com

Copyright 3i Infotech All rights reserved.

You might also like