Conference
Presented by:

Research Papers

Research papers reveal the aspirations and advance the framework of thought in the field. Questions and conclusions were posed by the members of our diverse community. We learned from those who were applying complex systems theory to organizations, reflective practitioners proposing new forms of agile development and dissidents who feel that "agile" is hot air.

Scheduled Paper Presentations

ID Session Title Organizers Docs
P1 YP and Urban Simulation: Applying an Agile Programming Methodology in a Politically Tempestuous Domain Alan Borning and Bjorn Freeman-Benson
Paper - Adobe PDF (54K) Slides - Adobe PDF (908K)
P2 XP Culture: Why the twelve practices both are and are not the most significant thing Hugh Robinson and Helen Sharp

Paper - Adobe PDF (103K)
P3 PARFAIT: Towards a Framework-based Agile Reengineering Process Maria Istela Cagnin, José Carlos Maldonado, Fernão Stella Germano and Rosangela Penteado
Paper - Adobe PDF (348K)
P4 Observations on Balancing Discipline and Agility Barry Boehm and Richard Turner
Paper - Adobe PDF (57K)
P5 Throwing Down the Gauntlet: Finding a Place for Discount Usability Engineering in Agile Development David Kane
Paper - Adobe PDF (40K)
P6 Test Driven Development and the Scientific Method Rick Mugridge
Paper - Adobe PDF (65K)

Paper Abstracts

P1 YP and Urban Simulation: Applying an Agile Programming Methodology in a Politically Tempestuous Domain
Bjorn Freeman-Benson, University of Washington, bnfb@cs.washington.edu
Alan Borning, University of Washington, borning@cs.washington.edu
YP is an agile programming methodology that has evolved over the past 15 years. Many of its features are common to other agile methodologies; its novel features include using a highly visible, physical software status indicator (a real traffic light), and a well-defined nested set of development cycles. It is also an exceptionally open process, with the current status of the development process visible to the customers, as well as the code and documentation. We are using YP in developing the software for UrbanSim, a sophisticated simulation system for modeling urban land use, transportation, and environmental impacts over periods of 20 or more years under alternate possible scenarios. Our purpose in developing UrbanSim is to support public deliberation and debate on such issues as building new transit systems or freeways, or changing zoning or economic incentives, as well as on broader issues such as sustainable, livable cities, economic vitality, social equity, and environmental preservation. The domain of use is thus politically charged, with different stakeholders bringing strongly held values to the table. Our goal is to not favor particular stakeholder values in the simulation or its output, but rather to let different stakeholders evaluate the results in light of what is important to them. There are several implications of this for the development process. First, having credible, reliable code is important -- and further, both the code itself and the development process that produced it should be open and inspectable, not a black box. Second, to allow us to respond quickly to different stakeholder values and concerns, a flexible agile development process is required.

Bjorn plans to bring his foul weather gear to the conference and mount a 2 minute production at the beginning of the talk (of the opening scene quoted in the Introduction), using selected members of the agile community for the parts of Ship-Master, Boatswain, and assorted mariners.

P2 XP Culture: Why the twelve practices both are and are not the most significant thing
Hugh Robinson, The Open University, h.m.robinson@open.ac.uk
Helen Sharp, The Open University, h.c.sharp@open.ac.uk
XP emphasizes underlying values as well as the more visible twelve practices. We examine the relationship between practices and values from the perspective of a model of culture and from an ethnographic study of mature XP practice. We conclude that the twelve practices are both significant and not significant. They are significant in that they do, in the reality of professional practice, give rise to a culture which embodies underlying XP values. They are not significant since both models of culture and the detailed manner in which the practices give rise to a culture suggest that alternative practices may achieve the same ends.
P3 PARFAIT: Towards a Framework-based Agile Reengineering Process
Maria Istela Cagnin, Instituto de Ciências Matemáticas e de Computação-USP, istela@icmc.usp.br
José Carlos Maldonado, Instituto de Ciências Matemáticas e de Computação-USP, jcmaldon@icmc.usp.br
Fernão Stella Germano, Instituto de Ciências Matemáticas e de Computação-USP, fernao@icmc.usp.br
Rosangela Penteado, Departamento de Ciência da Computação - UFSCar, rosangel@dc.ufscar.br
The paper presents a sketch of a framework-based agile reengineering process, named PARFAIT, whose objective is to provide the users with evolved versions of legacy systems, as soon as possible. The overall static structure of the Rational Unified Process (RUP), originally developed for forward systems engineering, has been here adapted for reengineering and is used for PARFAIT documentation. Frameworks are used in the process aiming at an agile approach to support the reengineering. Frameworks allow applications to be rapidly created, more than if they are built from scratch. Agile characteristics, such as incremental approach, cooperative approach with users and customers, straightforwardness, adaptability, etc. give PARFAIT the ability to support the rapid evolution of the legacy system to a new version, according to the users and customers needs. A summary of a case study and the results obtained in the reengineering are presented. This study refers to a concrete reengineering case of a real system for controlling entry and exit of electronic appliances in a repair shop.
P4 Observations on Balancing Discipline and Agility
Barry Boehm, University of Southern California, boehm@sunset.usc.edu
Richard Turner, George Washington University, rich.turner@osd.mil
Agile development methodologies promise higher customer satisfaction, lower defect rates, faster development times and a solution to rapidly changing requirements. Disciplined (or plan-driven) approaches promise predictability, stability, and high assurance. However, both approaches have shortcomings that, if left unaddressed, can lead to project failure. The challenge is to balance the two approaches to take advantage of their strengths and compensate for their weaknesses. We believe this can be accomplished using a risk-based approach for structuring projects to incorporate both agile and disciplined approaches in proportion to a project’s needs.

