384 research outputs found

    How Scrum Adds Value to Achieving Software Quality?

    Get PDF
    Scrum remains the most popular agile software development method implementation for a variety of reasons; one important motive is to improve software quality. Yet many organizations fail to achieve quality improvements through the use of Scrum, and existing research sheds little light on the value-add of Scrum for software quality. More specifically, (1) how notions of software quality among Scrum practitioners relate to established quality perspectives, (2) how Scrum helps teams to achieve higher software quality and (3) why some teams fail to meet the objective of higher quality. We addressed these gaps through a two-phased qualitative study based on 39 interviews and two in-depth case studies. We find that Scrum practitioners emphasize established notions of external quality comprising of conformity to business needs and absence of defects, while they also value internal quality, especially sustainable software design. Our results show that Scrum helps teams achieve both dimensions of quality by promoting some social antecedents (collaboration, psychological safety, accountability, transparency) and process-induced advantages (iterative development, formal inspection, and adaptation). Our findings unveil how these factors contribute to achieving software quality and under what conditions their effects can fail to materialize. These conditions include inconsistent Scrum implementations, cultural constraints, team tensions, and inaccessibility of end-users. In addition, the complexity of the project aggravates the impact of these conditions. Taken together, these findings show that Scrum can complement established quality assurance and software engineering practices by promoting a social environment that is conducive to creating high-quality software. Based on our findings, we provide specific recommendations for how practitioners can create such an environment

    Management issues in open source software networks

    Get PDF
    Open Source Software projects base their operation on collaborative structure for knowledge exchange in the form of provision or reception of information, expertise and feedback on the creation of source code. Here, we address the direction of these knowledge flows among projects throughout social networks and their impact on project success. We identify the roles of membership or contribution that individuals play within projects. We found that connections through contributors who bring their knowledge inbound the project, improve project success; connections through members, who transfer their knowledge towards other projects, enhance project success. Finally, we found that ties through shared membership and contribution hamper project success. The analysis of knowledge flows and their impact on project success imply a translation of returns from investment in social capital, where investment takes the shape of knowledge flows and the returns mean the projects’ diffusion over the networ

    Inspections: Software development process for building defect free software applied in a small-scale software development environment

    Get PDF
    Inspections is a software management technique designed to produce higher quality software and improve programmer productivity. These improvements are achieved through rigorous examination of the products in each phase of the software development life-cycle. While the process has generally been applied to large-scale mainframe projects, this research demonstrates successful implementation of inspections in a small-scale, micro-processor based software development project

    Software process quality models: a comparative evaluation

    Get PDF
    Numerous software processes are implemented by software organisations in the production and maintenance of software products. Varying levels of success are observed in their execution, as processes vary in content and quality. A number of quality models for software processes have been published, each of which is intended to encompass the totality of quality factors and issues relevant to a specific notion of process quality. These quality models may be used to develop a new process, measure the quality of existing processes, or guide improvement of existing processes. It is therefore desirable that mechanisms exist to select the model of highest intrinsic quality and greatest relevance. In this thesis, mechanisms are proposed for the comparative evaluation of software process quality models. Case studies are performed in which existing software process quality models are applied to existing software processes. Case study results are used in empirical evaluation of models to augment theoretical evaluation results. Specific recommendations are made for selection of models against typical selection criteria. Assessment is performed of the assessment procedures against defined success criteria. Theoretical evaluation procedures are developed to measure process quality models against defined quality criteria. Measurements are performed of conformance of models to the requirements set for an ideal process quality model, and the relevance of model content to defined stakeholders in software processes. Comparison is also made of the scope and size of models. Empirical evaluation procedures are developed to assess model performance in the context of application to real software processes. These procedures assess the extent to which the results of process measurement using process quality models are observed to differ, and hence the importance of selecting one model in preference to others. Measurement is also performed of the extent of difference in the software processes evaluated in the case studies

    Agile Processes in Software Engineering and Extreme Programming

    Get PDF
    This open access book constitutes the proceedings of the 21st International Conference on Agile Software Development, XP 2020, which was planned to be held during June 8-12, 2020, at the IT University of Copenhagen, Denmark. However, due to the COVID-19 pandemic the conference was postponed until an undetermined date. XP is the premier agile software development conference combining research and practice. It is a hybrid forum where agile researchers, academics, practitioners, thought leaders, coaches, and trainers get together to present and discuss their most recent innovations, research results, experiences, concerns, challenges, and trends. Following this history, for both researchers and seasoned practitioners XP 2020 provided an informal environment to network, share, and discover trends in Agile for the next 20 years. The 14 full and 2 short papers presented in this volume were carefully reviewed and selected from 37 submissions. They were organized in topical sections named: agile adoption; agile practices; large-scale agile; the business of agile; and agile and testing

    Identifying Characteristics To Use As Descriptors of Educators’ Potential for Acquiring Computer Literacy

    Get PDF
    Purpose. The purpose of this study was to determine whether certain characteristics of public school administrators are present which can be used as descriptors for other educators\u27 potential for acquiring computer literacy from a specific staff development model. Procedure. Participants in the study were 44 public school administrators from the Northwest Education Region of North Carolina. The study was quasi-experimental, using a pretest, treatment, and posttest design. The treatment of the subjects consisted of six three-hour sessions of computer literacy training. It was administered over a 12-week period of time. A model for staff development of computer literacy was designed to include the basic and most important concepts of computer literacy, as identified by a search of the literature and examination of available models. Two instruments were used to obtain the data necessary for the study; a personal data sheet was developed to collect the demographic data required to determine the independent variables and The Minnesota Computer Literacy and Awareness Assessment was used to measure attitudes toward computers and computer knowledge. Data were analyzed by the Statistical Package for the Social Sciences Extended (SPSSX) which computed the Pearson Product-moment or t tests as deemed appropriate for each of 12 hypotheses. The minimum acceptable level for determining significance was at the .05 level. Findings. Data analysis indicated that: (1) Attitudes toward computers have an effect on the attainment of computer knowledge. (2) The staff development model designed was effective in promoting computer literacy. (3) The attainment of computer literacy results in a more positive attitude toward computers. (4) The variables of age, gender, position in school system, or length of time in the educational profession do not significantly influence attitudes toward computers. (5) The attainment of computer knowledge was significantly higher for females than for males. (6) The attainment of computer knowledge was not influenced by the area of initial certification or position in the school system. (7) Assignment as principal of an elementary school or a secondary school did not influence attitudes toward computers or the attainment of computer knowledge

    Software test and evaluation study phase I and II : survey and analysis

    Get PDF
    Issued as Final report, Project no. G-36-661 (continues G-36-636; includes A-2568

    Closing the gap between guidance and practice, an investigation of the relevance of design guidance to practitioners using object-oriented technologies

    Get PDF
    This thesis investigates if object oriented guidance is relevant in practice, and how this affects software that is produced. This is achieved by surveying practitioners and studying how constructs such as interfaces and inheritance are used in open-source systems. Surveyed practitioners framed 'good design' in terms of impact on development and maintenance. Recognition of quality requires practitioner judgement (individually and as a group), and principles are valued over rules. Time constraints heighten sensitivity to the rework cost of poor design decisions. Examination of open source systems highlights the use of interface and inheritance. There is some evidence of 'textbook' use of these structures, and much use is simple. Outliers are widespread indicating a pragmatic approach. Design is found to reflect the pressures of practice - high-level decisions justify 'designed' structures and architecture, while uncertainty leads to deferred design decisions - simpler structures, repetition, and unconsolidated design. Sub-populations of structures can be identified which may represent common trade-offs. Useful insights are gained into practitioner attitude to design guidance. Patterns of use and structure are identified which may aid in assessment and comprehension of object oriented systems.This thesis investigates if object oriented guidance is relevant in practice, and how this affects software that is produced. This is achieved by surveying practitioners and studying how constructs such as interfaces and inheritance are used in open-source systems. Surveyed practitioners framed 'good design' in terms of impact on development and maintenance. Recognition of quality requires practitioner judgement (individually and as a group), and principles are valued over rules. Time constraints heighten sensitivity to the rework cost of poor design decisions. Examination of open source systems highlights the use of interface and inheritance. There is some evidence of 'textbook' use of these structures, and much use is simple. Outliers are widespread indicating a pragmatic approach. Design is found to reflect the pressures of practice - high-level decisions justify 'designed' structures and architecture, while uncertainty leads to deferred design decisions - simpler structures, repetition, and unconsolidated design. Sub-populations of structures can be identified which may represent common trade-offs. Useful insights are gained into practitioner attitude to design guidance. Patterns of use and structure are identified which may aid in assessment and comprehension of object oriented systems

    Information system development in a process management environment: the dynamics of improvisation and bricolage during embedded software design

    Get PDF
    The main objective of this thesis is to make a contribution to knowledge regarding the nature of improvisation and bricolage activities in the practice of embedded software design and how the tensional relationship between process management and improvisation and bricolage can be balanced. There is a lack of understanding embedded systems development in practice, and how the difficulties correspond to prescribed and emergent processes in this context. In order to address this knowledge gap I conducted an in‐depth case study of an embedded system development project in the German automobile context between December 2004 and November 2008. The research adopted an interpretive approach, which involved the collection and analysis of qualitative data. Empirical data that was derived through interviews and observation revealed new insights as to how embedded systems are developed in practice. I adopt the position that emergent processes occur not randomly, but as purposeful agents that navigate through a turbulent environment of ongoing need to improvise with the items at hand. The finding indicates that the success to achieve the aims is bound to the capabilities to be continuously reflexive and induce corrective actions as appropriate. A theoretical conceptualisation disclosed measures that may enhance the capacity to be reflexive. The findings implied that process management frameworks help as scaffolding in order to practice improvisation and bricolage as a coping strategy. Moreover, improving the capabilities to cope with challenges means enhancing reflexive capabilities. The original contribution of this research is founded on rich descriptions and interpretations as to how embedded systems are developed in practice, and the theoretical conceptualisation that can aid to balance the tension between process management and improvisation and bricolage

    Recognising object-oriented software design quality : a practitioner-based questionnaire survey

    Get PDF
    Design quality is vital if software is to be maintainable. What practices do developers actually use to achieve design quality in their day-to-day work and which of these do they find most useful? To discover the extent to which practitioners concern themselves with object-oriented design quality and the approaches used when determining quality in practice, a questionnaire survey of 102 software practitioners, approximately half from the UK and the remainder from elsewhere around the world was used. Individual and peer experience are major contributors to design quality. Classic design guidelines, well-known lower level practices, tools and metrics all can also contribute positively to design quality. There is a potential relationship between testing practices and design quality. Inexperience, time pressures, novel problems, novel technology, and imprecise or changing requirements may have a negative impact on quality. Respondents with most experience are more confident in their design decisions, place more value on reviews by team leads and are more likely to rate design quality as very important. For practitioners, these results identify the techniques and tools that other practitioners find effective. For researchers, the results highlight a need for more work investigating the role of experience in the design process and the contribution experience makes to quality. There is also the potential for more in-depth studies of how practitioners are actually using design guidance, including Clean Code. Lastly, the potential relationship between testing practices and design quality merits further investigation
    • 

    corecore