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.
Collaboration has become an integral aspect of software engineering. The widespread availability and adoption of social channels has led to a culture where today's developers participate and collaborate more frequently with one another. Awareness is widely accepted as an important feature of collaboration, but exactly what this encompasses and how processes and tools should be evaluated in terms of...
Defect prediction techniques allow spotting modules (or commits) likely to contain (introduce) a defect by training models with product or process metrics -- thus supporting testing, code integration, and release decisions. When applied to processes where software changes rapidly, conventional techniques might fail, as trained models are not thought to evolve along with the software. In this study,...
Code review is an important task in software development. However, performing code review is perceived, for the most part, as an undesired task, presenting several challenges to the required collaboration and knowledge transfer between programmers and reviewers. In order to overcome these challenges and improve the effectiveness of code review, we developed SCRUT: Social Code Review Unifying Tool...
With the increasing role played by software in supporting our society, its sustainability and environmental impact have become major factors in the development and operation of software-intensive systems. Myths and beliefs hide the real truth behind Green IT: IT is energy-inefficient because software is developed to make it so - intentionally or not. But how far are we from being able to control software...
This study was carried out to find the context and factors that can affect the productivity of a team of developers and testers in a distributed software project. We interviewed project members in order to understand the relationships between those project context factors and their impact on scheduling risk. Our results suggest that, from a testers site point of view, knowledge expertise and communication...
For software developers to use the full range of available commands in an integrated development environment, one has to provide proactive support which can suggest unknown commands that could be useful for the task at hand. Researchers started exploring the potential of recommender systems to provide this type of help, but so far there are still very few contributions. We propose a new multi-criteria...
A process theory is an explanation of how an entity changes and develops. While software engineering is fundamentally concerned with how software artifacts change and develop, little research explicitly builds and empirically evaluates software engineering process theories. This lack of theory obstructs scientific consensus by focusing the academic community on methods. Methods inevitably oversimplify...
Empirical methods have grown common in software engineering, but there is no consensus on how to apply them properly. Is practical relevance key? Do internally valid studies have any value? Should we replicate more to address the tradeoff between internal and external validity? We asked the community how empirical research should take place in software engineering, with a focus on the tradeoff between...
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...
The quality of software projects is affected by developer turnover. Mockus studied organizational volatility in the context a large switching software project at Avaya. We replicate his model of the impact of organizational volatility on post-release defects. At the time of Mockus's study, Avaya was experimenting with outsourcing and layoffs were prevalent. In contrast, we study volatility on the...
Nowadays there are not formal tools in the program industrial that can guarantee a lack of errors in analyzed software. A huge number of program paths affect to a complexity of a program analysis. An approach of reducing of a quantity of program paths is described in the paper. This approach bases on a symbolic notation. According to this approach variables after program cycle should be depicted as...
This paper explores the possibility that requirements engineering is, in principle, detrimental to software project success. Requirements engineering is conceptually divided into two distinct processes: sense making (learning about the project context) and problem structuring (specifying problems, goals, requirements, constraints, etc.). An interdisciplinary literature review revealed substantial...
A challenging problem in software engineering is to check if a program has an execution path satisfying a regular property. We propose a novel method of dynamic symbolic execution (DSE) to automatically find a path of a program satisfying a regular property. What makes our method distinct is when exploring the path space, DSE is guided by the synergy of static analysis and dynamic analysis to find...
This paper proposes a conceptual framework, motivated by personas and composed of certain interrelated artifacts, to provide a better support for the goals included in the contents of structured user story statements.
Code clone analysis is a very active subject of study, and research on inter-project code clones is starting to emerge. In the context of software package repositories specifically, developers are confronted with the choice between depending on code implemented in other packages, or cloning this code in their own package. This article presents an empirical study of identical function clones in the...
The act of note-taking is an essential part of the data analysis process. It has been realized in form of various annotation systems that have been discussed in many publications. Unfortunately, the focus usually lies on high-level functionality, like interaction metaphors and display strategies. We argue that it is worthwhile to also consider software engineering aspects. Annotation systems often...
Measuring competencies may serve as a feedback mechanism as well as a judgment device for a lecturer. As measuring every competency from a catalogue of competencies is not very viable, the to-be-measured competencies are grouped in competency profiles. Further, assessment practices are shown and applied to a course in a study program. A discussion of useful practices concludes this contribution.
Software processes and Software Engineering (SE) methods belong to those knowledge areas which are challenging to be taught intuitively accessible. The specification “Kernel and Language for Software Engineering Methods (Essence)” [1] claims to deliver an approach to consolidate all essential dimensions of SE-endeavors into an universal compact and actionable kernel. This paper describes the characteristics...
In this paper the need for tool science, a discipline dedicated to the problem of developing, selecting, adapting and teaching about software tools for research is discussed. Starting from a general description of this field a short overview on the state-of-the-art is given. Core problems for tools research are discussed and several open research issues are identified like the need for case studies...
Software Engineers are often promoted to management positions, based on their engineering excellence, lacking management knowledge, which is not always part of their undergraduate SE program. Moreover, very early in their career software engineers face management issues, when they are required to meet budget and schedule, to assess potential risks, to make make/buy decisions or to maintain effective...
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.