A Large Software System Test Engineering Practices

2020 ◽  
Vol 1 (3) ◽  
pp. 1-10
Author(s):  
Biswadeb Bandyopadhyay

The following Paper describes the experiences of a test engineering team, which had worked with a large software product development and support activity. This team has studied the existing software product, available test tools, test environment, with an objective of analyzing existing testing processes and methodologies for this large software product. The Paper discusses a number of initiatives and recommendations made by this test engineering group aimed at increasing the testing efficiency, optimizing the test suites, measuring and improving effectiveness of test cases and the quantifiable benefits and process improvements, that can derived from such initiatives. This activity was undertaken as part of a test engineering initiative to bring in place a set of innovative test engineering practices as potential business value drivers.

Author(s):  
SRIHARSHA G ◽  
NARESH E

Software testing is a process where you have the stated requirements, pre-requisite software that is to be installed and the configuration of the machine that need to be done as per the test data for the test case and for a specific platform which when verified works perfectly. This paper describes about Manual test case process overview in the testing life cycle for a large software development project and how you track the effort for the same. A Tester need to know about the fundamentals of testing concepts. Documentation of the testing concepts and the process overview of the testing life cycle for a software product need to be done initially so that a new tester when recruited can understand the basic flow as to how it is carried out in real time in an organization practically. Initially a tester need to execute the manual test case for few platforms and some tougher manual test cases need to be learnt from the tester who is having some experience. The tougher manual test cases need to be identified initially from the experienced tester who will be giving a session for the execution of such test cases. So when the foundation for a new tester is powerful the plan assigned for the execution of test cases is met. The effort tracking for the testing can be captured for a tester and should be matched with planned effort for the execution of test cases. Measurement of the testing effort plays a very important role as to how comfortable a new tester is and further root cause analysis is done if required when the new tester does not meet the planned effort.


Author(s):  
Italo L. Araújo ◽  
Ismayle S. Santos ◽  
João B. Ferreira Filho ◽  
Rossana M. C. Andrade ◽  
Pedro Santos Neto

2014 ◽  
pp. 1335-1361
Author(s):  
Claude Laporte ◽  
Edgardo Palza Vargas

Industry recognizes that Very Small Entities (VSEs) that develop software are very important to the economy. A Very Small Entity (VSE) is an entity (enterprise, organization, department or project) with up to 25 people..Failure to deliver a quality product on time and within budget threatens the competitiveness of VSEs and impacts their customers. One way to mitigate these risks is to put in place proven software engineering practices. Many international standards and models, like ISO/IEC 12207 or CMMI®1, have been developed to capture proven engineering practices. However, these documents were not designed for VSEs and are often difficult to apply in such settings. This chapter presents a description of the development of process improvement international standards (IS) targeting VSEs developing or maintaining software as a standalone product or software as a component of a system. The documents used by ISO/IEC JTC1/SC72 Working Group 24 (WG24), mandated to develop a set of standards and guides, and the approach that led to the development, balloting of the ISs, and TRs (Technical Reports) for VSEs are also presented. The chapter focuses on the ISO/IEC 29110 Standard3, the development of means to help VSEs improve their processes, and the description of a few pilot projects conducted to implement the processes of ISO/IEC 29110 standard.


Author(s):  
Jörg Stöcklein ◽  
Daniel Baldin ◽  
Wolfgang Müller ◽  
Tao Xie

