Samples of Evidence to Satisfy the AP Computer Science AB Curricular Requirements

Similar documents
AP Computer Science AB

Boca Raton Community High School AP Computer Science A - Syllabus 2009/10

AP Computer Science 4325

Java Software Solutions for AP Computer Science 3rd Edition, Lewis et al. 2011

AP COMPUTER SCIENCE AB

AP Computer Science AB

AP Computer Science A Syllabus

IMACS: AP Computer Science A

CompuScholar, Inc. Alignment to Nevada "Computer Science" Course Standards

School of Computing and Information Sciences. Course Title: Data Structures Date: 3/30/2010 Course Number: COP 3530 Number of Credits: 3

TeenCoder : Java Programming (ISBN )

CompuScholar, Inc. 9th - 12th grades

AP Computer Science A (Java) Scope and Sequence

Computer. Course Description

Bloss, Adrienne and N. Jane Ingram. Lab Manual to Accompany Java Software Solutions. New York, New York: Pearson Education, Inc, 2003.

CS 445: Data Structures Final Examination: Study Guide

AP COMPUTER SCIENCE A: SYLLABUS

WITH C+ + William Ford University of the Pacific. William Topp University of the Pacific. Prentice Hall, Englewood Cliffs, New Jersey 07632

DATA STRUCTURES THROUGH C++

B. Knowledge of basic algebra and experience in problem solving is beneficial. Students should also possess competence in written communication.

CISC 3130 Data Structures Fall 2018

Course materials Reges, Stuart, and Stepp, Martin. Building Java Programs: A Back to Basics Approach. 2d ed. (Boston: Addison-Wesley, 2011).

Course: AP Computer Science A Description and Syllabus Description of Course:

College Board. AP CS A Labs Magpie, Elevens, and Picture Lab. New York: College Entrance Examination Board, 2013.

Java 2. Course Outcome Summary. Western Technical College. Course Information. Course History. Course Competencies

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Table of Contents. Chapter 1: Introduction to Data Structures... 1

Curriculum Map Grade(s): Subject: AP Computer Science

AP Computer Science A Course Syllabus

Object-Oriented Programming and Data Structures

R13. II B. Tech I Semester Supplementary Examinations, May/June DATA STRUCTURES (Com. to ECE, CSE, EIE, IT, ECC)

Topics for CSCI 151 Final Exam Wednesday, May 10

