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 software quality research, software defect prediction is a key topic. The characteristics of software attributes influences the performance and effectiveness of the defect prediction model. However this issue is not well explored to the best of our knowledge. Thus we focus on the problem of attribute selection in the context of software defect prediction here and hence in this research, we propose...
There is a growing interest in applying the technical debt metaphor to investigate issues related to the tradeoff of the likely long-term costs associated with software design shortcuts for expected short-term business benefits in terms of increased earlier functionality. We propose an optimization model that contrasts the patterns of technical debt accumulation in a software product with the patterns...
The International Workshop on Emerging Trends in Software Metrics aims at gathering together researchers and practitioners to discuss the progress of software metrics. The motivation for this workshop is the low impact that software metrics has on current software development. The goals of this workshop includes critically examining the evidence for the effectiveness of existing metrics and identifying...
Although now 20 years old, only recently has the concept of technical debt gained some momentum and credibility in the software engineering community. The goal of this fourth workshop on managing technical debt is to engage researchers and practitioners in exchanging ideas on viable research directions and on how to put the concept to actual use, beyond its usage as a rhetorical instrument to discuss...
Several important aspects of software product quality can be evaluated using dynamic metrics that effectively capture and reflect the software's true runtime behavior. While the extent of research in this field is still relatively limited, particularly when compared to research on static metrics, the field is growing, given the inherent advantages of dynamic metrics. The aim of this work is to systematically...
The Workshop on Emerging Trends in Software Metrics aims at bringing together researchers and practitioners to discuss the progress of software metrics. The motivation for this workshop is the low impact that software metrics has on current software development. The goals of this workshop are to critically examine the evidence for the effectiveness of existing metrics and to identify new directions...
The technical debt metaphor is gaining significant traction in the software development community as a way to understand and communicate issues of intrinsic quality, value, and cost. The idea is that developers sometimes accept compromises in a system in one dimension (e.g., modularity) to meet an urgent demand in some other dimension (e.g., a deadline), and that such compromises incur a "debt":...
This paper presents the implementation of Software Residency at a graduation course focused in Software Development and Management in a Software Factory. Software Residency follows the same line of medical residency, at a medicine course. In this case, software residency has the objective to promote experience for students, inside a software development real environment, with well defined quality...
Identifiers are an important source of information during program understanding and maintenance. Programmers often use identifiers to build their mental models of the software artifacts. We have performed a preliminary study to examine the relation between the terms in identifiers, their spread in entities, and fault proneness. We introduced term entropy and context-coverage to measure how scattered...
The existing software engineering literature has empirically shown that a proper choice of identifiers influences software understandability and maintainability. Indeed, identifiers are developers' main up-to-date source of information and guide their cognitive processes during program understanding when the high-level documentation is scarce or outdated and when the source code is not sufficiently...
Robustness of a program is the degree of system correctness of all parts. Measuring robustness is a goal for many researchers. In this paper, program slicing is used to build a robustness hierarchy, where this hierarchy will be used to test, and build a robust program.
This paper presents a structured unifying framework for software metrics (numerical software measurements), based on the three "primary metrics" of function points (FP), person-months (PM), and lines of code (LOC). The framework is based on a layered model, with the three primary metrics constituting the lowest layer. An important property of the primary metrics, referred to as the "convertibility...
Class hierarchies are key to flexible object-oriented design, but can also burden program comprehension activities when improperly designed or documented. This tool demo presents an Eclipse plug in called PATROOLS. It implements two software visualizations that capture the polymorphic usage of a class hierarchy by its clients, and can support understanding and quality assessment tasks related to class...
Software repositories are analyzed to extract useful information on software characteristics. One of them is external quality. A technique used to increase software quality is automatic static analysis, by means of bug finding tools. These tools promise to speed up the verification of source code; anyway, there are still many problems, especially the high number of false positives, that hinder their...
For long-lived systems, there is a need to address evolvability (i.e. a system's ability to easily accommodate changes) explicitly during the entire lifecycle. In this paper, we undertake a systematic review to obtain an overview of the existing studies in promoting software evolvability at architectural level. The search strategy identified 58 studies that were catalogued as primary studies for this...
The first method developed to translate customer requirements into software specification was the Quality Function deployment (QFD) and the second approach to the identification of software specification comes from the software engineering. Requirements may be defined as a demand or need. In software engineering, a requirement is a description of what a system should do. System may have dozen to thousands...
Software packages for educational purposes are increasingly important for classroom use, because they are a valuable way to motivate learning. However, the resources available on the market, with the designation of educational software, often have dubious quality. This led the authors to reflect on the process of evaluating the quality of a given educational software and develop tools that allow to...
Requirements changes during software development pose a risk to cost, schedule and quality while at the same time providing an opportunity to add value. Provision of a generic change source taxonomy which makes the distinction between factors contributing to requirements uncertainty and events that trigger change will support requirements change risk visibility, and also facilitate richer recording...
We developed and used a method that gathers relevant stakeholders to elicit, prioritize, and elaborate the quality goals of a software product. It is designed to be lightweight and easy to learn compared to methods for a more comprehensive analysis of non-functional requirements. The method and the resulting quality goals are meant especially for improving the software product management process....
Context is a significant factor in deciding the set of requirements relevant to a system (i.e., software product construction), the alternatives the system can adopt to satisfy these requirements, and the quality assessment of each alternative. By context we mean the conditions in the operating environment of an system that influences how the system should behave in different situations. However,...
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.