Lecture 2 - SCRUM Flashcards

1
Q

Rapid Application Development (RAD)

A

Objective: prodice useful software quiclkly (based on prototyping)
Software developed in increments providing new functionality
Alternative to waterfall in 80s/90s

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

RAD Characteristics

A

Specification, design, implementation are inteleaved
Software has a series of versions, with stakeholders involved in version evaluation
UI developed using an IDE and graphical toolset

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

Agile Methods

A

Reduce overheads in the software process
Respond quickly to changing requirements without excessive rework
- focus on code
- iterative approach
- working software, quickly
- evolve software to meet changing requirements

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

Agile manifesto

A

individuals and interactions > processes and tools
Working software > comprehensive documentation
Customer collaoration > contract negotiation
Responding to change > following a plan

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

Agile Principles

A

Customer Involvment
Incremental Delivery
People over Processes (team members should work with their strenghts, and not be stuck to processes)
Embrace change
Maintain Simplicity (eliminate complexity)

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

Where to apply Agile?

A

Small/Medium software. Small, integrated teams. Clear customer commitment and involvement. Not a lot of external rules and regulations that affect the software

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

Agile Dificulties

A

Keeping customer interest and team members collaboration high is hard.
Prioritizing changes in presence of multiple stakeholders.
Maintaining simplicity requires a lot of work
Contracts are not suitable, as they don’t account well for changes in requirements.
Documentation is less important, so if the original team cannot be maintained there may be problems in maintenance

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

Extreme Programming

A

Agile methods with extreme aproach to iterative development:
- New versions several times a day.
- Increments delivered to customers every 2 weeks.
- All tests must be run for evey build.

Very small and frequent system releases. Customer involvement is full time! Requirest constant refactoring to keep simplicity

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