1/16
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Describe the purpose of Software Development Methodologies. [2]
structured framework/lifecycle of clear stages
allows project managers to monitor and review progress towards the completion of software
Name three of the main stages of a Software Development Methodology. [3]
analysis
design
development
testing
evaluation
(max 3)
Describe the Waterfall Lifecycle. [4]
stages are linear // stages are completed sequentially
each stage must be finished before the next can begin
the client is (generally) only involved at the start and end // establishes requirements in early stages
does not allow backtracking to previous stages // all intervening stages must be revisited if necessary to return to a previous stage
the project is reviewed at the end of each stage
formal documentation is produced at each stage
(max 4)
Describe a type of project for which using the Waterfall Lifecycle would be appropriate. [1]
Projects with very clear/unchanging deliverables // Small projects // Simple projects
Compare the benefits and drawbacks of using the Waterfall Lifecycle. [4]
Benefits:
simple to follow and manage
each stage has clear deliverables
Drawbacks:
very inflexible
high risk factor
unsuitable for projects with variable requirements // unsuitable if end user requires lots of involvement
(max 2 benefits, 2 drawbacks; 4 total)
Describe the Spiral Model. [4]
iterative approach // focus on generating prototypes
features are added incrementally
the four quadrants (determine objectives, identify and manage risk, devlop and test, plan next iteration) manage risk
large emphasis on minimising risk
heavy focus on documentation
frequent client feedback informs future development
(max 4)
State the four quadrants of the Spiral Model. [4]
ORDI
determine objectives
identify and manage risk
develop and test
plan next iteration
(max 4)
Describe a type of project for which using the Spiral Model would be appropriate. [1]
Projects with variable deliverables // Large projects // Complex projects
Compare the benefits and drawbacks of using the Spiral Model. [4]
Benefits:
focus on risk reduces the chance of the project failing
functionality can be added after initial analysis
protoypes produced early so user can give feeback (to be acted upon)
Drawbacks:
high cost
risk analysis is a specialised skill
more complex means time management is more difficult
(max 2 benefits, 2 drawbacks; 4 total)
Explain what is meant by Extreme Programming (XP). [4]
(XP is a) software development methodology
(extreme) iterative approach // program is regularly reviewed
focus on good-quality code
(XP is an) agile paradigm
designed to allow development to respond to changing user requirements
involves paired programming
(max 4)
Describe a type of project for which using Extreme Programming (XP) would be appropriate. [1]
Projects with variable deliverables // Projects whose code needs to be efficient // Projects where risk of bugs is very high
Compare the benefits and drawbacks of using Extreme Programming (XP). [4]
Benefits:
quiality of end code very high
efficient code // few bugs
easily adapts to changing user requirements
Drawbacks:
high (short-term devlopment) cost
regular client contact needed
slower than more aggressive iterative approaches
(max 2 benefits, 2 drawbacks; 4 total)
Explain what is meant by Agile Methodologies. [2]
a collection of methodologies
(follow an) agressive iterative approach
incremental prototypes (are built)
focuses on delivery to customers // frequent customer interaction
(max 2)
Give two examples of Software Development Methodologies that would be described as Agile Methodologies. [2]
Rapid Application Devlopment (RAD)
Extreme Programming (XP)
Describe the Rapid Application Development (RAD) process. [4]
prototype is created
(evaluated and) feedback used to inform next iteration
any changes are made
process repeated until …
… prototype becomes final product
(max 4)
Describe a type of project for which using the Rapid Application Development (RAD) process would be appropriate. [1]
Projects with variable deliverables // Projects whose code needs to be high-quality
Compare the benefits and drawbacks of using the Rapid Application Development process. [4]
Benefits:
user involved throughout development process
end product more likely to match user requirements
easily adapts to changing user requirements
Drawbacks:
quiality of end code not very high
regular client contact needed
doesn’t scale well to large projects
(max 2 benefits, 2 drawbacks; 4 total)