Answer
Flashcards · 9618 · AS Topic 12
Software Development (AS Level) flashcards
13 cards on AS Topic 12, subtopics 12.1 to 12.3. Pick a subtopic or study them all.
Study mode needs JavaScript. Every card is listed below, so you can still cover the answers and test yourself.
Choose your cards
Session complete
Worth another look:
All 13 cards
For a quick read-through or printing. Cover the right-hand side to test yourself.
12.1 Program Development Life cycle
- What are the stages of the program development life cycle?
- Analysis, design, coding, testing and maintenance.
- How does the waterfall model work?
- Each stage is completed in order before the next begins, with little going back. Suits projects with clear, fixed requirements; changes late on are costly.
- How does the iterative model work?
- A simple version is developed first and then improved in repeated cycles of design, coding and testing, adding features each time.
- What is rapid application development (RAD)?
- Prototypes are built quickly and refined with frequent user feedback, with little formal planning. Suits projects where requirements are unclear, but needs users to be closely involved.
12.2 Program Design
- What does a structure chart show?
- How a program is broken into modules, in a hierarchy, and the parameters passed between them. It can also show selection and repetition.
- What is a state-transition diagram?
- A diagram showing the states a system can be in, the events (inputs) that cause a change of state, and the transitions between states.
- Which symbols in a program flowchart show a decision and a process?
- Decision: a diamond with two exits (yes/no). Process: a rectangle. Input/output: a parallelogram. Start/stop: a rounded terminator.
12.3 Program Testing and Maintenance
- What is the difference between a syntax, a logic and a run-time error?
- Syntax: breaks the rules of the language, so it will not translate. Logic: the program runs but gives the wrong result. Run-time: the program crashes while running, e.g. dividing by zero.
- What are normal, abnormal (erroneous) and boundary test data?
- Normal: valid data the program should accept. Abnormal: invalid data it should reject. Boundary (extreme): values on and either side of the limits of the valid range.
- What is the difference between white-box and black-box testing?
- White-box: tests every path through the code, chosen by looking at the code. Black-box: tests inputs against expected outputs without looking at the code.
- What are alpha and beta testing?
- Alpha: in-house testing by the developer’s own team. Beta: a near-finished version given to a group of real users outside the company, who report faults.
- What are the three types of maintenance?
- Corrective: fixing errors found after release. Adaptive: changing the program for new requirements or a new environment. Perfective: improving performance or usability.
- What is a dry run?
- Working through an algorithm by hand with test data, recording variable values in a trace table, to check the logic without running the code.