Catálogo de publicaciones - libros

Compartir en
redes sociales


Título de Acceso Abierto

Agile Processes in Software Engineering and Extreme Programming: 18th International Conference, XP 2017, Cologne, Germany, May 22-26, 2017, Proceedings

Parte de: Lecture Notes in Business Information Processing

En conferencia: 18º International Conference on Agile Software Development (XP) . Cologne, Germany . May 22, 2017 - May 26, 2017

Resumen/Descripción – provisto por la editorial

No disponible.

Palabras clave – provistas por la editorial

agile software development; lean development; scrum; project management; software development

Disponibilidad
Institución detectada Año de publicación Navegá Descargá Solicitá
No requiere 2017 Directory of Open access Books acceso abierto
No requiere 2017 SpringerLink acceso abierto

Información

Tipo de recurso:

libros

ISBN impreso

978-3-319-57632-9

ISBN electrónico

978-3-319-57633-6

Editor responsable

Springer Nature

País de edición

Reino Unido

Fecha de publicación

Tabla de contenidos

Are Software Startups Applying Agile Practices? The State of the Practice from a Large Survey

Jevgenija Pantiuchina; Marco Mondini; Dron Khanna; Xiaofeng Wang; Pekka Abrahamsson

Software startups operate under various uncertainties and the demand on their ability to deal with change is high. Agile methods are considered a suitable and viable development approach for them. However, the competing needs for speed and quality may render certain agile practices less suitable than others in the startup context. The adoption of agile practices can be further complicated in software startups that adopt the Lean Startup approach. To make the best of agile practices, it is necessary to first understand whether and how they are used in software startups. This study targets at a better understanding of the use of agile practices in software startups, with a particular focus on lean startups. Based on a large survey of 1526 software startups, we examined the use of five agile practices, including quality related (regular refactoring and test first), speed related (frequent release and agile planning) and communication practice (daily standup meeting). The findings show that speed related agile practices are used to a greater extent in comparison to quality practices. Daily standup meeting is least used. Software startups who adopt the Lean Startup approach do not sacrifice quality for speed more than other startups do.

- Agile in Organizations | Pp. 167-183

Adopting Test Automation on Agile Development Projects: A Grounded Theory Study of Indian Software Organizations

Sulabh Tyagi; Ritu Sibal; Bharti Suri

The role of test automation in Agile Software Development projects is of paramount importance. It is absolutely necessary to automate tests on agile projects as the number of test cases will continue to grow with each successive sprint. Through a Grounded Theory study involving 38 agile practitioners from 18 different software organizations in India, we identified five key challenges faced by agile practitioners and different strategies to overcome those challenges while practicing test automation. Understanding these challenges and strategies would help agile teams in streamlining their test automation practices.

- Agile in Organizations | Pp. 184-198

How is Security Testing Done in Agile Teams? A Cross-Case Analysis of Four Software Teams

Daniela Soares Cruzes; Michael Felderer; Tosin Daniel Oyetoyan; Matthias Gander; Irdin Pekaric

Security testing can broadly be described as (1) the testing of security requirements that concerns confidentiality, integrity, availability, authentication, authorization, nonrepudiation and (2) the testing of the software to validate how much it can withstand an attack. Agile testing involves immediately integrating changes into the main system, continuously testing all changes and updating test cases to be able to run a regression test at any time to verify that changes have not broken existing functionality. Software companies have a challenge to systematically apply security testing in their processes nowadays. There is a lack of guidelines in practice as well as empirical studies in real-world projects on agile security testing; industry in general needs a more systematic approach to security. The findings of this research are not surprising, but at the same time are alarming. The lack of knowledge on security by agile teams in general, the large dependency on incidental pen-testers, and the ignorance in static testing for security are indicators that security testing is highly under addressed and that more efforts should be addressed to security testing in agile teams.

- Safety Critical Software | Pp. 201-216

An Assessment of Avionics Software Development Practice: Justifications for an Agile Development Process

Geir K. Hanssen; Gosse Wedzinga; Martijn Stuip

Avionic systems for communication, navigation, and flight control, and many other functions are complex and crucial components of any modern aircraft. Present day avionic systems are increasingly based on computers and a growing percentage of system complexity can be attributed to software. An error in the software of a safety-critical avionic system could lead to a catastrophic event, such as multiple deaths and loss of the aircraft. To demonstrate compliance with airworthiness requirements, certification agencies accept the use of RTCA document DO-178 for the software development. Avionics software development is typically complex and is traditionally reliant on a strict plan-driven development process, characterized by early fixture of detailed requirements and late production of working software. In this process, requirement changes and solving software errors can lead to much rework, and create a risk of budget and schedule overruns. This raises the question whether avionics software development could benefit from the application of agile approaches. Based on the results of three activities: (1) a literature study on industrial experience with the use of agile methods in a DO-178 context, (2) an expert assessment of the DO-178 objectives, and (3) a survey conducted among European avionics industry, an outline is presented of an agile development process, where Scrum is extended to achieve the DO-178 objectives. The application of agile methods is expected to support frequent delivery of working software and ability to respond to changes, resulting in reduced risk of budget and schedule overruns.

