Module 1 Problem Solving in Computer Programming Small Problems, Skill Inventory/Building

Module 1 Problem Solving in Computer Programming Small Problems, Skill Inventory/Building

Computer Programming 12

Module 1 Problem Solving in Computer Programmingsmall problems, skill inventory/building

Module 2 Fundamentals of Programmingproblem analysis and planning

Module 3 Applied Problem Solvingproblem solving

Module 4 Software Developmentproject development

GCO 1 Students will be expected to understand and apply the basic skills and processes of problem solving using computer programming

GCO 2 Students will be expected to identify problems, select effective strategies, and plan solutions

GCO 3 Students will be expected to apply programming techniques to develop solutions to a range of problems

GCO 4 Students will be expected to work collaboratively to define and solve a complex problem by creating a software application

Unifying themes

1. Students will become skilled problem solvers and critical thinkers.

2. Students will apply the principles of effective programming to analyse and solve problems.

3. Students will become skilled, critical, and principled creators of solutions in information/communications technology (ICT).

4. Students will become contributing, reflective members of a collaborative culture.

5. Students become skilled readers and writers of documentation associated with programming

6. Students will use their projects and assignments to develop a life/work portfolio.

7. Students will explore and reflect on the roles of software development professionals.

Computer Programming 12

Module 1 Problem Solving in Computer Programming

GCO 1 Students will be expected to understand and apply the basic skills and processes of problem solving using computer programming

Outcome / Strategies for Learning and Teaching
demonstrate an understanding of the role of number systems in data storage (1.1) / Binary, hex, bits/bytes/nibbles
integer, real, double
application: Web page colors
memory spaces?
Intro to other systems:Roman numerals - Wayne and Shuster
ASCII
magic numbers
index cards sort
apply mathematical concepts, including Boolean logic, operators (1.2) / Operators: +, -, X, /, and, or, not, Xor, Nand
div and mod
venn diagrams, logic gates,
Internet search strategies
Identify problems and define strategies to solve them using technology( 1.3) / flowchart making a sandwich, brush teeth, change lightbulb, getting dressed and test its execution
puzzles, logic problems, games, mensa/IQ tests
team building, group vs independent solutions
industrial stories
wolf fencing to illustrate debugging
Demonstrate a range of problem solving skills (1.4) Identify their strengths and weaknesses
Demonstrate an understanding of the ethical, moral, and legal issues in ICT (1.5) / Microsoft, hackers, viruses, copyright, FOIPOP, Napster, spam, hoaxes, hate sites, harrassment/intimidation, spoof sites, pop-ups, consoles, spyware
firewalls, spam filters, anti-virus, AUP, URL/content filters, site blocking
Investigate a range of related career opportunities (1.6) / Guest speakers, mentors, NSCC visits, Internet searches, films,

Computer Programming 12

Module 2 Fundamentals of Programming

GCO 2 Students will be expected to identify problems, select effective strategies, and plan solutions

Outcome / Strategies for Learning and Teaching
demonstrate an understanding of the syntax and features of a programming language (2.1) / Common features of a programming language
need a tutorial, book, Website
peer teaching
explore the use of data structures to solve problems (2.2) / objects, structured programming
identify and frame problems (2.3) / Role playing
use appropriate terminology to develop a plan to solve a problem(2.4) / Case method venn diagram flowchart--
loops, actors
diagram of objects
program spec
pseudocode
apply a plan to solve a problem using a programming language (2.5)
investigate a range of related career opportunities (2.6) / Guest speakers, mentors, NSCC visits, Internet searches, films,
demonstrate un understanding of the effectiveness of other people’s programs and documentation (2.7) / write pseudocode-change papers-write code

Computer Programming 12

Module 3 Applied Problem Solving

GCO 3 Students will be expected to apply programming techniques to develop solutions to a range of problems

Outcome / Strategies for Learning and Teaching
develop a project plan (3.1) / Template, exemplars
Inspiration, wordprocessor
create an interface using effective design principles (3.2) / Design principles checklist
review Web sites, programs, critiques, samples (MSDN library)
explore the use of data manipulation techniques (3.3) / Sort, amortization tables, averaging, statistical analysis, plotting, mileage /calorie calculators
explore the use of data formatting principles (3.4) / Money
string manipulation
tables, graphs, lists
explore the use of error handling techniques/validation (3.5) / Wolf-fencing
debugger, endless loops, user errors, input limiting,/requirements, passwords, data types
work individually and collaboratively to develop program tools, components, and strategies to create solutions (3.6) / Workplan
sample tools, problems, gameday Fridays
rubric for collaborative beh
roles/rules handout

Computer Programming 12

Module 4 Software Development

GCO 4 Students will be expected to work collaboratively to define and solve a complex problem by creating a software application

Outcome / Strategies for Learning and Teaching
define a problem and propose a solution (4.1) / own, RFP, corporate/entrepreneurial
develop a project plan, including roles, resources, and deadlines (4.2) / Team building
sociograms
negotiating collaboration with independent learners
identify information needs - locate and evaluate resources (4.3) / Community resources, mentors
develop a solution to a programming problem (4.5)
write documentation associated with the program (4.6) / Manual, logo, packaging, marketing
test and refine the solution (4.7) / Criteria
present the solution (4.8) / Rubric
reflect on the solution, the process, and their own learning (4.9) / Journal, portfolio, debriefing

Computer Programming 12