Lecture notes for the Introduction to Computer Science I by James Tam | Return to the course web page |
It would be useful to spend time covering examples illustrating how the software design process occurs in an iterative fashion. This can be done by taking example algorithms that have flaws or weaknesses (such as the ATM example in the flowchart and pseudo-code notes). There are excellent examples of how this can be done in the notes for the previous year's versions of this course, which can be found under the url:
The main point of this section is to teach students how to problem solve regardless of implementation. They should learn how to find the answer to typical problems faced in the area of Computer Science without first thinking about the programming language that it will eventually be coded in. Consequently high level techniques such as writing pseudo-code and drawing flowcharts are taught in this section.