15,606 research outputs found
Agile Requirements Engineering: A systematic literature review
Nowadays, Agile Software Development (ASD) is used to cope with increasing complexity in system development. Hybrid development models, with the integration of User-Centered Design (UCD), are applied with the aim to deliver competitive products with a suitable User Experience (UX). Therefore, stakeholder and user involvement during Requirements Engineering (RE) are essential in order to establish a collaborative environment with constant feedback loops. The aim of this study is to capture the current state of the art of the literature related to Agile RE with focus on stakeholder and user involvement. In particular, we investigate what approaches exist to involve stakeholder in the process, which methodologies are commonly used to present the user perspective and how requirements management is been carried out.
We conduct a Systematic Literature Review (SLR) with an extensive quality assessment of the included studies. We identified 27 relevant papers. After analyzing them in detail, we derive deep insights to the following aspects of Agile RE: stakeholder and user involvement, data gathering, user perspective, integrated methodologies, shared understanding, artifacts, documentation and Non-Functional Requirements (NFR). Agile RE is a complex research field with cross-functional influences. This study will contribute to the software development body of knowledge by assessing the involvement of stakeholder and user in Agile RE, providing methodologies that make ASD more human-centric and giving an overview of requirements management in ASD.Ministerio de Economía y Competitividad TIN2013-46928-C3-3-RMinisterio de Economía y Competitividad TIN2015-71938-RED
User Story Software Estimation:a Simplification of Software Estimation Model with Distributed Extreme Programming Estimation Technique
Software estimation is an area of software engineering concerned with the identification, classification and measurement of features of software that affect the cost of developing and sustaining computer programs [19]. Measuring the software through software estimation has purpose to know the complexity of the software, estimate the human resources, and get better visibility of execution and process model. There is a lot of software estimation that work sufficiently in certain conditions or step in software engineering for example measuring line of codes, function point, COCOMO, or use case points.
This paper proposes another estimation technique called Distributed eXtreme Programming Estimation (DXP Estimation). DXP estimation provides a basic technique for the team that using eXtreme Programming method in onsite or distributed development. According to writer knowledge this is a first estimation technique that applied into agile method in eXtreme Programming
<i>Trace++</i>: A Traceability Approach for Agile Software Engineering
Agile methodologies have been introduced as an alternative to traditional software engineering methodologies. However, despite the advantages of using agile methodologies, the transition between traditional and agile methodologies is not an easy task. There are several problems associated with the use of agile methodologies. Examples of these problems are related to (i) lack of metrics to measure the amount of rework that occurs per sprint, (ii) interruption of a project after several iterations, (iii) changes in the requirements, (iv) lack of documentation, and (v) lack of management control. In this paper we present Trace++, a traceability technique that extends traditional traceability relationships with extra information in order to support the transition between traditional and agile software development. The use of Trace++ has been evaluated in two real projects of different software development companies to measure the benefits of using Trace++ to support agile software development
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-
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineering Capstone Course
Using university capstone courses to teach agile software development
methodologies has become commonplace, as agile methods have gained support in
professional software development. This usually means students are introduced
to and work with the currently most popular agile methodology: Scrum. However,
as the agile methods employed in the industry change and are adapted to
different contexts, university courses must follow suit. A prime example of
this is the Kanban method, which has recently gathered attention in the
industry. In this paper, we describe a capstone course design, which adds the
hands-on learning of the lean principles advocated by Kanban into a capstone
project run with Scrum. This both ensures that students are aware of recent
process frameworks and ideas as well as gain a more thorough overview of how
agile methods can be employed in practice. We describe the details of the
course and analyze the participating students' perceptions as well as our
observations. We analyze the development artifacts, created by students during
the course in respect to the two different development methodologies. We
further present a summary of the lessons learned as well as recommendations for
future similar courses. The survey conducted at the end of the course revealed
an overwhelmingly positive attitude of students towards the integration of
Kanban into the course
Recommended from our members
Requirements Engineering as Creative Problem Solving: A Research Agenda for Idea Finding
This vision paper frames requirements engineering as a creative problem solving process. Its purpose is to enable requirements researchers and practitioners to recruit relevant theories, models, techniques and tools from creative problem solving to understand and support requirements processes more effectively. It uses 4 drivers to motivate the case for requirements engineering as a creative problem solving process. It then maps established requirements activities onto one of the longest-established creative problem solving processes, and uses these mappings to locate opportunities for the application of creative problem solving in requirements engineering. The second half of the paper describes selected creativity theories, techniques, software tools and training that can be adopted to improve requirements engineering research and practice. The focus is on support for problem and idea finding - two creative problem solving processes that our investigation revealed are poorly supported in requirements engineering. The paper ends with a research agenda to incorporate creative processes, techniques, training and tools in requirements projects
Automated user documentation generation based on the Eclipse application model
An application's user documentation, also referred to as the user manual, is
one of the core elements required in application distribution. While there
exist many tools to aid an application's developer in creating and maintaining
documentation on and for the code itself, there are no tools that complement
code development with user documentation for modern graphical applications.
Approaches like literate programming are not applicable to this scenario, as
not a library, but a full application is to be documented to an end-user.
Documentation generation on applications up to now was only partially feasible
due to the gap between the code and its semantics. The new generation of
Eclipse rich client platform developed applications is based on an application
model, closing a broad semantic gap between code and visible interface. We use
this application model to provide a semantic description for the contained
elements. Combined with the internal relationships of the application model,
these semantic descriptions are aggregated to well-structured user
documentations that comply to the ISO/IEC 26514. This paper delivers a report
on the Ecrit research project, where the potentials and limitations of user
documentation generation based on the Eclipse application model were
investigated.Comment: 9 pages, 9 figure
- …