1.2.3 Software Development Flashcards
(14 cards)
Stages
Analysis
Design
Development
Testing
Implementation
Evaluation
Maintenance
Alpha vs Beta testing
Alpha: in-house by software dev teams
Beta: end users
White vs Black box testing
White: Carried out by dev team, all possibilities are tested (knowledge of internal structure)
Black: Software is tested without testers being aware of internal structure, by company or end-users
Waterfall
Analysis
Design
Implementaion
Evaluation
Maintenance
Analysis: TELOS
Technical (Possible)
Economic
LEgal
Operational (Can it be implemented and maintained)
Scheduling (Completed in time)
Agile
Broken into sections which are developed in parallel.
Prototype produced early on, prototypes are improved upon interatively.
Analysis -> (Loop of: Design, build, feedback, refine) -> Final
Extreme
An agile model
Pair of programmers (written by one, critiqued by other) and end-user.
Built on “user storeis” generates each cycle which produces a working version
Spiral
Heavy risk: Risk assessors can advise termination
4 stages:
Analysis
Risk assessment
Implementation
Evaluation
RAD
Iterative methodology using partially functioning protoypes that are continually built upon.
User feedback used to generate the next, used when initial requirements are unclear.
Writing and following algorithms
Inputs clearly defined
Must always produce valid output
Must deal with invalid inputs
Must reach a stopping condition
Must be well-documented
Must be well-commented
Waterfall Merits Drawbacks and Uses
+ Documented well
- Not flexible
Low-risk, little user input
Agile Merits Drawbacks and Uses
+ High quality code
+ Flexible to user input
- Poor documentation
- Requires much communication with end user
Small to medium with unclear requirements
Extreme programming Merits Drawbacks and Uses
+ High quality code
- Two people is expensive and might not work well
Small to medium with unclear requirements
Spiral Merits Drawbacks and Uses
+ Risk analysis
- Expensive to hire risk assessors
Large, risk-intensive projects
RAD rad rad
+ Caters to changing user requirements
- Poor documentation
Small projects with low buget and short timeframe