XP Flashcards

1
Q

XP overview

A

1) extreme and focus dev method
2) some principles may be too rigid
3) high quality shortly and efficiently

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

XP structure

A

1) Activities (listening, design, coding, testing)
2) values (communication, simplicity, courage, feedback, respect)
3) Practices (12)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Practices group

A

1) Feedback
2) continuous processes
3) Shared understanding

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Feedback practices

A

1) whole team
2) Pair programming
3) testing
4) planning game

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

continuous processes practices

A

1) Simple system
2) Collective code ownership
3) System metaphor
4) Coding standards

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Shared understanding practices

A

1) Small releases
2) Continuous integration
3) Refactoring
4) Sustainable pace

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

XP roles

A

1) Customer
2) Coach
3) Programmer
4) Tracker
5) Tester

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

system metaphor

A

story about the system everybody can tell

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

xp tracker

A

traces the progress, provides feedback

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

planning game release

A

1) Exploration phase (requirements shortlist)
2) commitment phase (commit to the functionality to be included in release)
3) Steering phase (adjustment)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

planning game iteration

A

1) Activities of programmer
2) Exploration - decomposed to task
3) Commitment- task assignment and estimation
4) Steering - performance task and test

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Pair programming

A

1) All code produced two programmers
2) One programmer has control
3) Other programmer reviews the code
4) Roles and pair switch

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

CRC Card

A

Use Class, Responsibilities, and Collaboration (CRC) Cards to design the system as a team. The biggest value of CRC cards is to allow people to break away from the procedural mode of thought and more fully appreciate object technology

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Planning

A

1) User stories are written.
2) Release planning creates the release schedule.
3) Make frequent small releases.
4) The project is divided into iterations.
5) Iteration planning starts each iteration.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Managing

A

1) Give the team a dedicated open work space.
2) Set a sustainable pace.
3) A stand up meeting starts each day.
4) The Project Velocity is measured.
5) Move people around.
6) Fix XP when it breaks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Designing

A

1) Simplicity.
2) Choose a system metaphor.
3) CRC cards for design sessions.
4) Create spike solutions to reduce risk.
5) No functionality is added early.
6) Refactor whenever and wherever possible.

17
Q

coding

A

1) The customer is always available.
2) Code must be written to agreed standards.
3) Code the unit test first.
4) All production code is pair programmed.
5) Only one pair integrates code at a time.
6) Integrate often.
7) Set up a dedicated integration computer.
8) Use collective ownership.

18
Q

Testing

A

1) All code must have unit tests.
2) All code must pass all unit tests before it can
be released.
3) When a bug is found tests are created.
4) Acceptance tests are run often and the score
is published.