software development
software development
Page 1 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Waterfall Lifecycle
Your notes
Waterfall Lifecycle
The Waterfall Model is a sequential software development process divided into distinct phases. Each
phase must be completed before the next one begins.
Page 2 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Benefits:
Simple and linear: Easy to understand and follow, with each stage progressing linearly to the next
Clear stages and milestones: Each phase has specific deliverables and milestones, making progress
easy to measure
Suitable for well-defined projects: Works best when the requirements are clear and unlikely to
change during development
Drawbacks:
Inflexible: Changes are difficult to implement once the project has started, as the model doesn't easily
allow for revisiting previous stages
Expensive to fix late problems: If a problem appears later in the development cycle, it can be costly
and time-consuming to fix
Page 3 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Long development cycle: The sequential nature may lead to a longer development time, especially if
stages are delayed
Your notes
Suitability:
The Waterfall Model is most suitable for projects where requirements are well understood and
unlikely to change. It works well when high quality and compliance are essential, and there is a clear
understanding of the project's goals and constraints
Page 4 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Agile Programming
Your notes
Agile (Extreme Programming)
Extreme Programming (XP) is a type of Agile software development methodology that promotes
adaptability and high customer involvement.
Page 5 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Benefits:
Highly adaptable: Can quickly respond to changes in requirements, even late in development
Frequent communication: Encourages constant communication between team members and
stakeholders
Quality focus: Emphasizes technical excellence and good design, with continuous testing throughout
the development cycle
Customer collaboration: Encourages working closely with customers to ensure the developed
product meets their needs
Drawbacks:
Page 6 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Requires experienced team members: Can be challenging to implement without knowledgeable and
skilled developers
Your notes
Intensive collaboration can lead to burnout: The constant communication and collaboration can be
tiring for team members
May lack documentation: The focus on adaptability and immediate coding may result in insufficient
documentation
Scope creep: The flexible nature may lead to uncontrolled changes in requirements
Suitability:
Extreme Programming is most suitable for small to medium-sized projects where requirements can
change and customer involvement is high
Page 7 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Spiral Model
Your notes
Spiral Model
The Spiral Model is a software development methodology that combines aspects of both iterative (agile)
and sequential (waterfall) processes.
Page 8 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Benefits:
Flexibility: Allows for changes and adaptations at various stages of development
Risk management: Emphasizes risk assessment and mitigation, helping to identify and address issues
early
Page 9 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Strong customer involvement: Encourages feedback and input from clients throughout the
development process
Your notes
Incremental releases: Provides early partial working solutions, enabling early usage and feedback
Drawbacks:
Complexity: Can be more complex and harder to manage compared to other methodologies
Time-consuming: The emphasis on planning, risk management, and iterations may lead to a longer
development process
Expensive: Often requires more resources, particularly in risk assessment and iterative design
Not suitable for small projects: The extensive planning and risk management might be overkill for
simple or small-scale projects
Suitability:
The Spiral Model is most suitable for large, complex projects where requirements may change, and
risk management is essential
Page 10 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Benefits:
Speed: Enables rapid development and delivery of a high-quality system at a relatively low investment
cost
User involvement: Clients are involved throughout the development process, ensuring that the system
aligns with user needs and expectations
Flexibility: Allows for changes and adaptations to be made quickly as requirements evolve
Page 11 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Incremental development: Promotes development in small increments, with constant feedback and
adaptation
Your notes
Drawbacks:
Dependent on strong team collaboration: Requires skilled and collaborative team members, which
can be a challenge to assemble
Potential lack of quality: The focus on speed might lead to skipping rigorous testing or
documentation, impacting the quality
Not suitable for small projects: The intense collaboration and iterative approach might be overkill for
simple or small-scale projects
Can lead to scope creep: The flexible nature may lead to uncontrolled changes in requirements
Suitability:
Rapid Application Development is most suitable for projects where rapid delivery is required and
where requirements can be developed and refined on the go
Page 12 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Spiral Model Cyclic: Planning, Risk Risk management Complex, Complex projects
Analysis, focus, tailored expensive, expert needing extensive
Engineering, customer risk assessment risk management
Evaluation feedback required
Worked Example
The software team that produces De-Duplicator is adding a new feature that can detect
duplicated images the previous version could not. The software team must decide which
Page 13 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
methodology they will use for the project. Some members of the group suggest extreme
programming, whilst others would prefer to use the waterfall lifecycle. Discuss the two
methodologies and justify which you would recommend. Your notes
[12]
How to answer this question:
Introduce both Extreme Programming (XP) and the Waterfall Lifecycle, highlighting key features
Compare and contrast the two methodologies, explaining how they are similar and different
Identify specifics from the scenario - the software is receiving a new feature, and there is a team
of people on the project
Recommend one methodology based on the given context, providing justification
Answer:
Answer that gets full marks:
The software team for De-Duplicator is facing a choice between two methods to develop a new
version of the software: Extreme Programming (XP) and the Waterfall Lifecycle.
XP is like building something with the ability to keep changing and improving it as you go. It's flexible
and allows for continuous feedback and changes. This method works well when you need to keep
adjusting things during the project. In the case of the De-Duplicator project, where the team is
adding a new feature, this flexibility could be a real advantage so the team can discover the best way
to implement it.
On the other hand, the Waterfall model is more like following a strict step-by-step guide. It's
organised but not very flexible if you need to make changes later on. While this structure can be
good for some projects, it could make it tough for the De-Duplicator team if they uncover problems
in the software while adding the new feature.
Given what the De-Duplicator project needs, XP seems to be the better choice. Its flexibility and
ability to adapt to changes align well with a project that might require ongoing improvements or
customer feedback loops. The Waterfall model's lack of flexibility could make things difficult if
requirements change. So, Extreme Programming would likely be the recommended choice for this
project, letting the team keep things flexible and continuously aligned with what users need.
Page 14 of 14
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers