COMPUTER SYSTEMS RESEARCH
Program Iteration Report 2006-2007
Running version, planning, testing, and analysis of your program
Name: __________________________________, Period: _____, Date: ______________
Project title or subject: _______________________________
Language(s) and other software tool(s): ______________________
Iteration or Prototype # _____
- Problem definition - Clear statement of the problem this iteration is supposed to solve, and also perhaps how this fits into the larger scale, or longer term, problem you are trying to solve or investigate with your project.
- Requirements (see attached list) - describe in detail what this iteration is supposed to do. You may want to relate this short requirement to longer term requirements of your project or system.
List specific requirements you have for this iteration:
You should be able to define at least 3 or 4 of the above requirement areas for your project
for this iteration. For example #1 & 2 - input and output, and #10 - how your style of programming
and classes you use
help in future program maintainability, #11 - how you are justifying success or non-success for
your program (or a specific piece of the program) and how you are specifically testing
each part of your program.
- Architecture of your program - software architecture is the high-level part of software
design, the frame that holds the more detailed parts of the design (see
Code Complete: p. 43 and the attached list of architecture items)
Comment on at least 2 or 3 of the above architectural considerations relating to your
program and this iteration (for example #1,3,4,10)
- Outline your organization for this version of the program. Determine what types of inputs the program expects, what algorithms and processing the program is doing, and what output(s) you expect.
- Input(s) - try to test a variety of kinds of inputs:
- Algorithms and processing internal to the program (you can paste in code and explain):
- Types of output you expect, what do you expect the program to do, how should the program behave based on your input and algorithms?
- Tests – how are you validating the success or failure of this iteration. What pieces of code, functions, classes, algorithms are you checking and what specific tests are you doing?
- Summarize again what your program is demonstrating or analyzing. What do you think your next step will be for the next iteration of your program?