Download as CSV
Unit 3 - Intro to App Design
Lesson 1: Introduction to Apps
Standards Alignment
CSP2021
CRD-2 - Developers create and innovate using an iterative design process
CRD-2.A - Describe the purpose of a computing innovation.
- CRD-2.A.2 - An understanding of the purpose of a computing innovation provides developers with an improved ability to develop that computing innovation.
CRD-2.C - Identify input(s) to a program.
- CRD-2.C.1 - Program input is data sent to a computer for processing by a program. Input can come in a variety of forms, such as tactile, audio, visual, or text.
- CRD-2.C.4 - Inputs usually affect the output produced by a program.
- CRD-2.C.6 - Input can come from a user or other programs.
CRD-2.D - Identify output(s) produced by a program.
- CRD-2.D.1 - Program output is any data sent from a program to a device. Program output can come in a variety of forms, such as tactile, audio, visual, or text.
- CRD-2.D.2 - Program output is usually based on a program’s input or prior state (e.g., internal values).
Lesson 2: Introduction to Design Mode
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
Lesson 3: Project - Designing an App Part 1
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
- 3A-AP-19 - Systematically design and develop programs for broad audiences by incorporating feedback from users.
- 3A-AP-21 - Evaluate and refine computational artifacts to make them more usable and accessible.
- 3A-AP-22 - Design and develop computational artifacts working in team roles using collaborative tools.
- 3A-AP-23 - Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
CSP2021
CRD-1 - Incorporating multiple perspectives
CRD-1.A - Explain how computing innovations are improved through collaboration.
- CRD-1.A.3 - Effective collaboration produces a computing innovation that reflects the diversity of talents and perspectives of those who designed it.
- CRD-1.A.4 - Collaboration that includes diverse perspectives helps avoid bias in the development of computing innovations.
- CRD-1.A.6 - Information gathered from potential users can be used to understand the purpose of a program from diverse perspectives and to develop a program that fully incorporates these perspectives.
CRD-2 - Developers create and innovate using an iterative design process
CRD-2.E - Develop a program using a development process.
- CRD-2.E.1 - A development process can be ordered and intentional, or exploratory in nature.
- CRD-2.E.2 - There are multiple development processes. The following phases are commonly used when developing a program: ● investigating and reflecting ● designing ● prototyping ● testing
- CRD-2.E.4 - A development process that is incremental is one that breaks the problem into smaller pieces and makes sure each piece works before adding it to the whole.
CRD-2.F - Design a program and its user interface.
- CRD-2.F.1 - The design of a program incorporates investigation to determine its requirements.
- CRD-2.F.2 - Investigation in a development process is useful for understanding and identifying the program constraints, as well as the concerns and interests of the people who will use the program.
- CRD-2.F.3 - Some ways investigation can be performed are as follows: ● collecting data through surveys ● user testing ● interviews ● direct observations
- CRD-2.F.4 - Program requirements describe how a program functions and may include a description of user interactions that a program must provide.
- CRD-2.F.5 - A program’s specification defines the requirements for the program.
- CRD-2.F.6 - In a development process, the design phase outlines how to accomplish a given program specification.
- CRD-2.F.7 - The design phase of a program may include: ● brainstorming ● planning and storyboarding ● organizing the program into modules and functional components ● creation of diagrams that represent the layouts of the user interface ●
Lesson 4: Project - Designing an App Part 2
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
- 3A-AP-19 - Systematically design and develop programs for broad audiences by incorporating feedback from users.
- 3A-AP-21 - Evaluate and refine computational artifacts to make them more usable and accessible.
- 3A-AP-22 - Design and develop computational artifacts working in team roles using collaborative tools.
- 3A-AP-23 - Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
Lesson 5: The Need for Programming Languages
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 2-AP-17 - Systematically test and refine programs using a range of test cases.
- 3A-AP-13 - Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests.
- 3A-AP-21 - Evaluate and refine computational artifacts to make them more usable and accessible.
- 3A-AP-22 - Design and develop computational artifacts working in team roles using collaborative tools.
- 3A-AP-23 - Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
Lesson 6: Intro to Programming
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
CSP2021
AAP-2 - The way statements are sequenced and combined in a program determines the computed result
AAP-2.B - Represent a step-by-step algorithmic process using sequential code statements.
- AAP-2.B.2 - A code statement is a part of program code that expresses an action to be carried out.
- AAP-2.B.6 - Sequential statements execute in the order they appear in the code segment.
AAP-3 - Programmers break down problems into smaller and more manageable pieces
AAP-3.E - For generating random values: a. Write expressions to generate possible values. b. Evaluate expressions to determine the possible results.
- AAP-3.E.2 - Using random number generation in a program means each execution may produce a different result.
CRD-2 - Developers create and innovate using an iterative design process
CRD-2.B - Explain how a program or code segment functions.
- CRD-2.B.1 - A program is a collection of program statements that performs a specific task when run by a computer. A program is often referred to as software.
- CRD-2.B.3 - A program needs to work for a variety of inputs and situations.
- CRD-2.B.4 - The behavior of a program is how a program functions during execution and is often described by how a user interacts with it.
- CRD-2.B.5 - A program can be described broadly by what it does, or in more detail by both what the program does and how the program statements accomplish this function.
CRD-2.C - Identify input(s) to a program.
- CRD-2.C.2 - An event is associated with an action and supplies input data to a program.
- CRD-2.C.3 - Events can be generated when a key is pressed, a mouse is clicked, a program is started, or by any other defined action that affects the flow of execution.
- CRD-2.C.5 - In event-driven programming, program statements are executed when triggered rather than through the sequential flow of control.
Lesson 7: Debugging
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
CS - Computing Systems
- 3A-CS-03 - Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
CSP2021
AAP-2 - The way statements are sequenced and combined in a program determines the computed result
AAP-2.B - Represent a step-by-step algorithmic process using sequential code statements.
- AAP-2.B.7 - Clarity and readability are important considerations when expressing an algorithm in a programming language.
CRD-2 - Developers create and innovate using an iterative design process
CRD-2.G - Describe the purpose of a code segment or program by writing documentation.
- CRD-2.G.1 - Program documentation is a written description of the function of a code segment, event, procedure, or program and how it was developed.
- CRD-2.G.2 - Comments are a form of program documentation written into the program to be read by people and do not affect how a program runs.
- CRD-2.G.3 - Programmers should document a program throughout its development.
- CRD-2.G.4 - Program documentation helps in developing and maintaining correct programs when working individually or in collaborative programming environments.
- CRD-2.G.5 - Not all programming environments support comments, so other methods of documentation may be required.
CRD-2.I - For errors in an algorithm or program: a. Identify the error. b. Correct the error.
- CRD-2.I.5 - The following are effective ways to find and correct errors: ● test cases ● hand tracing ● visualizations ● debuggers ● adding extra output statement(s)
Lesson 8: Project - Designing an App Part 3
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
- 3A-AP-19 - Systematically design and develop programs for broad audiences by incorporating feedback from users.
- 3A-AP-21 - Evaluate and refine computational artifacts to make them more usable and accessible.
- 3A-AP-22 - Design and develop computational artifacts working in team roles using collaborative tools.
- 3A-AP-23 - Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
CSP2021
CRD-1 - Incorporating multiple perspectives
CRD-1.B - Explain how computing innovations are developed by groups of people.
- CRD-1.B.2 - Common models such as pair programming exist to facilitate collaboration.
Lesson 9: Project - Designing an App Part 4
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
- 3A-AP-19 - Systematically design and develop programs for broad audiences by incorporating feedback from users.
- 3A-AP-21 - Evaluate and refine computational artifacts to make them more usable and accessible.
- 3A-AP-22 - Design and develop computational artifacts working in team roles using collaborative tools.
- 3A-AP-23 - Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
CSP2021
CRD-1 - Incorporating multiple perspectives
CRD-1.A - Explain how computing innovations are improved through collaboration.
- CRD-1.A.5 - Consultation and communication with users are important aspects of the development of computing innovations.
CRD-1.B - Explain how computing innovations are developed by groups of people.
- CRD-1.B.1 - Online tools support collaboration by allowing programmers to share and provide feedback on ideas and documents.
CRD-2 - Developers create and innovate using an iterative design process
CRD-2.E - Develop a program using a development process.
- CRD-2.E.3 - A development process that is iterative requires refinement and revision based on feedback, testing, or reflection throughout the process. This may require revisiting earlier phases of the process.
CRD-2.J - Identify inputs and corresponding expected output or behaviors that can be used to check the correctness of an algorithm or program.
- CRD-2.J.1 - In the development process, testing uses defined inputs to ensure that an algorithm or program is producing the expected outcomes. Programmers use the results from testing to revise their algorithms or programs.
- CRD-2.J.3 - Program requirements are needed to identify appropriate defined inputs for testing.
Lesson 10: Project - Designing an App Part 5
Standards Alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
- 3A-AP-19 - Systematically design and develop programs for broad audiences by incorporating feedback from users.
- 3A-AP-21 - Evaluate and refine computational artifacts to make them more usable and accessible.
- 3A-AP-22 - Design and develop computational artifacts working in team roles using collaborative tools.
- 3A-AP-23 - Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.