| |
| META TOPICPARENT |
name="CSC122SylF2021" |
Software Development Report Requirements
Overview |
| |
| META TOPICPARENT |
name="CSC122SylF2021" |
Software Development Report Requirements
Overview |
|
> > | |
| | When submitting a design of a program, a software design report is required. When submitting a completed program, a software development report is required. These documents should be written in a professional manner and are a technical document and should reflect that. A sample software development report is attached to this page. |
|
< < | Changes from the previous edition are indicated in bold. |
> > | Changes from the previous edition are indicated in bold. |
| |
Requirements for each type of report |
|
> > | |
| | When reporting on the design and/or development of software, the following items should be included:
| |
Software Design Report |
Software Development report |
|
|
< < |
| Problem summary |
✔ |
✔ |
| Implementation requirements |
✔ |
✔ |
| System design |
✔ |
✔ |
| Testing plan |
✔ |
|
| Testing report |
|
✔ |
| Estimation of time required |
✔ |
|
| Analysis of time used |
|
✔ |
| Identification of outside resources used |
✔ |
✔ |
| Potential security risks |
✔ |
|
| Security report |
|
✔ |
| Potential ethical implications |
✔ |
|
| Ethical report |
|
✔ |
| Future improvements |
|
✔ |
| Lessons learned |
✔ |
✔ |
| Improvement of work over last time |
✔ |
✔ |
|
> > |
| Problem summary |
✔ |
✔ |
| Implementation requirements |
✔ |
✔ |
| System design |
✔ |
✔ |
| Testing plan |
✔ |
|
| Testing report |
|
✔ |
| Estimation of time required |
✔ |
|
| Analysis of time used |
|
✔ |
| Identification of outside resources used |
✔ |
✔ |
| Potential security risks |
✔ |
|
| Security report |
|
✔ |
| Potential ethical implications |
✔ |
|
| Ethical report |
|
✔ |
| Future improvements |
|
✔ |
| Lessons learned |
✔ |
✔ |
| Improvement of work over last time |
✔ |
✔ |
|
| |
- If a given category is not appropriate in a given instance, still list the category and include "not applicable".
- Proper grammar and quality layout are required.
|
| |
- Testing report: This includes everything in the testing plan along with the achieved results and an indicator if the test was passed for each test case. If the software it is not at a stage where it can be tested, that should be explained here (in addition to the testing plan that would be used if the software could have been tested). This is typically the previous table with two additional columns
- Estimation of time required: This is a good faith estimate as to how long it will take to write the software. This can often be a single sentence.
- Analysis of time used: This is a statement of how long it took to write the software. Dividing that amount into the times spent designing, coding different components, testing, etc. is a good thing to do esp. as the software get more complex. This should also include a comparison to the estimation is one was previously made. This is normally a very short paragraph.
|
|
< < |
- Identification of outside resources used: This is required. If no outside resources were used, the it should state that no outside resources were used. Use of the textbook or lecture notes need not be documented. The same with using provided code. However, in the code itself, any outside code (including provided code) needs to have a comment indicating where it came from. This needs to include details as to what help was received. An example would be John Smith helps me understand how to declared a 2D array to be used for my tic-tac-toe board. Jan Doe help me with the logic to determine who won.
|
> > |
- Identification of outside resources used: This is required. If no outside resources were used, the it should state that no outside resources were used. Use of the textbook or lecture notes need not be documented. The same with using provided code. However, in the code itself, any outside code (including provided code) needs to have a comment indicating where it came from. This needs to include details as to what help was received. An example would be John Smith helps me understand how to declared a 2D array to be used for my tic-tac-toe board. Jan Doe help me with the logic to determine who won.
|
| |
- Potential security risks: This is a short bulleted list of potential security issues if there are any. Otherwise, indicate that none have been identified.
- Security report: This is a bulleted list of all known possible security issues associated with the software and how they were address, if they were addressed. Any unaddressed issues should be identified with a short statement as to the risk involved.
|
|
< < |
- Potential ethical implications: This is a short bulleted list of potential ethical issues if there are any. This includes ways the software could be used for good and/or bad. Otherwise, indicate that none have been identified.
|
> > |
- Potential ethical implications: This is a short bulleted list of potential ethical issues if there are any. This includes ways the software could be used for good and/or bad. Otherwise, indicate that none have been identified.
|
| |
- Ethical report: This is a bulleted list of all possible ethical issues (both good and bad)associated with the software.
- Future improvements: This is a bulleted list of things could be improved in the software. This is not optional. There is always room for improvement. This can include what you would have liked to accomplish if you had the time. For the tic-tac-toe example it could include add graphics.
- Lessons learned. This is a bulleted list of at least two things you learned while writing the code.
|
|
< < |
- Improvement of work over last time: This is a list of how you are improving based on feedback from your last assignment. It could be as easy as I put a banner comment in all files. Or I have started to declare and initialize my variables in two statements. Your goal is to show that you have learned something from the last assignment (especially the feedback) and are applying in the next one. This can be skipped only for first assignment of a given course.
|
> > |
- Improvement of work over last time: This is a list of how you are improving based on feedback from your last assignment. It could be as easy as I put a banner comment in all files. Or I have started to declare and initialize my variables in two statements. Your goal is to show that you have learned something from the last assignment (especially the feedback) and are applying in the next one. This can be skipped only for first assignment of a given course.
|
| | \ No newline at end of file |