Which stage of the program development lifecycle investigates the problem and produces a requirements specification?
Analysis
What type of error occurs when the program grammar is incorrect?
Syntax error
Which development model completes one stage before moving to the next stage?
Waterfall model
Which type of test data is valid data that should be accepted by the program?
Normal test data
What tool is used to manually follow an algorithm step-by-step during a dry run?
Trace table
What is a logic error?
This type of error causes the program to run but produce incorrect results.
A program crashed when the user tried to divide a number with 0. What type of error is this?
Run-time error
When testing a validation rule 1 ≤ age ≤ 100, the values 1 and 100 represent this type of test data.
What type is this test data?
extreme test data
What is stub testing?
This type of testing occurs when dummy modules are used because some modules are not finished.
State 3 types of maintenance
perfective, adaptive, corrective
What is walkthrough testing and what is the purpose?
A test where the code is reviewed carefully by the developer’s peers, managers, team members, etc.
It is used to gather useful feedback to further develop the code.
Differentiate between alpha and beta testing.
Alpha testing: This is the testing done on software ‘in-house’, meaning it is done by the developers.
Beta testing: This is the testing done on the software by beta users, who use the program and report any problems back to the developer.
State 3 key activities in the design state of a program development life cycle
Break the problem into smaller modules (decomposition)
Create structure charts
Write algorithms using pseudocode or flowcharts
Use state-transition diagrams if needed
Plan data structures and parameters
List all stages in a program development life cycle and outline what is done in each stage
Analysis
Design
Coding
Testing
Maintenance
Differentiate between extreme and boundary test data
Extreme data are the values at the exact limits of the valid range that the program should accept.
Boundary data includes the values at the limits and just outside the limits of the valid range.
List 3 key characteristics of RAD life cycle
Fast development
Heavy user involvement
Prototyping
Iterative improvements
Focus on quick delivery
BONUS
BONUS
List 3 key characteristics of waterfall life cycle
Sequential stages
Requirements must be clearly defined at the start
Limited user involvement after analysis
Difficult to accommodate changes
Testing occurs late in development
Explain the difference between white-box testing and black-box testing.
White-box testing examines the internal structure and logic of the program.
The tester has knowledge of the program code and tests different paths, conditions, and loops in the code to ensure they work correctly.
Black-box testing focuses only on the inputs and outputs of the program, without looking at the internal code.
The tester checks whether the program produces the correct output for given inputs.
Explain all types of test data with examples.
normal, abnormal, boundary, extreme
List 3 advantages and 3 disadvantages of RAD life cycle
Advantages of RAD
Faster system development
Early detection of design problems
Users are actively involved
System better meets user needs
Disadvantages of RAD
Requires skilled developers
Difficult for very large systems
Requires constant user availability
May lead to poor documentation
Explain the three types of maintenance and give an example of how each could be implemented in WhatsApp.
Corrective maintenance involves fixing errors or bugs discovered after the software has been released.
Adaptive maintenance involves modifying the software so it works in a new environment, such as new hardware, operating systems, or regulations.
WhatsApp adds new features such as message reactions, disappearing messages, or improved voice call quality to enhance the user experience.