k 12 cs framework draft march 18 2016

Upload: velimir-radlovacki

Post on 13-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    1/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )

    A Framework for K-12 CS Education (K-12 draft)

    Preface

    Thank you for supporting the development of the K-12 CS Framework by serving as a reviewer. This review period began on March 18th and will

    end on April 5that 11:59pm PT. The purpose of this review is to include feedback from a diverse range of voices and stakeholders. Below you willfind background that will inform your review.

    GoalThe K-12 CS Framework identifies the powerful ideas in computer science as core concepts and practices for all K-12 students. The framework isnot a standards document, but will provide guidance to states or districts to design their own standards, curriculum, or teacher preparation

    programs. A state using the framework to inform standards development will combine select practices with concept statements to create a specificperformance expectation. Implementation of the concepts and practices of the framework and/or resulting standards will take various forms overmultiple years.

    Audience for the framework

    The framework was written for an audience with diverse backgrounds, including novices to computer science.The audience includes: State/district policymakers and administrators

    Standards and curriculum developers (with sufficient CS experience)

    Current and new CS teachers, which may include teachers from other subject areas and educators in informal settings Supporting organizations (non-profits, industry partners, agencies)

    A working definition for computer scienceComputer science (CS) is the study of computers and algorithmic processes, including their principles, design, implementation, and impact on

    society (adapted from ACM, 2003).

    Computational Thinking in the framework

    Computational thinking (CT) is called out as an overarching heading encompassing a number of the core CS practices. CT will be addressed in a special section of the framework website.

    The framework website will allow users to filter statements that reflect aspects of CT.

    Learning progressions

    A key difference between this draft and a previous one is the description of learning progressions. As students revisit key ideas across the K-2, 3-5,6-8, and 9-12 grade bands, they develop increasingly sophisticated understandings of core concepts and practices. While the concepts aredelineated by grade bands, the development of practices from K to 12th grade are described in progression narratives.

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    2/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- +

    Framework structure

    A crosscutting concept is a concept that has application across the different

    concept areas and is integrated into concept statements as relevant andappropriate. Here is the draft list:

    1. Ethics/Security2. Invention/Innovation

    3. Patterns/Abstraction4. Automation/Scale/Optimization5. Systems

    Display and appendices

    While this draft is in a document format, the final display of the K-12 CS Framework will be as an interactive website that allows different views,

    searching, and filtering. There will be sections on the website covering topics such as interdisciplinary connections and integration into existingsubjects, what content may be appropriate for Pre-K students, and the relationship between computer science and computer literacy. Terms will belinked to definitions in a draft glossary. Topics such as equity, diversity, and accessibility will be interwoven throughout the framework and explicitlydescribed in a section on the site.

    Additional information

    If you havent already, please sign up for framework updates. Before you begin this review, please visit the following resources to understand more

    about the background of the framework. Use this linkto access the recording of the March 18 review period launch webinar.

    o Abouto FAQ

    o Presentation (online)

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    3/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- '

    PRACTICES

    Computer Science Practices

    The seven practices of computer science are the behaviors and ways of thinking that computationally literate students use to fully participate in the modern data-rich and interconnected digital world. Computational Thinking (CT) is central to the practices and concepts of this framework. Computational thinkers formulateproblems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent (e.g. a computer)

    (Cuny, Snyder, & Wing, 2010). CT requires understanding the capabilities of computers, and is at the core of the first four practices: Recognizing andRepresenting Computational Problems, Developing and Using Abstractions, Creating Computational Artifacts, and Testing and Iteratively Refining. The last threepractices are essential and complementary to CT: Fostering an Inclusive Computing Culture, Communicating About Computing, and Collaborating AroundComputing. Note that the practices are not delineated by grade bands, but instead provide a narrative describing each practices progression, which K-12 studentsshould exhibit with increasing sophistication over time.

    Practice 1. Recognizing and Representing Computational Problems

    Overview:

    Identifying problems where computational tools or techniques can be used to help solve the problem or inform a solution is a central computational practice. This

    includes knowing how and when to apply these techniques, analyzing the structure of the problem, decomposing it into its components, identifying whichcomponents are appropriate for using a computer, and beginning to assemble proposed solutions. Solving computational problems involves interpreting andanalyzing existing computational results to make informed decisions about a design, model, and/or anticipated outcome.

    By grade 12, students should be able to:

    Decompose a problem into components.

    Determine which components can be solved computationally.

    Evaluate the appropriateness, feasibility, and effectiveness of solving problems computationally.

    Progression:

    At any grade level, students are able to explore a problem, decompose it into its component parts, and propose solutions. In the early grades, students focus ondecomposing simple problems and assembling solutions. For example, in a visual programming environment they can make a character move to a desired

    location, or break down the steps to draw a polygon. Students use knowledge and techniques from mathematics and science as well as computing.

    At the middle grade levels, students ask clarifying questions to understand whether, and to what extent, a problem can be solved using a computer. Forexample, they would know that making a simulation might help visualize and model a complex situation. Using available information, students determine desiredoutcomes and evaluate the appropriateness, feasibility, and efficiency of proposed solutions. As students progress, they acquire a broader repertoire of toolsand techniques for modeling problems and for interpreting and analyzing computational results.

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    4/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- .

    Practice 2. Developing and Using Abstractions

    Overview:

    Abstractions are created and used to manage complexity, simplify development, increase efficiency, and to make solutions generally applicable. Developingsolutions applicable in many similar situations requires identifying features that are common to a type of problem and separating them from specific instances ofimplementation.

    By grade 12, students should be able to:

    Identify generalizable patterns and determine new situations where the patterns are applicable.

    Understand tradeoffs related to reducing complexity in problems.

    Use named abstractions to access functionality without needing to know the details of the underlying implementation.

    Progression:

    Students at all grade levels should be able to recognize and make use of patterns and also to distinguish the outward interface from the inner implementationaspects of a module. Early in elementary grades, students use visual cues and/or physical objects to identify and describe patterns and repetition. Earlyelementary students also use well-defined abstractions that hide complexity, such as a jump block that takes a number parameter in a blocks-basedprogramming language. Older elementary students can name identified patterns and use them as part of a larger algorithm. For example, they may embed arepetitive process into a loop. They also will begin to understand that the abstractions they use often have underlying hidden implementation details.

    Middle school students will learn to analyze patterns in relation to a specific problem, and they will begin using more sophisticated abstractions, such as thefunctions or methods provided by a high-level language. High school students will be able to analyze a problem to identify patterns, and generalize existingpatterns to fit novel situations. They are more sophisticated when using and creating abstractions. They may take advantage of libraries, application programminginterfaces (APIs), and external programs with access interfaces, and they may make such resources of their own available to others. Ultimately, students willunderstand the advantages of connecting to technological resources created by other people and will be comfortable using such resources.

    Practice 3. Creating Computational Artifacts

    Overview:

    The development of computational artifacts is a process that embraces both creative expression and the exploration of ideas to create prototypes, perform

    iterative testing, and refine the artifact. Students engaging in this practice create artifacts that are personally relevant or beneficial to their community andbeyond. Creating computational artifacts can be done by combining and modifying existing artifacts or by creating new artifacts. Examples of computationalartifacts include programs, simulations, visualizations, digital animations, robotic systems, 3-D models, music, games, apps, images, movies, or websites.

    By grade 12, students should be able to:

    Use a computational technique (for example, apply algorithms or generalize solutions) to develop and create an artifact chosen by the student.

    Explore appropriate solutions to a stated computational problem.

    Select appropriate pre-defined programming constructs and data structures and manipulate them based on the purpose of a task.

    Evaluate and refine an artifact using multiple criteria, including feedback from other groups and end users.

    Progression:

    Students at all grade levels should be able to explore an appropriate solution to a given task or a computational problem. At the earliest grade levels, students

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    5/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- /

    can pick from a limited set of given commands to create basic stories and solve pre-existing problems. Students will apply solutions from one problem to othersimilar problems. As students progress through grades 25, they begin to modify parts of existing artifacts to develop something new or a project with moreadvanced features and complexity. Furthermore, students will begin project planning, incorporating brainstorming and basic documentation of design andstrategies with the help of teachers. Later on, students will think through artifact development in systematic ways prior to actual creation. At this age, studentsbegin to evaluate the uses and limitations of existing artifacts.

    In middle school, students show greater independence and sophistication in the planning, design, and evaluation of artifacts. They work collaboratively onartifacts of personal and social importance. As students progress through high school, they should engage in a fully independent systematic practice of creatingan artifact using computational processes. Students should consider expanding the collaborative environment beyond the classroom and seek out feedbackfrom broader audiences in creating an artifact.

    Practice 4. Testing and Iteratively Refining

    Overview:

    Testing and iterative refinement is a problem-solving strategy that refers to the deliberate and cyclical process of improving a computational artifact. This processincludes analyzing and evaluating actual outcomes against specified requirements, goals, and results; debugging, that is, identifying and remedying errors;optimizing performance, reliability, usability, and accessibility; and responding to the changing needs and expectations of end users. Because testing and iterativerefinement is a problem-solving strategy, the process requires persistence and resourcefulness.

    By grade 12, students should be able to:

    Explain the purpose and expected behavior, results, and output of a computational artifact.

    Systematically test computational artifacts to compare actual outcomes against desired requirements, goals, and results.

    Remedy internal and external errors affecting a computational artifact. Examples of internal errors include syntax, logic, and type-mismatch errors confinedwithin the artifact itself. Examples of external errors include system-level configuration, permission, and setting errors independent of the artifact.

    Refine a computational artifact multiple times to enhance its performance, reliability, usability, and accessibility.

    Analyze data and feedback from end users to plan future refinements to a computational artifact.

    Demonstrate persistence and resourcefulness in testing and iteratively refining a computational artifact. Examples of demonstrating persistence includemaking multiple attempts to solve a problem, continually experimenting through trial and error, and using different scopes of testing to explore the

    accuracy of the artifact. Examples of demonstrating resourcefulness include researching a problem on technical forums, crafting and posing questions totechnical support staff, and drawing on the expertise of team members.

    Progression:

    At all grade levels, students should be able to explain the purpose and the expected requirements, goals, and output of computational artifacts, and they should beable to determine whether computational artifacts perform as expected. Additionally, all students should be able to demonstrate grade-appropriate problem-solvingstrategies. At the early elementary level, this might involve recognizing that a particular computational artifact produced an unexpected result. As studentsprogress through the elementary levels, they should begin debugging computational artifacts.

    By middle school level, students should begin anticipating potential errors. For example, middle school students should anticipate how computational artifactsshould react if end users enter invalid input, such as inputting a string in an integer field. As students enter high school, they should become more proficient atanticipating how users with diverse skillsets can intentionally or unintentionally test the limits of computational artifacts. As students progress through high school,

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    6/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- -

    they should engage in a deliberate and systematic practice of repeatedly testing and refining computational artifacts, and they should demonstrate the ability todebug not only errors internal to the computational artifacts themselves, but also errors external to computational artifacts. They should also analyze end-user datato plan for future refinements to computational artifacts. By doing so, high school students will strengthen their persistence and resourcefulness skills to such anextent that they engage in testing and iterative refinement as a natural systemic practice in creating and improving computational artifacts.

    Practice 5. Fostering an Inclusive Computing Culture

    Preamble to Practice #5: The field of computer science needs meaningful change to proactively welcome people from diverse backgrounds. Broadeningparticipation of diverse learners in computer science education will begin to amend the historical under-representation of people with disabilities, women, andpeople from diverse cultural backgrounds.

    ---------------------------------------------------------------------------------------------------------------------------------------------------

    Overview:

    Diversity improves every aspect of computing. Computational artifacts are most useful when they're developed with a diverse audience in mind, and whendevelopment teams not only include members from a broad range of backgrounds and cultures, but also understand why diversity (for example, gender,ethnicity, ability) is important. Achieving these goals requires understanding and appreciating the personal, ethical, social, economic, and cultural contexts inwhich people operate.

    By grade 12, students should be able to:

    Deliberately build diverse design teams.

    Recognize the benefit of involving diverse users in the design process.

    Recognize the importance of diversity in groups of people participating in computing activities.

    Identify issues of diversity in depictions of people within computing artifacts. For example, a set of emoji depicts only males playing sports or the avatarsin a game present only Caucasian people.

    Create inclusive environments by evaluating community norms on the basis of whether they attend to differences in ability, culture, values, and socialcontexts. For example, establish a process by which all voices can be heard.

    Leverage disagreement to elevate group progress.

    Consider implications of design decisions on accessibility for diverse users, including those from different cultural and linguistic backgrounds as well asthose with sensory, physical, and cognitive disabilities.

    Consider and be aware of universal design strategies and accessibility standards (for example, Web Content Accessibility Guidelines 2.0).

    Practice self-determination strategies through self-advocacy, leadership, and self awareness.

    Reflect on their own biases and assumptions and apply skills to handle bias from others.

    The writers do not, at this point, have a progression narrative for Practice #5. More detail will be included in the final review period.

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    7/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- 0

    Practice 6. Communicating About Computing

    Overview:

    Communicating about computing involves personal expression and exchanging ideas with others for a variety of purposes. This includes communicating withdiverse audiences about the use and effects of computation, and the justification of the appropriateness of computational choices. Students will analyze, critique,or appreciate their own artifacts and those made by others, using various communication methods. They write clear comments, document their work, and create

    mediums to aide in the communication of their ideas. Clear communication includes using precise language and a careful consideration of possible audiences.

    By grade 12, students should be able to:

    Clearly and thoroughly describe and document their computing processes and solutions.

    Justify their opinion or decision with supporting mediums, such as data interpretation, simulation, prototype, or survey of user demands.

    Clearly communicate suitability of design choices with end users in mind.

    Cite their own ideas responsibly, such as by giving proper attribution and respecting intellectual property laws.

    Progression:

    At any grade level, students will be able to talk about choices they make while computing. Early on, they begin to develop language that allows them to articulatewhat they are doing and can identify devices and concepts they are using with correct terminology (e.g. hardware, software, app). As students move through theupper elementary grades, they are able to describe and document their computational work in writing, using presentation tools and through demonstrations of their

    work. Primary students can also identify the goals of their computational problem solving and describe the expected outcomes. They describe how they sortinformation in useful ways and as they gain experience, students explain the process they use to sort information and classify it. The youngest users design mostlyfor themselves and can speak to how their work is representative of their likes and dislikes. Primary age elementary students can explain the concepts ofownership and sharing. They begin to apply this awareness to computational ideas and creations at an early age.

    As students progress through upper elementary and into middle school they begin to think about computational work as it relates to others and can identify andenumerate the effects after the fact. They identify instances of remixing, when ideas are borrowed and iterated upon, and give proper attribution. These studentsalso are aware of and recognize the contributions of collaborators.

    In middle school, students leave comments for end users that explain the functioning of their computational creations and start to develop bidirectionalcommunication channels. For example, students provide a project overview and instructions on a project and ask for inputs from users in the comments. Middleschool students begin to use tools (such as spreadsheets) to sort and classify data and create visual representations to support their ideas.

    As students progress through high school, they will strengthen their skills in precisely articulating processes and solutions by considering users feedback. Olderstudents can find and apply data sets and explain ways that data is collected and structured to support a result or a claim. They communicate how they design withthe end user in mind and are aware of their own bias and how it may affect usability. High school students can articulate the responsibility to privacy for thepurposes of safety and security. They can explore and explain issues of intellectual property rights, piracy, and appropriate attribution or licensing.

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    8/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- *

    Practice 7. Collaborating Around Computing

    Overview:

    Collaborating around computing describes the process of performing a computational task for a common goal by working with other individuals and teams whohave varying degrees of involvement in the task. Because collaboration involves soliciting the contributions and feedback of others, it can lead to betteroutcomes than independent work. Collaboration skills require individuals to navigate and leverage diverse perspectives, conflicting ideas, competing interests,

    disparate skills, and distinct personalities within the context of team norms, expectations, and equitable workloads. The use of collaboration tools allowsstudents to explore, share, engage, and connect with people to tackle more open-ended problems and complex artifacts.

    By grade 12, students should be able to:

    Navigate and leverage diverse perspectives, skills, and personalities of others to cultivate professional working relationships.

    Collectively define team norms, expectations, and equitable workloads.

    Seek, provide, receive, and integrate feedback from others with varying degrees of involvement in the computational work.

    Identify situations in which collaboration can increase efficiency, effectiveness, and feasibility of work, and identify how it can do so.

    Select and use tools and strategies that promote collaboration.

    Progression:

    Students at all grade levels should be able to collectively promote team norms, expectations, and equitable responsibility. Early in elementary grades, students

    should participate in predefined roles and collaborative structures so that they can equitably contribute to collaborative problem-solving teams in a format suchas pair programming. By doing so, students can engage in productive help seeking and sharing that leads to collaboration. Students should be able to provideand receive feedback around computing in constructive ways. This may include listening to others without interruption as well as providing thoughts and ideasabout each others computational artifacts.

    As they progress to middle school, students begin to define or assign their own roles and create team norms with guidance from the teacher. For example,students collaborate intentionally and they develop a practice of planning and incorporating collaboration into the development and iteration of computationalartifacts. Furthermore, collaboration may include engaging in more mature active listening and questioning skills as well as acknowledging and empatheticallyresponding to others frustration. In high school, students should independently create team norms and expectations that leverage members diverseperspectives, backgrounds, and skills in collaborative structures most appropriate for the task at hand. In doing so, students should begin to use differentcollaboration methods to acquire inputs from others, including classmates, team members, or participants in an online forum or community. By the end of highschool, students should also be able to consider the effects of collaboration on the efficiency, effectiveness, and feasibility of computational work.

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    9/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- 1

    CONCEPTS

    Core Concept: Impacts of Computing

    Overview:Impacts of Computing focuses on the individual, cultural, social, ethical, and legal aspects of computing and how computing can extend human capabilities.Computing is a powerful force of innovation; it catalyzes new inventions while advancing existing technologies. Computing affects cultural and social aspects of theworld, in both positive and negative ways, at the local, national, and international levels. Individuals and communities influence computing through their behaviorsand cultural and social interactions, and in turn, computing influences new cultural practices. An understanding of how computing affects students especially interms of equity, access, and power as well as how students can affect computing, enables them to take an active role as informed and responsible digitalcitizens and makers in a digital world.

    K-2 3-5 6-8 9-12

    Culture

    Computing is all around us, yetaccess to computing can varyfrom one community to another,and it often depends on avariety of factors.

    [At this level, students should beable to notice differentcomputing devices around themand that differences in accesswill be viewed as fair or unfair.Examples of factors limiting orexpanding access to computingare equity of access, specialneeds of users, use of wearabletechnology, etc.]

    Cultural practices influence how people usecomputers, and computers influencecultural practices. The effects of computingcan be positive, negative, and/or neutral,depending on the uses by and perceptionsof a cultural group.

    Cultural groups determine whatare acceptable uses of computingtechnology. New technologiesdevelop as new ideas or needsemerge. Alternately, advances incomputing can enable newcultural practices or disruptexisting norms. Even if acomputing practice is not part of astudents culture, being aware ofhow others cultures usecomputing is essential to beingwell-informed.

    The design, sharing, and use of computingtools can help overcome or perpetuateissues regarding equity, access, and poweralong a number of dimensions, includingability, socioeconomic class, geography,race, gender. Considering who usescomputing, as well as when and how it getsused, is important for addressing theseissues.

    Social

    Computing can connect peoplefor many reasons, including tocommunicate, collaborate,share ideas and experiences,

    Computing supports new and diversemodes for communicating information andideas. Interactions can happen at the sametime (synchronously) or at different times

    The effects of computing can befelt locally and globally. Byfacilitating communication andinnovation, computing influences

    Computing supports diverse forms of socialinteraction. These interactions and theireffects can be beneficial or harmful, andthey can be long-lasting. Computing serves

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    10/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- ),

    solve problems, and makethings.

    [Crosscutting concept:Invention/Innovation]

    (asynchronously), between two or morepeople.

    [New and diverse modes means video,audio, text, animation, e-textiles, programs,artwork, websites, etc. This statement isabout scale in terms of time, space, andsheer numbers of people who cancommunicate. Crosscutting concept:Invention/Innovation]

    social institutions, such asgovernments and businesses.People can organize and engagein democratic and social causesthrough various communicationplatforms enabled by computing.

    [Examples of variouscommunication platforms includesocial networking platforms,media outlets, mobile devices, etc.Crosscutting concepts:Invention/Innovation, Systems]

    as both a medium for communication andpersonal expression, and a platform forcreating new ways of connecting people,sharing information, and interacting with theworld.

    [Examples of diverse forms of socialinteraction include social networks, mobilecommunication, and collaborative

    productivity software, which are allsupported by computer science.Crosscutting concept: Invention/Innovation]

    Human Capabilities and Human-Computer Interaction

    Computing devices can helpstudents and their families.

    Computing extends what anindividual can do. Computingdevices come in many differentshapes and sizes. Peopledesign computing devices tomeet their own wants andneeds and those of others.

    People use computing devices to performordinary tasks or to extend their abilities

    (for example, exoskeletons, artificialintelligences). End users are more apt toadopt computing devices if they meet aneed and are easy to use. Designing forhuman use increases the likelihood ofadoption.

    [Crosscutting concepts:Invention/Innovation,

    Automation/Scale/Optimization]

    Many different professions usecomputer science. Students who

    develop skills in computer sciencecan apply those skills to manydifferent careers. Users havedifferent design requirementsdepending on their physical,social, economic, and cognitiveconditions and prior experienceswith computing. Universal designprinciples make it possible for avariety of users to effectivelyinteract with computing devicesand tools.

    Computing extends the ability of anindividual to perform tasks, solve problems,

    access and share information, create newthings, and interact with other people andthe environment. As such, computing canextend an individuals influence, productivity,and overall capability. With these additionalcapabilities come responsibilities for ethicaluse.

    [Crosscutting concepts: Ethics/Security,Invention/Innovation,

    Automation/Scale/Optimization]

    Ethics and Law

    When using computing devices,individuals can act responsibly,which can be helpful, orirresponsibly, which can behurtful. Engaging inirresponsible computingbehavior can have harmfulconsequences. Students can

    Respectful digital citizenship requiresthoughtful interactions that are sensitive toother people. When students are obtainingand sharing information, ethical and legalconsiderations should influence how andwhen information can be used, who hasaccess to information, who ownsinformation, and what information can be

    Students can engage withcomputing devices in safe andsecure ways. The use of ethicalbehaviors while engaging withcomputing devices can foster safeand secure computingexperiences. Laws have beenestablished to protect users.

    Individuals are responsible for theirbehaviors with digital devices. Ethicalprinciples are important for shapingcomputing practices and professions. Lawsaffect many areas of computing in an effortto protect privacy, data, property,information, and identity. The legal oversightof computing involves tradeoffs; such laws

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    11/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- ))

    take actions to protectthemselves from the effects ofirresponsible computingpractices.

    [Crosscutting concept:Ethics/Security]

    shared.

    [This concept focuses on digital citizenshiptopics such as cyberbullying, acceptableuse, and a persons digital footprint.

    Sharing information refers to digitalplagiarism (idea ownership), citing sources(giving credit to authors of included ideas orfacts), copyright laws, open source vs.intellectual property, and usage rights.Crosscutting concept: Ethics/Security]

    Technology often moves fasterthan the legislative process, sostudents need to be careful andresponsible in their digitalinteractions. Security tools andpractices have been developed toresolve, mitigate, or preventharmful applications.

    [Examples of topics addressed inthis concept include intrusiveapplications (malware) andsafeguards (antivirus), as well asmalicious hacking versus ethicalhacking. Crosscutting concepts:Ethics/Security,Invention/Innovation]

    can expedite or delay advancements andinfringe upon or protect human rights.Students should examine internationaldifferences in legal, ethical, and personalconsiderations.

    [Crosscutting concept: Ethics/Security]

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    12/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )+

    Core Concept: Algorithms and Programming

    Overview:Algorithms and programming underpin the functionality of all computing systems, empowering people to communicate with the world in new ways and solveformerly insurmountable problems. The Algorithms and Programming concept focuses on understanding the principles behind computational processes,developing the cognitive tools to solve problems, and learning the development processes to convert those solutions into programs executable by a computer.

    K-2 3-5 6-8 9-12

    Algorithms

    An algorithm is a sequence ofsteps designed to accomplisha specific task. Students followmany algorithms in daily life.

    [Examples of age-appropriate

    algorithms include makingsimple foods, navigating aclassroom, and daily routineslike brushing teeth.]

    In students daily lives, they createalgorithms based on capability andimportance. Different algorithms havedifferent advantages and disadvantages.

    [Examples of age-appropriate algorithms

    include deciding which path to take onthe way home from school, and withwhom to eat at lunch. Students oftenexpress their algorithms in non-computerlanguages, including flowcharts and

    pseudocode). Crosscutting concept:Patterns/Abstraction]

    Algorithms combine instructions and data(the information needed to performactions). When designing newalgorithms, students can use patternsseen previously. Students comparecompeting algorithms by weighing their

    advantages and disadvantages.

    [At this age, students should be able toidentify the data and computationinvolved in a problem. Examples of waysto weigh algorithms include effects onsociety and number of steps to execute.Competing algorithms are multiplealgorithms that solve the same problem.Crosscutting concept:Patterns/Abstraction]

    Solutions to many problems can beexpressed computationally usingalgorithms. Students select fromcompeting algorithms by analyzingfactors such as ease of implementation,storage requirements, and efficiency.

    Learning and analyzing commonalgorithms helps students to moreeffectively generate solutions.

    [Concerning efficiency, simplecalculations of step count are intended,not sophisticated algorithm analysis.Examples of common algorithms includesearching and sorting. Crosscuttingconcepts: Patterns/Abstraction,

    Automation/Scale/Optimization]

    Data Structure and Representation

    Things in the world can berepresented using symbols.They can also be classifiedinto categories or types, whichimply specific attributes andactions.

    [Age-appropriaterepresentations include names

    When item attributes are represented bynumbers, mathematical operations canbe used to modify the attributes.Categories and types can be divided intosubtypes, such as animals to mammals,and then mammals to felines.

    [Age, size, and volume can all berepresented by numbers. By adding,

    Computational data is stored innumerical format, both within theprogram and when stored in a databaseor file. Functions in a program operate onor display data in ways that make senseto humans. The selection of a data type(for a variable or other data structure) isinformed by the characteristics of thedata and affects how that data is

    Programs operate on data stored in datatypes. Data structures simplify thestorage and manipulation of large orcomplex amounts of data, describing howto store and operate on the data.Students choose a data structure basedon the functionality it provides and theperformance tradeoffs.

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    13/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )'

    for people, arrows fornavigation in a maze, andnumbers for colors in color-by-number activities. Age-appropriate attributes includethe tail, whiskers, and teeth ofa cat (and that cats are notblue), and actions includemeow, jump, and scratch, butnot talk. Crosscutting concept:Patterns/Abstraction]

    people gets older, objects get bigger,and sounds become louder. This alignswith CCSS-Math standards for this agegroup. Other subtype examples arebooks to novels and biographies.Crosscutting concept:Patterns/Abstraction]

    processed.

    [Examples of data characteristics includedecimal numbers or sentences.Crosscutting concept:Patterns/Abstraction]

    [Crosscutting concepts:Patterns/Abstraction,

    Automation/Scale/Optimization.]

    Control

    Algorithms consist of precisesequences of commands. Thesame sequence can berepeated multiple times

    (looping).

    [The inclusion of vocabularywords, such as looping, doesnot imply that students shouldlearn them. The words are

    provided for educators use.Crosscutting concept:Patterns/Abstraction]

    Repetition (looping) allows the samesequence to occur multiple times, andconditionals (branches) determine whensequences will occur. Many different

    events can initiate actions in software.

    [Some age-appropriate events aremouse clicks or typing on the keyboard.Logic is used to determine theappropriate branches to execute. Theinclusion of vocabulary words, such aslooping, does not imply that studentsshould learn them. The words are

    provided for educators use. Crosscuttingconcept: Patterns/Abstraction]

    Nesting control structures allow a studentto create more complex programbehavior. Often, different types of controlstructures can be used to solve the same

    problem.

    [At this grade band, students shouldrecognize that problems can be solved inmultiple ways. They are not expected toanalyze these solutions, but they shouldbe able to discuss solutions and offeradditional solutions. Crosscuttingconcept: Patterns/Abstraction]

    The selection of control structuresintroduces tradeoffs, including run time,ease of implementation, and readability.

    [A more detailed list of tradeoffs is:

    performance (run time, storagespace),

    implementation (ease and time toprogram), and

    readability (how easy it is for otherprogrammers to understand thecode)

    Run time could be the number ofinstructions executed, number of cycles,or clock time for execution. Crosscuttingconcepts: Patterns/Abstraction,

    Automation/Scale/Optimization]

    Modularity

    Large tasks can be divided(decomposed) into smallerand smaller tasks.

    [For example, if we want tobuild a house, then we need tofigure out how to build walls,

    Large tasks can be broken into smallertasks (divide-and-conquer) in order tohelp design and implementation.

    Alternatively, students can creativelycombine small pieces to make newthings.

    Large programs use procedures toorganize code and split the codebetween multiple programmers. Adesigner can invent components thatempower others to create new things thedesigner never imagined. Theseabstractions hide unnecessary details to

    Procedures use parameters to generalizefunctionality for different inputs.Structures can be created in programsthat combine data and functionality forhigher-level problem solving.

    [Procedures is used as a general term

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    14/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- ).

    doors, windows, and roofs.The inclusion of vocabularywords, such as decompose,does not imply that studentsshould learn them. The wordsare provided for educatorsuse. Crosscutting concept:

    Invention/Innovation ]

    [Decomposition facilitates design so onecan focus on just one piece at a time. Itcan facilitate implementation so differentstudents can work on different parts atthe same time. Examples of small piecesto creatively combine include wires,bricks, 2x4 planks, modeling clay, pieces

    of fabric (with a sewing machine), andprogramming instruction blocks.Crosscutting concepts:Patterns/Abstraction,Invention/Innovation]

    make it easier to reuse.

    [Procedures is used as a general termthat includes procedures, methods,functions, and subroutines. Hidingunnecessary details allows the

    programmer to work at a higher level, to

    make it easier to reuse. At this level,students expand the usefulness ofexisting functionality by specifying

    parameter values. Crosscuttingconcepts: Invention/Innovation,Patterns/Abstraction]

    that includes procedures, methods,functions, and subroutines. At this level,students define their own procedures with

    parameters. The term structure is usedas a general term to discussencapsulation without specifying a

    particular paradigm. Crosscutting

    concepts: Invention/Innovation,Patterns/Abstraction]

    Models and Simulations

    A model can be used torepresent things in our world.

    A model lets designers test

    and redesign before buildingthe real thing.

    [Examples of models includemaps and building blocks. It isanticipated that at this age,students will be using physicalmodels, but they may usecomputational ones. Test andredesign is the first stage ofthe use-modify-createdevelopment cycle.

    Crosscutting concepts:Patterns/Abstraction,Invention/Innovation ]

    Models are simplified representationsthat can provide insights and highlight orignore specific features. A simulation

    facilitates exploration of how specificactions would affect elements of a largersystem.

    [Model development is not computer-specific, and students are not expectedto decide the relative merits of themodels. Examples of models includemusical notation, cartoon animals, stickfigures, and family trees. Examples ofsimulations include predator/prey andvirus simulations. Crosscutting concepts:

    Patterns/Abstraction,Invention/Innovation,

    Automation/Scale/Optimization,Systems]

    Models specify which components toinclude and their pertinent properties andbehaviors. Students run simulations to

    understand a concept or phenomenonand answer questions of real-worldphenomena quickly and with reducedrisk.

    [Examples for understanding includefood chains, environmental changes, andhow earthquakes destroy buildings.Examples for finding solutions includedesigning buildings, creating animalmigration corridors, and creating safe fireescape routes. Running simulations is

    useful because it is a safer testingenvironment and costs less than buildingfor real. Crosscutting concepts:Patterns/Abstraction,Invention/Innovation,

    Automation/Scale/Optimization,Systems]

    Computational models representconcepts or phenomena to facilitatesystematic investigations that would

    otherwise be difficult or impractical.Designers define the components, howthey will interact, and what data will beproduced and analyzed. These decisionsinfluence the accuracy and utility of theoutput data.

    [Examples of why systematicinvestigations would otherwise be difficultor impractical include financial, physicaldanger, scale, and time. Crosscuttingconcepts: Patterns/Abstraction,

    Invention/Innovation,Automation/Scale/Optimization, Systems]

    Program Development

    Effective development beginswith planning, which results in

    Designers identify the expected audienceand its characteristics. They iteratively

    As programs grow more complex, thereare many resources to help

    Development teams and individualsconsider many design goals when

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    15/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )/

    higher-quality initial attemptsand, ultimately, more efficientdevelopment. These solutionsare improved through theprocess of debugging.

    [This statement may, but is not

    required to, involve software.Crosscutting concepts:Patterns/Abstraction,Invention/Innovation]

    design, implement, and test programs forthat audience. These programs consistof precise instructions that computers areable to execute.

    [At this level, students are expected tobegin developing simple programs. The

    iterative design process can beexpanded to include defining the problemat the beginning and reflecting on thetest results during the iterative process.Crosscutting concepts:Patterns/Abstraction,Invention/Innovation]

    programmers. Libraries, developmentenvironments, and debugging tools affectthe iterative development process.

    [Common resources are libraries andlanguages. Students are not expected tobe able to choose libraries and

    languages, just to be aware that they areavailable. Crosscutting concepts:Ethics/Security, Invention/Innovation,Patterns/Abstraction,

    Automation/Scale/Optimization,Systems]

    creating computational artifacts, includinguser experience, program efficiency, andfunctionality. Careful analysis during thetesting phase is critical to identify thetradeoffs in different design andimplementation decisions.

    [Important design decisions: Selectingfrom different programming languagesand libraries introduces tradeoffs amongfunctionality, efficiency, design andimplementation time, security, and

    personal experience or preference. Goodtesting includes in-house testing of

    performance and functionality, followedby user testing. Crosscutting concepts:Ethics/Security, Invention/Innovation,Patterns/Abstraction,

    Automation/Scale/Optimization, Systems]

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    16/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )-

    Core Concept: Data and Analysis

    Overview:The ability to gather, analyze, visualize, and discuss phenomena using data is an important part of modern society and enhanced by computer science tools andprocesses. Data and Analysis is focused on the collection, aggregation, storage, management, and communication of data as information. Using data involvesconsiderations of scale, security, privacy, and abstraction.

    [Note to reviewers: This strand concerns data as information, not data as represented in a computer program (for example, data types, data structures) or dataas bits transmitted over a network. Although data and information pre-date computer science and appear in traditional math and science classrooms, the advent ofcomputer science has transformed and extended the area in ways that are important for students.]

    K-2 3-5 6-8 9-12

    Collection

    Data is a record of people,places, things, or events.Items can be counted,

    measured, or described byindividuals or teams. Data canbe collected over time. Peopleoften use tools or instrumentsto collect data.

    In order to collect data, a tool ischosen based on what is beingobserved and how the data will

    be used. Tools for data collectioncan be categorized by the typesof data they collect.

    [Students will make the choicebetween age-appropriate tools,such as a thermometer tomeasure temperature and a scaleto measure weight.]

    Different tools collect data with varyingprecision. The collection of data can beautomated by computers. The selection of

    data collection tools and processes can beaffected by a variety of factors.

    [Converting analog to digital can bediscussed. Data can be collected from eitherindividual devices or systems. Students willbe able to describe the ways the method ofcollection (for example, surveys vs. sensordata) could affect the data.]

    Data is constantly collected throughautomated processes and it is not alwaysevident when data is being collected. The

    methods and devices chosen and used forcollection affect the data observed andrecorded.

    [Data is collected by many people for variousreasons. Video can be used in a store totrack customers for security or informationabout purchase habits. Data can be collectedabout people even when they are not activelyengaging or physically present near the datacollection tools (for example, Facebookmining your account even when you are not

    online). Crosscutting concepts:Ethics/Security, Automation/ScaleOptimization]

    Storage

    Storing is the saving ofcollected data for laterretrieval.

    [This presents a computer

    Data is stored in different ways,depending upon what informationis needed, how often it isretrieved, and how valuable it is.Computers store all data as

    Different forms and quality of data requiredifferent amounts of storage when data isstored digitally. Data storage can take onmany structures, tools exist for storing datain various formats. Data persists, which can

    Once collected, data can be stored usingcomputers in a variety of ways. The choiceswe make -- about how that data isrepresented, organized, and physicallyrecorded -- affect cost, speed, reliability,

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    17/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )0

    science perspective onactivities already performed inmany K-2 classrooms, such aswriting down each day on thewhiteboard some facts aboutthe weather.]

    numbers, and those numbers arerepresented in binary at thedevice level. Different entitiesstore data and keep multiplecopies to ensure against loss.

    [The storage as numbers can be

    used to motivate lessons inASCII, RGB values, sound files,etc.Provide an example of howdifferent entities keep copies to

    prevent against loss.Crosscutting concept: Systems]

    have negative consequences for privacy.

    [Examples of different amounts of storagebeing required can be drawn from music,video, and text. Various formats includesdatabases, spreadsheets, and text files. The

    persistence of data has many causes, and

    students should know that data they thinkhas been deleted still exists on their owndisk drive or somewhere on the network.Crosscutting concept:

    Automation/Scale/Optimization]

    accessibility, privacy, and security.

    [Examples include lossy vs. lossless dataformats; file formats that include metadata,such as the location where a photograph wastaken; backup methods that allow individualfile retrieval, in contrast to those that provide

    only full drive replacement. Crosscuttingconcepts: Ethics/Security,

    Automation/Scale/Optimization]

    Transformations

    Collected data can be

    represented in many ways.Students use methods andstrategies to transform data(numbers) into new forms,such as graphs or pictures.

    [This presents a computerscience perspective onactivities already performed inmany K-2 classrooms. Forexample, the class counts upwhat students' favorite colors

    are and displays the results asa people graph (a histogramwith bars made up of face

    pictures).]

    Raw data is data that has not

    been processed or edited. Theraw data is often changed(transformed) in order to make itmore easily understood. The datacan be manipulatedmathematically (for example,changing units), or grouped indifferent ways to focus ondifferent attributes.

    [An example of a mathematicaltransformation is changing

    meters to feet or centimeters. Anexample of a grouping is thefollowing: After the amount of rainon each day has been recorded,then group months as rainy ordry. Crosscutting concept:Patterns/Abstractions]

    When collected, raw data can be noisy, have

    errors, or not accurately portray relationshipsdue to scale. Students can transform orclean the data in order to remove errors orbetter highlight relationships.

    [An example of transforming data isrepresenting two groups as percentages of awhole instead of as individual counts.Crosscutting concept:

    Automation/Scale/Optimization]

    Data often needs to be transformed from its

    raw state to be easily understood asinformation. Data can be transformed withvarious techniques, including mathematicaloperations, aggregation, rearrangement, orvisualization. The type of transformation caninfluence the people who view the data.

    [Examples of data aggregation includesumming and averaging. Students will studyhow data can be transformed in differentways to support different arguments.Crosscutting concepts: Ethics/Security,

    Patterns/Abstraction]

    Models

    Models provide simplifiedrepresentations of things and

    A model can describe features aswell as behaviors. The decision

    The same object can be represented bydifferent models. Models often reflect data

    A model's relative simplicity promotesreasoning about the topic's important

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    18/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )*

    relationships among parts ofthose things. A model canprovide clarity and highlightfeatures.

    [Students create models ofthings in their lives (for

    example, trees, the solarsystem, and physical modelslike toy cars) and appreciatethat the models do not includeall aspects of those things.Crosscutting concept:Patterns/Abstraction]

    of what features, phenomena,and behaviors to include in amodel is important. Models canhelp us compare and contrast thethings being modeled.

    [This strand has some purposeful

    overlap between models as usedin Data and Information, andmodels in Programs and

    Algorithms.]

    that has been collected. Models can bemodified and tested to create more accuraterepresentations of the data.

    [For example, a moving object can berepresented as points in space over time, alist of velocities at different intervals, a graph

    of acceleration, etc. Crosscutting concept:Invention/Innovation]

    features. Deciding which features andbehaviors to omit is just as important asdeciding which to include. A model isanalyzed based upon its performance,including the ability to explain relationships,simulate systems, and predict outcomes.

    [Building a model of data is a good, concreteexample of abstraction. Crosscuttingconcept: Patterns/Abstraction]

    Inference

    What is happening and whatcomes next can often be

    predicted by what has comebefore. Data is a record ofwhat has come before.

    [For example, asking studentsthe following questions: As welook at previous examples,what do you think will happennext?Make a prediction about whatmovies I might like, givensome others that I have

    previously liked.]

    Having more data can helpstudents create better predictions

    about future events. Data is usedto define categories of people,places, and things.

    [For example, from rain patternsobserved in previous months oryears, predict how rainy anupcoming month will be. Studentswill also use collected data todefine clusters or categories ofrecords.]

    Individual behaviors can be stored as data.Accumulated data can be used to help build

    personalized recommendations andpredictions about future behavior.

    [For example, Amazon watches yourpurchase history to give yourecommendations of things you might like.Facebook suggests potential friends basedon data about your current friends.Crosscutting concept: Ethics/Security]

    Data about prior events can be used topredict future events based on computational

    models of varying complexity. The accuracyof the prediction depends on the choice offactors and the amount and diversity of dataused to produce the model.

    [Forecasting earthquakes or traffic patternsare examples of high-school-appropriate useof data-driven models for prediction.Crosscutting concept:

    Automation/Scale/Optimization.]

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    19/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- )1

    Core Concept: Networks and Communication

    Overview:In the age of the Internet, computers and computing systems typically no longer operate in isolation. Networking and communication systems connect devices andensure the efficient sharing of information through proper physical topologies, protocols, and secure transmission of data to the correct location via routing andswitching. Networking is an integral part of computing as the demand for connectivity increases with the number and types of devices. Networks and

    communication systems enable greater connectivity within the computing world and faster innovation. Networks and communication systems allow for greaterconnectivity and a faster rate of innovation.

    K-2 3-5 6-8 9-12

    Network Organization

    Computers can be used to connectus to other people, places,information, and ideas. Computernetworks enable individuals to

    rapidly connect with othersworldwide.

    Computers can be connectedin a number of ways toenhance and expandcommunication. The

    advantages and disadvantagesof each are based on theirphysical nature.

    [For example, different ways toconnect to internet such aswireless, bluetooth, etc.]

    The hierarchical nature of networks,including the Internet, supports thecontinual increase in both the number ofdevices connected and the information

    available. Devices can be arranged in asmall local area network (LAN) to a largerwide area network (WAN). The Internet isan example of a WAN that encompassesmany smaller networks with variousdesigns. The connection methods usedcan change based on the physical natureof the network.

    Designing the physical and logical topologyof a network involves tradeoffs related to thegeographical layout and number ofconnected devices, reliability, speed, and

    security concerns.

    Rules for Communication

    People have developed rules that

    allow computers to communicateeffectively, just as there are rulesfor people.

    In order for two people to

    communicate, rules must beestablished and followed.Protocols allow two devices toconnect and communicatebased on the established rules.

    The power of computers is maximized by

    allowing multiple computers to shareinformation. Protocols allow devices tocommunicate with each other, regardlessof the type of connection and geographicallocation.

    Protocols are developed to govern how

    information is shared among devicescommunicating on a network. Protocols areupdated for a variety of reasons, includingaddition of devices, security concerns,regulations, and standardization of devices.

    Data Transmission

    Sharing information is part of everypersons daily life. Information willbe sent in different ways, based on

    Transmission of data acrossany network requires specialhardware. This hardware

    With the growth of content on the Internet,the task of sharing that information isbecoming more complex. Routers and

    As the size and complexity of networksgrow, so does the need for systems to beresilient, reliable, and adaptable through the

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    20/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- +,

    what the information is and who theinformation is being sent to andfrom. At a basic level,communication requires a sender,receiver, and message.

    maintains a network connectionand properly sends data acrossits intended path.

    switches are required to share informationbetween computers. A number of pathscan be used to transmit data; some resultin faster or more reliable delivery thanothers.

    use of switching and routing. Transmitteddata can be passed between many devicesbefore reaching its destination. Computingdevices use algorithms to transmit databased on a number of factors, includingdistance, security, redundancy, speed,reliability, and amount of information

    supported.

    Security

    Devices often store information thatusers dont want others to see. Forthis reason, mechanisms to keepthis information private arenecessary.

    When people use a device thatis connected to a network, theyare transmitting information.People use passwords toprotect themselves and theirinformation from beingaccessed by unintended users.

    Successful data transmission requiressome way of protecting the informationfrom unintended users. There are severalways that networks and the data theytransmit can be secured.

    Network security is vital as more sensitiveinformation is being transferred acrossnetworks. Networks can be secured bothphysically and digitally. The complexity ofthe physical and digital securityimplemented is based on the needs of theuser and the sensitivity of the data beingsecured.

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    21/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- +)

    Core Concept: Devices

    Overview:Everyday objects contain computational components that sense and act on the world. These can be connected and configured in various ways to collect, store,analyze and act upon information. Computing devices affect quality of life and enhance the ability of people to perform work, communicate, and interact withothers. Complicated computer systems are built from simple components that depend on layers of hardware and software to allow communication and the

    processing of information.

    K-2 3-5 6-8 9-12

    Computing Devices

    Computers are inanimatedevices that share similaritieswith, and have differences from,people. For example, bothcomputers and people canprocess information and solve

    problems. However, althoughcomputers are capable ofprocessing some informationfaster than people, computersrequire programmedinstructions in order to solveproblems.

    [This encompasses both theidea that people and computersshare features that are thesame and different, but also

    that computers depend onpeople to create the originalprograms, even if there comesa time when computers can

    program themselves.]

    Computing devices are everywhere; theycan be found in toys, cars, airplanes, andcell phones, as well as in computersthemselves. They involve input andoutput devices, hardware, and softwareto process information and solve

    problems. More complex information orproblems can require more advancedhardware, software, or both.

    [Crosscutting concept:Automation/Scale/Optimization]

    The pervasiveness and extensivecapabilities of computing devices cancause over-reliance on their abilitiesand inattention to the information theyhave access to. Privacy can be aconcern when computing devices

    collect, store, and analyze informationabout people.

    [Examples of dependencies includeneeding a calculator to computechange, the autopilot feature on a

    plane, and online map navigation.Privacy concerns include phone andthus personal location reporting andvideo surveillance.

    Crosscutting concepts:Ethics/Security,

    Invention/Innovation]

    Computing devices can be integrated withbiological, mechanical, and socialsystems. These devices and theirapplications are continually evolving inresponse to innovation and change whichcan affect the safety, privacy, and

    lifestyles of people. The rapid innovationof, and change to, computing devices cancreate unforeseen effects that couldrequire new technology solutions to becreated.

    [Crosscutting concepts: Ethics/Security,Invention/Innovation, Systems]

    Troubleshooting

    Computing devices that are notfunctioning as expected canrequire multiple, different

    Basic troubleshooting strategiesincorporate knowledge of devicefeatures (for example, they require

    Troubleshooting strategies are notlimited to the computer hardware, butmight also include problems with

    Effective troubleshooting requires asystematic process to identify the sourceof a problem. More advanced

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    22/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- ++

    attempts at a solution.

    [Students can use guess-and-check to try multiple solutions.K-2 students are not expectedto diagnose the problem.]

    power and can be reset) and diagnosisof potential issues.

    [Check to see if the power is on, batteryis charged, cables are plugged in, simple

    physical troubleshooting. Crosscuttingconcept: Systems]

    software, cables, or connectedcomponents. Depending on the natureof the malfunction, differenttroubleshooting strategies can berequired.

    [Check that robot sensors are

    connected properly, swap known goodparts into a malfunctioning system tosee if the other parts work.Crosscutting concepts:Patterns/Abstraction, Systems]

    troubleshooting strategies require theability to independently research, locate,and use information from sources outsidethe classroom.

    [Advanced troubleshooting strategiesinvolve resolving network connectivity

    issues, adjusting system configurationand settings, ensuring hardware andsoftware compatibility, and transferringdata from one device to another.Crosscutting concepts:Patterns/Abstraction, Systems]

    Components

    Computing devices are made ofmany visible components,including keyboards, monitors,

    pointing devices, printers, andcables. Computing devices canbe connected to externalcomponents to extend theircapabilities.

    [For example, a printer can beconnected to allow a computerto print on paper, or speakersfor better sound. Connectionscould be physical or wireless.Crosscutting concepts:

    Invention/Innovation, Systems]

    Computing devices contain internalcomponents, including processors, videocards, and storage. Internal, external,

    and remote components determine thecapabilities and limitations of computers.

    [The understanding of a computersystem begins by exploring the functionsof the interconnected parts. Crosscuttingconcepts: Invention/Innovation,

    Automation/Scale/Optimization,Systems]

    The selection of hardware andsoftware used in a computer systemdetermines its capabilities and

    advantages. There are tradeoffs incost, size, speed, function andaesthetics to take into considerationwhen selecting a computer system.

    [For example, choosing thecomponents and sensors for a robot ormobile app, or selecting a computer bycomparing features such as theoperating system, application software,and amount of memory. Crosscuttingconcepts:

    Invention/Innovation,Automation/Scale/Optimization,Systems]

    Computing devices use an integratedcollection of hardware and softwarecomponents that work together as a

    system to process information. At themost fundamental level, a computingdevice operates through binarycalculations conducted by individualcomponents. System software allowscomputing devices to manage theirresources, such as memory, processes,and connected devices. The capability,scalability, security, and compatibility ofsystem software can affect thefunctionality of a computing device.

    [Operating systems manage and allocateresources, and determine the availabilityof application software and securityfeatures of most computer systems.Crosscutting concepts: Ethics/Security,

    Automation/Scale/Optimization, Systems]

    Human-Device Interaction

    Most computing devices aredesigned for people to use.

    Computing devices are designed bypeople. The designer should try to

    Computer use has benefits andconsequences for people. Human

    Computing devices can be designed oradapted for users with a variety of abilities

  • 7/26/2019 k 12 Cs Framework Draft March 18 2016

    23/23

    !"#$% '()*(+,)-

    !"#$% '()*(+,)- +'

    The users opinions and needscan help to redesign products.

    [For example, a child-sizedmouse was invented long afterthe standard mouse to addressa need. Many devices can be

    adapted for many differentusers. Crosscutting concept:Invention/Innovation]

    understand what the intended users wantand need. Analyzing the use of a devicecan lead to improvements in its durability,usability, and accessibility.

    [Crosscutting concepts:Invention/Innovation,

    Patterns/Abstraction]

    abilities can be enhanced or harmedby technology. Studying theinteractions between humans andcomputers can help to improve thedevices we interact with.

    [For example, assistive devices,

    environmental effects, mechanicalassembly lines, health effects such ascarpal tunnel or sleep deprivation dueto digital distraction. Crosscuttingconcepts: Ethics/Security,Invention/Innovation]

    and disabilities. Usability, accessibility,and learnability are integralconsiderations in the design process.Human-centered design shouldincorporate aesthetic, cultural,environmental, and ergonomic factors.

    [Evaluate devices from a wide range ofperspectives. Crosscutting concept:Invention/Innovation]