165,991 research outputs found
Towards continuous software release planning
@2017 Personal use of these materials is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating news collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other worksContinuous software engineering is a new trend that is gaining increasing attention of the research community in the last years. The main idea behind this trend is to tighten the connection between the software engineering lifecycle activities (e.g., development, planning, integration, testing, etc.). While the connection between development and integration (i.e., continuous integration) has been subject of research and is applied in industrial settings, the connection between other activities is still in a very early stage. We are contributing to this research topic by proposing our ideas towards connecting the software development and software release planning activities (i.e., continuous software release planning). In this paper we present our initial findings on this topic, how we envision to address the continuous software release planning, and a research agenda to fulfil our objectives.Peer ReviewedPostprint (author's final draft
A situational approach for the definition and tailoring of a data-driven software evolution method
Successful software evolution heavily depends on the selection of the right features to be included in the next release. Such selection is difficult, and companies often report bad experiences about user acceptance. To overcome this challenge, there is an increasing number of approaches that propose intensive use of data to drive evolution. This trend has motivated the SUPERSEDE method, which proposes the collection and analysis of user feedback and monitoring data as the baseline to elicit and prioritize requirements, which are then used to plan the next release. However, every company may be interested in tailoring this method depending on factors like project size, scope, etc. In order to provide a systematic approach, we propose the use of Situational Method Engineering to describe SUPERSEDE and guide its tailoring to a particular context.Peer ReviewedPostprint (author's final draft
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
Incorporating Agile with MDA Case Study: Online Polling System
Nowadays agile software development is used in greater extend but for small
organizations only, whereas MDA is suitable for large organizations but yet not
standardized. In this paper the pros and cons of Model Driven Architecture
(MDA) and Extreme programming have been discussed. As both of them have some
limitations and cannot be used in both large scale and small scale
organizations a new architecture has been proposed. In this model it is tried
to opt the advantages and important values to overcome the limitations of both
the software development procedures. In support to the proposed architecture
the implementation of it on Online Polling System has been discussed and all
the phases of software development have been explained.Comment: 14 pages,1 Figure,1 Tabl
EXTREME PROGRAMMING AND RATIONAL UNIFIED PROCESS – CONTRASTS OR SYNONYMS?
The agile movement has received much attention in software engineering recently. Established methodologies try to surf on the wave and present their methodologies a being agile, among those Rational Unified Process (RUP). In order to evaluate the statements we evaluate the RUP against eXtreme Programming (XP) to find out to what extent they are similar end where they are different. We use a qualitative approach, utilizing a framework for comparison. RUP is a top-down solution and XP is a bottom-up approach. Which of the two is really best in different situations has to be investigated in new empirical studies.extreme programming
What are Hybrid Development Methods Made Of? An Evidence-Based Characterization
Among the multitude of software development processes available, hardly any is used by the book. Regardless of company size or industry sector, a majority of project teams and companies use customized processes that combine different development methods— so-called hybrid development methods. Even though such hybrid development methods are highly individualized, a common understanding of how to systematically construct synergetic practices is missing. In this paper, we make a first step towards devising such guidelines. Grounded in 1,467 data points from a large-scale online survey among practitioners, we study the current state of practice in process use to answer the question: What are hybrid development methods made of? Our findings reveal that only eight methods and few practices build the core of modern software development. This small set allows for statistically constructing hybrid development methods. Using an 85% agreement level in the participants’ selections, we provide two examples illustrating how hybrid development methods are characterized by the practices they are made of. Our evidence-based analysis approach lays the foundation for devising hybrid development methods
Safety-Critical Systems and Agile Development: A Mapping Study
In the last decades, agile methods had a huge impact on how software is
developed. In many cases, this has led to significant benefits, such as quality
and speed of software deliveries to customers. However, safety-critical systems
have widely been dismissed from benefiting from agile methods. Products that
include safety critical aspects are therefore faced with a situation in which
the development of safety-critical parts can significantly limit the potential
speed-up through agile methods, for the full product, but also in the
non-safety critical parts. For such products, the ability to develop
safety-critical software in an agile way will generate a competitive advantage.
In order to enable future research in this important area, we present in this
paper a mapping of the current state of practice based on {a mixed method
approach}. Starting from a workshop with experts from six large Swedish product
development companies we develop a lens for our analysis. We then present a
systematic mapping study on safety-critical systems and agile development
through this lens in order to map potential benefits, challenges, and solution
candidates for guiding future research.Comment: Accepted at Euromicro Conf. on Software Engineering and Advanced
Applications 2018, Prague, Czech Republi
- …