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.
UML Interactions represent one of the three UML behaviors. They describe the interwork of parts of a system based on message exchange. UML Interactions can reside on any level of abstraction and they seem sufficiently elaborated for high-level specifications used for sketching the communication among parts of a system. The UML Interactions metamodel, however, reveals some deficiencies for precise...
Most code-based quality measurement approaches are based, at least partially, on values of multiple source code metrics. A class will often be classified as being of poor quality if the values of its metrics are above given thresholds, which are different from one metric to another. The metrics thresholds are calculated using various techniques. In this paper, we investigated two specific techniques:...
The objective of this paper is to introduce a new constraint model for testing the conformity of overriding methods during inheritance operation for an object oriented (OO) system. This model is based on formal specification techniques and can be used to generate test data in derived classes. The key idea of this conformity approach is to use an optimal constraint and a partitioning technique based...
The correctness of model transformations is key to obtain reliable MDE solutions. However, current transformation tools provide limited support to statically detect and correct errors. This way, the identification of errors and their correction are mostly manual activities. Our aim is to improve this situation. Based on a static analyser for ATL model transformations which we have previously built,...
Automatic test case execution is crucial for testdriven development (TDD) approach. It is beneficial if test cases can be automatically generated and executed. In this paper, we present UTGen, an Eclipse plugin for the generation and execution of test cases for JUnit test-platform. It is based on the idea of constraint-based testing, working for the methodlevel black-box unit testing. Test data are...
Data flow testing has recently attracted new interest in the context of testing object oriented systems, since data flow information is well suited to capture relations among the object states, and can thus provide useful information for testing method interactions. Unfortunately, classic data flow testing, which is based on static analysis of the source code, fails to identify many important data...
The main focus of Software Engineering discipline is to establishing methods and processes for the effective and efficient development of software projects. One of the most relevant paradigms for achieving this goal is Model-Driven Development (MDD). MDD uses models at different abstraction levels to automatically generate software products by means of model-transformations. However, one of the main...
Several software development techniques involve the generation of graph-based representations of a program created via static analysis. Some tasks, such as integration testing, require the creation of models that represent several parts of the system, and not just a single component or unit (e.g., unit testing). Besides being a basis for testing and other analysis techniques, an interesting feature...
In the context of safety-critical software development, one important step in ensuring safe behavior is conformance testing, i.e., checking compliance between expected behavior and implementation. Round-trip path testing (RTP) is one example of conformance testing. Another essential step, however, is sneak-path testing, that is testing of how software reacts to unexpected events for a particular system...
Software testing has traditionally focused on evaluating the functionality of implemented modules against feature specifications. This approach assumes that customer requirements and usage scenarios are accurately translated into specifications and that individual modules implemented using the feature specifications would work seamlessly and coherently to solve business problems meant to be addressed...
Information systems are expected to satisfy increasingly ambitious requirements, while reducing time–to–market has become a primary objective. This trend has necessitated the advent of development approaches that are better equipped and flexible enough to cope with modern challenges. Model-Driven Architecture (MDA) and Situational Method Engineering (SME) are approaches addressing this requirement:...
In model-driven development, requirements are captured as a specification model, from which a conforming implementation is automatically generated. Model consistency, with respect to requirements, is a primary concern. If the various structural and integrity constraints are inconsistent, then either the model will admit no implementation, or the implementation produced will not behave according to...
Model-based test suite reduction aims to provide a smaller set of test scenarios which can preserve the original test coverage with respect to some testing criteria. We are proposing to apply Formal Concept Analysis (FCA) in analyzing the association between a set of test scenarios with a set of transitions specified in a state machine model. By utilizing the properties of concept lattice, we are...
The goal of aspect-oriented programming is to modularize concerns that tend to tangle with and scatter across multiple modules of software systems. For that purpose, crosscutting behavior implemented as advice is applied to several points of the base program (i.e., join points) using pointcut mechanisms. However, if pointcuts are wrongly defined, advice can be applied to unintended join points, injecting...
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.