Wyoming DOE Logo MIDAS Logo

Program Development - Secondary
Material Image
Microcredential ID : 46
Stack
Algorithms and Programming - Secondary
Credits
0.5 PTSB Recertification Credit

Description

Programs are developed through a design process that is often repeated until the programmer is satisfied with the solution. This micro-credential represents the knowledge of how to teach program development in a secondary classroom to support student learning how and why people develop programs in the early grades. As students progress, they learn about the tradeoffs in program design associated with complex decisions involving user constraints, efficiency, ethics, and testing. Please locate "01. PROFICIENCY SCALE – Algorithms & Programming – Program Development" under resources to view specific Wyoming Computer Science Content and Performance Standards and the CSTA Standards for Teachers included in this micro-credential.

Standards
  • Computer Science Teachers Assocation (CSTA) Standards for CS Teachers > Instructional Design
    4a - Analyze CS curricula. Analyze CS curricula for implementation in their classrooms in terms of CS standards alignment, accuracy, completeness of content, cultural relevance, and accessibility.
  • Computer Science Teachers Assocation (CSTA) Standards for CS Teachers > Instructional Design
    4b - Develop standards-aligned learning experiences. Design and adapt learning experiences that align to comprehensive K-12 CS standards.
  • Computer Science Teachers Assocation (CSTA) Standards for CS Teachers > Instructional Design
    4g - Inform instruction through assessment. Develop multiple forms and modalities of assessment to provide feedback and support. Use resulting data for instructional decision-making and differentiation.
  • Computer Science Teachers Assocation (CSTA) Standards for CS Teachers > Classroom Practice
    5d - Support student collaboration. Provide structured opportunities for students to collaborate in CS. Develop students’ ability to provide, receive, and respond to constructive feedback in the design, implementation, and review of computational artifacts.
  • Wyoming Content and Performance Standards > Program Development
    8.AP.PD.01 - Using grade appropriate content and complexity, seek and incorporate feedback from team members and users to refine a solution to a problem.
  • Wyoming Content and Performance Standards > Program Development
    8.AP.PD.02 - Incorporate existing code, media, and libraries into original programs of increasing complexity and give attribution.
  • Wyoming Content and Performance Standards > Program Development
    8.AP.PD.03 - Systematically test and refine programs using a range of test cases.
  • Wyoming Content and Performance Standards > Program Development
    8.AP.PD.04 - Using grade appropriate content and complexity, document programs in order to make them easier to follow, test, and debug.
  • Wyoming Content and Performance Standards > Program Development
    8.AP.PD.05 - Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts.
  • Wyoming Content and Performance Standards > Program Development
    L1.AP.PD.01 - Plan and develop programs by analyzing a problem and/or process, developing and documenting a solution, testing outcomes, and adapting the program for a variety of users.
  • Wyoming Content and Performance Standards > Program Development
    L1.AP.PD.02 - Evaluate licenses that limit or restrict use of computational artifacts when using resources such as libraries.
  • Wyoming Content and Performance Standards > Program Development
    L1.AP.PD.03 - Use debugging tools to identify and fix errors in a program.
  • Wyoming Content and Performance Standards > Program Development
    L1.AP.PD.04 - Design and develop computational artifacts, working in team roles, using collaborative tools.
  • Wyoming Content and Performance Standards > Program Development
    L1.AP.PD.05 - Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
  • Wyoming Content and Performance Standards > Program Development
    L1.AP.PD.06 - Evaluate and refine computational artifacts to make them more usable and accessible.
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.01 - Plan and develop programs that will provide solutions to a variety of users using a software life cycle process.
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.02 - Use version control systems, integrated development environments (IDEs), and collaborative tools and practices (e.g., code documentation) in a group software project.
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.03 - Develop programs for multiple computing platforms.
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.04 - Evaluate key qualities of a program through a process such as a code review (e.g., qualities could include correctness, usability, readability, efficiency, portability, and scalability).
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.05 - Develop and use a series of test cases to verify that a program performs according to its design specifications.
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.06 - Explain security issues that might lead to compromised computer programs.
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.07 - Modify an existing program to add additional functionality and discuss intended and unintended implications (e.g., breaking other functionality).
  • Wyoming Content and Performance Standards > Program Development
    L2.AP.PD.08 - Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems.
How To Earn This Microcredential

