|
| |
Evaluating & Communicating
the Results
| Unit 5 |
Activity 5 |
Time:
160
minutes
|
Description
Students need to document their work so that they and other programmers
can make changes or updates later. Documentation may also have to be written for
the program's users. Documentation should appear in the program in comments.
Documentation outside the program can be written in a common document format,
and may contain explanations of how the programming problem was solved, as well
as diagrams, flowcharts, or descriptions. Documentation for the user usually explains
the functions of the software. Program maintenance occurs when the task a
program was written to do is changed, or when new features are needed, etc.
Strand(s) & Learning
Expectations
Strand(s):
A. Programming Concepts
and Skills
B. Software Development
C. Computer Environments and Systems
D. Topics
in Computer Science
|
Overall Expectations
|
| B4. |
apply a software development life-cycle model to a software
development project. |
|
Specific Expectations
|
| B4.2 |
use a variety of techniques (e.g., dialogue, questionnaires,
surveys, research) to clarify program specifications; |
| B4.4 |
use a test plan to test programs (i.e., identify test
scenarios, identify suitable input data, calculate expected
outcomes, record actual outcomes, and conclude ‘pass’ or ‘fail’)
by comparing expected to actual outcomes; |
| B4.5 |
use a variety of methods to debug programs (e.g., manual
code tracing, extra code to output the state of variables); |
| B4.6 |
communicate information about the status of a project (e.g.,
milestones, work completed, work outstanding) effectively in
writing throughout the project. |
Prior Knowledge &
Skills
Planning Notes
-
The
major goal of the final project should be to have students apply what they
have learned, throughout the course, in the context of a larger problem.
Teachers should act as a project manager or advisor.
-
Testing
should be a continual process during the software development process.
However, formal testing can be considered a separate activity from coding a
solution.
-
The
process of creating testing data should be considered as important as
running the test cases.
-
Evaluation
of this activity should be tied to the project as a whole.
Teaching/Learning
Strategies
-
Distribute Memo #6 (Appendix 5.5.1)
-
Students
will provide documented test cases for each module in the final project.
-
Students
will provide documented system tests for the final project as a whole.
-
Students
will informally or formally test other students' final projects.
-
Students
will demonstrate that they have met the project specifications through
testing.
-
Students
will recognize the importance of testing in the software process.
Assessment & Evaluation of Student Learning
As Learning
Students will be given time to:
- reflect on their progress/
understanding/areas of concern
based on teacher/student/peer
suggestions (e.g. after test take up)
- journalize their reflections
- reflect on the work of others
For Learning
The teacher will
- observe student progress/performance
- ask questions based on student work
- check homework correctness/completion when appropriate
- review formative quiz results
Of LearningAccommodations
The
following are ways in which the activity can be modified to accommodate
students' individual needs:
-
provide
a planning framework to which students will add modules;
-
select
group members based upon previous classroom performance and recognized
strengths and weaknesses;
-
investigate
software development tools;
-
provide
a graduated set of specifications, such as basic requirements, minor
enhancements, major enhancements.
-
provide
sample test cases;
-
investigate
debugging tools within a specific programming environment.
Resources
|