To quickly localize defects, we want our attention to be focussed on relevant failing tests. We propose to improve defect localization by exploiting dependencies between tests, using a JUNIT extension called JEXAMPLE....
详细信息
ISBN:
(纸本)9783540682547
To quickly localize defects, we want our attention to be focussed on relevant failing tests. We propose to improve defect localization by exploiting dependencies between tests, using a JUNIT extension called JEXAMPLE. In a case study, a monolithic white-box test suite for a complex algorithm is refactored into two traditional JUNIT style tests and to JEXAMPLE. Of the three refactorings, JEXAMPLE reports five times fewer defect locations and slightly better performance (-8-12%), while having similar maintenance characteristics. Compared to the original implementation, JEXAMPLE greatly improves maintainability due the improved factorization following the accepted test quality guidelines. As such, JEXAMPLE combines the benefits of test chains with test quality aspects of JUNIT style testing.
the combination of agile methods and global software development via virtual teams represents an emerging approach to addressing the challenges typically associated withsoftware development projects. the prevailing v...
详细信息
ISBN:
(纸本)9783540682547
the combination of agile methods and global software development via virtual teams represents an emerging approach to addressing the challenges typically associated withsoftware development projects. the prevailing viewpoint has been that agile methods are not applicable in global settings. However, some current research is challenging this assertion. therefore, we pose the following research question: How can agile teams be successfully configured in globally distributed environments? Drawing upon configurational theory, work group design research, virtualness concepts, and the software agility literature, the purpose of this paper is to construct a preliminary conceptual model for exploring three proposed dimensions necessary for successful configuration of global agile teams: structure, agility, and virtualness. this paper contributes to the information systems field by providing a starting point towards theory building in the area of globally distributed agile teams and by suggesting three dimensions for measuring and characterizing global agile team configuration.
A tool is presented for guiding Test-Driven Development (TDD), called TDD-Guide. the tool is integrated into an existing development environment and guides the developer during the development by providing notificatio...
详细信息
ISBN:
(纸本)9783540682547
A tool is presented for guiding Test-Driven Development (TDD), called TDD-Guide. the tool is integrated into an existing development environment and guides the developer during the development by providing notifications that encourage use of TDD. the TDD practice is defined through rules that can easily be changed and are used to generate code incorporated to a development environment using an aspect-based framework, so that the development of the tool has agile characteristics. Feedback from user experiments both validates the rules and suggests refinements to improve TDD-Guide, as is shown in descriptions of two user experiments.
the appearance of agile methods has been the most noticeable change to software process thinking in the last fifteen years [16], but in fact many of the "agile ideas" have been around since 70's or even ...
详细信息
ISBN:
(纸本)9783540682547
the appearance of agile methods has been the most noticeable change to software process thinking in the last fifteen years [16], but in fact many of the "agile ideas" have been around since 70's or even before. Many studies and reviews have been conducted about agile methods which ascribe their emergence as a reaction against traditional methods. In this paper, we argue that although agile methods are new as a whole, they have strong roots in the history of softwareengineering. In addition to the iterative and incremental approaches that have been in use since 1957 [21], people who criticised the traditional methods suggested alternative approaches which were actually agile ideas such as the response to change, customer involvement, and working software over documentation. the authors of this paper believe that education about the history of agilethinking will help to develop better understanding as well as promoting the use of agile methods. We therefore present and discuss the reasons behind the development and introduction of agile methods, as a reaction to traditional methods, as a result of people's experience, and in particular focusing on reusing ideas from history.
the Method for Method Configuration (MMC) has been proposed as a method engineering approach to tailoring software development methods. this paper evaluates MMC during three software development projects where it was ...
详细信息
agile Methods are becoming each day a more and more frequently used alternative among software developing organizations producing high-quality products in real-world projects. Despite this growth in industry, few acad...
详细信息
ISBN:
(纸本)9783540682547
agile Methods are becoming each day a more and more frequently used alternative among software developing organizations producing high-quality products in real-world projects. Despite this growth in industry, few academic institutions provide courses related to this new software development approach. this paper describes an initiative of introducing agile method concepts through a Master's Degree course where the students had not experienced XP before. In spite of being MSc students they had previous software development background in industry environment. In this work we present how the issues found over the process may and have been handled as well as the benefits found;how the XP practices have been adapted and applied in a project with time, personnel, and skill constraints and what hindered some principles from being fully effective. We also present real results and open problems for further studies from this experience. the study used a real-life application taken from a need of a real software development company.
Developing reliable software is a complex task which is becoming even more challenging as customers put overwhelming demands on software companies to produce high quality products in shorter time frames. Serum is an a...
详细信息
ISBN:
(纸本)9783540682547
Developing reliable software is a complex task which is becoming even more challenging as customers put overwhelming demands on software companies to produce high quality products in shorter time frames. Serum is an agile, lightweight software development process that can be used to manage and control software projects using iterative, incremental practices. Scrum aims to increase productivity and improve quality in complex environments. Experts claim that this is a simple process whose aims are effortlessly achieved. the reality is that successful implementation is far from easy and requires significant training and plenty of practice. the case study presented in this paper investigates the use of Kotter's Change Model to support the implementation of Scrum in a software company.
Over the last seven years we have been using extremeprogramming (XP) in two commercial software development settings within the University of Sheffield. the detailed performance of a variety of different project team...
详细信息
ISBN:
(纸本)9783540682547
Over the last seven years we have been using extremeprogramming (XP) in two commercial software development settings within the University of Sheffield. the detailed performance of a variety of different project teams has been analysed by the Sheffield softwareengineering Observatory - a joint research project between the Department of Computer Science and the Institute of Work Psychology - during this period, based on empirical data collected from these projects. A number of research questions have been investigated: the comparison between XP and a traditional software development approach in terms of product quality and the impact on quality of the number of XP practices used etc. Problems associated with some aspects of XP have been identified and adaptations and development of the XP methodology have been introduced. Other issues studied in the Observatory include the relationship between methodology and individual well being;the impact of personality on project outcomes;the level of conflict in different groups;the relationships between customers and programmers and issues relating to testing. the possible benefits of XP have been assessed alongside the problems with implementing the methodology in a variety of settings. 'People' issues are a major determinant in successfully adopting the XP approach in a sustainable way. this paper is a brief review of some of this work.
this paper explores the implicit nature of risk management in agileprocesses. It discusses why current techniques for managing risks in agileprocesses are not sufficient and how the processes can benefit from more e...
详细信息
the proceedings contain 30 papers. the topics discussed include: a distributed cognition account of mature XP teams;foundations of agile decision making from agile mentors and developers;software development as a coll...
详细信息
ISBN:
(纸本)3540350942
the proceedings contain 30 papers. the topics discussed include: a distributed cognition account of mature XP teams;foundations of agile decision making from agile mentors and developers;software development as a collaborative writing project;comparative analysis of job satisfaction in agile and non-agilesoftware development teams;the collaborative nature of pair programming;leveraging code smell detection with inter-smell relations;studying the evolution of quality metrics in an agile/distributed project;the effect of test-driven development on program code;configuring hybrid agile-tradition softwareprocesses;agility in the avionics software world;security planning and refactoring in extremeprogramming;augmenting the agile planning toolbox;and storytelling in interaction: agility in practice.
暂无评论