The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
This paper presents the design of a system for testing database-centric software applications using surrogate databases. Traditional testing approaches, such as using test bed databases and using stub code or mock objects, are often either difficult to implement and manage, or do not provide entirely effective verification of the functionality of the application under test. Testing database-centric...
Most complex systems nowadays heavily rely on software, and spacecraft and satellite systems are no exception. Moreover as systems capabilities increase, the corresponding software required to integrate and address system tasks becomes more complex. Hence, in order to guarantee a system's success, testing of the software becomes imperative. Traditionally exhaustive testing of all possible behaviors...
The AutoTest framework automates the software testing process by relying on programs that contain the instruments of their own verification, in the form of contract-oriented specifications of classes and their individual routines.
Tests play a major role in validating software. In particular, the role becomes more important when considering critical software such as for space applications as is the case in the National Institute for Space Research (INPE) in Brazil. Such software uses finite state machines (FSM) in order to model the software specification from which test sequences are generated for a black box test approach...
Regression testing is used to achieve adequate confidence in changed software. To achieve confidence, currently organizations re-execute the entire system test suite on the entire software. Re-executing entire system test suite is an expensive and time consuming activity. To reduce such costs, execution of smaller regression test suite to validate the changed software is suggested. Several techniques,...
Software systems are used widely in many applications where a bug in the system can cause large damage. To prove the correctness of the software system by finding the bugs is the most important and the most difficult task. In this paper, we review and discuss the current approaches for software analysis mainly on model checking and testing. Model checking is a proven successful technology but it works...
Fault injection plays a critical role in the verification of fault-tolerant mechanism, software testing and dependability benchmarking for computer systems. In this paper, according to the characteristics of software faults, we propose a new fault injection design pattern based on the PIN framework provided by Intel company, and develop a PIN-based dynamic software fault injection system (PDSFIS)...
The importance of software is increasing in scientific research and our daily life. Meanwhile, the cost and consequences of software failure caused by software bugs become more and more serious. This paper proposes a standard process for data mining based software debugging. The proposed process provides guidelines for software testing engineers and researchers on how to apply data mining techniques...
Safety-critical system (SCS) has highly demand for the dependability, which requires plenty of resource to ensure the system under test (SUT) satisfy the dependability requirement. Nowadays few of testing approach can efficiently cover the dependability of SUT. This paper proposes a new SCS testing method to improve SCS adaptive dependability testing, which integrates two strategies: the verification...
In this article the advances in software engineering are i) evolvement of software processes from rigid, sequential and slow processes to iterative and agile processes and standardization of process models, such as CMMI (Capability Maturity Model Integration) and ISO 12207, ii) programming paradigms and software design techniques, such as object-oriented programming and model-driven architecture,...
The development efficiency of embedded systems is highly pressured due to the pursuit of short time-to-market of embedded products. In traditional design flow, although software can be developed in parallel with the hardware platform, it can only be tested and verified after the platform is fabricated. ARMISS, an Instruction Set Simulator for the ARM architecture, is developed to enable early software...
Model-based testing techniques select test cases according to test goals, which might be coverage criteria or mutation adequacy. Complex criteria and large models lead to large test suites, and a test case created for one coverage item might cover several other items as well. Therefore, test case generation is optimized in order to avoid unnecessary test cases and minimize the test generation and...
Model-based testing of state based systems is known to be able to spot non-conformance issues. However, up to half of these issues appear to be errors in the model rather than in the system under test. Errors in the specification at least hamper the prompt delivery of the software, so it is worth while to invest in the quality of the specification. Worse, errors in the specification that are also...
Some approaches to Model-Based Testing focus on test case generation from assertions (operation pre- and post- conditions) and invariants, e.g., written in the Object Constraint Language. In such a setting, assertions must be validated. Validation is often carried out via executing scenarios wherein system operations are applied, to detect unsatisfied invariants or failed preconditions. This paper...
The definition of an oracle function for model transformation is challenging because of the very complex nature of models resulting from a transformation. Validating the correctness of an output model requires checking a large number of properties on the structure and semantics of this model. The oracle function can thus be very complex if it checks every property. In this paper, we identify and discuss...
In the MDD and MDA approaches, models become the primary artifacts of the development process. Therefore, assessment of the correctness of such models is a key issue to ensure the quality of the final application. In that sense, this paper presents an automatic method that uses the Constraint Programming paradigm to verify UML class diagrams extended with OCL constraints. In our approach, both class...
Model-driven engineering is a software development method to model applications at a high level of abstraction and introduce platform specific details automatically using model transformations. Similarly, models specified in human-readable languages can be mapped automatically onto languages that support the analysis of formal properties. In an industrial context, the transformations that automate...
Systems verification requires first to model the system to be verified, then to formalize the properties to be satisfied, and finally to describe the behaviour of the environment. This last point, known as the proof context, is often neglected. It could, however, be of great importance in order to reduce the complexity of the proof. The question is then how to formalize such a proof context. This...
In traditional software development environments, many designers don't routinely put their software in front of users. If the ultimate measure of well-designed software is how effectively it serves its intended purpose, then validating that it does so is critical, and the sooner the better. Many user-centered design practitioners do this with usability testing. A formal usability test is a rather...
Dynamic analysis of software systems produces behavioral models that are useful for analysis, verification and testing. The main techniques for extracting models of functional behavior generate either models of constraints on data, usually in the form of Boolean expressions, or models of interactions between components, usually in the form of finite state machines. Both data and interaction models...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.