162 research outputs found
Preface
This CEUR volume contains the research proposals accepted for presentation at the 13th International
Doctoral Symposium on Empirical Software Engineering (IDoESE 2015), held in Beijing, China, the 21st
of October 2015, as an event integrated in the Empirical Software Engineering International Week
(ESEIW), which remarkably included the world-leading Empirical Software Engineering and
Measurement conference (ESEM 2015).
The objective of the doctoral symposium is to provide junior researchers with the opportunity to present
their work to the empirical software engineering community and receive valuable feedback from
experienced researchers in that community. The symposium also aims at facilitating the exchange of ideas
among young researchers. To do so, experienced members of the empirical software engineering
community serve as symposium advisors and provide feedback to students presenting their work
Registered Reports in Software Engineering
Registered reports are scientific publications which begin the publication
process by first having the detailed research protocol, including key research
questions, reviewed and approved by peers. Subsequent analysis and results are
published with minimal additional review, even if there was no clear support
for the underlying hypothesis, as long as the approved protocol is followed.
Registered reports can prevent several questionable research practices and give
early feedback on research designs. In software engineering research,
registered reports were first introduced in the International Conference on
Mining Software Repositories (MSR) in 2020. They are now established in three
conferences and two pre-eminent journals, including Empirical Software
Engineering. We explain the motivation for registered reports, outline the way
they have been implemented in software engineering, and outline some ongoing
challenges for addressing high quality software engineering research.Comment: in press as EMSE J. commen
How software engineering research aligns with design science: A review
Background: Assessing and communicating software engineering research can be
challenging. Design science is recognized as an appropriate research paradigm
for applied research but is seldom referred to in software engineering.
Applying the design science lens to software engineering research may improve
the assessment and communication of research contributions. Aim: The aim of
this study is 1) to understand whether the design science lens helps summarize
and assess software engineering research contributions, and 2) to characterize
different types of design science contributions in the software engineering
literature. Method: In previous research, we developed a visual abstract
template, summarizing the core constructs of the design science paradigm. In
this study, we use this template in a review of a set of 38 top software
engineering publications to extract and analyze their design science
contributions. Results: We identified five clusters of papers, classifying them
according to their alignment with the design science paradigm. Conclusions: The
design science lens helps emphasize the theoretical contribution of research
output---in terms of technological rules---and reflect on the practical
relevance, novelty, and rigor of the rules proposed by the research.Comment: 32 pages, 10 figure
Statistical Process Control for Software: Fill the Gap
The characteristic of software processes, unlike manufacturing ones, is that they have a very
high human-centered component and are primarily based on cognitive activities. As so, each
time a software process is executed, inputs and outputs may vary, as well as the process
performances. This phenomena is better identified in literature with the terminology of
“Process Diversity” (IEEE, 2000). Given the characteristics of a software process, its intrinsic
diversity implies the difficulty to predict, monitor and improve it, unlike what happens in
other contexts. In spite of the previous observations, Software Process Improvement (SPI) is a
very important activity that cannot be neglected. To face these problems, the software
engineering community stresses the use of measurement based approaches such as QIP/GQM
(Basili et al., 1994) and time series analysis: the first approach is usually used to determine
what improvement is needed; the time series analysis is adopted to monitor process
performances. As so, it supports decision making in terms of when the process should be
improved, and provides a manner to verify the effectiveness of the improvement itself.
A technique for time series analysis, well-established in literature, which has given
insightful results in the manufacturing contexts, although not yet in software process ones is
known as Statistical Process Control (SPC) (Shewhart, 1980; Shewhart, 1986). The technique
was originally developed by Shewhart in the 1920s and then used in many other contexts.
The basic idea it relies on consists in the use of so called “control charts” together with their
indicators, called run tests, to: establish operational limits for acceptable process variation;
monitor and evaluate process performances evolution in time. In general, process
performance variations are mainly due to two types of causes classified as follows:
ď‚· Common cause variations: the result of normal interactions of people, machines,
environment, techniques used and so on.
ď‚· Assignable cause variations: arise from events that are not part of the process and
make it unstable.
In this sense, the statistically based approach, SPC, helps determine if a process is stable or
not by discriminating between common cause variation and assignable cause variation. We
can classify a process as “stable” or “under control” if only common causes occur. More
precisely, in SPC data points representing measures of process performances are collected.
These values are then compared to the values of central tendency, upper and lower limit of
admissible performance variations.
While SPC is a well established technique in manufacturing contexts, there are only few
works in literature (Card, 1994; Florac et al., 2000; Weller, 2000(a); Weller, 2000(b); Florence,
2001; Sargut & Demirors, 2006; Weller, & Card. 2008; Raczynski & Curtis, 2008) that present
successful outcomes of SPC adoption to software. In each case, not only are there few cases
of successful applications but they don’t clearly illustrate the meaning of control charts and
related indicators in the context of software process application.
Given the above considerations, the aim of this work is to generalize and put together the
experiences collected by the authors in previous studies on the use of Statistical Process
Control in the software context (Baldassarre et al, 2004; Baldassarre et al, 2005; Caivano 2005;
Boffoli, 2006; Baldassarre et al, 2008; Baldassarre et al, 2009) and present the resulting
stepwise approach that: starting from stability tests, known in literature, selects the most
suitable ones for software processes (tests set), reinterprets them from a software process
perspective (tests interpretation) and suggest a recalculation strategy for tuning the SPC
control limits.
The paper is organized as follows: section 2 briefly presents SPC concepts and its
peculiarities; section 3 discusses the main differences and lacks of SPC for software and
presents the approach proposed by the authors; finally, in section 4 conclusions are drawn
On Internet-of-Things Devices in Ambient Assisted Living Solutions
In this paper, we present the results of a Rapid Review (RR) of Internet-of-Things (IoT) devices that have been using in AAL solutions for elderly people. In that respect, our literature review is born from the need of delivering evidence to the stakeholders that are involved in the project in which this RR has been conducted. Nevertheless, the obtained results can be of interest to software engineers who want to know which IoT devices have been using in AAL solutions for elderly people to support decision-making in the development of these solutions. The findings of our RR emerge from 61 papers and can be summarized as follows: (i) a number of IoT devices are used in AAL solutions for elderly people; (ii) most IoT devices do not explicitly focus on specific diseases; and (iii) IoT devices support several needs
Crowdsourcing the State of the Art(ifacts)
In any field, finding the "leading edge" of research is an on-going
challenge. Researchers cannot appease reviewers and educators cannot teach to
the leading edge of their field if no one agrees on what is the
state-of-the-art.
Using a novel crowdsourced "reuse graph" approach, we propose here a new
method to learn this state-of-the-art. Our reuse graphs are less effort to
build and verify than other community monitoring methods (e.g. artifact tracks
or citation-based searches). Based on a study of 170 papers from software
engineering (SE) conferences in 2020, we have found over 1,600 instances of
reuse; i.e., reuse is rampant in SE research. Prior pessimism about a lack of
reuse in SE research may have been a result of using the wrong methods to
measure the wrong things.Comment: Submitted to Communications AC
A Tool for Improving Privacy in Software Development
Privacy is considered a necessary requirement for software development. It is necessary to understand how certain software vulnerabilities can create problems for organizations and individuals. In this context, privacy-oriented software development plays a primary role to reduce some problems that can arise simply from individuals’ interactions software applications, even when the data being processed is not directly linked to identifiable. The loss of confidentiality, integrity, or availability at some point in the data processing, such as data theft by external attackers or the unauthorized access or use of data by employees., represent some types of cybersecurity-related privacy events. Therefore, this research work discusses the formalization of 5 key privacy elements (Privacy by Design Principles, Privacy Design Strategies, Privacy Pattern, Vulnerabilities and Context) in software development and presents a privacy tool that supports developers’ decisions to integrate privacy and security requirements in all software development phases
- …