2,847 papers · page 116 of 143
Paulo Henrique M. Maia, Jeff Kramer, Sebastián Uchitel, Nabor C. Mendonça
Probabilistic models are useful in the analysis of system behaviour and non-functional properties. Reliable estimates and measurements of probabilities are needed to annotate behaviour models in order to generate accurate predictions. However, this may not be sufficient, and may …
Lijun Mei, W. K. Chan, T. H. Tse
Service computing has increasingly been adopted by the industry, developing business applications by means of orchestration and choreography. Choreography specifies how services collaborate with one another by defining, say, the message exchange, rather than via the process flow …
Tung Thanh Nguyen, Hoan Anh Nguyen, Nam H. Pham, Jafar M. Al-Kofahi, Tien N. Nguyen
The interplay of multiple objects in object-oriented programming often follows specific protocols, for example certain orders of method calls and/or control structure constraints among them that are parts of the intended object usages. Unfortunately, the information is not always…
Animesh Pathak, Mahanth K. Gowda
Macroprogramming is an application development technique for wireless sensor networks (WSNs) where the developer specifies the behavior of the system, as opposed to that of the constituent nodes. In this proposed demonstration, we would like to present Srijan, a toolkit that enab…
Esteban Pavese, Víctor A. Braberman, Sebastián Uchitel
System specifications have long been expressed through automata-based languages, enabling verification techniques such as model checking. These verification techniques can assess whether a property holds or not, given a system specification. Quantitative model checking can provid…
Marian Petre
Software is a designed artifact. In other design disciplines, such as architecture, there is a well-established tradition of design studies which inform not only the discipline itself but also tool design, processes, and collaborative work. The 'challenge' of this paper is to con…
Dawei Qi, Abhik Roychoudhury, Zhenkai Liang, Kapil Vaswani
Debugging refers to the laborious process of finding causes of program failures. Often, such failures are introduced when a program undergoes changes and evolves from a stable version to a new, modified version. In this paper, we propose an automated approach for debugging evolvi…
Ralf-Peter Schäfer
At the end of 2008 TomTom finalized the roll-out of its real-time traffic information service HD TrafficTM in 4 additional countries as the UK, France, Germany and Switzerland as an enhancement to the Dutch roll-out in 2007. The traffic information service is the next step in Tom…
David Schuler, Andreas Zeller
To assess the quality of a test suite, one can use mutation testing - seeding artificial defects (mutations) into the program and checking whether the test suite finds them. Javalanche is an open source framework for mutation testing Java programs with a special focus on automati…
Danhua Shao, Sarfraz Khurshid, Dewayne E. Perry
Parallel changes are becoming increasingly prevalent in the development of large scale software system. To further study the relationship between parallel changes and faults, we have designed and implemented a semantic conflict analyzer (SCA) to detect semantic interference betwe…
Mary Shaw
The conventional wisdom of software engineering holds that software systems are developed by software professionals, that they have knowable (if evolving) requirements, that project managers control system configurations, that results can be computed directly, and that the system…
Elena Sherman, Matthew B. Dwyer, Sebastian G. Elbaum
Coverage measures help to determine whether a test suite exercises a program adequately according to a testing criterion. Many existing measures, however, are defined over coverage domains that cannot be precisely calculated, rendering them of limited value in assessing the exten…
Richard N. Taylor
Software architecture is the set of principal design decisions about a system. As such, it has been around since the design of the very first computer programs. Nonetheless, as a discipline and body of knowledge, it has greatly changed and matured over the years, emerging as a cr…
Suresh Thummalapenta, Tao Xie, Nikolai Tillmann, Jonathan de Halleux, Wolfram Schulte
An objective of unit testing is to achieve high structural coverage of the code under test. Achieving high structural overage of object-oriented code requires desirable method-call sequences that create and mutate objects. These sequences help generate target object states such a…
Vipindeep Vangala, Jacek Czerwonka, Phani Talluri
Selection of diverse test cases and elimination of duplicates are two major problems in product testing life cycle, especially in sustained engineering environment. In order to solve these, we introduce a framework of test case comparison metrics which will quantitatively describ…
Pradeep Varma, R. K. Shyamasundar, Harshit J. Shah
We present a novel, table-free technique for detecting all temporal and spatial memory access errors (e.g. dangling pointers, out-of-bounds check, etc.) in programs supporting general pointers. Our approach is the first technique to provide such error checking using only constant…
Chao Wang, Swarat Chaudhuri, Aarti Gupta, Yu Yang
We propose a new algorithm for verifying concurrent programs, which uses concrete executions to partition the program into a set of lean partitions called concurrent trace programs (CTPs), and symbolically verifies each CTP using a satisfiability solver. A CTP, derived from a con…
Jan Wloka, Manu Sridharan, Frank Tip
A program is reentrant if distinct executions of that program on distinct inputs cannot affect each other. Reentrant programs have the desirable property that they can be deployed on parallel machines without additional concurrency control. Many existing Java programs are not ree…
Yingfei Xiong, Zhenjiang Hu, Haiyan Zhao, Hui Song, Masato Takeichi, Hong Mei
Modern development environments often involve models with complex consistency relations. Some of the relations can be automatically established through "fixing procedures". When users update some parts of the model and cause inconsistency, a fixing procedure dynamically propagate…
Iman I. Yusuf, Heinz W. Schmidt, Ian D. Peake
Failure in grids is costly and inevitable. Existing fault tolerance (FT) mechanisms are typically defensive and reactive, thus unnecessarily costly. In this paper we propose a hybrid FT approach, recovery aware component (RAC), combining reactive and proactive FT, with failure re…