- Safety Critical Software | Pp. 217-231

Inoculating an Agile Company with User-Centred Design: An Empirical Study

Silvia Bordin; Antonella De Angeli

We present an empirical study on facilitating the adoption of user-centred design (UCD) in small Agile companies. To this end, we introduced a curated set of qualitative design practices in an Agile organisation, engaging developers in a lightweight series of workshops. Our results suggest that the approach followed enhanced internal communication and promoted a concrete shift towards a more user-centred perspective. However, the presence of a predominant non-Agile customer seems to have limited potential benefits.

- Short Research Papers | Pp. 235-242

On the Usage and Benefits of Agile Methods & Practices

Philipp Diebold; Udo Mayer

Since software became a major part of the car, we were interested in identifying which agile practices are used and adapted at Bosch automotive. Therefore, we conducted a multi-case study with nine interviews from five Bosch projects. Our results showed a strong focus on Scrum. Most of the Scrum practices are adapted due to the specific project context. Practices from other agile methods, e.g. XP, are used and adapted as well. We further collected the benefits of the practices, most often resulting in improved transparency and planning. The results are used to support automotive projects in selecting and applying agile practices according to their specific process improvement goals.

- Short Research Papers | Pp. 243-250

Checklists to Support Test Charter Design in Exploratory Testing

Ahmad Nauman Ghazi; Ratna Pranathi Garigapati; Kai Petersen

During exploratory testing sessions the tester simultaneously learns, designs and executes tests. The activity is iterative and utilizes the skills of the tester and provides flexibility and creativity. Test charters are used as a vehicle to support the testers during the testing. The aim of this study is to support practitioners in the design of test charters through checklists. We aimed to identify factors allowing practitioners to critically reflect on their designs and contents of test charters to support practitioners in making informed decisions of what to include in test charters. The factors and contents have been elicited through interviews. Overall, 30 factors and 35 content elements have been elicited.

- Short Research Papers | Pp. 251-258

Discovering Software Process Deviations Using Visualizations

Anna-Liisa Mattila; Kari Systä; Outi Sievi-Korte; Marko Leppänen; Tommi Mikkonen

Modern software development is supported by a rich set of tools that accumulate data from the software process automatically. That data can be used for understanding and improving software processes without any manual data collection. In this paper we introduce an industrial case where data visualization of issue management system was used to investigate software projects. The results of the study show that visualization of issue management system data can really reveal deviations between planned process and executed process.

- Short Research Papers | Pp. 259-266

Exploring Workflow Mechanisms and Task Allocation Strategies in Agile Software Teams

Zainab Masood; Rashina Hoda; Kelly Blincoe

Task allocation is considered an important activity in software project management. However, the process of allocating tasks in agile software development teams has not received much attention in empirical research. Through a pilot study involving mixed open-ended and closed-ended interviews questions with 11 agile software practitioners working within a software development organization in India, we explain the process of task allocation as including three different mechanisms of workflow across teams: team-independent, team-dependent, and hybrid workflow; and five types of task allocation strategies: manager-driven, team-driven, individual-driven, manager-assisted and team-assisted. Knowing these workflow mechanisms and task allocation strategies will help software teams and project managers make more effective decisions around workflow and task allocation.

- Short Research Papers | Pp. 267-273

Are Daily Stand-up Meetings Valuable? A Survey of Developers in Software Teams

Viktoria Stray; Nils Brede Moe; Gunnar R. Bergersen

The daily stand-up meeting is a widely used practice. However, what is more uncertain is how valuable the practice is to team members. We invited professional developers of a programming forum to a survey and obtained 221 responses. Results show that the daily stand-up meeting was used by 87% of those who employ agile methods. We found that even though the respondents on average were neutral towards the practice, the majority were either positive or negative. Junior developers were most positive and senior developers and members of large teams most negative. We argue that the value of the practice should be evaluated according to the team needs. Further, more work is needed to understand why senior developers do not perceive the meetings as valuable and how to apply the practice successfully in large teams.

- Short Research Papers | Pp. 274-281