Software Development Context and Methodologies Flashcards
Name 3 different types of models used in businesses
Waterfall Model
V Model
Spiral Model
Agile Methodologies
What type of model is a waterfall model
A sequential model
One stage of the model will not start unless the other has been complete
What are the stages within a waterfall model?
Requirements Analysis System Design Implementation Integration and Testing Deployment Maintenance
Strengths of using the waterfall method?
Organised layout Clear goal Easy transfer of data/information Plan becomes final outcome Easy Testing Upkeep timescales
Weaknesses of using the waterfall method?
Can't progress until current stage is complete Complicated to amend changes Internal rather than external No testing until complete Longer delivery of products Lacking in flexibility
What is the V-model?
A way of Iterative and incremental development
How does the V-model work?
Development is done in different parts
Manages different projects
Repeated in a system
Iterative designs with building an incremental model
what is the spiral model?
Combination of linear, sequential and iterative model
Begins with design goal, ends with review
How does a spiral model work?
Identification
Design
Construct or build
Evaluate and review
what are Agile methodologies?
Umbrella term which defines several approaches to software development
What is Agile?
Set of values and principles
Collection of beliefs
Foundation for final product
Collaborative effort
List some of the Agile methodologies
Frequent delivery of high quality software
Incremental rather than all at once
Cross functional team
Requirements can be altered anytime
Ways of working Agile
SCRUM
KANBAN
XP
12 Principles of Agile
- Satisfy Customers
- Welcome changes
- Deliver value frequently (Up to date software)
- Work together
- Build projects with motivation
- Face to face conversations
- Working Software
- Maintain a constant pace
- Attention to detail
- Simplicity (Maximising work not done)
- Self-organising Teams
- Reflection
What are some points on the Agile manifesto?
Must work as a team Efficiently work together Comprehensive Work with customers Develop beneficial software for users Embrace change Work quickly