Criteria for Software Testing Tool Evaluation A Task Oriented View
|
|
|
- Martin Hall
- 10 years ago
- Views:
Transcription
1 Criteria for Software Testing Tool Evaluation A Task Oriented View T.Illes, A.Herrmann, B. Paech, J. Rückert Institute for Computer Science, University of Heidelberg Im Neuenheimer Feld 326, Heidelberg, Germany {illes, herrmann, paech, rueckert}@informatik.uni-heidelberg.de Abstract. Considering the immense variety of test tools available, both commercial and open source, an extensive evaluation of these tools with respect to their adequacy for a given organizational or project context seems to be impossible. On this account we present a systematic approach for deriving easily verifiable evaluation criteria for test tools. We define both, quality criteria and functional criteria. Using the TORE methodology we identify activities which potentially could be automated or at least supported by a test tool. Starting from these activities we derive evaluation criteria for test tools. We focus on criteria which can be evaluated considering only vendors' instructions, consequently without an extensive laboratory test. The result of our work is a reasonable list of criteria allowing an effective classification and pre-selection of test tools. In a first step we applied our criteria to evaluate three capture & replay tools. At this, our approach proved of value. The fundamental differences between the tools could be identified and additional criteria for this particular test automation technique could be defined. 1 Introduction Browsing the web one can find an immense variety of tools supporting different activities performed during the test process. Even though there are over 600 test tools no approach exists for classifying these tools, apart from a very superficial categorization into test tools supporting test planning, test design, test execution, defect tracking or configuration management as mentioned in [20]. Therefore in product overviews plainest tools and extensive ones are grouped into the same category. In this paper we refine these criteria to allow a more detailed classification of tools according to the context of a special project without lapsing into the contrary by defining criteria, which are only applicable on the basis of extensive product evaluations. Suchlike criteria require a high effort so that we confine ourselves to criteria which allow a pre-selection only by consulting the vendor s instructions. In order to determine quality criteria for test tools, we extend the characteristics of the quality model proposed by the standard ISO/IEC 9126 [10] by criteria related to vendor qualification as mentioned in [4]. For deriving a reasonable set of functional criteria we analyzed the test process applying the TORE methodology [16]. We identified that way the tasks performed while systematically testing a software system
2 2 T.Illes, A.Herrmann, B. Paech, J. Rückert and the corresponding roles. Refining these tasks we detected activities which potentially could be automated or at least supported by a test tool. The result of our work is a set of quality and functional criteria. For validating our results, we then exemplary applied the criteria in order to evaluate three capture & replay tools. Related Work. Apart from the criteria defined by Poston and Sexton [18] there is no founded approach for deriving evaluation criteria for test tools. Since the criteria proposed by Poston and Sexton focus on company specific criteria or on criteria requiring a high effort to be evaluated e.g. test effort or test quality (percentages of found defects), these criteria do not apply for a pre-selection of the test tools. Additionally, criteria specific to test tools are mentioned without a justification for their derivation. The criteria mentioned by Poston and Sexton represent a subset of the criteria systematically derived in our approach. Commercial test tool evaluations offered by OVUM [15] and CAST [1], [2], and most of the non-commercial ones as proposed in [19] or [4] appraise only a small subset of the test tools/frameworks available. These works concentrate on a detailed evaluation of products offered by the market leaders requiring extensive evaluation (installation and use) of the test tools. In contrast, we focus on more coarse-grained criteria enabling an effective pre-selection for users. Furthermore, our approach does not restrict the tools to be evaluated to a minimal set determined by the market leaders so that a wide range of test tools can be considered. The criteria defined in the CASTreports are not available to us. Overview. The reminder of this paper is organized as follows. Section 2 summarizes quality criteria for test tools. In section 3 we analyze the test process from a task oriented view and define activities performed during the test process. Section 4 summarizes the functional criteria derived from the activities identified in section 3. Section 5 then summarizes the result of an exemplary tool evaluation and section 6 concludes the paper and presents our intended future work. 2 Quality Criteria for Testing Tools For specifying quality criteria for testing tools, we used the ISO/IEC 9126 standard [10]. The ISO/IEC standard defines a framework for the evaluation of software quality, proposing a hierarchical model, which consists of six characteristics and corresponding sub characteristics for software product quality. Furthermore we supplemented these characteristics by criteria related to vendor qualifications proposed in [4]. These criteria consider the following additional aspects: general vendor qualifications, vendor support, licensing and pricing. Subsequently, we summarize the quality evaluation criteria we determined this way. The criteria Q1-Q6 represent the characteristics and sub-characteristics of the ISO/IEC 9126 standard, the criteria Q7-Q9 represent the criteria related to vendor qualifications. A refinement of these criteria can be found in [9] and [3]. Q1 Functionality suitability, accurateness, interoperability, compliance, security (1-5) Q2 Reliability maturity, fault tolerance, recoverability (6-8) Q3 Usability understandability, learnability, operability (9-11)
3 Criteria for Software Testing Tool Evaluation A Task Oriented View 3 Q4 Efficiency time behavior, resource behavior (12-13) Q5 Maintainability analyzability, changeability, stability, testability (14-17) Q6 Portability adaptability, installability, conformance, replaceability (18-21) Q7 General vendor qualifications 22 maturity of the vendor, market share, financial stability Q8 Vendor support 23 warranty, maintenance and upgrade policy 24 regularity of upgrades, defect list with each release 25 compatibility of upgrades with previous releases 26 support, phone support, user groups 27 availability of training, recommended training time, price Q9 Licensing and pricing 28 open source or commercial 29 licensing used, rigidity (floating node-locking license) 30 price consistent with estimated price range 31 price consistent with comparable vendor products 3 The Test Process: A Task Oriented View We now consider functional criteria for testing tools. For this reason we analysed the test process. While the criteria proposed by Poston and Sexton [18] focus on organisational issues and the recommended functional criteria are coarse grained, our work aims at proceeding in a more general way by considering the whole test process so that we can derive more detailed and more test specific criteria. For a more abstract view on the test process we applied therefore the TORE (Task and Object-oriented Requirements Engineering) methodology proposed by Paech and Kohler in [16]. This methodology was designed to give guidance to the specification of user requirements on different abstraction levels. In the context of this work the task and the domain level are relevant. At task level, the most abstract of the four levels, user tasks and corresponding roles are identified and specified. These tasks are then refined by further activities at domain level. We applied the TORE methodology to identify tasks and roles involved in the test process. Tasks are typically identified by analysing the current work of roles involved into the process and emphasis on the work context of these roles [16]. We identified the tasks by analyzing test process descriptions mentioned in standard textbooks such as Spillner [20, 17] and Mosley and Posey [14]. The basis of our work is the fundamental test process described in [20] consisting of planning, specification, test execution, capturing and analysing test results. We then detailed these tasks according to [14], resulting in a more precise view of the tasks concerning test design and test execution. Finally we added tasks continuously performed during the whole test process concerning the tracking of defects and the management of the test ware as mentioned in [17]. Test ware includes all artifacts such as test specifications, test scripts and test data, developed during the test process [17]. In a further step we refined these tasks by activities. Table 3 summarizes the main tasks and the corresponding roles involved in the test process we identified in this step.
4 4 T.Illes, A.Herrmann, B. Paech, J. Rückert Table 1. Tasks and roles involved in the test process. ID Tasks Role(s) A Test planning and monitoring Test manager B Designing Test Cases Test designer C Constructing Test Cases Test automator, test designer D Executing test cases Tester E Capturing and comparing test results Tester F Reporting test results Tester G Tracking Software problem Tester, test manager, developer reports/defects H Managing the test ware Test configuration manager, test administrator Subsequently we present refining activities performed during the corresponding task. A: Test planning and monitoring. Considering that testing activities represent % of all activities in the software life cycle [21], it is critical to plan and begin test activities as early as possible. As testing activities are complex, a sound planning and monitoring of testing activities is crucial to the success of the project. Thus, key activities of test planning include the tailoring of the organizational test process to the requirements of the current project, identifying the constraints of the current project 1, identifying the test strategy, prioritizing test activities, assessing risks, scheduling, identifying staffing and training needs, defining metrics to monitor the progress of test activities, defining pass/fail criteria. Key activities in project monitoring include collecting metrics, project tracking and adapting the test plan according to the current circumstances. Beside these activities a coordination of the interface to other processes in the software development life cycle is necessary. B: Designing Test Cases. 2 Key activities of designing test cases are to choose test techniques based on the defined test strategy, to identify test conditions, to derive and document logical test cases, and to identify the layout of the test data for logical tests. The design of test cases includes both, test cases for testing functional requirements (the what ) but also quality aspects (the how ) of the system under test (SUT). The ISO/IEC standard [10] proposes a framework for characterising quality aspects for software. C: Constructing Test Cases. Key activities of constructing test cases include the implementation of test cases by defining concrete test cases and test data. In case of test automation test scripts are developed. A test script can realize required preconditions, the execution steps and set-up and clear-down facilities. Additionally, test scripts can implement generation procedures for test data and expected outcomes. D: Executing Test Cases. The test cases designed and constructed in the phases before must be executed. These activities can be done manually (by executing the 1 Constraints can concern e.g. programming paradigm, specific application characteristics such as web application, etc. 2 A test case specification should include the test items, input specifications, output specifications, environmental needs, special procedural requirements and inter-case dependencies [7].
5 Criteria for Software Testing Tool Evaluation A Task Oriented View 5 defined steps of the test case) or automated by running the test script. A semiautomated execution of the test scripts is also possible. E: Capturing and comparing test results. Key activities of this task include the documentation of the executed test steps and outcomes and the verification of the test results by comparing expected and actual outcomes. F: Reporting test results. Reporting activities aim at aggregating test information on different detail levels in a comprehensible and reproducible manner: Test reports document test results and their analysis [14]. Therefore, reports should have a customizable degree of detail with respect to the intended audience (managers, customer, and developers) G: Tracking Software problem reports/defects. The key activities of this task concern a problem s or defect s traceability during their lifecycle. This lifecycle includes the recording and classifying of a defect/problem, the monitoring of the progress on corrective activities, the prioritization of defects to decide whether corrective actions should be started and regression testing activities of corrected defects. According to this, a defect passes through various states (new, opened, denied, analysing, correcting, testing, closed, flop) during its life cycle [20]. H: Managing the test ware. Key activities of this task include the management of the test ware (versioning, storage, sharing, ), providing traceability between the elements of the test ware (requirements, logical test cases, concrete test cases, test data files, ), tracing modifications on a test object and communicating changes, and creating snapshots of the test ware at the end of a test cycle in order to conserve the results of a test cycle for regression testing. 4 Deriving Functional Criteria for Test Tools Based on the activities identified using the TORE methodology, we derived evaluation criteria for test tools. We identified those activities performed in the tasks described in section 3 that could be potentially supported, respectively automated by a test automation tool. The resulting criteria are designed in such a way, that they can be evaluated by yes or no to enable an efficient evaluation of a variety of test tools. For a more fine-grained classification, a scaled rating could be chosen (e.g. for a specific criteria the following scale is conceivable to express to what extent a feature provided by the particular tool supports the criteria: 0 not supported, 1 semi-automated, 2 automated). Subsequently we list the functional criteria grouped by the tasks described in section 3. A: Test planning and monitoring. Test tool provides support for: 1. customization of the organizational test process 2. particular programming paradigms 3 and/or languages, operating systems, browser, network configuration 3. application specific characteristics, which require specific testing techniques 4 4. testing special application domain (e.g. avionics, automotive, etc.) 3 E.g. component-based, imperative, model-driven, etc. 4 E.g. web-based, GUI testing, real-time testing, database testing, protocol conformance testing.
6 6 T.Illes, A.Herrmann, B. Paech, J. Rückert 5. planning of the test process (scheduling, project tracking, risk management) 6. monitoring test activities by tracking of the estimated and actual time/test case by providing coverage metrics to measure the progress of testing activities by providing metrics from different sources (e.g. requirements, test cases) 6. integration with other tools 5 B: Designing Test Cases. Test tool provides support for: 7. designing test cases for the required test level (unit, integration, system) 8. selecting the test techniques 9. defining test conditions derived from the defined test techniques 10. defining templates for structuring the information specifying test cases 11. generation of logical test cases from semi-formal models 6? 12. generation of logical test cases from formal specifications (e.g. Z) 13. generation/derivation of test data layout optimizing the test case set designing test cases to test quality criteria of the application restricting the test case set (e.g. ranking by prioritisation of the test cases, risks assigned to test cases) in case of deadline constraints C: Constructing Test Cases. Test tool provides support for: 17. editing test scripts 18. developing of test code conforming with accepted software engineering practices capturing of executable test cases 20. generation of concrete test cases from (semi-)formal models generation of (in)valid test data generation of stubs, test drivers, mock objects, 23. simulating missing faulty system components D: Executing Test Cases. Test tool provides support for: 24. setting-up and clearing-down of the test environment/pre condition and respectively the post conditions for a set of test cases 25. roll-back to initial in case of unexpected errors 26. execution of captured, captured & edited or manually implemented test cases for functional testing. 27. execution of captured test cases for testing quality criteria 12 5 e.g. with other testing tools, project management tools, requirement management tools, etc. 6 E.g. UML scenarios, UML state charts, UML sequence diagrams. 7 E.g. template-based/code based/interface based/specification based/database-based (schema definitions)/using results of former test cycles. 8 E.g. minimizing test cases by concurrently maximizing coverage of requirements. 9 A possible set of quality criteria is defined by the ISO/IEC 9126 standard as described in section E.g. modularisation of the code, comments, declaration of variables and data types; parameter passing; separation of test data and definition of the course of events. 11 E.g. code based; interface based; specification based; from databases (live data information, schema information), randomly, rule-based. 12 By performing static analysis e.g. checking conformance of the source code to style guides or by performing dynamic analysis e.g. performance testing or load testing
7 Criteria for Software Testing Tool Evaluation A Task Oriented View stopping and continuation of the execution of a suspended test case E: Capturing and comparing test results. Test tool provides support for: 29. logging information on executed test cases comparison facilities between specified and actual outcomes F: Reporting test results. Test tool provides support for: 31. aggregation of logged test results 32. customizable, role specific amount of information G: Tracking Software problem reports/defects. Test tool provides support for: 33. specifying problem reports/defects by using predefined templates 34. generating entries for recorded defects 35. prioritizing defects 36. tracking change requests/defects and their current status 37. generating statistical information 38. for regression testing 14 H: Managing the test ware. Test tool provides support for: 39. management of the test ware traceability between the elements of the test ware by tracing modifications on a test object and communicating changes 42. the maintenance of the test data, of the test cases 43. for automated tests to be (re)used for regression testing/in other projects 44. snapshot facilities (by freeze a special state of the test ware) 5 Applying the Evaluation Criteria In order to evaluate the applicability of the derived criteria, we exemplary analysed and compared three capture and replay tools. The capture and replay approach is primarily applied to regression tests of web and GUI-based applications. Capture and replay tools are similar in their mode of operation consisting of four steps as described in [8] and [12]: (1) Capture mode, where all manual user interactions on the test object are captured; (2) Programming, where the captured interactions are mapped to a test script, (3) Checkpoints, where additional checkpoints are added to the test script, (4) Replay-mode, where captured scripts can be replayed. In step 4 results from former tests and current results are compared. In case they differ, the test fails. The test also fails if defined checkpoints are violated. The three tools we evaluated are: WinRunner [13], Rational Robot [6], and HTTrace [11]. WinRunner is distributed by Mercury. This tool is about the market leader (54% of the market in test tools). Rational Robot is distributed by IBM and holds 17% of the market in test tools. HTTrace is not a commercial product, but developed for internal use for the company i-tv-t. We analyzed HTTrace because of its scientific relevance. Basis of our evaluation was the documentation provided by 13 E.g. executed steps, outcomes and exceptions but also memory/resource usage, network load, code coverage information. 14 Ee.g. by identifying test case set to be re-executed for regression testing 15 E.g. versioning, storage, sharing, and authorisation facilities. 16 E.g. requirements, logical test cases, concrete test cases, test data files, outcomes, etc.
8 8 T.Illes, A.Herrmann, B. Paech, J. Rückert the vendors on their web site. Additionally, we got feedback from Mercury and i-tv- T regarding our evaluation. Subsequently we present a brief summary of the evaluation results. A detailed report can be read in [5]. A: Test planning and monitoring. The evaluated tools do not focus on supporting test planning and monitoring activities. 17 B: Designing test cases. Since the design of test cases does not represent a key feature of the evaluated test tools, most of these functions e.g. guidance in selecting test techniques/defining test conditions, derivation/generation of test cases or test data are not supported. For testing quality criteria of the SUT HTTrace provides performance tests. For stress tests an additional component, HTBlast, can be integrated. For WinRunner and Rational Robot, the additionally components Load Runner and TestDirector respectively Rational Performance Tester must be integrated for both, performance and stress test. Usability testing is not provided by any of the vendors. C: Constructing test cases. Constructing test cases by capturing user interaction represents one of the key features of the tools where captured scripts can be manually edited. Expected outcomes are defined by outcomes in previous test runs. In case of regression testing current and previous outcomes are compared in order to decide if the test failed or passed. None of the tools supports the generation of test data (valid, invalid) or the generation of stubs or test drivers. D. Executing test cases. All tools support the execution of test cases by running the captured/implemented test scripts. The separation of test data and test script allows scripts to be parameterized by different test data. Both, WinRunner but also Rational Robot provide this facility, HTTrace does not offer a solution for this problem. E. Capturing and comparing results. Logging of outcomes occurs in a separate file. Each tool allows comparison of expected (defined by previous test runs) and actual outcome. F: Reporting test results. Reporting features can be added to each tool by integrating additionally components. 18 G. Tracking software problem reports/defects. Reporting features can be added by integrating additionally components 19 H. Managing the test ware. WinRunner provides tracebility of test cases to requirements by integrating the additional component TestDirector, and by Rational Robot by integrating TestManager. HTTrace provides rudimentarily this facility. Rational Robot provides a Recovery Manager for a programmable handling for exceptions in the SUT. WinRunner and HTTrace allow the SUT to be restarted after a crash. 17 The integration of additional components like TestDirector provided by Mercury and Rational Test Manager, Rational Administrator or Rational Team Unifying Plattform provided by Rational support project planning and monitoring facilities. For HTTrace no additional components supporting project planning are available. 19 WinRunner can be extended by TestDirector, Rational Robot by Rational ClearQuest, Rational Team Unifying Plattform or Unified Change Management and HTTrace by Scarab or Tracilla in order to provide defect tracking facilities. These additional components provide workflow support for automatic notification of changes to the state of a defect.
9 Criteria for Software Testing Tool Evaluation A Task Oriented View 9 Summary. Key features of all three test tools are the construction of test cases by capturing and subsequently editing the test scripts and the execution of the recorded test scripts. Comparing previous and current outcomes regression tests can be efficiently performed. By integrating additional components, WinRunner and Rational Robot can be extended to provide test planning and monitoring as well as defect and reporting facilities. HTTrace s strength lies on testing database applications by allowing the reset of consistent database states. Additionally, all three tools can be extended to provide support for testing quality attributes of the system under test e.g. performance. By evaluating these tools we could identify supplementary criteria specific to testing web applications by the capture and replay technique: Object recognition (e.g. HTML-tables, frames, links, etc.), repository for managing objects, mapping of non standard objects to standard objects (e.g. checkboxes, buttons, etc.), masking facilities for particular areas on the screen, support for comparing images, OCR (optical character recognition) to extract text from images, etc. A complete list of criteria, specific to web testing and a detailed evaluation of the test tools can be found in [5]. 6 Conclusion and Future Work Applying the TORE methodology to the test process with the objective of deriving criteria for test tools proved to give a useful set of classification and selection criteria. The comparison of three capture & replay tools showed that the defined criteria are effectively applicable to the evaluation of test tools based on vendor s documentation. The evaluation revealed the basic differences between the test tools. Additionally, our criteria helped to derive criteria specific to a particular test technique, capture & replay in this case. The evaluation criteria derived in our approach can be used for diverse purposes. At first, our criteria allow a pre-selection of test tools according to (coarse) initial requirements. Considering that a detailed evaluation is very time-consuming, an efficient pre-selection is crucial. Applying our criteria, such a pre-selection can be carried out effectively on the basis of vendor s information. Certainly, a definitive decision for using a special tool can only be made by a detailed investigation of the tools which passed the pre-selection process. Then, the evaluation criteria can be applied for conducting a survey on commonly used products and to derive the state of the art in testing tools as well as to identify gaps in the market and scientific challenges. Additionally, the proposed criteria can be used as a framework for classifying research results in the area of testing, especially in test automation. Our future research focuses on providing a survey on test tools using our criteria to classify commercial and open source tools. Additionally, we aim at refining our criteria for testing activities specific to particular applications (e.g. object oriented testing, component based testing, GUI testing, etc.).
10 10 T.Illes, A.Herrmann, B. Paech, J. Rückert Acknowledgements. We want to thank Carsten Binnig, Lars Borner and Dima Suliman for their constructive suggestions, comments and references. We also thank Mercury and i-tv-t for supporting our evaluations activities. References 1. CAST Tools. An Evaluation and Comparison, (last visited: July 2005) 2. CAST: Testing Tools - CAST for the Millennium and Beyond, (last visited: July 2005) 3. Dörr, J., Punter, T., Bayer, J., Kerkow, D., Kolb, R., Koenig, T., Olsson, T., Trendowicz, A. : Quality Models for Non-functional Requirements, IESE report nr /E, Dustin, E., Rashka, J., McDiarmid, D.: Quality web systems: performance, security, and usability, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, Herrmann, A., Paech, B., Rückert, J.: Bericht über die Herleitung von Qualitätskriterien für Test-Werkzeuge, unpublished. 6. IBM, Rational Robot product overview, ibm.com/software/awdtools/tester/robot/index.html, (last visited: July 2005) 7. IEEE standard , IEEE Standard for Software Test Documentation, IEEE Computer Society, imbus: Automatisierung von Softwaretests, 7 Fallstricke und wie man sie überwindet, INCOSE: INCOSE Requirements Management Tool Survey, (last visited: January 2005) 10. International Standard ISO/IEC 9126: Information technology -- Software product evaluation -- Quality characteristics and guidelines for their use, International Organization for Standardization, International Electrotechnical Commission, Geneva. (1991) 11. i-tv-t: i-tv-t product overview, (last visited: January 2005) 12. Linz, T. Daigl, M,: How to Automate Testing of Graphical User Interfaces, Results of the ESSI PIE 24306, (last visited: July 2005) 13. Mercury: WinRunner product overview, (last visited: July 2005) 14. Mosley, D. J. and Posey, B. A.: Just Enough Software Test Automation, Prentice Hall, July Ovum Evaluates: Software Testing Tools, (last visited: July 2005) 16. Paech, B., Kohler, K.: Task-driven Requirements in object-oriented Development, In J. Leite, J. Doorn, (eds.) Perspectives on Requirements Engineering, Kluwer Academic Publishers, Pol, M., Koomen, T., Spillner, A.: Management und Optimierung des Testprozesses, Dpunkt Verlag, 2. Aufl., Poston, R.M.; Sexton, M.P.: Evaluating and selecting testing tools, IEEE Software, Volume: 9 Issue: 3, May 1992,S Robinson, Ray: Automation Test Tools, (last visited: July 2005), Spillner, A. and Linz, T.: Basiswissen Softwaretest, dpunkt.verlag, (2004) 21. Spillner, A.: From V-Model to W-Model Establishing the Whole Test Process. Proceedings Conquest th Conference on Quality Engineering in Software Technology, Nürnberg, 2000, S
Advanced Testing Techniques
9 March, 2010 ISSN 1866-5705 www.testingexperience.com free digital version print version 8,00 printed in Germany Advanced Testing Techniques Conferences Special istockphoto.com/nwphotoguy istockphoto.com/esemelwe
Requirements engineering
Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and
Software testing. Objectives
Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating
Performance Testing Uncovered
Performance Testing Uncovered First Presented at: NobleStar Systems Corp. London, UK 26 Sept. 2003 Scott Barber Chief Technology Officer PerfTestPlus, Inc. Performance Testing Uncovered Page 1 Performance
8. Master Test Plan (MTP)
8. Master Test Plan (MTP) The purpose of the Master Test Plan (MTP) is to provide an overall test planning and test management document for multiple levels of test (either within one project or across
Requirements Definition and Management Processes
Software Engineering G22.2440-001 Session 1 Sub-Topic 1 Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti
Software Engineering Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical
Towards Collaborative Requirements Engineering Tool for ERP product customization
Towards Collaborative Requirements Engineering Tool for ERP product customization Boban Celebic, Ruth Breu, Michael Felderer, Florian Häser Institute of Computer Science, University of Innsbruck 6020 Innsbruck,
Oracle Insurance Policy Administration System Quality Assurance Testing Methodology. An Oracle White Paper August 2008
Oracle Insurance Policy Administration System Quality Assurance Testing Methodology An Oracle White Paper August 2008 Oracle Insurance Policy Administration System Quality Assurance Testing Methodology
The Role of Information Technology Studies in Software Product Quality Improvement
The Role of Information Technology Studies in Software Product Quality Improvement RUDITE CEVERE, Dr.sc.comp., Professor Faculty of Information Technologies SANDRA SPROGE, Dr.sc.ing., Head of Department
Quality Assurance Training Program
Quality Assurance Training Program Introduction/Summary: This 5-day course focuses on understanding and developing various skills required by QA Developer, preparing to use various tools and techniques
Levels of Software Testing. Functional Testing
Levels of Software Testing There are different levels during the process of Testing. In this chapter a brief description is provided about these levels. Levels of testing include the different methodologies
Software Testing Tutorial
Software Testing Tutorial SOFTWARE TESTING TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i C O P Y R I G H T & D I S C L A I M E R N O T I C E All the content and graphics on this
Procedure for Assessment of System and Software
Doc. No: STQC IT/ Assessment/ 01, Version 1.0 Procedure for Assessment of System and Software May, 2014 STQC - IT Services STQC Directorate, Department of Electronics and Information Technology, Ministry
WebSphere Business Modeler
Discovering the Value of SOA WebSphere Process Integration WebSphere Business Modeler Workshop SOA on your terms and our expertise Soudabeh Javadi Consulting Technical Sales Support WebSphere Process Integration
Evaluating OO-CASE tools: OO research meets practice
Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht
Copyrighted www.eh1infotech.com +919780265007, 0172-5098107 Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),
Content of 6 Months Software Testing Training at EH1-Infotech Module 1: Introduction to Software Testing Basics of S/W testing Module 2: SQA Basics Testing introduction and terminology Verification and
Rational Quality Manager. Quick Start Tutorial
Rational Quality Manager Quick Start Tutorial 1 Contents 1. Introduction... 2 2. Terminology... 3 3. Project Area Preparation... 4 3.1 Adding Users and specifying Roles... 4 3.2 Managing Tool Associations...
Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).
0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems
SOFTWARE QUALITY MODELS: A COMPARATIVE STUDY
SOFTWARE QUALITY MODELS: A COMPARATIVE STUDY Mrs. Manisha L. Waghmode Assistant Professor Bharati Vidyapeeth Deemed University, Institute of Management and Rural Development Administration, Sangli Dr.
Introduction to Automated Testing
Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases
Software Testing. Knowledge Base. Rajat Kumar Bal. Introduction
Software Testing Rajat Kumar Bal Introduction In India itself, Software industry growth has been phenomenal. IT field has enormously grown in the past 50 years. IT industry in India is expected to touch
Test Framework Introduction & Overview of the Test Framework
Test Framework Introduction & Overview of the Test Framework Author(s): imbus AG MoReq2 test development team Date: 18/04/2008 Version: 1.0 Status: Customer: Approved Serco Consulting imbus AG v1.0 April
Basic Testing Concepts and Terminology
T-76.5613 Software Testing and Quality Assurance Lecture 2, 13.9.2006 Basic Testing Concepts and Terminology Juha Itkonen SoberIT Contents Realities and principles of Testing terminology and basic concepts
Clarifying a vision on certification of MDA tools
SCIENTIFIC PAPERS, UNIVERSITY OF LATVIA, 2010. Vol. 757 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES 23 29 P. Clarifying a vision on certification of MDA tools Antons Cernickins Riga Technical University,
Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53
Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software
Example Software Development Process.
Example Software Development Process. The example software development process is shown in Figure A. The boxes represent the software development process kernels. The Software Unit Testing, Software Component
Metrics in Software Test Planning and Test Design Processes
Master Thesis Software Engineering Thesis no: MSE-2007:02 January 2007 Metrics in Software Test Planning and Test Design Processes Wasif Afzal School of Engineering Blekinge Institute of Technology Box
What is a life cycle model?
What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each
Software Test Plan (STP) Template
(STP) Template Items that are intended to stay in as part of your document are in bold; explanatory comments are in italic text. Plain text is used where you might insert wording about your project. This
MCQ on Management Information System. Answer Key
MCQ on Management Information System. Answer Key 1.Management information systems (MIS) 1. create and share documents that support day-today office activities 2. process business transactions (e.g., time
We turn 10! Performance Testing. The Magazine for Professional Testers. June 2010
10 June 2010 ISSN 1866-5705 free digital version print version 8,00 printed in Germany Performance Testing We turn 10! istockphoto.com/dny59 istockphoto.com/berndwalter Load and Performance Testing for
Implementation of ANSI/AAMI/IEC 62304 Medical Device Software Lifecycle Processes.
Implementation of ANSI/AAMI/IEC 62304 Medical Device Software Lifecycle Processes.. www.pharmout.net Page 1 of 15 Version-02 1. Scope 1.1. Purpose This paper reviews the implementation of the ANSI/AAMI/IEC
Model-based Testing: Next Generation Functional Software Testing
Model-based Testing: Next Generation Functional Software Testing By Dr. Bruno Legeard Model-based testing (MBT) is an increasingly widely-used technique for automating the generation and execution of tests.
Enterprise Test Management Standards
Enterprise Test Management Standards Version 4.0 09/28/2012 Document Number: FSA_TOADG_STDS_TEST.TMS_001 Document Version Control This section summarizes this document revision history. Each entry includes
Business Application Services Testing
Business Application Services Testing Curriculum Structure Course name Duration(days) Express 2 Testing Concept and methodologies 3 Introduction to Performance Testing 3 Web Testing 2 QTP 5 SQL 5 Load
SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT
SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT Mar 31, 2014 Japan Aerospace Exploration Agency This is an English translation of JERG-2-610. Whenever there is anything ambiguous in this document, the original
Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler
Best-Practice Software Engineering: Software Processes to Support Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems [email protected]
SOFTWARE TESTING TRAINING COURSES CONTENTS
SOFTWARE TESTING TRAINING COURSES CONTENTS 1 Unit I Description Objectves Duration Contents Software Testing Fundamentals and Best Practices This training course will give basic understanding on software
A SURVEY AND CLASSIFICATION OF SOFTWARE TESTING TOOLS
LAPPEENRANTA UNIVERSITY OF TECHNOLOGY Department of Information Technology Master of Science Thesis A SURVEY AND CLASSIFICATION OF SOFTWARE TESTING TOOLS The topic of the master s thesis has been accepted
Key Factors for Developing a Successful E-commerce Website
IBIMA Publishing Communications of the IBIMA http://www.ibimapublishing.com/journals/cibima/cibima.html Vol. 2010 (2010), Article ID 763461, 9 pages Key Factors for Developing a Successful E-commerce Website
Efficient Management of Tests and Defects in Variant-Rich Systems with pure::variants and IBM Rational ClearQuest
Efficient Management of Tests and Defects in Variant-Rich Systems with pure::variants and IBM Rational ClearQuest Publisher pure-systems GmbH Agnetenstrasse 14 39106 Magdeburg http://www.pure-systems.com
Test management best practices
Test management best practices Introduction Purpose Few people can argue against the need for improved quality in software development. Users of technology that utilizes software have come to expect various
Requirements engineering and quality attributes
Open Learning Universiteit Unit 2 Learning Unit 2 Requirements engineering and quality attributes Contents Introduction............................................... 21 2.1 Important concepts........................................
Quality Management. Lecture 12 Software quality management
Quality Management Lecture 12 Software quality management doc.dr.sc. Marko Jurčević prof.dr.sc. Roman Malarić University of Zagreb Faculty of Electrical Engineering and Computing Department of Fundamentals
Benefits of Test Automation for Agile Testing
Benefits of Test Automation for Agile Testing Manu GV 1, Namratha M 2, Pradeep 3 1 Technical Lead-Testing Calsoft Labs, Bangalore, India 2 Assistant Professor, BMSCE, Bangalore, India 3 Software Engineer,
Software Configuration Management Plan
For Database Applications Document ID: Version: 2.0c Planning Installation & Acceptance Integration & Test Requirements Definition Design Development 1 / 22 Copyright 2000-2005 Digital Publications LLC.
Organizational Requirements Engineering
Chapter 9, Non-functional Requirements Organizational Requirements Engineering Prof. Dr. Armin B. Cremers Sascha Alda Armin B. Cremers, Sascha Alda Organizational Requirements Engineering 1 Overview of
SOFTWARE TESTING - QUICK GUIDE SOFTWARE TESTING - OVERVIEW
http://www.tutorialspoint.com/software_testing/software_testing_quick_guide.htm What is Testing? SOFTWARE TESTING - QUICK GUIDE SOFTWARE TESTING - OVERVIEW Copyright tutorialspoint.com Testing is the process
FSW QA Testing Levels Definitions
FSW QA Testing Levels Definitions 1. Overview This document is used to help determine the amount and quality of testing (or its scope) that is planned for or has been performed on a project. This analysis
The W-MODEL Strengthening the Bond Between Development and Test
Andreas Spillner Dr. Spillner is working as Professor at the Hochschule Bremen (University of Applied Sciences) where he is responsible for software engineering and real time systems. Dr. Spillner has
Standard Glossary of Terms Used in Software Testing. Version 3.01
Standard Glossary of Terms Used in Software Testing Version 3.01 Terms Used in the Expert Level Test Automation - Engineer Syllabus International Software Testing Qualifications Board Copyright International
Integrity 10. Curriculum Guide
Integrity 10 Curriculum Guide Live Classroom Curriculum Guide Integrity 10 Workflows and Documents Administration Training Integrity 10 SCM Administration Training Integrity 10 SCM Basic User Training
Latest Trends in Testing. Ajay K Chhokra
Latest Trends in Testing Ajay K Chhokra Introduction Software Testing is the last phase in software development lifecycle which has high impact on the quality of the final product delivered to the customer.
JOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,
IBM Rational Rhapsody
IBM Rational Rhapsody IBM Rational Rhapsody Reference Workflow Guide Version 1.9 License Agreement No part of this publication may be reproduced, transmitted, stored in a retrieval system, nor translated
ISO/IEC 9126-1 Software Product Quality Model
Why do current systems fail? Standish Group found that 51% of projects failed 31% were partially successful Main causes were poor user requirements: 13.1% Incomplete requirements 12.4% Lack of user involvement
Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University
Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or
Fundamentals of Measurements
Objective Software Project Measurements Slide 1 Fundamentals of Measurements Educational Objective: To review the fundamentals of software measurement, to illustrate that measurement plays a central role
Requirements-Based Testing: Encourage Collaboration Through Traceability
White Paper Requirements-Based Testing: Encourage Collaboration Through Traceability Executive Summary It is a well-documented fact that incomplete, poorly written or poorly communicated requirements are
R214 SPECIFIC REQUIREMENTS: INFORMATION TECHNOLOGY TESTING LABORATORY ACCREDITATION PROGRAM
The American Association for Laboratory Accreditation Document Revised: R214: Specific Requirements: Information Technology Testing Laboratory Accreditation July 13, 2010 Program Page 1 of 26 R214 SPECIFIC
Application Test Management and Quality Assurance
SAP Brief Extensions SAP Quality Center by HP Objectives Application Test Management and Quality Assurance Deliver new software with confidence Deliver new software with confidence Testing is critical
Software Quality Testing Course Material
Prepared by Vipul Jain Software Quality Testing Course Material Course content is designed and will be taught in such a manner in order to make a person job ready in around 10-12 weeks. Classroom sessions
Do you know? "7 Practices" for a Reliable Requirements Management. by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd.
Do you know? "7 Practices" for a Reliable Requirements Management by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd. In this white paper, we focus on the "Requirements Management,"
Requirements Management
REQUIREMENTS By Harold Halbleib Requirements Management Identify, Specify, Track and Control Requirements Using a Standard Process About the author... Harold Halbleib has a degree in Electrical Engineering
MDEP Generic Common Position No DICWG 02
MDEP Generic Common Position No DICWG 02 Related to: Digital Instrumentation and Controls Working Group activities COMMON POSITION ON SOFTWARE TOOLS FOR THE DEVELOPMENT OF SOFTWARE FOR SAFETY SYSTEMS 1
A Framework of Model-Driven Web Application Testing
A Framework of Model-Driven Web Application Testing Nuo Li, Qin-qin Ma, Ji Wu, Mao-zhong Jin, Chao Liu Software Engineering Institute, School of Computer Science and Engineering, Beihang University, China
D6.1: Service management tools implementation and maturity baseline assessment framework
D6.1: Service management tools implementation and maturity baseline assessment framework Deliverable Document ID Status Version Author(s) Due FedSM- D6.1 Final 1.1 Tomasz Szepieniec, All M10 (31 June 2013)
Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.
INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc. February 2013 1 Executive Summary Adnet is pleased to provide this white paper, describing our approach to performing
Service Level Agreements based on Business Process Modeling
Service Level Agreements based on Business Process Modeling Holger Schmidt Munich Network Management Team University of Munich, Dept. of CS Oettingenstr. 67, 80538 Munich, Germany Email: [email protected]
An Enterprise Framework for Evaluating and Improving Software Quality
An Enterprise Framework for Evaluating and Improving Software Quality Abstract Philip Lew [email protected] With the world s economy increasingly driven by software products, there has been a relentless
Verification and Validation of Software Components and Component Based Software Systems
Chapter 5 29 Verification and Validation of Software Components and Component Based Christina Wallin Industrial Information Technology Software Engineering Processes ABB Corporate Research [email protected]
Presentation: 1.1 Introduction to Software Testing
Software Testing M1: Introduction to Software Testing 1.1 What is Software Testing? 1.2 Need for Software Testing 1.3 Testing Fundamentals M2: Introduction to Testing Techniques 2.1 Static Testing 2.2
Tools to support Requirements-Based Testing
Requisite Pro RMT/RFT/RPT/Robot Rational Test Manager ClearQuest 26 IBM Rational Test Manager Test Manager runs as a schema on top of ClearQuest Version 7 Integrates with other IBM products, such as ClearCase,
Formal Software Testing. Terri Grenda, CSTE IV&V Testing Solutions, LLC www.ivvts.com
Formal Software Testing Terri Grenda, CSTE IV&V Testing Solutions, LLC www.ivvts.com Scope of Testing Find defects early Remove defects prior to production Identify Risks Unbiased opinion When Should Testing
The SPES Methodology Modeling- and Analysis Techniques
The SPES Methodology Modeling- and Analysis Techniques Dr. Wolfgang Böhm Technische Universität München [email protected] Agenda SPES_XT Project Overview Some Basic Notions The SPES Methodology SPES_XT
Functional Validation of SAP Implementation
Functional Validation of SAP Implementation Efficiently produce and maintain a SAP test repository thru modeling of business processes and business rules Geoffrey Potoczny/Smartesting Professional Services
Karunya University Dept. of Information Technology
PART A Questions 1. Mention any two software process models. 2. Define risk management. 3. What is a module? 4. What do you mean by requirement process? 5. Define integration testing. 6. State the main
Software Engineering Compiled By: Roshani Ghimire Page 1
Unit 7: Metric for Process and Product 7.1 Software Measurement Measurement is the process by which numbers or symbols are assigned to the attributes of entities in the real world in such a way as to define
Testing automation of projects in telecommunication domain
Testing automation of projects in telecommunication domain Alexey Veselov, Vsevolod Kotlyarov Saint-Petersburg State Polytechnic University, Saint-Petersburg, Russia [email protected], [email protected]
IEC 61508 Overview Report
IEC 61508 Overview Report A Summary of the IEC 61508 Standard for Functional Safety of Electrical/Electronic/Programmable Electronic Safety-Related Systems exida Sellersville, PA 18960, USA +1-215-453-1720
How To Write An Slcm Project Plan
SLCM 2003.1 Artifacts in a Nutshell ( as of 01/21/2005) Project Development Phases Pension Benefit Guaranty Corporation s (PBGC) System Life Cycle Methodology (SLCM) is comprised of five project development
SECTION 4 TESTING & QUALITY CONTROL
Page 1 SECTION 4 TESTING & QUALITY CONTROL TESTING METHODOLOGY & THE TESTING LIFECYCLE The stages of the Testing Life Cycle are: Requirements Analysis, Planning, Test Case Development, Test Environment
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
Program Lifecycle Methodology Version 1.7
Version 1.7 March 30, 2011 REVISION HISTORY VERSION NO. DATE DESCRIPTION AUTHOR 1.0 Initial Draft Hkelley 1.2 10/22/08 Updated with feedback Hkelley 1.3 1/7/2009 Copy edited Kevans 1.4 4/22/2010 Updated
ISO/IEC 9126 in practice: what do we need to know?
ISO/IEC 9126 in practice: what do we need to know? P. Botella, X. Burgués, J.P. Carvallo, X. Franch, G. Grau, J. Marco, C. Quer Abstract ISO/IEC 9126 is currently one of the most widespread quality standards.
Chapter 5. Regression Testing of Web-Components
Chapter 5 Regression Testing of Web-Components With emergence of services and information over the internet and intranet, Web sites have become complex. Web components and their underlying parts are evolving
The Role of the Software Architect
IBM Software Group The Role of the Software Architect Peter Eeles [email protected] 2004 IBM Corporation Agenda Architecture Architect Architecting Requirements Analysis and design Implementation
INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY
INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK A SYSTEMATIC REVIEW OF AUTOMATED SOFTWARE TESTING TOOLS A. NIRMAL KUMAR 1, DR.
Evaluation of the Iceland State Financial and Human Resource System REPORT OF THE INDIVIDUAL EVALUATOR. Annex 2 SYSTEM AND SOFTWARE QUALITY
Evaluation of the Iceland State Financial and Human Resource System REPORT OF THE INDIVIDUAL EVALUATOR Annex 2 SYSTEM AND SOFTWARE QUALITY This paper lists the properties used in the two main models in
Bringing Value to the Organization with Performance Testing
Bringing Value to the Organization with Performance Testing Michael Lawler NueVista Group 1 Today s Agenda Explore the benefits of a properly performed performance test Understand the basic elements of
Multi-view Architecting
by Gerrit Muller, JürgenMüller, Jan Gerben Wijnstra College, Philips Research e-mail: [email protected] www.gaudisite.nl Buskerud University Abstract The development of large SW-intensive products needs
Plan-Driven Methodologies
Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a
Better processes by sprint: Agile process improvement. Timo Karasch, Method Park
Better processes by sprint: Agile process improvement Timo Karasch, Method Park Seite 1 / 14 Abstract The conventional process improvement is more and more unable to cope with its excessive objectives
