GoConqr has a new look! Let us know what you think.

Flashcards

Software Development Methodologies

James Norman OCR A level Computer Science A level English 15 cards

Cards in this deck (15)

  1. 1Waterfall FeaturesSteps are completed in a linear and sequential manner
    Possible to backtrack stages
  2. 2Waterfall AdvantagesFocus on documentation - improves quality of final product
    Easy to understand and manage - helpful for small dev teams
    Well-defined stages and requirements
  3. 3Waterfall DisadvantagesLack of end-user input
    Not flexible so unsuitable for riskier projects
    Backtracking will be required if problems are discovered late in development, so may be very expensive
  4. 4Spiral FeaturesCentred around risk management
    Has 4 main stages:
    1. Determine objectives
    2. Identify and resolve risks
    3. Develop and test
    4. Plan the next iteration
    Involves development of prototypes by iterating through these stages
  5. 5Spiral AdvantagesControls risk
    Scales well to large projects
    Flexible enough to add changes to requirements
  6. 6Spiral disadvantagesExpensive as specialist risk planners are required
    Complex to manage
    Often doesn't prioritise code efficiency
  7. 7Agile FeaturesA large group of methodologies may be collectively deemed as agile
    All consist of potentially non-linear development stages
    Mostly built on iterative processes
    Emphasis placed on code quality, simplicity (YAGNI) and flexibility to cope with user requirements
  8. 8Agile AdvantagesFlexible enough to cope with changing requirements
    Customer involvement ensures requirements are met
    Code is efficient and contains few bugs
  9. 9Agile DisadvantagesClient representative required
    Requires collaboration between developers
    Higher cost to develop
  10. 10Rapid Application Development (RAD)Focus on code over documentation
    Uses workshops and focus groups for requirement gathering
    Consists of building prototypes and refining them over multiple iterations, with end-user feedback at each stage
    Emphasises code reuse and time limits
  11. 11RAD AdvantagesFlexible enough to deal with changing requirements
    Customers involved at each stage
    Ensures a high level of functionality in the final product
    Reduces the likelihood of getting bogged down by suggested improvements - developers are constantly chasing a moving target
  12. 12RAD DisadvantagesClient representative required
    Doesn't scale easily
    Time limits for project development may mean code is inefficient
  13. 13Extreme Programming (XP)Agile methodology
    Emphasis on coding
    Customer representative provides requirements and answers questions from the dev team
    Short iterations using paired programming (programmers work in pairs - one codes, the other evaluates and they swap)
    Code is often refactored and tested in parallel with development
  14. 14Advantages of XPVery flexible - can deal with changing requirements
    High level of customer involvement
    High-quality code through paired programming and refactoring
  15. 15Disadvantages of XPClient representative required at all times
    Requires collaboration between programmers
    Increases development costs

Information

Description
A level OCR A level Computer Science (Topic 3 - Software Development) Flashcards on Software Development Methodologies, created by James Norman on 27/01/2020.
Created by
James Norman
Views
0
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?