To earn this micro-credential you will process through the ADDIE learning model producing evidence that demonstrates your knowledge of the Wyoming Computer Science Content and Performance Standards and the CSTA Standards for Teachers. Through the ADDIE learning model you will analyze standards, design/develop and implement a lesson, collect student work artifacts, and evaluate your professional practices.

Fees
There will be no fee assessed for reviewing this microcredential.
Clarifications

This micro-credential is intended for teachers in grades 6-12. If you teach the elementary grades, you will want to work on the elementary level computer science micro-credentials. The program development micro-credential is one of five micro-credentials that make up the algorithms & programming stack. The algorithms & programming stack is one of six micro-credential stacks that will lead to a Computer Science Teacher Master Distinction when completed.

Important Terms
Complete knowledge:

All of the skills listed in the proficient level of the Wyoming Computer Science Content and Performance Standards (see the resources) for a chosen standard.

Universal design for learning (UDL):

A framework for designing curriculum to be broadly accessible to all students. (See UDL for Learning Guidelines + Computer Science/Computational Thinking in the resources)

K–14:

Refers to computer science standards ranging from kindergarten into postsecondary education.

Scope and sequence:

Scope refers to the topics and areas of development within a curriculum, and sequence is the order in which those skills are taught.

Grade band:

The computer science standards are written in grade bands (K–2, 3–5, 6–8, and 9–12). The standard committee (CSSRC) determined the standards to be met by the end of the grade band. In grades 9–12, there are level 1 and level 2 standards. Level 1 standards include introductory skills. Level 2 standards are intended for students who wish to advance their study of computer science.

Chosen grade band:

The teacher or earner can choose which secondary grade band and standard to focus their lesson on.

Supporting computer science standard:

There is a difference between supporting standards and performance standards. All students are expected to be instructed on supporting computer science standards, taught within the context of the performance standards. Supporting standards do not need to be assessed through the district assessment system. If no supporting standards are listed on the "Micro-credential Map by Grade Band" (see the resources), this area becomes N/A.

Performance standards:

The Wyoming Content and Performance Standards serve several purposes. They articulate a set of expectations for what students should know and be able to do, enabling them to be prepared for college and career success; to live a life that contributes to the global community. These expectations are communicated to students, parents, educators, and all other Wyoming stakeholders, and provide a common understanding among educators as to what students should learn at particular grades. Standards do not dictate methodology, instructional materials used, or how the material is delivered. (See Wyoming Computer Science Content and Performance Standards in the resources.)

Algorithm:

A step-by-step process to complete a task.

App:

A type of application software designed to run on a mobile device, such as a smartphone or tablet computer. Also known as a mobile application.

Computational artifact:

Anything created by a human using a computational thinking process and a computing device. A computational artifact can be, but is not limited to, a program, image, audio, video, presentation, or web page file.

Computer science:

The study of computing principles, design, and applications (hardware and software); the creation, access, and use of information through algorithms and problem-solving; and the impact of computing on society.

Control:

In programming, it is the use of elements of programming code to direct which actions take place and the order in which they take place.

Control structures:

A programming (code) structure that implements control. Conditionals and loops are examples of control structures.

Data structure:

A particular way to store and organize data within a computer program to suit a specific purpose so that it can be accessed and worked with in appropriate ways.

Events:

Any identifiable occurrence that has significance for system hardware or software. User-generated events include keystrokes and mouse clicks; system-generated events include program loading and errors.

Prototype:

An early sample, model, or release of a product built to test a concept or process or to act as a thing to be replicated or learned from.

Recursion:

Recursion is the process of defining a problem (or the solution to a problem) in terms of (a simpler version of) itself.

Variable:

A symbolic name that is used to keep track of a value that can change while a program is running. Variables are not just used for numbers; they can also hold text, including whole sentences (strings) or logical values (true or false). A variable has a data type and is associated with data storage location; its value is normally changed during the course of program execution.

Conditionals:

A feature of a programming language that performs different computations or actions depending on whether a programmer -specified Boolean condition evaluates to true or false. (A condition could refer to a conditional statement, conditional expression, or conditional construct.)

Modalities of assessment:

Modalities of assessment include written assessment, oral assessment, performance tasks, or visual representations.

Forms of assessment:

These include formative, summative, or student self-assessment.

Background Scenario / How This Will Help You

This micro-credential collection provides earners with the opportunity to document their knowledge and skills in teaching computer science to students in grades 6–12. The content provides resources to support understanding.

