Version 1: Simpler
Week 1: Introduction to Programming Project
- Introduce the concept of a programming project and its importance in computing science.
- Discuss the desired outcome and the skills required to achieve it.
- Explore different programming languages and their suitability for the project.
- Discuss the importance of selecting appropriate development tools.
Week 2: Selecting a Programming Language
- Introduce various programming languages commonly used in computing science.
- Discuss the strengths and weaknesses of each language.
- Analyze the requirements of the programming project and select the most suitable programming language.
- Justify the decision based on the project’s requirements and the desired outcome.
Week 3: Designing the Computing Solution
- Introduce the concept of designing a computing solution.
- Discuss the importance of planning and organizing the project.
- Explore different design tools and techniques (e.g., flowcharts, pseudocode) to represent the solution.
- Apply the selected design tools to create a plan for the programming project.
Week 4: Building the Computing Solution
- Introduce the development tools required to build the computing solution.
- Discuss the importance of using appropriate tools for coding, debugging, and testing.
- Apply the selected development tools to start building the programming project.
Week 5: Evaluating and Refining the Computing Solution
- Discuss the importance of evaluating and refining the computing solution.
- Introduce different testing techniques (e.g., unit testing, integration testing) to ensure the solution’s functionality.
- Apply testing and debugging techniques to evaluate and refine the programming project.
Week 6: Making Reasoned Arguments
- Discuss the importance of making reasoned arguments in computing science.
- Explore different techniques for justifying decisions in the context of the programming project.
- Reflect on the overall project and evaluate the success of the selected development tools and decisions made.
Assessment:
- Students will be assessed based on their ability to select appropriate development tools, design, build, evaluate, and refine a computing solution for the programming project.
- Assessment will include the submission of the programming project and a written reflection on the decisions made.
Version 2: Same
Week 1: Introduction to Programming Project
- Introduce the concept of a programming project and its importance in computing science.
- Discuss the desired outcome and the skills required to achieve it.
- Explore different programming languages and their suitability for the project.
- Discuss the importance of selecting appropriate development tools.
Week 2: Selecting a Programming Language
- Introduce various programming languages commonly used in computing science.
- Discuss the strengths and weaknesses of each language.
- Analyze the requirements of the programming project and select the most suitable programming language.
- Justify the decision based on the project’s requirements and the desired outcome.
Week 3: Designing the Computing Solution
- Introduce the concept of designing a computing solution.
- Discuss the importance of planning and organizing the project.
- Explore different design tools and techniques (e.g., flowcharts, pseudocode) to represent the solution.
- Apply the selected design tools to create a detailed plan for the programming project.
Week 4: Building the Computing Solution
- Introduce the development tools required to build the computing solution.
- Discuss the importance of using appropriate tools for coding, debugging, and testing.
- Explore different Integrated Development Environments (IDEs) and code editors.
- Apply the selected development tools to start building the programming project.
Week 5: Evaluating and Refining the Computing Solution
- Discuss the importance of evaluating and refining the computing solution.
- Introduce different testing techniques (e.g., unit testing, integration testing) to ensure the solution’s functionality.
- Explore debugging tools and techniques to identify and fix errors in the code.
- Apply testing and debugging techniques to evaluate and refine the programming project.
Week 6: Making Reasoned Arguments
- Discuss the importance of making reasoned arguments in computing science.
- Explore different techniques for justifying decisions in the context of the programming project.
- Analyze the decisions made throughout the project and provide reasoned arguments to justify them.
- Reflect on the overall project and evaluate the success of the selected development tools and decisions made.
Assessment:
- Students will be assessed based on their ability to select appropriate development tools, design, build, evaluate, and refine a computing solution for the programming project.
- Assessment will include the submission of the programming project, a written reflection on the decisions made, and a presentation to justify the choices made.
Version 3: More Complex
Week 1: Introduction to Programming Project
- Introduce the concept of a programming project and its importance in computing science.
- Discuss the desired outcome and the skills required to achieve it.
- Explore different programming languages and their suitability for the project.
- Discuss the importance of selecting appropriate development tools.
Week 2: Selecting a Programming Language
- Introduce various programming languages commonly used in computing science.
- Discuss the strengths and weaknesses of each language.
- Analyze the requirements of the programming project and select the most suitable programming language.
- Justify the decision based on the project’s requirements, the desired outcome, and the complexity of the project.
Week 3: Designing the Computing Solution
- Introduce the concept of designing a computing solution.
- Discuss the importance of planning and organizing the project, considering the complexity.
- Explore different design tools and techniques (e.g., flowcharts, pseudocode) to represent the solution.
- Apply the selected design tools to create a detailed and comprehensive plan for the programming project.
Week 4: Building the Computing Solution
- Introduce the development tools required to build the computing solution, considering the complexity.
- Discuss the importance of using appropriate tools for coding, debugging, and testing.
- Explore different Integrated Development Environments (IDEs) and code editors suitable for complex projects.
- Apply the selected development tools to start building the programming project, considering the complexity.
Week 5: Evaluating and Refining the Computing Solution
- Discuss the importance of evaluating and refining the computing solution, considering the complexity.
- Introduce different testing techniques (e.g., unit testing, integration testing) to ensure the solution’s functionality.
- Explore advanced debugging tools and techniques to identify and fix errors in the code.
- Apply testing and debugging techniques to evaluate and refine the programming project, considering the complexity.
Week 6: Making Reasoned Arguments
- Discuss the importance of making reasoned arguments in computing science, considering the complexity.
- Explore different techniques for justifying decisions in the context of the programming project.
- Analyze the decisions made throughout the project and provide detailed and well-reasoned arguments to justify them, considering the complexity.
- Reflect on the overall project and evaluate the success of the selected development tools and decisions made, considering the complexity.
Assessment:
- Students will be assessed based on their ability to select appropriate development tools, design, build, evaluate, and refine a computing solution for the programming project, considering the complexity.
- Assessment will include the submission of the programming project, a detailed written reflection on the decisions made, and a presentation to justify the choices made, considering the complexity.