Andrew D' H' Chow and Mike Joy - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Andrew D' H' Chow and Mike Joy

Description:

Andrew D. H. Chow and Mike Joy. Shifting the Focus from Methodologies to Techniques ... Difficult to deploy subsets of Extreme Programming due to interdependencies ... – PowerPoint PPT presentation

Number of Views:22
Avg rating:3.0/5.0
Slides: 19
Provided by: icsHeac
Category:
Tags: andrew | chow | joy | mike

less

Transcript and Presenter's Notes

Title: Andrew D' H' Chow and Mike Joy


1
Shifting the Focus from Methodologies to
Techniques
  • Andrew D. H. Chow and Mike Joy

2
A Brief Overview
  • Academic group projects have constraints on the
    use of methodologies
  • Difficult to deploy subsets of Extreme
    Programming due to interdependencies
  • Experiments to determine which agile practices
    remain effective in academia
  • Need to focus on teaching software engineering
    techniques

3
Introduction
  • Extreme Programming (XP) has become popular in
    recent years
  • Agile practices used in a 2002-3 pilot study were
    successful
  • Further research undertaken to determine which
    practices are effective
  • Findings compared to industrial experience of XP
    deployment

4
Methodologies
  • Software is expensive need for development
    methodology
  • Methodologies evolved from engineering practices
  • Classical methodologies can be inflexible and
    costly

5
Classical Methodologies (1)
  • Examples the Waterfall model (below) and the
    Rational Unified Process

Requirements
Specification
Design
Implementation
Testing
6
Classical Methodologies (2)
  • Developers often fail to follow all the rules of
    the methodology
  • Can be due to budget and time constraints or lack
    of discipline
  • New paradigm Agile Methods

7
Agile Methods
  • Aim to leverage the adaptability of software
    whilst ensuring integrity
  • Provide a flexible framework
  • Concentrate on producing and delivering visible
    results
  • Allow change, even late in the development process

8
The 12 XP Practices
  • XP consists of 12 simple yet interdependent agile
    practices
  • Continuous Integration
  • Test-first Development
  • Pair Programming
  • Emergent Design
  • Refactoring
  • Coding Standards
  • Simple Design
  • Collective Code Ownership
  • Small Releases and Iterations
  • Sustainable Pace
  • Metaphor
  • On-Site Customer

9
Agile Practices
  • Agile methodologies depend on interdependent
    practices to work effectively
  • any one practice doesnt stand well on its own
    (with the possible exception of testing). They
    require the other practices to keep them in
    balance Kent Beck, author of Extreme
    Programming Explained Embrace Change

10
Academic Group Projects
  • Constraints on the teaching and use of agile
    practices to undergraduates
  • Aim to equip students with knowledge to make
    informed decisions on techniques
  • Context of experiments Introduction to Software
    Engineering at Warwick
  • Project to be completed within a 10-week period,
    including software and documentation

11
2002-3 Pilot Study
  • One group of six students used agile practices
    for the same group project
  • Academic staff acted as customers
  • No advantage given to these students
  • Project achieved 89, best in the year
  • No significant modifications to the teaching
    structure or assessment

12
The Experiments
  • Four teams of volunteers used agile practices for
    their second year projects
  • Questionnaires throughout the project
  • Interviews with each member of teams towards the
    end of the project
  • Obtained student feedback and experience of using
    agile practices

13
The Results
  • Pilot study in 2002-3 indicated that no
    substantial modifications were needed
  • Evidence of successful deployment of certain
    agile practices
  • Some practices were less successful
  • Students had to learn new set of skills

14
Some Student Feedback
  • Continuous Integration most popular
  • Mixed reaction on pair programming
  • Need for more planning upfront
  • Students were unfamiliar with new tools necessary
    for some agile practices
  • Useful practices not implemented for various
    reasons

15
Professional Opinions
  • Extreme Programming is a circle of snakes
    Matt Stephens and Doug Rosenberg
  • Fix XP when it breaks Kent Beck
  • A methodology per project Alistair Cockburn

16
Conclusions
  • Sample was too small for meaningful statistical
    analysis
  • Qualitative feedback echoes opinions of Stephens
    and Rosenberg
  • Teaching another methodology is not what is
    needed
  • More beneficial to introduce alternatives to
    students for different problems

17
Further Conclusions
  • The study suggested that
  • There is a need for students to be equipped with
    knowledge to tailor a methodology to a particular
    project
  • There is a need to focus on the human elements
    of software development
  • There is a need shift the focus to teaching
    software engineering techniques

18
Any Questions?
Write a Comment
User Comments (0)
About PowerShow.com