Extreme Programming - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

Extreme Programming

Description:

Stories are short, concrete examples describing how the systems ... Always write feature requests as stories. When implemented, stories are broken into tasks. ... – PowerPoint PPT presentation

Number of Views:48
Avg rating:3.0/5.0
Slides: 16
Provided by: erica55
Category:

less

Transcript and Presenter's Notes

Title: Extreme Programming


1
Extreme Programming
  • Simplicity
  • Communication
  • Feedback
  • Courage

2
Simplicity
  • The simplest thing that will possibly work.
  • Q, How to decide what works?
  • Unit tests!

3
Test-driven Development
  • Start with a few tests
  • Write the simplest code that passes those tests
  • If you arent satisfied that your does everything
    you want it to
  • Write more tests and repeat.

4
Communication
  • Programming projects are living entities.
  • Their life depends on the continuity of the
    development group
  • Group continuity more valuable than the code!
  • The development group must pass on knowledge of
    the system.

5
DrJava as Living Software
  • Summer projects.
  • Masters theses.
  • Comp 312.

6
Communication in the DrJavaProject
  • Pair programming as teaching
  • Onsite customer Corky, students (you)
  • Labs
  • Team meetings

7
The SourceForge Website
  • Bug reports
  • Feature requests
  • From around the world

8
Feedback
  • Unit tests
  • Unit tests
  • Unit tests
  • Code walks
  • Pair programming as continual code walk
  • SourceForge

9
Courage
  • Desirable characteristics of a developer
  • Aptitude
  • Competence
  • Integrity

10
Courage
  • Dont hide what you dont know
  • Dont hide what you cant do
  • Dont hide how long you thing it should take
  • Dont hide what you havent done

11
Extreme Programming and Specifying Software
  • Old approach monolithic specifications
  • Never right
  • Nobody understands it all
  • Takes too long

12
Implementation as Specification?
  • An implementation specifies what is does
  • Why not just use the implementation?

13
Stories as Incremental Specification
  • Stories are short, concrete examples describing
    how the systems should behave.
  • Stories are informal (in English).
  • Stories should be as independent as possible.

14
DrJava Stories and SourceForge
  • DrJava stories are maintained on the SourceForge
    website as feature requests
  • Always write feature requests as stories.
  • When implemented, stories are broken into tasks.
  • Each task should take no longer than one
    pair-week.

15
Example Story
  • Simple JUnit integration
  • The user has open a JUnit TestCase in the
    Definitions pane. He clicks on a "Test" button on
    the toolbar, and JUnit is run over this TestCase.
    Some indication of progress is presented while
    JUnit is running.
  • The results are output to a new tabbed pane in
    the Interactions window. The user can click on
    the reported errors and the corresponding test
    case (perhaps the individual assertion) is
    highlighted.
Write a Comment
User Comments (0)
About PowerShow.com