2,255 research outputs found

    What Agile processes should we use in software engineering course projects?

    Get PDF
    Producción CientíficaWhile project-based software engineering courses aim to provide learning opportunities grounded in professional processes, it is not always possible to replicate every process in classrooms due to course constraints. Previous studies observed how students react to various processes and gave retroactive recommendations. In this study, we instead combine a field study on professional Agile (eXtreme Programming, XP) teams and an established team process taxonomy to proactively select team processes to incorporate in a project-based software engineering course. With collected knowledge from the field study, we choose three XP processes to augment the design of a mature software engineering project course. We choose processes that are 1) considered important by professionals, and 2) complete with respect to coverage of the taxonomy's main categories. We then compare the augmented course design with the original design in a case study. Our results suggest that 1) even without extra resources, adding these new processes does not interfere with learning opportunities for XP processes previously existing in the course design; 2) student teams experience similar benefits from these new processes as professional teams do, and students appreciate the usefulness and value of the processes. In other words, our approach allows instructors to make conscious choices of XP processes that improve student learning outcomes while exposing students to a more complete set of processes and thus preparing them better for professional careers. Course designers with limited resources are encouraged to use our methodology to evaluate and improve the designs of their own project-based courses.Ministerio de Ciencia, Innovación y Universidades (Project TIN2017-85179-C3-2-R)Junta de Castilla y León (project VA257P18) by the European Commission under project grant 588438-EPP-1-2017-1-EL-EPPKA2- K

    Pair programming teams and high-quality knowledge sharing: A comparative study of coopetitive reward structures

    Full text link
    © 2015, Springer Science+Business Media New York. There has been a growing research interest in understanding knowledge sharing in agile development. Yet, empirical research that sheds light on its underlying practices, such as pair programming, is evolving. This study uses insights from coopetition and software literature to focus inquiry on the relation between coopetitive rewards and high-quality knowledge sharing in pair programming teams. Theoretical hypotheses are developed and validated, suggesting that: ‘coopetitive rewards influence high-quality knowledge sharing both directly and over time through their impact on the level of knowledge sharing satisfaction’, and, ‘the impact of coopetitive rewards on high-quality knowledge sharing is dependent upon task complexity and the history of working under similar reward structure’. This study generates new understanding related to the use of rewards in pair programming teams, and offers a rigorous and replicable seven-step experimental process for simulating coopetitive structures and investigating their role in pair programming and in similar collaborative contexts

    Using the Work and Organizational Psychology Perspective in Research on Agile Software Development Teams

    Get PDF
    Background: The development of software has gone from more strict plan-driven projects to involve more human interaction and communication due to approaches like agile software development. With the realization of the importance of psychological aspect comes the possibility of learning from other more established research fields instead of reinventing the wheel. Objective: In the field of work and organizational psychology there is an extensive body of knowledge of work-life in many different contexts. The objective of this thesis is to show some examples of how both methods and models from psychology research can be used in software engineering and specifically to understand agile software development teams. The selected models and tools were; new aspects of work motivation in agile teams in larger organizations, statistical tests of validation (factor analysis), and using the social psychology model of group development in connection to agile teams. Method: The appended papers consist of both exploratory, correlative and validation studies. The research methods range from interviews, focus groups, and survey data as well as qualitative and quantitative interpretations. Eight companies participated consisting of two European-based and six US-based organizations, and a total of 76 people participated in the studies. The data collection procedures were also diverse ranging from recorded in-person interviews and focus groups, to online surveys and remotely recorded phone interviews. Results: The analysis included thematic ditto of interview transcripts, correlation of variables in survey data, and statistical validation tests of a survey itself. Some studies used one research methodology while other triangulate the research question in order to increase the validity of the results. The results strongly indicate that many agile maturity models need more validation, that there are work motivational aspects of employees working on agile teams in a more traditional structure, and that the group development aspect of building agile teams contributes with concrete guidance on moving teams forward. Conclusions: We conclude that there are a set of useful methods and models in work and organizational psychology that are applicable, specifically, to the agile software development context of teams, but also, more generally to a larger perspective of software engineering that involves human factors. This thesis will hopefully convince researchers and practitioners of the usefulness of adding the psychological dimension when trying to understand such social and complex systems

    Increasing Consonance and Resonance in Agile Teaching Methodologies

    Get PDF
    In a cooperative environment technicalexcellence and high quality students’ artifacts is whatteachers strive to achieve while educating computerscience students and facing the challenges of this newcentury. When agile techniques and accelerators andinjected in the process in a cooperative environment theconsonance and resonance in groups increases. Thisspeeds up the learning process and the quality of thematerial produced by the students improves. Twoobservational studies at Kent State University at Starkand Ohio University are described in this paper. Thestudies observe the usefulness of using agile teachingtechniques and analyze the quality of deliverablesproduced. A post questionnaire gathered students’feedback. The observation shows that cooperativelearning produces better results than individuallearning however consonance and resonance must bereached before the speed is achieved

    Agile Ways of Working: A Team Maturity Perspective

    Full text link
    With the agile approach to managing software development projects comes an increased dependability on well functioning teams, since many of the practices are built on teamwork. The objective of this study was to investigate if, and how, team development from a group psychological perspective is related to some work practices of agile teams. Data were collected from 34 agile teams (200 individuals) from six software development organizations and one university in both Brazil and Sweden using the Group Development Questionnaire (Scale IV) and the Perceptive Agile Measurement (PAM). The result indicates a strong correlation between levels of group maturity and the two agile practices \emph{iterative development} and \emph{retrospectives}. We, therefore, conclude that agile teams at different group development stages adopt parts of team agility differently, thus confirming previous studies but with more data and by investigating concrete and applied agile practices. We thereby add evidence to the hypothesis that an agile implementation and management of agile projects need to be adapted to the group maturity levels of the agile teams

    An automated framework to support agile adoption coaching

    Get PDF
    This dissertation aims to assist Agile champions in their organisations with their Agile adoption journey. Such a journey typically starts with identifying the Agile challenges and then determining how to address these challenges in their unique context (Hajjdiab & Taleb, 2011a:9). This study provides a manual together with an automated framework to showcase a list of prioritised Agile challenges and their corresponding possible solutions. Before reaching this automated framework, the research presented a comprehensive list of Agile adoption challenges, possible solutions and a mapping between them. The automated framework, also named Agile Adoption Coach (AAC), is in the form of an online tool: www.agilesense.coza/aac. The critical quantitative contribution to this study was the evaluation of the AAC by Scrum Masters and Agile coaches to determine the acceptability of the tool. The research has shown that there is, on average, an 86% acceptability rating for this tool in South Africa.School of ComputingM. Sc. (Computing

    Personal Extreme Programming: Exploring Developers' Adoption

    Get PDF
    Personal Extreme Programming (PXP), evolving from the popular agile methodology, Extreme Programming (XP) and Personal Software Process (PSP), has been suggested as a methodology for autonomous developers who aim to incorporate the principles of XP in the development of software applications. However, there is limited research exploring the adoption of PXP. The purpose of this paper was to explore developers’ adoption of PXP. The constructs of Roger’s (1962) Diffusion of Innovation (DoI) Theory and Technology Acceptance Model were used to investigate developers’ adoption of PXP. Semi-structured interviews were conducted with developers who had experience in PXP practices. Although the findings revealed that PXP is beneficial in software development, the challenges of PXP in software projects include increased chances for errors and lack of skills diversity. Autonomous software developers should, however, evaluate their level of software development skills, experience and amount of work required when considering PXP as a software methodology

    SAFe metodologian vaikutus kommunikaatioon ja yhteistyöhön

    Get PDF
    Nowadays, with the influence of global economy large corporations use global software development to utilise advantages of geographically decentralised organisations and global outsourced software development. Through distributed organisations the work can be done around the clock. Global software development is impacted by three distance dimensions: time distance, geographical distance, and socio-cultural distance, which all bring some challenges. At the same time agile way of working has become more and more popular method in software development. As agile practises are created for co-located teams there is a demand for having working online solutions for communication and collaboration in distributed teams. Corporations use scaled agile way of working to support software develop-ment of large initiatives and projects. Scaled Agile Framework (SAFe) is the most popular among the scaled agile methods. This thesis was conducted as a case study in a multinational corporation. Objective of the case study was to research effectiveness of scaled agile methodology SAFe on communication and collaboration in teams and agile release trains. The case study included two parts: a web-survey and interviews. The results of the analyses of the case study support findings from the literature in the field. The results indicate the importance of communication and collaboration in agile practices and the significance of the online tools that support it
    • …
    corecore