Essentials of Computer Programming. Computer Science Curriculum Framework



Similar documents
Computer Science and Mathematics. Mathematics Curriculum Framework

Arkansas Computer Science Standards. Coding Block for Grades 7 or 8

Describe the process of parallelization as it relates to problem solving.

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT,

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11

CS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014)

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation

Fundamentals of Programming and Software Development Lesson Objectives

Competencies for Secondary Teachers: Computer Science, Grades 4-12

COMPUTER SCIENCE (5651) Test at a Glance

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT,

AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping

MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES FIELD 050: COMPUTER SCIENCE

WESTMORELAND COUNTY PUBLIC SCHOOLS Integrated Instructional Pacing Guide and Checklist Computer Math

Domains and Competencies

CS Matters in Maryland CS Principles Course

Stage 5 Information and Software Technology

Some programming experience in a high-level structured programming language is recommended.

Subject knowledge requirements for entry into computer science teacher training. Expert group s recommendations

Computer Programming I

OKLAHOMA SUBJECT AREA TESTS (OSAT )

Computer Programming I & II*

Sources: On the Web: Slides will be available on:

Passaic County Technical Institute. Curriculum of Instruction. Computer Science IV. Grade 12

#820 Computer Programming 1A

El Dorado Union High School District Educational Services

Texas Essential Knowledge and Skills Correlation to Video Game Design Foundations 2011 N Video Game Design

Programming and Software Development CTAG Alignments

El Dorado Union High School District Educational Services

2014 New Jersey Core Curriculum Content Standards - Technology

DOVER-SHERBORN HIGH SCHOOL PROGRAM OF STUDIES

River Dell Regional School District. Computer Programming with Python Curriculum

Curriculum Map. Discipline: Computer Science Course: C++

Course MS10975A Introduction to Programming. Length: 5 Days

Morris School District. Computer Science 2 Curriculum Grades 9-12

Chapter 1 An Introduction to Computers and Problem Solving

The Elective Part of the NSS ICT Curriculum D. Software Development

HARDWARE AND SOFTWARE COMPONENTS Students will demonstrate an understanding of the relationship between hardware and software in program execution.

Basic Programming and PC Skills: Basic Programming and PC Skills:

50 Computer Science MI-SG-FLD050-02

Instructional Design Framework CSE: Unit 1 Lesson 1

Course Syllabus. COSC 1437 Programming Fundamentals II. Revision Date: August 21, 2013

RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE. CISY 105 Foundations of Computer Science

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department. COURSE: CST2403 C++ Programming Part 1 ( 4 hours, 3 credits )

SCHOOL OF ADVANCED TECHNOLOGIES, ENGINEERING AND SCIENCE (SATES) PROGRAM: CTech in Electrical and Electronic Engineering

Diploma of Website Development

Course Overview and Approximate Time Allotments. First Semester

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha

AP Computer Science AB Syllabus 1

TECHNOLOGY Computer Programming II Grade: 9-12 Standard 2: Technology and Society Interaction

Introduction to Computers & Information Technology

Morris School District. AP Computer Science A Curriculum Grades 9-12

WAYNESBORO AREA SCHOOL DISTRICT CURRICULUM INTRODUCTION TO COMPUTER SCIENCE (June 2014)

Orange Unified School District Video Game Design II Year Course

Computer Science III Advanced Placement G/T [AP Computer Science A] Syllabus

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department

Information and Technology Literacy Framework. PreK-12

Java Programming (10155)

Diploma Of Computing

Computer Technology Computer Programming II (Joint Course with Business Technology Approved 10/29/10 for that area)

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

COURSE TITLE. Computer Programming 1 LENGTH. One Semester Grades 9-12 DEPARTMENT. Computer Department Barbara O Donnell, Supervisor SCHOOL

2667A - Introduction to Programming

COWLEY COLLEGE & Area Vocational Technical School

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Computer Science 1-3 (AP) Syllabus/Online Course Plan

Software Design and Development. Stage 6 Syllabus

NETS for Students: Achievement Rubric

Java Application Developer Certificate Program Competencies

Management Information Systems 260 Web Programming Fall 2006 (CRN: 42459)

UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW

Please consult the Department of Engineering about the Computer Engineering Emphasis.

COMPUTER SCIENCE COURSE OUTLINE

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON

Division of Mathematical Sciences

Computer Science Course Descriptions Page 1

ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER

Modeling, Computers, and Error Analysis Mathematical Modeling and Engineering Problem-Solving

Computer Science. General Education Students must complete the requirements shown in the General Education Requirements section of this catalog.

Undergraduate Major in Computer Science and Engineering

AP Computer Science A - Syllabus Overview of AP Computer Science A Computer Facilities

The C Programming Language course syllabus associate level

Appendix M INFORMATION TECHNOLOGY (IT) YOUTH APPRENTICESHIP

DIABLO VALLEY COLLEGE CATALOG

