Skip to main content
Activity (Hands-On)Grades 9 - 12

Java Programming: Testing the Edges

A circular diagram shows the typical software development steps: Requirement Analysis, Design, Implementation, Testing, and Evolution. A title in the center of the diagram: SDLC Software/System Development Life Cycle.Figure 1. The software development cycle.

Students gain experience using the software/systems (engineering) design process, specifically focusing on the testing phase. This problem-based learning activity uses the design process to solve open-ended challenges. In addition to learning about test cases for testing software, students utilize the design process as a vehicle to work through a problem and arrive at a solution.

To produce a quality product, software engineers must fully test the written code. If this software development process step is not completed, it is likely that the user experience will not be good and thus, the product will not be used. To adequately test all aspects of code, all cases (possible situations) must be explored to see if the program acts as it was designed to function. A lack of software testing, or even ineffective testing, can lead to software updates (called patches) being necessary. This "hole" in the process can make software vulnerable to costly security breaches, both in human and economic terms. In the activity, students design test cases for a program to fully test the program.

After this activity, students should be able to:

  • Apply the software/systems design process to create test cases to properly test software to see if it functions correctly.
  • Relate the steps they complete in this activity to the full software/systems design process.

More Like This