228 research outputs found

    Process Models and Distribution of Work in Offshoring Application Software Development

    Get PDF
    Common process models for the development of application software (AS) are examined as to how well they are suited for offshoring projects. The need for communication and interaction among onsite and offshore project stakeholders is identified as a critical success factor. Process models used by organizations providing offshoring services are discussed, and a generalized offshoring life cycle model is developed. A specific focus is set on the distribution of work between the organization that outsources AS development and the offshore organization that carries out the major share of the development work. Problems and challenges that have to be faced, making offshoring a difficult task, are discussed. --

    Agile Software Development: Exploring the Values and Principles, Collaboration and Boundary Objects

    Get PDF
    Agile software development, both a movement and a set of software development methods, guided by the values and principles state in the Manifesto for Agile development (Beck et al. 2001), should not be seen only as a collection of development methods. This thesis proposes that in order to understand what constitutes differences or similarities between Agile organisations, one should apply a holistic view of Agile development. This view consists of three elements that form the Agile development environment: the perspective the organisations have towards Agile, the Agile process the organisations follow and the Agile structures that form the basis for the process. By proposing this framework of Agile engagement, the thesis answers following research questions: 1. How does collaboration in organisations differ under the various approaches towards Agile? 2. How do organisations structure collaboration between Agile teams and business stakeholders? 3. How are boundary objects used in collaboration between these groups? As research method, I followed the eight steps of the SPS approach and conducted a qualitative, interpretive case study. The study consists of three case studies. First, the Extreme Inc. case is an example of an organisation where the members hold an Avid perspective towards Agile methods. The organisation had arranged the collaboration to follow a tightly integrated model where boundary objects are applied to support the pair programming method and foster face-to-face collaboration. The case of Escapade and Carmine presents an example of an Inclusive Agile perspective, where organisations strive to focus on collaboration and boundary mitigation. The organisations had set up a collaboration configuration, where boundary spanners and all boundary objects were designed to create a sense of presence and ease of collaboration. The last case, the PrecautionCorp program, is a study of an organisation where the members of the organisation have chosen to observe Agile methods in a Pragmatic way. All collaboration between the stakeholders was organised via selected boundary spanners who mitigated the boundaries but also maintained a level of control over the chaos by applying a variety of boundary objects. By analysing the three case studies, I have identified three main elements that impact Agile software development: the perspective the organisations have towards the Agile philosophy which impacts the Agile process, that is, how the Agile methods are applied in practice; the configuration of the business stakeholder collaboration; and the application of the boundary objects. Based on this analysis, I have presented the framework for Agile engagement, a holistic theory that tied together the elements of Agile development. The practical contributions of this thesis are several: practitioners can apply the framework for Agile engagement when analysing their own positions, can benefit from better understanding of the relations between Agile process, Agile perspective and Agile structures, and can enhance their understanding of the best possible application of boundary objects

    Análise do impacto sobre a metodologia XP da inclusão de modelos de processos de negócio na elicitação de requisitos

    Get PDF
    La metodología ágil de desarrollo de software eXtreme Programming (XP) utiliza Historias de Usuario [HU] como una estrategia de elicitación de requerimientos. Las HU utilizan lenguaje natural, el cual aunque debería ser claro para todos, pues causar confusiones y diferencias en la comprensión de los problemas, entre el equipo de desarrolladores y los interesados [stakeholders]. Este artículo propone incluir el modelamiento de procesos de negocio [PN] en la metodología  XP, como una alternativa a las historias de usuario capaz de mejorar la calidad u cantidad de información recolectada. En el desarrollo de esta investigación se evaluó un total de once proyectos (HU vs PN), durante todas las fases propuestas por XP. Las dos estrategias y su efectividad fueron analizadas a través de métricas de software para demostrar el mejoramiento en el desarrollo de los procesos. El trabajo realizado evidenció que el uso de PN mejora la comunicación e incrementa la calidad del proceso y la productividad del equipo de desarrollo. XP (eXtreme Programming) agile methodology uses the User Stories as a requirements elicitation strategy. The user stories are based on natural language, which may cause some misunderstanding and miscomprehension problems between software development team and stakeholders. The paper proposes the inclusion of Business Process Models (BPN) in the XP methodology as an alternative to user stories, seeking to improve the quality and quantity of the information collected. The proposal was evaluated using user stories vs. BPN in 11 projects during all phases proposed by XP. Both strategies –and their effectiveness– were analyzed through software metrics, in order to demonstrate the improvement in the development process. By applying software metrics, it was shown that the use of BPN: improves communication between analysts and others involved, increase approval rate of customer requirements, shortens delivery requirement, fewer changes are made in each iteration and a lower percentage of defects are found by the stakeholder, regarding the use of user stories.A metodologia ágil de desenvolvimento de software Extreme Programming (XP) utiliza Histórias de Usuário [HU] como uma estratégia elicitação de requisitos. As HU usam linguagem natural, que embora devesse ficar claro para todos, pode causar confusão e diferenças na compreensão de problemas entre a equipe de desenvolvimento e as partes interessadas [skateholders]. Este artigo propõe a inclusão da modelagem de processos de negócios [PN] na metodologia XP, como uma alternativa às Histórias de Usuário, capaz de melhorar a qualidade ou quantidade de dados coletados. No desenvolvimento deste trabalho foram avaliados um total de onze projetos (HU vs PN) em todas as fases propostas pelo XP. As duas estratégias e a sua eficácia foram analisadas através de métricas de software para demonstrar o melhoramento no desenvolvimento dos processos. O trabalho mostrou que o uso de PN melhora a comunicação e aumenta a qualidade do processo e a produtividade da equipe de desenvolvimento

    The Theory of One Team: Agile Software Development with Distributed Teams

    No full text
    Team co-location is a hallmark of Agile software development that advocates face-to-face interaction and close collaboration among team members. Distributed teams, however, use Agile methods despite the separation of team members through space, time and culture. Little is known about how distributed teams use Agile methods for software development. A Grounded Theory research study that involved 55 participants from 38 different software companies in the USA, India, and Australia was carried out to investigate the key concern of distributed teams in Agile software development. This thesis proposes “The Theory of One Team” which explains how a distributed team in Agile software development adopts explicit strategies for bridging spatial, temporal, and socio-cultural distances, while facing critical impact factors, in order to become one team. This thesis primarily describes how a distributed team resolves the key concern of becoming one team. This thesis also provides the members of a distributed team with techniques for building trust with one another. In addition, this thesis serves to inform senior managers about the importance of supporting distributed teams in Agile software development

    An agile based integrated framework for software development.

    Get PDF
    Doctor of Philosophy in Management. University of KwaZulu-Natal. Durban, 2018.Software development practice has been guided by practitioners and academics along an evolutionary path that extends from a Waterfall approach, characterised as highly prescriptive, to an approach that is agile, embracing the dynamic context in which software is developed. Agile Methodology is informed by a set of generic principles and agile methods that are customised by practitioners to meet the requirements of the environment in which it is used. Insight into the customisation of agile methods is pivotal to uphold the evolutionary trajectory of software development methodology. The study adopted a ‘socio-technical’ orientation to enhance the implementation of Agile Methodology. The social component of the study was aligned to the role played by organisational culture in the adoption of software development methodology. The amorphous concept of organisational culture has been operationalised by implementing the Competing Values Framework to develop a model that aligns organisational culture to an optimal methodology for software development. The technical component of the study has a software engineering focus. The study leveraged experiential knowledge of software development by South African software practitioners to develop a customised version of a prominent agile software development method. The model has been developed so that it is compatible with a variant of organisational culture that is aligned with agile methodology. The study implemented a sequential research design strategy consisting of two phases. The first phase was qualitative consisting of a phenomenological approach to develop the study’s main models. The second phase was quantitative, underpinned by technology acceptance theory, consisting of a survey based approach to determine South African software practitioners’ acceptance of the agile-oriented technical model that was developed in the study. The results from the survey indicated an 80% acceptance of the model proposed in study. Structural Equation Modelling was used to demonstrate that the inclusion of organisational culture as an independent construct improved the predictive capacity of technology acceptance theory in the context of software development methodology adoption. The study’s overall theoretical contribution was to highlight the significance of organisational culture in the implementation of agile methodology and to extend the evolutionary path of software development methodology by proposing an agile oriented model that scales the software process to an organisational infrastructure level

    A framework for the analysis and evaluation of software development methodologies based on formal, intrinsic and pragmatic criteria

    Get PDF
    Includes bibliographical references (leaves 143-151)

    Human Factors in Agile Software Development

    Full text link
    Through our four years experiments on students' Scrum based agile software development (ASD) process, we have gained deep understanding into the human factors of agile methodology. We designed an agile project management tool - the HASE collaboration development platform to support more than 400 students self-organized into 80 teams to practice ASD. In this thesis, Based on our experiments, simulations and analysis, we contributed a series of solutions and insights in this researches, including 1) a Goal Net based method to enhance goal and requirement management for ASD process, 2) a novel Simple Multi-Agent Real-Time (SMART) approach to enhance intelligent task allocation for ASD process, 3) a Fuzzy Cognitive Maps (FCMs) based method to enhance emotion and morale management for ASD process, 4) the first large scale in-depth empirical insights on human factors in ASD process which have not yet been well studied by existing research, and 5) the first to identify ASD process as a human-computation system that exploit human efforts to perform tasks that computers are not good at solving. On the other hand, computers can assist human decision making in the ASD process.Comment: Book Draf
    corecore