Towards a decision-making structure for selecting a research design in empirical software engineering
Several factors make empirical research in software engineering particularly challenging as it requires studying not only technology but its stakeholders' activities while drawing concepts and theories from social science. Researchers, in general, agree ...
A framework and architecture for rapid software development: a success story
In this paper, we present the experience of applying Empirical Software Engineering to create a new improved global architecture and framework for Computer Integrated Manufacturing in Freescale® Semiconductor Inc. The architecture and framework ...
A large study on the effect of code obfuscation on the quality of java code
Context: Obfuscation is a common technique used to protect software against malicious reverse engineering. Obfuscators manipulate the source code to make it harder to analyze and more difficult to understand for the attacker. Although different ...
How product owner teams scale agile methods to large distributed enterprises
Software development teams in large scale offshore enterprise development programmes are often under intense pressure to deliver high quality software within challenging time contraints. Project failures can attract adverse publicity and damage ...
Recommending reference API documentation
Reference documentation is an important source of information on API usage. However, information useful to programmers can be buried in irrelevant text, or attached to a non-intuitive API element, making it difficult to discover. We propose to detect ...
A Large-Scale Empirical Study of the Relationship between Build Technology and Build Maintenance
Build systems specify how source code is translated into deliverables. They require continual maintenance as the system they build evolves. This build maintenance can become so burdensome that projects switch build technologies, potentially having to ...
Case studies synthesis: a thematic, cross-case, and narrative synthesis worked example
Case studies are largely used for investigating software engineering practices. They are characterized by their flexible nature, multiple forms of data collection, and are mostly informed by qualitative data. Synthesis of case studies is necessary to ...
Link analysis algorithms for static concept location: an empirical assessment
During software evolution, one of the most important comprehension activities is concept location in source code, as it identifies the places in the code where changes are to be made in response to a modification request. Change requests (such as, bug ...
Software requirements prioritization and selection using linguistic tools and constraint solvers--a controlled experiment
Implementing the entire set of requirements for a software system is often not feasible owing to time and resource limitations. A key driver for successful delivery of any software system is the ability to prioritize the large number of requirements. ...
Optimising agile development practices for the maintenance operation: nine heuristics
Agile methods are widely used and successful in many development situations and beginning to attract attention amongst the software maintenance community --- both researchers and practitioners. However, it should not be assumed that implementing a well-...
Charting the API minefield using software telemetry data
Programs draw significant parts of their functionality through the use of Application Programming Interfaces (APIs). Apart from the way developers incorporate APIs in their software, the stability of these programs depends on the design and ...
An empirical comparison of model-based and capture and replay approaches for performance testing
- Elder Macedo Rodrigues,
- Flávio Moreira De Oliveira,
- Leandro Teodoro Costa,
- Maicon Bernardino,
- Avelino Francisco Zorzo,
- Simone Rocio Senger Souza,
- Rodrigo Saad
A variety of testing tools has been developed to support and automate the software testing activity. Some of them may use different techniques such as Model-based Testing (MBT) or Capture and Replay (CR). Model-based Testing is a technique for automatic ...
The kanban approach, between agility and leanness: a systematic review
The interest in lean product development in general and the Kanban approach in particular has increased over the years. However, practitioners, in the software development field, have significant challenges in implementing the Kanban approach as it ...
Semi-automatic selection of primary studies in systematic literature reviews: is it reasonable?
The systematic review (SR) is a methodology used to find and aggregate all relevant existing evidence about a specific research question of interest. One of the activities associated with the SR process is the selection of primary studies, which is a ...