Earners are encouraged to participate in additional learning opportunities if more extensive learning is needed. Additional learning opportunities may include free online resources, postsecondary courses, and local courses.

The micro-credential structure offers earners flexible pathways and timelines. Earners can complete the micro-credentials in any order that aligns with their classroom timelines and availability. Micro-credentials offer earners the opportunity to submit evidence and receive evaluator feedback. Earners are encouraged to resubmit evidence until mastery is earned. Each resubmission will be reviewed, and updated feedback will be provided.

Evidence Options
Candidates are required to submit multiple pieces of evidence.
Category: Analyze

Analyze: Standards:

Complete "02. ANALYZE – Algorithms & Programming – Program Development" in the resources section below. All instructions are included in the worksheet. Once you have completed the worksheet, upload it in the evidence section as a PDF. The resource can be found by following this link: https://bit.ly/37k7S8E.

Category: Design/Develop

Lesson Plan:

Find "03. DESIGN/DEVELOP" in the resources section below. All instructions are included in the worksheet. Once you are finished with this task, upload your lesson plan in the evidence section as a PDF. The resource can be found by following this link: https://bit.ly/2Urhzik.

Category: Implement

Implementation:

Implement the set of activities or lesson plan you designed. Submit evidence of student learning for your focus standard. Include evidence of students that have met the standard and students that have not met the standard. Examples include videos of students working, completed student worksheets, etc. Annotate each piece of evidence to demonstrate how you facilitated student achievement of the standard.

Category: Evaluate

Journal:

Find "04. EVALUATE – Worksheet" in the resources section below. All instructions are included in the worksheet. The resource can be found by following this link: https://bit.ly/3xMingf.


Review Criteria

Evidence submissions and reflections will be reviewed for alignment with the assignment guidelines and this proficiency scale, found here: https://bit.ly/3CfLuf3. This checklist will help you review your submission materials to ensure you address everything that is expected for this micro-credential: https://bit.ly/3GQqAFl.

Reflection Prompts

Please provide a self-assessment, a score from 1–4, on each component of the proficiency scale found here: https://bit.ly/3CfLuf3. Provide a few sentences stating which pieces of evidence from ADDIE support the scores for each component.

If you are not submitting all pieces of evidence at this time, please indicate that here.

If you are resubmitting, please indicate what changes were made in the documents (e.g., highlight, text color) and include "Resubmission #" with the resubmission number in the file title when you upload.


Review Criteria

Proficiency scale: https://bit.ly/3CfLuf3. Checklist: https://bit.ly/3GQqAFl.

Content knowledge – CSTA 4a The teacher demonstrates accurate and complete knowledge of the content and skills of the standard being taught.

Inform instruction through assessment – CSTA 4g The teacher develops multiple forms and modalities of assessment to provide feedback and support. The teacher uses resulting data for instructional decision-making and differentiation.

Supporting standards The teacher identifies and explains the connection of supporting computer science standards to the standard being taught in their lesson.

Vertical alignment – CSTA 4b The teacher explains the relationship of the standard in the scope and sequence of computer science standards directly above and below chosen grade band.

Student support collaboration – CSTA 5d The teacher provides structured opportunities for students to collaborate in computer science. The teacher develops students’ ability to provide, receive, and respond to constructive feedback in the design, implementation, and review of computational artifacts.

Resources
Tool – UDL for Learning Guidelines + Computer Science/Computational Thinking
https://ctrl.education.ufl.edu/wp-content/uploads/sites/5/2020/05/Copy-of-UDL-and-CS_CT-remix.pdf

UDL is a framework for designing curriculum to be broadly accessible to ALL students. Learn more about utilizing the UDL framework in computer science education.


Webpage – CSTA Wyoming
https://web.membernova.com/400361/page/about-us

CSTA Wyoming's website so teachers can join.


Standards – CSTA Standards for Computer Science Teachers
https://www.csteachers.org/page/standards-for-cs-teachers

These standards are designed to provide clear guidance on effective and equitable computer science instruction in support of rigorous computer science education for all K–12 students.


Micro-Credential Map By Grade Band
https://docs.google.com/spreadsheets/d/1E6pQDbFCQ42O1FUzQIakJS9CRKraHiORCXdUXmdcBCw/copy#gid=1114401374

