12 research outputs found

    In search of the origins and enduring impact of agile software development

    Get PDF
    The Agile Manifesto is a philosophical touchpoint for all agile software development (ASD) methods. We examine the manifesto and some of its associated agile methods in an effort to identify the major impacts of ASD. We have encountered some difficulty in delineating agile and non-agile software processes, which is partially the result of terminological confusion. It is clear from the volume of published research that ASD has made a significant contribution, and we have identified two lasting and important impacts. Firstly, the reduction in iteration durations and secondly, the push for reduced levels of documentation (especially in relation to software requirements). Other aspects of the Agile Manifesto may not have exerted a significant impact; for example, the use of tooling to automate processes has become central to continuous software engineering (CSE) and may not be wholly congruent with the manifesto. Furthermore, many organisations may still rely on business contracts despite calls in the manifesto for greater levels of informal customer collaboration

    A longitudinal explanatory case study of coordination in a very large development programme: The impact of transitioning from a first- to a second-generation large-scale agile development method

    Get PDF
    Large-scale agile development has gained widespread interest in the software industry, but it is a topic with few empirical studies of practice. Development projects at scale introduce a range of new challenges in managing a large number of people and teams, often with high uncertainty about product requirements and technical solutions. The coordination of teams has been identified as one of the main challenges. This study presents a rich longitudinal explanatory case study of a very large software development programme with 10 development teams. We focus on inter-team coordination in two phases: one that applies a first-generation agile development method and another that uses a second-generation one. We identified 27 coordination mechanisms in the first phase, and 14 coordination mechanisms in the second. Based on an analysis of coordination strategies and mechanisms, we develop five propositions on how the transition from a first- to a second-generation method impacts coordination. These propositions have implications for theory and practice.publishedVersio

    Characterizing industry-academia collaborations in software engineering: evidence from 101 projects

    Get PDF
    Research collaboration between industry and academia supports improvement and innovation in industry and helps ensure the industrial relevance of academic research. However, many researchers and practitioners in the community believe that the level of joint industry-academia collaboration (IAC) projects in Software Engineering (SE) research is relatively low, creating a barrier between research and practice. The goal of the empirical study reported in this paper is to explore and characterize the state of IAC with respect to industrial needs, developed solutions, impacts of the projects and also a set of challenges, patterns and anti-patterns identified by a recent Systematic Literature Review (SLR) study. To address the above goal, we conducted an opinion survey among researchers and practitioners with respect to their experience in IAC. Our dataset includes 101 data points from IAC projects conducted in 21 different countries. Our findings include: (1) the most popular topics of the IAC projects, in the dataset, are: software testing, quality, process, and project managements; (2) over 90% of IAC projects result in at least one publication; (3) almost 50% of IACs are initiated by industry, busting the myth that industry tends to avoid IACs; and (4) 61% of the IAC projects report having a positive impact on their industrial context, while 31% report no noticeable impacts or were “not sure”. To improve this situation, we present evidence-based recommendations to increase the success of IAC projects, such as the importance of testing pilot solutions before using them in industry. This study aims to contribute to the body of evidence in the area of IAC, and benefit researchers and practitioners. Using the data and evidence presented in this paper, they can conduct more successful IAC projects in SE by being aware of the challenges and how to overcome them, by applying best practices (patterns), and by preventing anti-patterns.The authors would like to thank the researchers and practitioners who participated in this survey. João M. Fernandes was supported by FCT (Fundação para a Ciência e Tecnologia) within the Project Scope UID/CEC/00319/2013. Dietmar Pfahl was supported by the institutional research grant IUT20-55 of the Estonian Research Council. Andrea Arcuri was supported by the Research Council of Norway (grant agreement No 274385). Mika Mäntylä was partially supported by Academy of Finland grant and ITEA3 / TEKES grant

    Itsenäisen ohjelmistokehittäjän menetelmän soveltaminen mobiilisovelluksen toteutuksessa

    Get PDF
    Itsenäisten ohjelmistokehittäjien määrä on nykypäivänä kasvussa, mutta heille tarkoitettuja ohjelmistotuotannon menetelmiä on kehitetty ja tutkittu hyvin rajallisesti. Tässä tutkielmassa perehdytään erilaisiin itsenäisen kehittäjän ohjelmistotuotannon menetelmiin ja tutkitaan sitten näistä yhden soveltamista itsenäisen kehittäjän mobiilisovelluksen kehitysprojektin alkuvaiheessa. Tavoite on löytää projektiin soveltuva menetelmä sekä tuottaa uutta tietoa valittuun menetelmään liittyen. Tutkittavaksi menetelmäksi valittiin Agarwalin ja Umphressin esittelemä Personal Extreme Programming (PXP), johon liittyvää aiempaa tutkimusta todettiin löytyvän hyvin vähän. Tästä syystä oltiinkin kiinnostuneita sen projektiin soveltumisen lisäksi myös yleisesti sen käyttöönottoon vaikuttavista tekijöistä sekä sen prosessiohjeen toimivuudesta. Näihin kysymyksiin etsittiin vastauksia laadullisen tapaustutkimuksen keinoin haastattelemalla kehittäjää jokaisen tapaustutkimuksen aikana seuratun iteraation päätteeksi sekä lisäksi kehittäjän kirjoittaman kehitystyöhön liittyneen päiväkirjan avulla. Menetelmän soveltuvuutta projektiin ja sen käyttöönottoon vaikuttaneita tekijöitä tutkittiin etsimällä aineistosta havaintoja teknologian hyväksymisteorioihin Technology Acceptance Model (TAM) sekä Diffusion of Innovation (DOI) pohjaten. Menetelmän prosessiohjeen toimivuuden suhteen esitellään sovelluksen kehitysprosessia PXP:n näkökulmasta ja samalla kehittäjän huomioita siitä. Tutkimuksen tuloksena todettiin erityisesti PXP:n toimintaohjeen yksityiskohtaisuus ja perusteellisuus sekä moni PXP:n käytäntö menetelmän hyväksymisen kannalta positiivisina tekijöinä. Toisaalta kuitenkin toimintaohjeen yksityiskohtaisuus teki menetelmästä osaltaan myös monimutkaisen kehittäjän taitojen ja kokemuksen puutteen ohella. Pääasiassa PXP:n käyttöönoton hyväksymiseen positiivisesti vaikuttaneita tekijöitä löydettiin enemmän ja näiden sekä kehittäjän oman arvion perusteella todettiin PXP:n soveltuneen hyvin tapaustutkimuksessa seurattuun projektiin. Myös PXP:n prosessiohjeen todettiin toimineen pääasiassa hyvin, mutta myös muutama kehityskohde erityisesti tapaustutkimuksessa seurattua projektia ajatellen havaittiin muun muassa toimintaohjeen yksikkötestauksen ja versionhallinnan päivityksen paikkojen vaihtamisen sekä toteutuksen aikaisen hyväksymistestauksen paikan suhteen
    corecore