Stephanie A. Mungle TEACHING PHILOSOPHY STATEMENT

HPC Wales Skills Academy Course Catalogue 2015

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology)

2003 HSC Notes from the Marking Centre Software Design and Development

Transcription:

Essentials of Computer Programming Computer Science Curriculum Framework

Course Title: Essentials of Computer Programming Course/Unit Credit: 1 Course Number: 460020 Teacher Licensure: Please refer to the Course Code Management System (https://adedata.arkansas.gov/ccms/) for the most current licensure codes. Grades: 9-12 Prerequisite: N/A Essentials of Computer Programming Essentials of Computer Programming is a course for students with no formal computer programming experience. Students will spend the majority of time coding to solve real-world problems in a collaborative environment. The course focuses on developing computational thinking, refining problem-solving skills, and applying key programming concepts. Throughout the course, students will use developmentally appropriate and accurate terminology when communicating about technology. Essentials of Computer Programming does not require additional approval. Strand Computational Thinking Computing Practice and Programming Elements of Computing Social and Ethical Aspects of Programming Content Standards 1. Students will use relevant program design and problem-solving strategies. 2. Students will evaluate different data representations for storing information. 3. Students will create and evaluate algorithms to solve problems. 4. Students will evaluate the use of programming languages to solve problems. 5. Students will analyze the capabilities of a programming language. 6. Students will create, test, and use computer programs to solve problems. 7. Students will classify different types of computers and systems. 8. Students will describe the major components of a computer system. 9. Students will analyze the relationships within systems and components. 10. Students will analyze ethical and unethical uses of technology and programming. Notes: 1. The examples given (e.g.,) are suggestions to guide the instructor. 2. All items in a bulleted list are required to be taught. 3. This curriculum framework is intended to assist in district curriculum development and unit design. 4. This curriculum framework is not a progression document, nor is it intended to be a state-mandated curriculum designating how or when content is taught. 5. The use of the word language in this document refers to the programming language selected locally. 1 Essentials of Computer Programming

Strand: Computational Thinking Content Standard 1: Students will use relevant program design and problem-solving strategies. CT.1.ECP.1 CT.1.ECP.2 CT.1.ECP.3 CT.1.ECP.4 CT.1.ECP.5 CT.1.ECP.6 CT.1.ECP.7 Discuss approaches to problem solving used in programming Represent problem-solving logic (e.g., flowcharts, pseudocode, role-play) Interpret logical expressions using Boolean operators (e.g., AND, NOT, OR) Demonstrate operator precedence in expressions (e.g., inside-out, left-to-right, order of operations, right-to-left) Identify the appropriate use of control flow constructs Demonstrate how large problems can be deconstructed into a sequence of smaller problems Analyze and implement collaborative methods in problem solving when appropriate Strand: Computational Thinking Content Standard 2: Students will evaluate different data representations for storing information. CT.2.ECP.1 CT.2.ECP.2 CT.2.ECP.3 CT.2.ECP.4 Classify the types of information that can be stored as variables (e.g., integers, floating points, characters, Booleans, strings) Compare and contrast how variables of different data types are represented in computer memory (e.g., ASCII codes, binary numbers) Compare techniques for manipulating and using data (e.g., searching, sorting) Analyze data organizational structures (e.g., arrays, databases, files) 2 Essentials of Computer Programming: Computational Thinking Key: CT.1.ECP.1 = Computational Thinking.Content Standard 1.Essentials of Computer Programming.1st Student Learning Expectation

Strand: Computational Thinking Content Standard 3: Students will create and evaluate algorithms to solve problems. CT.3.ECP.1 CT.3.ECP.2 CT.3.ECP.3 CT.3.ECP.4 CT.3.ECP.5 CT.3.ECP.6 Define the term algorithm as used in programming Apply algorithmic reasoning to connect problem-solving processes to programming Investigate ways in which a sequence of algorithms can be combined to create new algorithms Compare and contrast the functional characteristics (e.g., clarity, efficiency, understandability) of algorithms that solve the same problem Develop a procedure to test an algorithm Validate the effectiveness of an algorithm in solving a defined problem 3 Essentials of Computer Programming: Computational Thinking Key: CT.3.ECP.1 = Computational Thinking.Content Standard 3.Essentials of Computer Programming.1st Student Learning Expectation

Strand: Computing Practice and Programming Content Standard 4: Students will evaluate the use of programming languages to solve problems. CPP.4.ECP.1 CPP.4.ECP.2 CPP.4.ECP.3 CPP.4.ECP.4 Compare and contrast computer programming paradigms and languages (e.g., machine code, object oriented languages, procedural languages, visual programming languages) Describe the sequence of steps necessary to create and execute a program on a computer Manually trace the execution path of code to understand flow of control Manually trace the execution path of code to determine the output for a sample input Strand: Computing Practice and Programming Content Standard 5: Students will analyze the capabilities of a programming language. CPP.5.ECP.1 CPP.5.ECP.2 CPP.5.ECP.3 CPP.5.ECP.4 CPP.5.ECP.5 CPP.5.ECP.6 CPP.5.ECP.7 CPP.5.ECP.8 Explain how variables are created and initialized Explain how arrays/lists are created and initialized Compare and contrast capabilities of a language for conditional branching (e.g., if, if-else, multi-branch) Compare and contrast capabilities of a language for iteration (e.g., counter controlled, event controlled) Investigate various capabilities of a language for abstraction including functions, parameters, and return values Recognize potential problems or limitations with conditional branching, iteration, and abstraction features (e.g., infinite loops, range checking on parameters, unreachable branches) Analyze traditional programming algorithms (e.g., data management, searching, sorting) Examine methods used for the input and output of data 4 Essentials of Computer Programming: Computing Practice and Programming Key: CPP.4.ECP.1 = Computing Practice and Programming.Content Standard 4.Essentials of Computer Programming.1st Student Learning Expectation

Strand: Computing Practice and Programming Content Standard 6: Students will create, test, and use computer programs to solve problems. CPP.6.ECP.1 CPP.6.ECP.2 CPP.6.ECP.3 CPP.6.ECP.4 CPP.6.ECP.5 CPP.6.ECP.6 Design source code that is efficient and easy to read Integrate clear and appropriate documentation within student designed source code Use an editor or visual interface to create and execute programs Implement computing applications by integrating software development tools and techniques variables of different data types arrays/lists of different sizes conditional branching iteration combinations of conditional branching and iteration functions (e.g., input/output libraries, graphical display libraries, math function libraries, user-defined functions) Ensure program correctness by utilizing debugging output statements and test cases Compare and contrast the implementation of two or more programming solutions for the same problem 5 Essentials of Computer Programming: Computing Practice and Programming Key: CPP.6.ECP.1 = Computing Practice and Programming.Content Standard 6.Essentials of Computer Programming.1st Student Learning Expectation

Strand: Elements of Computing Content Standard 7: Students will classify different types of computers and systems. EC.7.ECP.1 EC.7.ECP.2 Identify a variety of electronic devices (e.g., computers, Global Positioning Systems [GPS], smart devices, vehicles) that contain computational processors and execute programs Discuss current trends (e.g., improved user interaction, increasing processor speed and data storage, parallel and distributed systems) in computing Strand: Elements of Computing Content Standard 8: Students will describe the major components of a computer system. EC.8.ECP.1 EC.8.ECP.2 EC.8.ECP.3 Describe the hardware components of a computer Identify unique components (e.g., accelerometers, GPS, touch screens) in mobile computing devices Identify the main software components (e.g., operating system, programming tools, user applications) in a computer Strand: Elements of Computing Content Standard 9: Students will analyze the relationships within systems and components. EC.9.ECP.1 EC.9.ECP.2 EC.9.ECP.3 Demonstrate an understanding of the relationship of input and output among systems and components Apply strategies to solve routine hardware problems Evaluate tools (e.g., compilers, computer networks, interpreters, operating systems, program editors) necessary to support program execution 6 Essentials of Computer Programming: Elements of Computing Key: EC.7.ECP.1 = Elements of Computing.Content Standard 7.Essentials of Computer Programming.1st Student Learning Expectation

Strand: Social and Ethical Aspects of Programming Content Standard 10: Students will analyze ethical and unethical uses of technology and programming. SEA.10.ECP.1 SEA.10.ECP.2 SEA.10.ECP.3 SEA.10.ECP.4 SEA.10.ECP.5 Differentiate among open source, freeware, and proprietary software licenses Discuss consequences of misuse of information and technology Discuss social and economic implications (e.g., local, national, global) associated with ethical and unethical hacking and software piracy Demonstrate legal and ethical behaviors when using information and technology Apply academic integrity in programming 7 Essentials of Computer Programming: Social and Ethical Aspects of Programming Key: SEA.10.ECP.1 = Social and Ethical Aspects of Programming.Content Standard 10.Essentials of Computer Programming.1st Student Learning Expectation

Contributors The following people contributed to the development of this document: Dr. Keith Bush - University of Arkansas at Little Rock Dr. Benard Chen - University of Central Arkansas Gini Cocanower - Bentonville School District Carl Frank - Arkansas School for Mathematics, Sciences, and the Arts Jordan Frizzell - Star City School District Dr. John Gauch - University of Arkansas Jimmie Harper - Henderson State University Wes Hinesley - Acxiom Andy Hostetler - Jonesboro School District Tim Johnston - Arkansas Department of Career Education Angela Marsh - University of Arkansas at Monticello Mark McDougal - Benton School District Anthony Owen - Jerry Prince - EAST Initiative Jake Qualls - Arkansas State University Dr. Kenji Yoshigoe - University of Arkansas at Little Rock 8 Essentials of Computer Programming