The computer science standards are written in grade bands (K–2, 3–5, 6–8, and 9–12). The standard committee (CSSRC) determined the standard to be met by the end of each grade band. In grades 9-12, there are level 1 and level 2 standards. Level 1 standards include introductory skills. Level 2 standards are intended for students who wish to advance their study of computer science. The teacher or earner can choose which grade band and standard to focus their lesson on.


03. DESIGN/DEVELOP
https://docs.google.com/document/d/1Vboh_Hu3kK53uYJZCcQlDLCB6NTRwVPxvCyszP4zhUY/copy

Use this resource for the design/develop step of the ADDIE model.


04. EVALUATE – Worksheet
https://docs.google.com/document/d/1eevTS3Ay1X9nbtSvWvUjX7yj6DwaiZYEAAsyuNGlEb4/copy

Evaluate how effective your activities were at promoting student learning of the standards. Use specific examples from the artifacts you submitted in Implement and suggest any changes in practice or approach that you might make in the future based on your experience with this micro-credential.


Standards – Wyoming Computer Science Content and Performance Standards
https://edu.wyoming.gov/wp-content/uploads/2021/04/2020-CS-WYCPS-with-all-PLDs-effective-04.07.21.pdf

Performance Level Descriptors (PLDs) describe the performance expectations of students for each of the four (4) performance level categories: advanced, proficient, basic, and below basic. These are a description of what students within each performance level are expected to know and be able to do. All PLDs are found in this document.


Article – "Unwrapping" the Standards: A Simple Way to Deconstruct Learning Outcomes
https://corwin-connect.com/2015/03/unwrapping-the-standards-a-simple-way-to-deconstruct-learning-outcomes/

“Unwrapping” is a simple method that all teachers in all grade levels can use to deconstruct the wording of any standard in order to know its meaning inside and out.


Sample Response – Completed Devices Micro-Credential
https://drive.google.com/file/d/1ESoWRRdNZRjruO2j-1eq4CUU3YoWLlh1/view?usp=sharing

This resource includes a sample response for analyze, design/develop, implement, and analyze as well as a sample reflection prompt response for the devices micro-credential.


01. PROFICIENCY SCALE – Algorithms & Programming – Program Development
https://docs.google.com/document/d/10FqW6LU0l8R7gepswKEE3FcSTJTaMS2PRT1LD90fHgU/copy

This scale is provided as a resource for learners to view micro-credential criterion and the performance descriptor levels for demonstration of mastery.


02. ANALYZE – Algorithms & Programming – Program Development
https://docs.google.com/document/d/1EVF3QChBrcfPIEmdUjDqyoJE5upW9jq64vOW1XE9xQk/copy

Analyze the student and teacher standards aligned with the Algorithms & Programming – Program Development micro-credential. Aligned standards and instructions for selecting a focus standard are outlined below the task description. There are two parts to this task.


Webpage – Cooperative Learning
https://teachglobalimpact.org/strategies-article-8/

This website shares ideas for using cooperative learning and collaboration in a computer science classroom.


Video – Unit 1: Cooperative Learning Structures
https://youtu.be/hDSIs9DaWNw

In this lesson, an overview of cooperative learning structures is provided along with examples of how this powerful pedagogical technique can be useful in a computer science principles course.


Lesson Plan – Debugging
https://curriculum.code.org/csp-20/unit3/7/

In this lesson students practice using the different programming concepts that they were introduced to in the last lesson. To begin, however, they are introduced to the concept of debugging and are encouraged to use and reflect on this practice throughout the lesson. At the end of the lesson students share their experiences debugging as well as an new realizations about programming.


Lesson Plan – Intro to App Design
https://curriculum.code.org/csp-20/unit3/

Students design their first app while learning both fundamental programming concepts and collaborative software development processes. Students work with partners to develop a simple app that teaches classmates about a topic of personal interest. Throughout the unit, they learn how to use Code.org’s programming environment, App Lab, to design user interfaces and write simple event-driven programs. Along the way, students learn practices like debugging, pair programming, and collecting and responding to feedback, which they will be able to use throughout the course as they build ever more complex projects. The unit concludes with students sharing the apps they develop with their classmates.


Article – Code Review Developer Guide
https://google.github.io/eng-practices/review/

This documentation is the canonical description of Google’s code review processes and policies. This page is an overview of our code review process. There are two other large documents that are a part of this guide: How To Do A Code Review: A detailed guide for code reviewers. The CL Author’s Guide: A detailed guide for developers whose CLs are going through review.