In our paper we present a virtual test environment for self-optimizing systems based on mutant based testing to validate user tasks of a real-time operating system. This allows the efficient validation of the code coverage of the test cases and therefore helps to detect errors in order to improving the reliability of the system software. Technically we are able to run and test the software on both systems. By writing application software and setting up the virtual test environment properly, we define our test cases. To validate the code coverage for our test cases, we use the approach of mutant based testing. By running this mutated code on our virtual prototype in the virtual test environment, we are able to efficiently validate the code coverage and are able to detect bugs in the application code or detect dead code that is not executed. Finding non-executing code leads to redefinition of our test cases by either changing the test environment or the application code in the case of dead code. We implemented the virtual test environment on top of the third party low cost VR system Unity 3D, which is frequently used in entertainment and education. We demonstrate our concepts by the example of our BeBot robot vehicles. The implementation is based on our self-optimizing real-time operating system ORCOS and we used the tool CERTITUDE(TM) for generating the mutations in our application code. Our BeBot virtual prototype in our virtual test environment implements the same low-level interface to the underlying hardware as the real BeBot. This allows a redirection of commands in ORCOS to either the real or the virtual BeBot in order to provide a VR based platform for early software development as well as ensures comparable conditions under both environments. Our example applies a virtual BeBot that drives through a labyrinth utilizing its IR sensors for navigation. The mutant based testing checks if all situations implemented by the software to navigate through the labyrinth are covered by our tests.


2018 ◽  
Vol 48 (9) ◽  
pp. 1588-1606
Author(s):  
Kai Shi ◽  
Huiqun Yu ◽  
Jianmei Guo ◽  
Guisheng Fan ◽  
Xingguang Yang

Author(s):  
Johnny Maikeo Ferreira ◽  
Silvia Regina Vergilio ◽  
Marcos Quinaia

The Feature Model (FM) is a fundamental artifact of the Software Product Line (SPL) engineering, used to represent commonalities and variabilities, and also to derive products for testing. However, the test of all features combinations (products) is not always possible in practice. Due to the growing complexity of the applications, only a subset of products is usually selected. The selection is generally based on combinatorial testing, to test features interactions. This kind of selection does not consider different classes of faults that can be present in the FM. The application of a fault-based approach, such as mutation-based testing, can increase the probability of finding faults and the confidence that the SPL products match the requirements. Considering that, this paper introduces a mutation approach to select products for the feature testing of SPLs. The approach can be used similarly to a test criterion in the generation and assessment of test cases. It includes (i) a set of mutation operators, introduced to describe typical faults associated to the feature management and to the FM; and (ii) a testing process to apply the operators. Experimental results show the applicability of the approach. The selected test case sets are capable to reveal other kind of faults, not revealed in the pairwise testing.


Author(s):  
Mitsuhiro Kimura ◽  
Shigeru Yamada

It is of great importance for software engineers and managers to evaluate software testing-progress in a large-scale software production process, since tremendous software development resources must be consumed to achieve high quality and reliability of a software product. By focusing on the behavior of the digested test-case data observed in the testing process, we construct a stochastic model and derive several quantitative measures for software testing-progress evaluation. Actual data observed in the testing process are analyzed by the proposed model, and we discuss the applicability of our models.


Author(s):  
Stefan Biffl ◽  
Marcos Kalinowski ◽  
Rick Rabiser ◽  
Fajar Ekaputra ◽  
Dietmar Winkler

Context. Software engineering researchers conduct systematic literature reviews (SLRs) to build bodies of knowledge (BoKs). Unfortunately, relevant knowledge collected in the SLR process is not publicly available, which considerably slows down building BoKs incrementally. Objective. We present and evaluate the Systematic Knowledge Engineering (SKE) process to support efficiently building BoKs from published research. Method. SKE is based on the SLR process and on Knowledge Engineering practices to build a Knowledge Base (KB) by reusing intermediate data extraction results from SLRs. We evaluated the feasibility of applying SKE by building a Software Inspection BoK KB from published experiments and a Software Product Line BoK KB from published experience reports. We compared the effort, benefits, and risks of building BoK KBs regarding the SKE and the traditional SLR processes. Results. The application of SKE for incrementally collecting and organizing knowledge in the context of a BoK was feasible for different domains and different types of evidence. While the efforts for conducting the SKE and traditional SLR processes are comparable, SKE provides significant benefits for building BoKs. Conclusions. SKE enables researchers in a scientific community to reuse and incrementally build knowledge in a BoK. SKE is ready to be evaluated in other software engineering domains.


Sign in / Sign up

Export Citation Format

Share Document