This paper presents six observations drawn from our efforts to develop such an approach. We follow those observations with some practical advice to organizations seeking to integrate agility and discipline in their development process. The material presented here is drawn from our book Balancing Agility and Discipline: A Guide to the Perplexed (Addison Wesley, 2003).

P5 Throwing Down the Gauntlet: Finding a Place for Discount Usability Engineering in Agile Development
David Kane, SRA International, david_kane@sra.com
Many software development organizations are reporting great success with agile software development techniques. However, few techniques explicitly incorporate usability engineering. Further, some agile techniques may not address certain kinds of usability problems. While there are many usability engineering techniques, discount usability engineering should be of particular interest to the agile development community because the two disciplines share many of the same underlying principles. The challenge for the agile development community is to find ways to incorporate such discount usability engineering practices.
P6 Test Driven Development and the Scientific Method
Rick Mugridge, University of Auckland, r.mugridge@auckland.ac.nz
The scientific method serves as a good metaphor for several practices in Extreme Programming (XP). We explore the commonalities and differences and show that the scientific method, by analogy, can be used to better understand Test Driven Development (and vice versa).

Technical Papers Selection Committee

  • Dave Thomas, Bedarra Corp., Carleton U. and U. Queensland (Chair, Research Papers)
  • Rebecca Wirfs-Brock, Wirfs-Brock Associates (Chair, Experience Reports)
  • Alistair Cockburn, Humans and Technology
  • Lougie Anderson, Sabrix
  • Alan Cameron Wills, Fastnloose Ltd
  • Eric Gamma, IBM OTILabs
  • Dick Gabriel, Sun Microsystems
  • Mike Beedle, Independent Consultant
  • Peter Bailey, Synop Pty Ltd
  • Bjorn Freeman-Benson, University of Washington
  • James Coplien, UMIST
  • Laurie Williams, North Carolina State University
  • Martine Devos, Avaya Labs Research
  • Linda Rising, Independent Consultant
  • Pete McBreen, Independent Consultant
  • Gregor Kiczales, University of British Columbia
  • Ward Cunningham, Cunningham & Cunningham, Inc.
  • Sherman R. Alpert, IBM T.J. Watson Research Center
  • James Bach, Satisfice, Inc
  • Jutta Eckstein, Objects in Action
  • Gary Evans, Evanetics, Inc.
  • Bret Pettichord, Pettichord Consulting
  • Scott W. Ambler, Ronin International, Inc.
  • Mary Poppendieck, Lean Software Development
  • Gunnar Övergaard, Jaczone
  • Peri Tarr, IBM
  • Robert C. Martin, Object Mentor Inc.
  • Ken Schwaber, Independent Consultant
  • Andrew Hunt, The Pragmatic Programmers, LLC.
  • Brian Marick, Independent Consultant
  • John Lamping, Google
  • Larry Constantine, Constantine & Lockwood, Ltd.
  • Bruce Anderson, IBM EMEA Component Technology Services
  • Robert D. Austin, Harvard Business School
  • Helen Sharp The Open University, UK
  • Don Wells, Ford Motor Company
  • Lars Mathiassen, Georgia State University
  • Brian Barry, IBM OTILabs