Article – The Ultimate Code Review Checklist
https://www.codegrip.tech/productivity/the-ultimate-code-review-checklist/

This checklist is made for beginners as well as expert developers, stating necessary and an ideal list to do a code review process. This list is language-neutral, and you can use it for most programming languages without having to create significant changes.


Article – 17 Lessons I Learned For Writing Effective Test Cases
https://www.lambdatest.com/blog/17-lessons-i-learned-for-writing-effective-test-cases/

Software tester shares 17 lessons learned for writing effective test cases including user personas, steps of execution, and writing descriptions.


Lesson Plan – Testing the App
https://curriculum.code.org/csd-20/unit4/14/

The primary purpose of this lesson is to have the team actually test the app with other people, preferably from the target audience the app is intended for, or from different teams in the class while observers from the team will record the results on the worksheets they used in the planning phase.


Lesson Plan – The Design Process
https://curriculum.code.org/csd-20/unit4/

The Design Process unit transitions students from thinking about computer science as a tool to solve their own problems towards considering the broader social impacts of computing. Through a series of design challenges, students are asked to consider and understand the needs of others while developing a solution to a problem. The second half of the unit consists of an iterative team project, during which students have the opportunity to identify a need that they care about, prototype solutions both on paper and in App Lab, and test their solutions with real users to get feedback and drive further iteration.


Article – Code Review Checklist for 2021: A Guide to Your First Peer Code Review
https://www.springboard.com/blog/software-engineering/code-review-checklist-for-2021/

This blog comprises a code review checklist recommended by industry experts that would help you in writing meticulous and commendable codes.


Video – The Science of Code Reviews
https://youtu.be/EyL7mqwpZhk

In this talk Coding Tech shows you how you can do proper code reviews, what to look out for when doing them, how to give feedback to the developer and a bunch of other tips to improve this process.


Video – Code Comments
https://thecodingtrain.com/beginners/p5js/1.6-code-comments.html

The Coding Train shows how to use comments to give notes to the code reader, teacher, or peer reviewer to explain what the code is doing.


Article – Engagement Practices Framework
https://ncwit.org/engagement-practices-framework-community-collaborative/

This resource shares collaborative learning strategies to build critical thinking and problem solving, which can lead to a more inclusive student community by helping students develop communication and teamwork skills, and an appreciation of diversity.


Video Tutorial: Platform Navigation Tutorias
https://docs.google.com/document/d/1hUZSMULBOzj-_CmIo2zuiZG2QziB40D_qBOXqAc5P5k/edit?usp=sharing

This is a list of videos that support navigation of the Midas platform. Including how to submit micro-credentials for review.


Video Tutorial: Unpacking Wyoming Computer Science Standards
https://drive.google.com/file/d/1fy_LGu8NWKlbhJWlGblE01V520kGsPJ6/view?usp=sharing

This video helps for unpacking the Wyoming Computer Science standards as part of the micro-credential.


Video Tutorial: Best Practice in Google Drive Organization
https://drive.google.com/file/d/15WPbS__MRNpSGpEyTWWocd362qK6piZX/view?usp=sharing

This video provides best practices in Google Drive organization for the micro-credentials.


Video Tutorial: Completing the CSTA CS Teacher Standard Analyze Task
https://drive.google.com/file/d/1STn9CNmjxjjosyglv_-VbQxUOevp8Ax7/view?usp=sharing

This video gives pointers on completing the CSTA CS teacher standard analyze task for the micro-credential.


Program Development Micro-credential Checklist
https://docs.google.com/document/d/1XbhZiwiblDusH4f2oBV9OQzYh0Ps-6-RNNUo7ctyDmA/copy

This checklist will help you review your submission materials to ensure you address everything that is expected for this micro-credential.

Earners
Jennifer Anderson

Jennifer Anderson
Kiesa Geyer

Kiesa Geyer
Abby Hurley

Abby Hurley
Debbie Jacobson

Debbie Jacobson
Amanda Martin

Amanda Martin
Anna McClure

Anna McClure
Walt Smith

Walt Smith

Wyoming Department of Education

122 W. 25th St. Suite E200

Cheyenne, WY 82002

Phone: (307) 777-7675 

© Copyright 2022 Wyoming Department of Education