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.
We place reliability in the context of other relevant software qualities and try to define it rigorously. Then we discuss two complementary approaches to reliability: the constructive approach, which tries to produce a-priori reliable software, and the analytic approach, which tries to measure reliability by inspecting software a-posteriori, after its development. The paper reviews two relevant...
Modern societies are pervaded by computerized, heterogeneous devices designed for specific purposes, but also more and more often capable of interacting with other devices for entirely different purposes. For example, a cell phone could be used to purchase a train ticket on-line that could later be printed by a vending machine at the train station. This type of open environment is what we call a society...
Classic fault localization techniques can automatically provide information about the suspicious code blocks that are likely responsible for observed failures. This information is useful, but not sufficient to completely understand the causes of failing executions, which still require further (time-consuming) investigations to be exactly identified. A useful and comprehensive source of information...
Well designed assertions improve overall software quality, ease debugging and maintenance, and support the construction of autonomic software systems. Although widely used both in academia and industry, manually defining code assertions is hard and error-prone. In this summary we present LuMiNous, a prototype that implements a technique to automatically generate code assertions from model annotations.
Developers frequently integrate complex COTS frameworks and components in software applications. COTS products are often only partially documented, and developers may misuse technologies and introduce integration faults, as witnessed by the many entries in fault repositories. Once identified, common integration problems and their fixes are usually documented in forums and fault repositories on the...
Enterprise services must satisfy strong requirements that are coded in agreements with customers, commonly called service level agreements (SLA). To satisfy SLAs in critical conditions, conventional data centers are often greatly over-dimensioned, wasting resources and raising service costs. Virtualized data centers (VDC) provide an opportunity to significantly reduce over-dimensioning, and so reduce...
Many mature development processes use structural coverage metrics to monitor the quality of testing. Studies suggest that commonly used control flow testing criteria poorly address state-based behavior of object oriented software. This paper presents DaTeC, a tool that provides useful coverage information of Java object states by implementing a novel contextual data flow testing approach.
Software systems increasingly integrate Off-The-Shelf (OTS) components. However, due to the lack of knowledge about the reused OTS components, this integration is fragile and can cause in the field a lot of failures that result in dramatic consequences for users and service providers, e.g. loss of data, functionalities, money and reputation. As a consequence, dynamic and automatic fixing of integration...
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...
In this paper, we present a self-adaptive approach for service-oriented applications that combines novel techniques into a traditional sense-plan-act control loop, where the subject system is connected to a controller that in turn feeds commands back into the subject system. Our control loop works as follows: The invocation of a service triggers monitoring mechanisms. Such mechanisms identify changes...
Software engineers frequently update COTS components integrated in component-based systems, and can often chose among many candidates produced by different vendors. This paper tackles both the problem of quickly identifying components that are syntactically compatible with the interface specifications, but badly integrate in target systems, and the problem of automatically generating regression test...
The integration of third-party Web services is challenged by the difficulty of keeping consistency between software systems that are maintained by different organizations and may evolve dynamically and independently, because of both changes in service implementation and dynamic discovery of new services. Self-adaptive applications have been recognized as viable solutions for dealing with systems where...
The development of COTS-based systems shifts the focus of testing and verification from single components to component integration. Independent teams and organizations develop COTS components without referring to specific systems or interaction patterns. Developing systems that reuse COTS components (even high-quality ones) therefore presents new compatibility problems. David Garlan, Robert Allen,...
Service oriented applications integrate heterogenous Web services, which are deployed and maintained by different providers, and can evolve dynamically and autonomously. Autonomous changes of web services manifest only at run time, and may lead to unexpected failures. This paper proposes an approach to designing self-adaptive applications, which can react to changes in the implementation of services,...
Planning and allocating resources for testing is difficult and it is usually done on an empirical basis, often leading to unsatisfactory results. The possibility of early estimation of the potential faultiness of software could be of great help for planning and executing testing activities. Most research concentrates on the study of different techniques for computing multivariate models and evaluating...
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.