Software Dev and Design Flashcards
What is SDLC?
Software Development Life Cycle
Name the 6 Steps for SDLC?
1 - Requirements and analysis 2 - Design 3 - Implementation 4 - Testing 5 - Deployment 6 - Maintenance
What stage support and bug fixes in SDLC?
6 - Maintenance
What stage is coding and development done in SDLC.
3 - Implementation
Name three development methods?
Waterfall
Agile
Lean
List 7 phases of waterfall method?
○ System requirements ○ Software requirements ○ Analysis ○ Program design ○ Coding ○ Testing ○ Operations
What is the different between Waterfall and Agile methods?
Waterfalll is a one way system and and new features have to be incorporated in the next iteration
Agile can run in sprints and providers quicker development
List 7 principals of Lean method.
○ Eliminate waste ○ Amplify learning with short sprints ○ Decide late as possible ○ Deliver fast as possible ○ Empower the team ○ Build integrity in ○ Optimise the whole
List some waste (7 in total)
□ Partially done work □ Extra processes □ Extra features □ Task switching □ Waiting □ Motion □ Defects
Name two design patterns
Observer design pattern
Model-View-Controller (MVC)
Benefits of version control (5)
Enables collaboration - multiple can work on the files
Accountability and visibility - know who made what changes
Work in isolation - build new features independently
Safety - changes can be reverted
Work anywhere - files are stored centrally or in a repository
Name 3 version control types
Local
Central
Distributed
Name 3 stages of GIT
Working Directory
Repository
Staged
Name 3 states of GIT
Modified
Staged
Committed
Benefits of branching (5)
- Work on a feature independently while still benefitting from a distributed version control system
- Work on multiple features concurrently
- Experiment with code ideas
- Keep production, development, and feature code separately
- Keep the main line of code stable