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.
The Modeling & Simulation (M&S) of modern cyber-physical systems is presenting new challenges. New M&S techniques, methods and tools are emerging that take advantage of distributed simulation environments. One of the most mature and popular standard for distributed simulation is the IEEE 1516-2010 - High Level Architecture (HLA) that, although originally developed for military applications,...
A number of techniques have been developed that support method call completion. However, there has been little research on the problem of method parameter completion. In this paper, we first present a study that helps us to understand how developers complete method parameters. Based on our observations, we developed a recommendation technique, called Parc, that collects parameter usage context using...
DCI (Data, Context and Interaction) comes from role-based programming and separates the system state from its behavior making it possible to preserve use cases in code to the great extent. In its Java implementation, DCI relies on the Qi4J (renamed to Apache Zest at the time of finalizing this paper) framework for role injection. This paper provides an assessment of DCI via its Qi4J implementation...
In an execution of a large scale program, even a simple observable behavior may be generated by a wide range of the source code. To comprehend how such a behavior is implemented in the code, a debugger would be helpful. However, when using a debugger, developers often encounter several types of cumbersome tasks and are often confused by the huge and complicated runtime information. To support such...
The legacy code of a tool handling domain specific data gathers valuable expertise. However in many cases, it must be rewritten to make it apply to structurally incompatible data.
The Grid and Cloud User Support Environment (gUSE) enables users convenient and easy access to grid and cloud infrastructures by providing a general purpose, workflow-oriented graphical user interface to create and run workflows on various Distributed Computing Infrastructures (DCIs). Its arrangements for creating and modifying existing workflows are, however, non-intuitive and cumbersome due to the...
Web-based labs are key tools for distance education that help to illustrate scientific phenomena, which require costly or difficult-to-assemble equipment. Easy Java Simulations (EJS) is an authoring tool that speeds up the creation of these kind of labs. An excellent proof of the EJS potential is the open source physics (OSP) repository, which hosts hundreds of free EJS labs. Learning management systems,...
Hot deployment is a typical feature in mainstream application servers. But current application servers treat each module as a standalone application and may fail if a module with dependencies against other ones is partially updated with hot deploying. The reason lies in that those module dependencies are not respected in current application servers. Direct countermeasures that manage dependencies...
Mobile devices like smartphones and tablet computers made it possible to access educational offers spatially and temporally unbounded. However, learners have different prior knowledge and preferences, and are in different situations. Contextual information can be used to adapt educational offers to the learners' individual needs and characteristics. When it comes to the detection of such information...
The purpose of this paper is to give a report of an observational study involving program comprehension with the projectional editor that enables custom views of the source code. We briefly discuss the issues of program comprehension and motives behind projectional code editing. We also give an overview of two projectional editors focused on concern location and compare their features and use cases...
As software consumption is shifting to mobile platforms, enterprises are looking for efficient ways to reuse their existing legacy systems by exposing their functionalities as services. Mining services from legacy code is therefore an important problem for the enterprises. In this paper we present a technique for mining service candidates from the database applications. Central to our mining technique...
Java class loaders are commonly used in application servers to load, unload and update a set of classes as a unit. However, unloading or updating a class loader can introduce stale references to the objects of the outdated class loader. A stale reference leads to a memory leak and, for an update, to an inconsistency between the outdated classes and their replacements. To detect and eliminate stale...
Query Expansion is an important component for information retrieval systems. It makes possible the reformulation of the initial user query by adding new terms. In this paper, we propose a new approach for term selection in the relevance feedback process. This approach, based on Rocchio formula, is an adaptation to the XML information retrieval context. It can resolve two major problems specific to...
Modern integrated development environments(IDEs) make many software engineering tasks easier by providingautomated programming support such as code completion andnavigation. However, such support -- and therefore IDEs as awhole -- operate on one revision of the code at a time, and leavehandling of code history to external tools or plugins, such asEGit for Eclipse. For example, when a method is removed...
Exceptions are an indispensable part of the software development process. However, developers usually rely on imprecise results from a web search to resolve exceptions. More specifically, they should personally take into account the context of an exception, then, choose and adapt a relevant solution to solve the problem. In this paper, we present Exception Tracer, an Eclipse plug in that helps developers...
Contemporary large software systems rely on complex software ecosystems for managing infrastructural tasks. While these ecosystems facilitate software development, the software architect must put care in not relying on assumptions on behaviors and policies of the ecosystem that may change with platform evolution. Based on our experience with developing analyses within MARPLE, a framework for software...
Software licenses determine, from a legal point of view, under which conditions software can be integrated, used, and above all, redistributed. Licenses evolve over time to meet the needs of development communities and to cope with emerging legal issues and new development paradigms. Such evolution of licenses is likely to be accompanied by changes in the way how software uses such licenses, resulting...
Code obfuscation techniques are widely used in industry to increase protection of source code and intellectual property. The idea is that even if attackers gain hold of source code, it will be hard for them to understand what it does and how. Thus obfuscation techniques are specifically targeted at human comprehension of code. We suggest that the ideas and experience embedded in obfuscations can be...
Popular open-source software projects receive and review contributions from a diverse array of developers, many of whom have little to no prior involvement with the project. A recent survey reported that reviewers consider conformance to the project's code style to be one of the top priorities when evaluating code contributions on Github. We propose to quantitatively evaluate the existence and effects...
Developers frequently employ Copy and Paste. However, little is known about the copy and paste behavior during development. To better understand the copy and paste behavior, automated approaches are proposed to identify cloned code. However, such automated approaches can only identify the location of the code that has been copied and pasted, but little is known about the context of the copy and paste...
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.