„TESTING AS BUSINESS SERVICE” Guntis Urtāns, Ģirts Baltaisbrencis, Edgars Zālīte, Exigen Services Exigen Services has established a global practice in software testing. In working with software development over 15 years, we have developed a substantial testing expertise throughout our delivery organization, centered in Riga. We are now bringing a focus to this inhouse expertise, and offering to share the benefits of our extensive experience with interested clients. CUSTOMER BENEFITS Bringing rigorous testing to IT environments has one overriding goal, and that is to improve the quality of software and applications being brought to production. Quality means: - Minimum of defects. We help clients structure their testing processes and infrastructure - Responsiveness to requirements. By ensuring that all requirements are thoroughly tested, we can help ensure that the final software product will perform as expected. - High performance. Applications are only perceived as high-quality if the perform quickly for the users. Today’s IT organizations often need more than quality – they need cost effectiveness. The Exigen Testing Engagement Progression works with our customers to evaluate existing testing process, and find areas for improvement. The improvement areas, however, usually lead to substanial gains in testing efficiency, therefore saving clients money. We can also offer off-shore test execution services to reduce on-going costs. Ultimately, we can bring to bear Quality Acceleration techniques, such as test-driven design, and test automation, to bring organizational testing efficiency to world-class levels ENGAGEMENT PROGRESSION Building on our past experiences, we have found that the most successful testing engagements have followed a rigourous phased approach. To ensure success going forward, we have formalized this phased approach into 4 standardized steps, with clear go/no-go decision points at the end of each step. The benefit of this approach is that it builds in decision-making points at the optimum times in the project to ensure that Exigen and our clients are in agreement on what needs to be done, and the engagement can the proceed at full speed. It also offers built-in logical re-evaluation points for clients, where clients have received specific outcome, and can decide to proceed or not proceed, depending on their perceived value and resources. The 4 steps are: STEP 1: TESTING ASSESSMENT (What exists?) Engagement at a new client for testing needs to begin with an assessment. This first assessment step will evalute all aspects of the IT infrastructure at the client site. During the Testing Assessment, we discuss the IT environment with both IT and business side people, gathering an evaluation of the perceived quality of the IT environment. We also evaluate a specific list of characteristics of the testing process and environment. This engagment, called Testing Assessment, gives our clients a complete overview of the current status of their testing processes and infrastructure as compared to best practices. The assessment typicall takes approximately 2 weeks of on-site work by our team of testing experts, and results in an evaluation report showing all findings, and a list of reccomended actions and areas for improvement. To help focus improvement efforts, we work with the client to prioritize the recommendations, showing which areas can have the biggest and most cost-effective impact on IT environment quality and reliability. STEP 2: TESTING PROCESS UPGRADE (Getting to a better process) Once we have an understanding of the current state in the clients environment, we will work with the client’s testing or development groups to upgrade their testing evironment and processes. We will work from the list of prioritized improvement areas developed from the intial engagement, focusing first on the highest pay-back improvement areas. While all aspects of the testing process and infrastructure can be adressed, in our experience we have found that several areas tend to come up frequently as most neededing improvement. These are: - Real-time tracking and reporting of test coverage and execution - Testing tool selection and implementation. - Identify needed testing types. - Functional testing coverage analysis. While we have extensive theoretical understanding of testing processes, our main strength is in our years of practical experience. Our testing managers and analysts have worked for many global firms applying high-process (CMMi-5) testing methodologies day-to-day in their work. We will bring this practical experience to bear with clients. STEP 3: EXIGEN TESTING PARTNERSHIP (ON-going Testing Partnership) Exigen can apply its testing expertise for clients on an on-going basis. We offer several types of engagements to many clients, but are always ready to work out more specific areas of partnership as necessary. Depending on the results of Step 1 and 2, we do recommend several types of engagements with have proven effective with many previous clients. These are documented here in more detail: Capacity and Performance Testing – Testing and analysis of how systems perform under load. Load here can mean many different things, including simultaneous users, file sizes, Integrated BA and QA testing services – Testing without firm requirements can be a guessing game. Requirements development without testing is an open-loop with no guarantee of quality. Often the best answer is to integrate both efforts, requirements gathering with Business Analysts up front, and formalized testing practice against those requirements before cutover. Blackbox Testing – Given thorough knowledge of the system should do, we can build and execute test cases, ensuring test coverage and quality. White box testing – Once bugs are found, integrating the bug-fix processes direclty with quality assurance can be the most efficient way to operate. STEP 4: ACCELERATING QUALITY (Long-term testing optimization) The final step of the our process engages with the client to apply advanced testing concepts to client environment and testing process to gain every greater efficiencies in software Quality Assurance. The specifics of any client site will vary, but may include: - Test automation - Real-time management dashboard implementation for test monitoring - Test-driven development process implementation - High-availability Agile process implementation - Etc. In this step we utilize our control of the client QA environment to super-charge the testing processes and greatly increase the capacity, thoroughness, quality, and transparency of the QA process.
Pages to are hidden for
"BASICS"Please download to view full document