69,095 research outputs found
Agile values and their implementation in practice
Today agile approaches are often used for the
development of digital products. Since their development in
the 90s, Agile Methodologies, such as Scrum and Extreme
Programming, have evolved. Team collaboration is strongly
influenced by the values and principles of the Agile Manifesto. The
values and principles described in the Agile Manifesto support
the optimization of the development process. In this article, the
current operation is analyzed in Agile Product Development
Processes. Both, the cooperation in the project team and the
understanding of the roles and tasks will be analyzed. The results
are set in relation to the best practices of Agile Methodologies. A
quantitative questionnaire related to best practices in Agile Product
Development was developed. The study was carried out with
175 interdisciplinary participants from the IT industry. For the
evaluation of the results, 93 participants were included who have
expertise in the subject area Agile Methodologies. On one hand,
it is shown that the collaborative development of product-related
ideas brings benefits. On the other hand, it is investigated which
effect a good understanding of the product has on decisions made
during the implementation. Furthermore, the skillset of product
managers, the use of pair programming, and the advantages of
cross-functional teams are analyzed.Ministerio de Ciencia e Innovación TIN2013-46928-C3-3-
<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
Open Source Tools to Support Teaching Agile Software Development
Learning agile software development methodologies are important due to the popularity of agility in software industry. Agile software development has several practices and each practice needs specific tools to work with. Fortunately, there are plenty of open source tools to support working with the agile practices. However, each tool is a separate tool and there is no information about the interrelation of those open source tools. In this paper we propose a set of open source tools to support agile software development course. We start from identifying the principles and practices of agile software development and continue with examining open source tools that fit with agile practices. The relationship between the open source tools is also determined, based on their functionalities
StarGro: Building i* metrics for agile methodologies
Requirements management is one of the cornerstone activities in software development. Agile methodologies use dedicated methods, techniques and artifacts in order to implement this activity. Remarkably, Backlog Grooming is the activity of managing and welcoming changing requirements in SCRUM. However, current industrial practices in agile development still tend to render this process in the shape of a list of statements, features and bug fixes that often leads to a blurred view of the goals of the project, the underestimation of client's needs and the decrease of the ability to respond to changes. In this paper we outline an approach that uses goal and agent oriented modelling techniques in order to fill in this "intentional" gap that current industrial approaches lack.Peer ReviewedPostprint (published version
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
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
Comparative Study on Agile software development methodologies
Today-s business environment is very much dynamic, and organisations are
constantly changing their software requirements to adjust with new environment.
They also demand for fast delivery of software products as well as for
accepting changing requirements. In this aspect, traditional plan-driven
developments fail to meet up these requirements. Though traditional software
development methodologies, such as life cycle-based structured and object
oriented approaches, continue to dominate the systems development few decades
and much research has done in traditional methodologies, Agile software
development brings its own set of novel challenges that must be addressed to
satisfy the customer through early and continuous delivery of the valuable
software. It is a set of software development methods based on iterative and
incremental development process, where requirements and development evolve
through collaboration between self-organizing, cross-functional teams that
allows rapid delivery of high quality software to meet customer needs and also
accommodate changes in the requirements. In this paper, we significantly
identify and describe the major factors, that Agile development approach
improves software development process to meet the rapid changing business
environments. We also provide a brief comparison of agile development
methodologies with traditional systems development methodologies, and discuss
current state of adopting agile methodologies. We speculate that from the need
to satisfy the customer through early and continuous delivery of the valuable
software, Agile software development is emerged as an alternative to
traditional plan-based software development methods. The purpose of this paper,
is to provide an in-depth understanding, the major benefits of agile
development approach to software development industry, as well as provide a
comparison study report of ASDM over TSDM.Comment: 25 pages, 25 images, 86 references used, with authors biographie
Some Findings Concerning Requirements in Agile Methodologies
gile methods have appeared as an attractive alternative to conventional methodologies. These methods try to reduce the time to market and, indirectly, the cost of the product through flexible development and deep customer involvement. The processes related to requirements have been extensively studied in literature, in most cases in the frame of conventional methods. However, conclusions of conventional methodologies could not be necessarily valid for Agile; in some issues, conventional and Agile processes are radically different. As recent surveys report, inadequate project requirements is one of the most conflictive issues in agile approaches and better understanding about this is needed. This paper describes some findings concerning requirements activities in a project developed under an agile methodology. The project intended to evolve an existing product and, therefore, some background information was available. The major difficulties encountered were related to non-functional needs and management of requirements dependencies
- …
