1.2.3 software development

Cards (7)

  • Waterfall cycle
    • stages are completed in sequence, from start to finish
    • clear structure makes this a model that is easy to follow
    • low user involvement
  • Agile methodologies
    • Collection of methodologies which aim to improve the flexibility of SDLCs
    • Adapt quickly to changes in user requirements
    • Working prototype is delivered early on and improved in an iterative manner
    • Less of a focus on documentation
    • User satisfaction is prioritised
  • Extreme programming
    • Example of an agile model
    • Development team is a pair of programmers and a representative end user
    • Produces high quality code and highly usable software
    • Hard to produce high quality documentation
  • Spiral model
    • Used to manage risk heavy projects
    • Project terminate if too risky
    • Specialist risk assessors must be hired which is expensive
  • Rapid application development
    • Iterative methodology which uses partially functioning prototypes
    • User requirements are gathered using focus group
    • User feedback is used to generated next, improved prototype
    • Final prototype matches user requirements fully
    • Code may be inefficient
  • Algorithms are a set of instructions used to solve a problem
  • Algorithms
    • inputs must be clearly defined
    • must always produce a valid output for any defined input
    • must be able to deal with invalid inputs
    • must always reach a stopping condition
    • must be well documented for reference