8,324 research outputs found

    On Understanding Preference for Agile Methods Among Software Developers

    Get PDF
    Agile methods are gaining widespread use in industry. Although management is keen on adopting agile, not all developers exhibit preference for agile methods. The literature is sparse in regard to why developers may show preference for agile. Understanding the factors informing the preference for agile can lead to more effective formation of teams, better training approaches, and optimizing software development efforts by focusing on key desirable components of agile. This study, using a grounded theory methodology, finds a variety of categories of factors that influence software developer preference for agile methods including self-efficacy, affective response, interpersonal response, external contingencies, and personality contingencies. Each of these categories contains multiple dimensions. Preference rationalization for agile methods is the core category that emerges from the data. It informs that while the very essence of agile methods overwhelmingly and positively resonates with software developers, the preference is contingent on external and personality factors as well

    Toward an Understanding of Preference for Agile Software Development Methods from a Personality Theory Perspective

    Get PDF
    This paper presents the results of an exploratory research study that investigates factors contributing to preference for the agile software development approaches. The initial exploration revolves around the Five Factor Model of personality and the premise that these personality factors provide a partial explanation of preference for an agile approach. A survey instrument for measuring the preference for agile methods was developed and validated. The results from the quantitative data collected from the survey study indicate that three out of the five personality factors from the Five Factor Model show a correlation with above average preference for agile methods. These factors are extra version, openness and neuroticism. The first two have a positive relationship with agile preference while neuroticism (emotional instability) has a negative relationship with agile methodology preference. To further investigate the results, an exploratory factor analysis was performed on the data, which identified three factors that may also contribute to a preference for agile methods

    Misaligned Values in Software Engineering Organizations

    Full text link
    The values of software organizations are crucial for achieving high performance; in particular, agile development approaches emphasize their importance. Researchers have thus far often assumed that a specific set of values, compatible with the development methodologies, must be adopted homogeneously throughout the company. It is not clear, however, to what extent such assumptions are accurate. Preliminary findings have highlighted the misalignment of values between groups as a source of problems when engineers discuss their challenges. Therefore, in this study, we examine how discrepancies in values between groups affect software companies' performance. To meet our objectives, we chose a mixed method research design. First, we collected qualitative data by interviewing fourteen (\textit{N} = 14) employees working in four different organizations and processed it using thematic analysis. We then surveyed seven organizations (\textit{N} = 184). Our analysis indicated that value misalignment between groups is related to organizational performance. The aligned companies were more effective, more satisfied, had higher trust, and fewer conflicts. Our efforts provide encouraging findings in a critical software engineering research area. They can help to explain why some companies are more efficient than others and, thus, point the way to interventions to address organizational challenges.Comment: accepted for publication in Journal of Software: Evolution and Proces

    An approach to reconcile the agile and CMMI contexts in product line development

    Get PDF
    Software product line approaches produce reusable platforms and architectures for products set developed by specific companies. These approaches are strategic in nature requiring coordination, discipline, commonality and communication. The Capability Maturity Model (CMM) contains important guidelines for process improvement, and specifies "what" we must have into account to achieve the disciplined processes (among others things). On the other hand, the agile context is playing an increasingly important role in current software engineering practices, specifying "how" the software practices must be addressed to obtain agile processes. In this paper, we carry out a preliminary analysis for reconciling agility and maturity models in software product line domain, taking advantage of both.Postprint (published version
    corecore