3,292 research outputs found
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
An Empirical Study on Decision making for Quality Requirements
[Context] Quality requirements are important for product success yet often
handled poorly. The problems with scope decision lead to delayed handling and
an unbalanced scope. [Objective] This study characterizes the scope decision
process to understand influencing factors and properties affecting the scope
decision of quality requirements. [Method] We studied one company's scope
decision process over a period of five years. We analyzed the decisions
artifacts and interviewed experienced engineers involved in the scope decision
process. [Results] Features addressing quality aspects explicitly are a minor
part (4.41%) of all features handled. The phase of the product line seems to
influence the prevalence and acceptance rate of quality features. Lastly,
relying on external stakeholders and upfront analysis seems to lead to long
lead-times and an insufficient quality requirements scope. [Conclusions] There
is a need to make quality mode explicit in the scope decision process. We
propose a scope decision process at a strategic level and a tactical level. The
former to address long-term planning and the latter to cater for a speedy
process. Furthermore, we believe it is key to balance the stakeholder input
with feedback from usage and market in a more direct way than through a long
plan-driven process
On Using Active Learning and Self-Training when Mining Performance Discussions on Stack Overflow
Abundant data is the key to successful machine learning. However, supervised
learning requires annotated data that are often hard to obtain. In a
classification task with limited resources, Active Learning (AL) promises to
guide annotators to examples that bring the most value for a classifier. AL can
be successfully combined with self-training, i.e., extending a training set
with the unlabelled examples for which a classifier is the most certain. We
report our experiences on using AL in a systematic manner to train an SVM
classifier for Stack Overflow posts discussing performance of software
components. We show that the training examples deemed as the most valuable to
the classifier are also the most difficult for humans to annotate. Despite
carefully evolved annotation criteria, we report low inter-rater agreement, but
we also propose mitigation strategies. Finally, based on one annotator's work,
we show that self-training can improve the classification accuracy. We conclude
the paper by discussing implication for future text miners aspiring to use AL
and self-training.Comment: Preprint of paper accepted for the Proc. of the 21st International
Conference on Evaluation and Assessment in Software Engineering, 201
Automated analysis of feature models: Quo vadis?
Feature models have been used since the 90's to describe software product lines as a way of reusing common parts in a family of software systems. In 2010, a systematic literature review was published summarizing the advances and settling the basis of the area of Automated Analysis of Feature Models (AAFM). From then on, different studies have applied the AAFM in different domains. In this paper, we provide an overview of the evolution of this field since 2010 by performing a systematic mapping study considering 423 primary sources. We found six different variability facets where the AAFM is being applied that define the tendencies: product configuration and derivation; testing and evolution; reverse engineering; multi-model variability-analysis; variability modelling and variability-intensive systems. We also confirmed that there is a lack of industrial evidence in most of the cases. Finally, we present where and when the papers have been published and who are the authors and institutions that are contributing to the field. We observed that the maturity is proven by the increment in the number of journals published along the years as well as the diversity of conferences and workshops where papers are published. We also suggest some synergies with other areas such as cloud or mobile computing among others that can motivate further research in the future.Ministerio de Economía y Competitividad TIN2015-70560-RJunta de Andalucía TIC-186
Introductory programming: a systematic literature review
As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming.
This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research
Estimating, planning and managing Agile Web development projects under a value-based perspective
Context: The processes of estimating, planning and managing are crucial for software development projects,
since the results must be related to several business strategies. The broad expansion of the Internet
and the global and interconnected economy make Web development projects be often characterized by
expressions like delivering as soon as possible, reducing time to market and adapting to undefined
requirements. In this kind of environment, traditional methodologies based on predictive techniques
sometimes do not offer very satisfactory results. The rise of Agile methodologies and practices has
provided some useful tools that, combined with Web Engineering techniques, can help to establish a
framework to estimate, manage and plan Web development projects.
Objective: This paper presents a proposal for estimating, planning and managing Web projects, by
combining some existing Agile techniques with Web Engineering principles, presenting them as an
unified framework which uses the business value to guide the delivery of features.
Method: The proposal is analyzed by means of a case study, including a real-life project, in order to obtain
relevant conclusions.
Results: The results achieved after using the framework in a development project are presented, including
interesting results on project planning and estimation, as well as on team productivity throughout the
project.
Conclusion: It is concluded that the framework can be useful in order to better manage Web-based
projects, through a continuous value-based estimation and management process.Ministerio de Economía y Competitividad TIN2013-46928-C3-3-
Modeling functional requirements using tacit knowledge: a design science research methodology informed approach
The research in this paper adds to the discussion linked to the challenge of capturing and modeling tacit knowledge throughout software development projects. The issue emerged when modeling functional requirements during a project for a client. However, using the design science research methodology at a particular point in the project helped to create an artifact, a functional requirements modeling technique, that resolved the issue with tacit knowledge. Accordingly, this paper includes research based upon the stages of the design science research methodology to design and test the artifact in an observable situation, empirically grounding the research undertaken. An integral component of the design science research methodology, the knowledge base, assimilated structuration and semiotic theories so that other researchers can test the validity of the artifact created. First, structuration theory helped to identify how tacit knowledge is communicated and can be understood when modeling functional requirements for new software. Second, structuration theory prescribed the application of semiotics which facilitated the development of the artifact. Additionally, following the stages of the design science research methodology and associated tasks allows the research to be reproduced in other software development contexts. As a positive outcome, using the functional requirements modeling technique created, specifically for obtaining tacit knowledge on the software development project, indicates that using such knowledge increases the likelihood of deploying software successfully
Safety Engineering with COTS components
Safety-critical systems are becoming more widespread, complex and reliant on software. Increasingly they are engineered through Commercial Off The Shelf (COTS) (Commercial Off The Shelf) components to alleviate the spiralling costs and development time, often in the context of complex supply chains.
A parallel increased concern for safety has resulted in a variety of safety standards, with a growing consensus that a safety life cycle is needed which is fully integrated with the design and development life cycle, to ensure that safety has appropriate influence on the design decisions as system development progresses.
In this article we explore the application of an integrated approach to safety engineering in which assurance drives the engineering process. The paper re- ports on the outcome of a case study on a live industrial project with a view to evaluate: its suitability for application in a real-world safety engineering setting; its benefits and limitations in counteracting some of the difficulties of safety en- gineering with COTS components across supply chains; and, its effectiveness in generating evidence which can contribute directly to the construction of safety cases
A data-driven game theoretic strategy for developers in software crowdsourcing: a case study
Crowdsourcing has the advantages of being cost-effective and saving time, which is a typical embodiment of collective wisdom and community workers’ collaborative development. However, this development paradigm of software crowdsourcing has not been used widely. A very important reason is that requesters have limited knowledge about crowd workers’ professional skills and qualities. Another reason is that the crowd workers in the competition cannot get the appropriate reward, which affects their motivation. To solve this problem, this paper proposes a method of maximizing reward based on the crowdsourcing ability of workers, they can choose tasks according to their own abilities to obtain appropriate bonuses. Our method includes two steps: Firstly, it puts forward a method to evaluate the crowd workers’ ability, then it analyzes the intensity of competition for tasks at Topcoder.com—an open community crowdsourcing platform—on the basis of the workers’ crowdsourcing ability; secondly, it follows dynamic programming ideas and builds game models under complete information in different cases, offering a strategy of reward maximization for workers by solving a mixed-strategy Nash equilibrium. This paper employs crowdsourcing data from Topcoder.com to carry out experiments. The experimental results show that the distribution of workers’ crowdsourcing ability is uneven, and to some extent it can show the activity degree of crowdsourcing tasks. Meanwhile, according to the strategy of reward maximization, a crowd worker can get the theoretically maximum reward
- …