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.
In the software development field, the amount ofdata related to documentation and to the source code itselfis huge. Relevant knowledge can be extracted from this data,provided that adequate tools are in place. In this context, datamining can be seen as an important tool. This paper presentsan approach to mine sequential patterns from source code andto suggest these patterns to developers, according...
Refactoring restructures a program to improve its structure without altering its behavior. However, it is challenging to preserve the domain semantics of a program when refactoring is decided/implemented automatically. Indeed, a program could be syntactically correct, have the right behavior, but model incorrectly the domain semantics. In this paper, we propose a multi-objective optimization approach...
The operation of large scale information systems requires investment into hardware infrastructure and causes running cost for keeping it in a productive state. This especially applies in an enterprise environment where also expenses for software licenses costs or penalties for downtime occur. The deployment of software influences these costs both in their amount and their composition. In order to...
The fact that the maintenance cost occupies almost two-thirds of the total cost for a software system is reported repeatedly in research literatures. The high cost of software maintenance can be attributed to some common maintenance problems such as outdated software documents and obscured software architecture. This paper proposes a method undertaken by a medical center located in southern Taiwan...
Analyzing the run time behavior of large software systems is a difficult and challenging task. Log analysis has been proposed as a possible solution. However, such an analysis poses unique challenges, mostly due to the volume and diversity of the logged data that is collected, thus making this analysis often intractable for practical purposes. In this paper, we present a log analysis technique that...
Modern information systems, such as enterprise applications and e-commerce applications, often consist of databases surrounded by a large variety of software applications depending on the databases. During the evolution and deployment of such information systems, developers have to ensure the global consistency between database schemas and surrounding software applications. However, in such situations...
Newcomers in a software development project often need assistance to complete their first tasks. Then a mentor, an experienced member of the team, usually teaches the newcomers what they need to complete their tasks. But, to allocate an experienced member of a team to teach a newcomer during a long time is neither always possible nor desirable, because the mentor could be more helpful doing more important...
Research on code clones and their impact on software development has been increasing in recent years. There are a number of potentially competing claims among members of the community. There is currently not enough empirical evidence to provide concrete information about these claims. This paper presents the results of a survey of members of the code clone community. The goal of the survey was to...
Clone change management is one of crucial issues in open source software(OSS) development as well as in industrial software development (e.g., development of social infrastructure, financial system, and medical equipment). When an industrial developer fixes a defect, he/she has to find the code clones corresponding to the code fragment including it. So far, several studies performed on the analysis...
Evaluation of competing software process assessment (SPA) methods is an important issue for software process improvement initiatives. SPA methods designers usually claim the successful design and implementations of their SPA methods. Unfortunately, no independently evaluation, based on a set of defined evaluation criteria, has yet been documented. Moreover, independent evaluation of currently available...
Context: Defect reporting is an important part of software development in-vivo, but previous work from open source context suggests that defect reports often have insufficient information for defect fixing. Objective: Our goal was to reproduce and partially replicate one of those open source studies in industrial context to see how well the results could be generalized. Method: We surveyed developers...
Software maintenance effort constitutes a major portion of the software lifecycle effort. Its estimation is vital for successful project planning and strategic resource allocation. In this paper, we conduct and report an industrial case study in this field. The data set was collected from an industrial software process management tool QONE (formerly SoftPM). The methodology proposed provides corresponding...
In 2001 Prechelt et al. published the results of a controlled experiment in software maintenance comparing design patterns to simpler solutions. Since that time, only one replication of the experiment has been performed (published in 2004). The replication found remarkably (though not surprisingly) different results. In this paper we present the results of another replication of Prechelt's experiment,...
As software programs become increasingly large and complex, it is more important to improve the quality of software maintenance. Many software programs rely on bug reports to correct errors in maintenance activities. Bug tracking systems were developed to guide maintenance activities of software developers. However, due to the excessive number of duplicate bug reports, developers spend much time to...
To create a common understanding of a software system, for users and developers, we believe that run-time visualization of both behavior and internal structure is critical. This is particularly true for distributed embedded systems, which are designed to be unobtrusive, making them difficult to comprehend for people who are not familiar with them. We suggest a novel method to visualize software behavior...
Successful performance of software, and indeed Enterprise Resource Planning (ERP), depends on proper system maintenance. For this reason, firms should follow a maintenance process that drives the ERP system toward success. However, in general terms, ERP maintenance managers do not know what conditions they should target to successfully maintain their ERP systems. Moreover, numerous risks threaten...
A multi-tenant software application is a special type of highly scalable, hosted software, in which the application and its infrastructure are shared among multiple tenants to save development and maintenance costs. The limited understanding of the underlying architectural concepts still prevents many software architects from designing such a system. Existing documentation on multi-tenant software...
Distributed software, such as satellite software are now developed and managed by several actors. In this context supporting the maintenance and therefore the evolution of such applications is complex and need a formal framework. In this article, we propose a first step towards such a formal framework to ensure the correctness of software evolutions. Using category theory, we can model software and...
The analysis of execution traces can reveal important information about the behavioral aspects of complex software systems, hence reducing the time and effort it takes to understand and maintain them. Traces, however, tend to be considerably large which hinders their effective analysis. Existing traces analysis tools rely on some sort of visualization techniques to help software engineers make sense...
In this paper, we present a exception-flow analysis tool, called eFlow Mining, that automates the process of gathering and visualizing exception-handling constructs in multi-programming languages. More specifically, the current version of eFlow Mining focuses on code written using the .NET framework to help developers in inspecting applications either to improve them or to understand their exception...
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.