Total No. of Questions :09] [Total No. of Pages : 02. II/IV B.Tech. DEGREE EXAMINATIONS, NOV/DEC First Semester CSE/IT DATA STRUCTURES USING C

AP Computer Science A Skyline High School Mr. Coupland

DYNAMIC MEMORY ALLOCATION AND DEALLOCATION

PROGRAMMING IN C++ (Regulation 2008) Answer ALL questions PART A (10 2 = 20 Marks) PART B (5 16 = 80 Marks) function? (8)

Data Structures and Algorithms 1

Data Structures and Abstractions with Java

Home Works and Assignments

1 P a g e A r y a n C o l l e g e \ B S c _ I T \ C \

R10 SET - 1. Code No: R II B. Tech I Semester, Supplementary Examinations, May

AP Computer Science A

AP Computer Science Course Syllabus

1. Attempt any three of the following: 15

Write the code to create an enhanced for loop that will go through every member of an ArrayList <String> myarray and print it out to the console.

182 review 1. Course Goals

Algorithms and Data Structures Spring 2008

Collections Questions

S.E. (Computer) (First Semester) EXAMINATION, 2011 DATA STRUCTURES AND ALGORITHM (2008 PATTERN) Time : Three Hours Maximum Marks : 100

DATA STRUCTURES AND PROBLEM SOLVING USING JAVA

Computer Programming II C++ (830)

R10 SET - 1. Code No: R II B. Tech I Semester, Supplementary Examinations, May

AP Computer Science A

AP Computer Science A Syllabus

APJ ABDUL KALAM TECHNOLOGICAL UNIVERSITY THIRD SEMESTER B.TECH DEGREE EXAMINATION, JULY 2017 CS205: DATA STRUCTURES (CS, IT)

Building Java Programs

CS2013 Course Syllabus Spring 2017 Lecture: Friday 8:00 A.M. 9:40 A.M. Lab: Friday 9:40 A.M. 12:00 Noon

A6-R3: DATA STRUCTURE THROUGH C LANGUAGE

Computer Programming II Python

OBJECT ORIENTED DATA STRUCTURE & ALGORITHMS

Bachelor Level/ First Year/ Second Semester/ Science Full Marks: 60 Computer Science and Information Technology (CSc. 154) Pass Marks: 24

Draw a diagram of an empty circular queue and describe it to the reader.

CS 61B Summer 2005 (Porter) Midterm 2 July 21, SOLUTIONS. Do not open until told to begin

OHIO ASSESSMENTS FOR EDUCATORS (OAE) FIELD 010: COMPUTER INFORMATION SCIENCE

DATA ABSTRACTION AND PROBLEM SOLVING WITH JAVA

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Big Java Late Objects

STRUCTURE AND SYLLABUS APPROVED IN THE BOARD OF STUDIES MEETING ON 2001 TO BE EFFECTIVE FROM THE ACADEMIC YEAR

FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- OCTOBER, 2012 DATA STRUCTURE

CS 210 Algorithms and Data Structures College of Information Technology and Engineering Weisberg Division of Engineering and Computer Science

Homeschool Programming, Inc.

AP Computer Science in Java Course Syllabus

Course Name: B.Tech. 3 th Sem. No of hours allotted to complete the syllabi: 44 Hours No of hours allotted per week: 3 Hours. Planned.

End-Term Examination Second Semester [MCA] MAY-JUNE 2006

3D Graphics Programming Mira Costa High School - Class Syllabus,

Introduction p. 1 Pseudocode p. 2 Algorithm Header p. 2 Purpose, Conditions, and Return p. 3 Statement Numbers p. 4 Variables p. 4 Algorithm Analysis

CS2013 Course Syllabus Spring 2018 Lecture: Mon/Wed 2:00 P.M. 2:50 P.M. SH C259 Lab: Mon/Wed 2:50 P.M. 4:00 P.M. SH C259

SY nd Sem Syllabi-All Courses.xlsx - 2S-APCSA Page 1 of 5

AP Computer Science A Sample Syllabus 4

ASSIGNMENTS. Progra m Outcom e. Chapter Q. No. Outcom e (CO) I 1 If f(n) = Θ(g(n)) and g(n)= Θ(h(n)), then proof that h(n) = Θ(f(n))

EXAMINATIONS 2016 TRIMESTER 2

AP Computer Science A Syllabus

Curriculum Mapping for National Curriculum Statement Grades R-12 and Oracle Academy.

St. MARTIN s ENGINERING COLLEGE Dhulapally,Secunderabad

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

DEPARTMENT OF COMPUTER APPLICATIONS B.C.A. - FIRST YEAR ( REGULATION) SECOND SEMESTER LESSON PLAN SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

Sample Question Paper

Computer. Course Description. Computer Science AB. M a y , M a y

AP COMPUTER SCIENCE GRADES 10 12

Tribhuvan University Institute of Science and Technology Computer Science and Information Technology (CSC. 154) Section A Attempt any Two questions:

Syllabus for Bachelor of Technology. Computer Engineering. Subject Code: 01CE0301. Subject Name: Data Structure. B.Tech. Year - II

About this exam review

DS ata Structures Aptitude

LESSON PLAN B.C.A. - FIRST YEAR ( REGULATION) SECOND SEMESTER

EXAMINATIONS 2015 COMP103 INTRODUCTION TO DATA STRUCTURES AND ALGORITHMS

Seth Jai Parkash Polytechnic, Damla

CS 310: Maps and Sets and Trees

EXAMINATIONS 2011 Trimester 2, MID-TERM TEST. COMP103 Introduction to Data Structures and Algorithms SOLUTIONS

AP Computer Science A Syllabus DRAFT 0.3 June 27th, 2015 Course Overview

MSc(IT) Program. MSc(IT) Program Educational Objectives (PEO):

Transcription:

Samples of Evidence to Satisfy the AP Computer Science AB Curricular Requirements What s here? This table presents samples of evidence that address the curricular requirements for AP Computer Science AB. For each curricular requirement, there are three separate samples of evidence provided. Each sample either fully or partially satisfies its requirement. The samples are taken from three distinct sample syllabi published in their entirety elsewhere on AP Central. The far-left column of the table presents each of the curricular requirements. In some cases, complex requirements have been broken down into their component parts. The columns to the right present the three evidence samples. How can I use this information? Use these samples to become familiar with both the nature of evidence and the variety of formats in which evidence can be presented. For any one curricular requirement, the ways in which evidence is both described and presented can vary considerably from course to course. No single format is preferred over any other. Narrative text, tables, bulleted lists, and other formats that clearly convey the content of your course are all acceptable. The most important consideration is that your syllabus (the evidence) clearly and explicitly satisfies the curricular requirements in their entirety. Curricular Requirements The course includes all of the topics listed in the Computer Science AB column of the Topic Outline in the AP Computer Science Course Description. Unit #1 Basic Programming Structures Students learn about the components of a computer system, networks and the Internet. We explore basic programming structures. Topics include conditionals (if, ifelse), repetition (for, while, do while), design and creation of objects, arrays and ArrayLists. III. Program Analysis A. Testing 1. Test classes and libraries Unit #1 in isolation. 2. Identify boundary cases Unit #1 and generate appropriate test data. 3. Perform integration Unit #1 testing. B. Debugging 1. Categorize errors: Unit #1 and 2 compile-time, run-time, logic. 2. Identify and correct errors. Unit #1 and 2 3. Employ techniques such Unit #1 and 2 as using a debugger, adding extra output statements, or hand-tracing code. 5 th Six s Topic: Java LinkedList class and iterators (1 week) Understand the List interface and the LinkedList implementation Perform basic operations on a LinkedList object: traversals, insertions, deletions, iterators Understand the difference between an iterator and a list iterator 1 2 Revisit Hardware System, Responsible use of computer systems (system reliability, privacy, legal issues and intellectual property, social and ethical ramifications of computer use). Review - Writing Classes Writing methods in classes; Using objects; Iteration. NOTE: Because each of the evidence samples above refer to only a portion of the topics to be taught as delineated in the Computer Science A Topic Outline in the AP Computer Science Course Description, these samples only partially satisfy the Requirement. Additional evidence for the other topics, elsewhere in the syllabus, would serve to completely satisfy the Requirement. In sample 1, the author chose to also show a correlation of the Computer Science AB Topic Outline to the Learning Units that would be used during the course. These samples vary in how they show time frames for each set of topics.

Curricular Requirements design and implement computer-based solutions to problems in a variety of application areas. Unit #2 Efficiency of Algorithms Students learn how to evaluate the efficiency of algorithms. They evaluate expressions using prefix, infix and postfix notation. Students will use Big-Oh to classify and compare algorithms. They will also implement recursion and various sorting (insertion sort, selection sort, merge sort, quick sort, heap sort, bubble sort, shaker sort and shell sort) and searching (linear and binary) algorithms. 3 rd Six s Topic: Linked Lists using ListNode class (4 weeks) Create a LList class using ListNode class Build a linked list like a stack, queue, or inorder using a recursive helper method Implement Operations on LList object to perform traversals, insertions, and deletions Reimplement Stack, Queue, and PriorityQueue interfaces using LList class s 10-12 13 14 Java Collections Framework (JCF) Java Collections Framework interfaces and classes (Collection, List, ArrayList, LinkedList, Set, TreeSet, HashSet, Map, TreeMap, HashMap, Stack, Queue, PriorityQueue, Iterator, ListIterator); Choose appropriate advanced data structures and algorithms. Lists and Iterators Implementation (using ListNode) and use of linked lists (singly, doubly, and circular); Traversals, insertions, deletions, iterators. 15 16 Stacks and Queues Implementation and use of stacks and queues (traversals, insertions, deletions, iterators); Review of JCF Stack and Queue. Unit #2 Efficiency of Algorithms 5 th Six s Students learn how to evaluate the efficiency of algorithms. They evaluate expressions using prefix, infix and postfix notation. Topic: Sorting, Searching, and Big-Oh Perform complexity analysis of algorithms using Big-Oh notation Recognize typical Big-Oh functions and be able to order them in order of increasing growth rate: 9 Big-Oh Analysis of Algorithms Worst-case and average-case time and space analysis of algorithms using Big-Oh notation; Review of sorts (selection, insertion, mergesort, and quicksort). use and implement commonly used algorithms and data structures. c log N N NlogN N 2 N 3 2 N Understand the following Sorting Algorithms: Merge, Selection, Heap, Quick, and Insertion Understand the following Searching Algorithms: Sequential and Binary Understand the Big-Oh analysis for the above sorting and searching algorithms, worst-case, average-case time and space analysis

Curricular Requirements develop and select appropriate algorithms and data structures to solve problems. Unit #2 Efficiency of Algorithms Students will use Big-Oh to classify and compare algorithms. They will also implement recursion and various sorting (insertion sort, selection sort, merge sort, quick sort, heap sort, bubble sort, shaker sort and shell sort) and searching (linear and binary) algorithms. 1 st Six s Topic: Stacks Understand the behavior of a stack and identify situations where a stack is the appropriate data structure to use Operations on Stacks: traversals, insertions, deletions 19 20 21 22 Recursion Understanding and implementing structural and procedural recursion. Binary Search Trees Implementation (using TreeNode) and use of Binary Search Trees (traversals, insertions, deletions, iterators); Review of JCF Set, Map, TreeSet, TreeMap. 23 24 Look-up Tables and Hashing Implementation and use of look-up tables and hash tables (traversals, insertions, deletions, iterators); hashcode method; Review of JCF Set, Map, HashSet, HashMap. code fluently in an objectoriented paradigm using the programming language Java. use standard Java library classes from the AP Java subset delineated in Appendices A and B of the AP Computer Science Course Description. (Note: Students who study a language other than Java in AP Computer Science must also be taught to use Java, as specified in the AP Java subset.) Unit #3 Abstract Data Students work with advanced Java data structures. Topics include trees, heaps, stacks, queues, sets, maps, hashing and linked lists. II. Program Implementation The overall goals of program implementation parallel those of program design. Classes that fill common needs should be built so that they can be reused easily in other programs. Object-oriented design is an important part of program implementation. C. Java library classes (included in the AB-level Java Subset) Unit #1 and 3 2 nd Six s Topic: GridWorld Case Study Parts 1 4 Review Testing Class modification Inheritance Reference/Readings: GridWorld Narrative, Parts 1-4 Programs: Write BlusterCritter and KingCrab classes that extend given GridWorld classes 5 Classes Hierarchies, Abstract Classes, and Interfaces Inheritance; Polymorphism using classes and interfaces; Specify the purpose and goals for a problem; Decompose a problem into classes, define relationships and responsibilities of those classes; Design and implement a set of interacting classes; Design an interface.

Curricular Requirements read and understand a large program consisting of several classes and interacting objects, and enables students to read and understand the current AP Computer Science Case Study posted on AP Central. Unit #4 GridWorld Case Study Students work on Parts One, Two, Three and Four of the GridWorld Case Study and study Part Five. 4 th Six s Topic: Grid World Case Study Parts 1-4 Understand the Grid Interface Consider alternate implementations of a BoundedGrid Consider and code at least one implementation of an UnboundedGrid GridWorld Case Study: Students visit the first four parts of the case study for review of Java and inheritance. Part 5 suggests several implementations for the UnboundedGrid. Students will code alternative UnboundedGrid implementations using lists, a sparse matrix, and a hash map or tree map. identify the major hardware and software components of a computer system, their relationship to one another, and the roles of these components within the system. Unit #1 Basic Programming Structures Students learn about the components of a computer system, networks and the Internet. We explore basic programming structures. Topics include conditionals (if, ifelse), repetition (for, while, do while), design and creation of objects, arrays and ArrayLists. Topic: Reintroduce Programming Interactions of hardware and software components in the lab User responsibility of computer systems and legality of district use of the network 1 2 Revisit Hardware System, Responsible use of computer systems (system reliability, privacy, legal issues and intellectual property, social and ethical ramifications of computer use). Review - Writing Classes Writing methods in classes; Using objects; Iteration. recognize the ethical and social implications of computer use. Unit #5 The Computer and Society Students explore how the computer has affected society through various assignments. They look at case studies and a variety of issues pertaining to environmental concerns, hardware and software, careers, computer crimes and miscellaneous items. Students will investigate and analyze careers created by the introduction of computers to society and examine the impact of rapid technology changes on local businesses. They will also have opportunities to reflect on whether they would choose a computer science related career and create a code of computing ethics. Topic: Reintroduce Programming Interactions of hardware and software components in the lab User responsibility of computer systems and legality of district use of the network 1 2 Revisit Hardware System, Responsible use of computer systems (system reliability, privacy, legal issues and intellectual property, social and ethical ramifications of computer use). Review - Writing Classes Writing methods in classes; Using objects; Iteration.

Samples of Evidence that Address Multiple Requirements What s here? This table presents samples of evidence that each address several Curricular Requirements for AP Computer Science AB. For each sample provided in the left column, the corresponding Curricular Requirements are provided to the right. Note that each sample may only partially satisfy one or another requirement, and additional evidence would need to be provided elsewhere in the syllabus to address the requirement(s) with complete satisfaction. These samples were taken from three distinct sample syllabi that are published elsewhere on AP Central in their entirety. How can I use this information? Use these samples to become familiar with ways in which numerous Curricular Requirements can be addressed (either partially or completely) within the description of one unit, lesson, or activity, or by describing a recurring theme or process in your course. Integrated Evidence from Selected Syllabi Requirements Addressed (Partially or Fully) by Integrated Evidence Bold text indicates the portion(s) of the requirement that are demonstrated. 1 st Six s Topic: Reintroduce Programming o o Interactions of hardware and software components in the lab User responsibility of computer systems and legality of district use of the network Make connections to previous knowledge and program techniques Develop and implement a set of interacting classes (Java) Readings: Big Java Chapters 2,3,5,6,7,9,11,13 Programs: Lottery: Write a set of classes that models a lottery machine similar to the lottery drawing seen on TV. Sieve of Eratosthenes: Write a class that will produce an array of prime numbers in a given range of 1 to n. Wordlist: Implement a set of classes that stores a searchable list of words code fluently in an object-oriented paradigm using the programming language Java. use standard Java library classes from the AP Java subset delineated in Appendices A and B of the AP Computer Science Course Description. (Note: Students who study a language other than Java in AP Computer Science must also be taught to use Java, as specified in the AP Java subset.) identify the major hardware and software components of a computer system, their relationship to one another, and the roles of these components within the system recognize the ethical and social implications of computer use. Unit #1 Basic Programming Structures Students learn about the components of a computer system, networks and the Internet. We explore basic programming structures. Topics include conditionals (if, if-else), repetition (for, while, do while), design and creation of objects, arrays and ArrayLists. use and implement commonly used algorithms and data structures identify the major hardware and software components of a computer system, their relationship to one another, and the roles of these components within the system.

Integrated Evidence from Selected Syllabi Unit 1 What Are Data Structures? What Are Algorithms? Review of Java and OOP o Language Features o Classes, Encapsulation, Abstract Data Types Decompose into classes o Inheritance, Polymorphism and Dynamic Binding o Interfaces o JavaDocs, Specifications, Pre-/Post-Conditions Arrays and ArrayLists Review of Linear Traversal Patterns Parts 1 4 of GridWorld Case Study Requirements Addressed (Partially or Fully) by Integrated Evidence Bold text indicates the portion(s) of the requirement that are demonstrated. use and implement commonly used algorithms and data structures code fluently in an object-oriented paradigm using the programming language Java. use standard Java library classes from the AP Java subset delineated in Appendices A and B of the AP Computer Science Course Description. (Note: Students who study a language other than Java in AP Computer Science must also be taught to use Java, as specified in the AP Java subset.) read and understand a large program consisting of several classes and interacting objects, and enables students to read and understand the current AP Computer Science Case Study posted on AP Central.