Mr Rogers' Syllabus AP Computer Science AB (Year 2 of a 2 Year AP/IB Computer Science Program)

tAm. College Brd

Common Syllabus

Mr. R's Home

Southside High

intuitor.com

What to Expect:

Computer science is one of the most dynamic job markets in America. It has surpassed engineering in the number of jobs and rivals it for pay. Within the computer science job market, Software Engineer is often listed as one of the best jobs in America from the standpoint of job satisfaction, work environment, and pay

At Southside High, AP Computer Science AB is a 2 year, college level, program using Java language. At the end of the first year students are required to take the AP Computer Science A exam. The first year covers all the AP Computer Science A topics and the first 17 chapters of the textbook.. The remaining 8 chapters and additional AP Computer Science AB topics will be covered in the second year.

During the second year, students will have the opportunity to demonstrate their mastery of the subject by designing, writing, and testing a significant software project.

This is a college level, computer science class using Java  language. At the end, students will be required to take the AP computer science AB test and the IB standard level exam. For more information contact the American College Board.

AP Standards:

  • Topic Outline: This link give the official AP computer science topic outline.
  • Java Subset: The Java language is huge and so AP computer science will focus on a limited but very powerful part of the subset.
  • Case Study: A case study is included in the requirements. Students will learn how to modify its functionality.

Computer Lab: Our computer lab contains up-to-date Pentium IV computers with 2 Gig of RAM and 19" flat screen monitors as well as a promethean board for displaying information to the entire class. All classes (5 days a week) will be held in the lab.

Computer Lab Hours: The lab will be open on all 3 lunch shifts and after school for 90 min. every day except Wed.

Resources and Materials for Class

TextBooks : Mr. Rogers will provide the following books:

Java Methods A & AB
Object-Oriented Programming and Data Structures AP Edition, Maria Litvin, Gary Litvin, 2006, by Skylight Publishing,
ISBN 978-0-9727055-7-8

Be Prepared for the AP Computer Science Exam in Java (Paperback)
by Maria Litvin

 

Addison-Wesley's Review for the Computer Science AP Exam in Java (Paperback)
by Susan Horwitz

 

Web Page Resources
All of the following are maintained by (name omitted) and can be reached via links from his teacher homepage.
  1. Objectives Provided by Mr. Rogers: The daily objectives used in class along with programming and homework assignments are all available online.
  2. Textbook Page: this page has lots of Java information including student files which you will want to download.
  3. Java Applications Programming Interfaces (API) this is a primary source for information about the Java language.
  4. Google: googling just about any Java topic will bring up tutorials or other useful information.

Materials for Class

  1. A USB thumb drive for backing up programs. Note: you are responsible for backing-up your programs. Don't assume they will remain on the hard drive of your computer.
  2. Students are not required to have a computer with an internet connection at home but it's recommended.
  3. Students should download BlueJ (here) to use at home. This is the software used for programming in class.
  4. All students should purchase the Barron's Ap Computer Science Study Guide* - How to Prepare for the AP Computer Science Exam by Roselyn Teukolsky. The book is updated every year. It's best to buy the latest year available.

Sources of Help: Student tutors will typically be available at lunch time and at selected times after school.

Who Should Take this Class: Students with an interest careers related to:  engineering, the computer professions, bioinformatics, genetics, physics, chemistry, math, or information management of any type.

Credit: One unit math, Meets the 1 year of computer science requirement for graduation.

Prerequisites: AP Computer Science A.

Extra Credit Opportunity--Science Fair

 

Grading and Assignments

Grading: (For details see Mr. Rogers' Syllabus - Information Common to All Classes.) Tests will be the single largest item and  be written as close to AP exam standards as possible. All tests will be pencil and paper just like the AP Test.

Course work will generally be finished by the end of the third quarter leaving the rest of the year for review and completion of the major project (see below). The first semester exam will be taken from AP test type materials. The exam grade will give you an indication of your standing on the future AP exam in enough time to take corrective action if needed.

The fourth quarter grade will consist primarily of practice AP test grades and the major project. Generally, there is a high correlation between the practice exams and your grade on the AP test. It will be nearly impossible to get an "A" in the 4th quarter and not pass the AP Test.

 

Regular Programming Assignments: every new unit will have moderate sized programming assignments which are due before the unit test. These assignments are listed in the on-line syllabus. Time will be allotted in class to work on these programs but it will normally also require at least some work outside of class.

 

Homework Assignments: these are listed in the on-line syllabus and are to be written out and stapled to the back of the unit test when it is turned in. No late homework will be accepted.

 

Class Work: We will frequently have brief programming assignments in class to illustrate a specific objective. These will normally be due no later than the next class session.

 

Personal Software Project: Students will  design, write, and test a major software project of their own choosing that will demonstrate mastery of the AP Computer Science AB subjects. The project will account for at least 30% of the annual grade. In other words it will be virtually impossible to pass without doing this project. Zeros will be given for missed milestones. Outstanding projects will be submitted to the Regional Science Fair and receive extra credit. 

Tutoring of AP Computer Science A Students: Teaching is one of the best ways to master a subject. All AP Computer Science AB students will be expected to make themselves available as tutors for "A" students a minimum of 1 hour a week. This can be done after school, before school, at lunch time, etc. Those "AB" students who cannot fulfill this requirement will receive extra assignments to compensate.

 

 

Syllabus
Syllabus 1st Quarter 2nd Quarter 3rd Quarter 4th  Quarter

Latin/Greek Root Words

arch--------->ancient, example: archtype;         chrono------>time, example: chronology;             -dom----------->quantity/state, example: freedom               fer-------->carry, example: transfer;               gen--------->birth, example: generate;                 luc-------->light, example lucid;                 neo--------->new, example: neonatologist;                olig--------->few, example: oligarchy;              omni--------->all, omniscient;            sym--------->together, symbol;

(Comp Sci connection)

 

Specification for the Personal Software Project

 The major software project will be submitted in four parts as shown below on or before the milestone dates listed in the table below. Each milestone will be at least the equivalent of a test grade. In addition the final project will be submitted on or before Feb 27, 2002. The final project will be submitted in a binder. It will be typewritten,  have a title page, a table of contents, and have all the pages numbered. Handwritten comments can be added to the program listing and pages can be numbered by hand where it is inconvenient to do otherwise.

Minimum standards: 1000 lines of code, 5 classes or interfaces, a GUI, ability to throw run-time exceptions, and Inheritance--at least 2 classes. Must include at least 8 the following:

1.       Nested loops

2.       Recursion

3.       Polymorphism

4.       Encapsulation

5.       Linked list

6.       trees

7.       Hash table

8.       Heap

9.       Stack or Queue

10.   Sort

11.   Search

12.   File I/O

Items

Required Pages

IB  Criterion

Additional Requirements

Due

Points

1

Table of Contents

1

 

 

 

 

2

Analysis of Problem

2-3

A1, 4pts

Weight: 8%

Must contain:

  • A research question and hypothesis suitable for a science fair project. These should be stated in terms of solving an end user's perspective.
  • Required input and mathematical models stated in general terms.
  • Customer requirements of an identified customer who has been queried.
  • A research mentor other than the teacher who is at minimum available by e-mail.

 

 

3

Criterion for Success

1-2

A2, 4pts

Weight: 8%

Must have at minimum a brief introduction and contain an outline, bullet list, or table with the minimum criterion so that criterion are easily scanned.

 

 

4

Prototype Solution

Variable

A3, 4pts

Weight: 8%

The prototype is based on functional decomposition. It is a top-down design that includes NO, repeat NO java code. It must include:

  1. Clear evidence of three levels of design progressing from a Bluej block drawing showing the relationship of classes, an outline of classes with descriptors, methods, and fields to a highly detailed outline with with precondition, post conditions, and pseudo code for all major methods.
  2. A brief written summary of the way the program will function that references items 2-4 below.
  3. Fully annotated computer-generated drawings of the user interface.
  4. A list identifying all I/O.
  5. User feedback in support of the design.

 

 

Milestone 1

11-22

100

5

Data Structures

2-5

B1, 4pts

Weight: 8%

Must include:

  1. A brief written summary of data structure that references items 2-3 below.
  2. A Javadoc printout identifying all classes and fields.
  3. Diagram of file structure which at minimum contains a help file.

Javadoc comments must include:

  1. A purpose for each class.
  2. A definition for each field.
  3. Sample data for each field, where applicable

 

 

6

Algorithms

2-5

B2, 4pts

Weight: 8%

Must include:

  1. A brief written summary of algorithms that references item 2 below.
  2. A Javadoc printout with information on methods (it's ok to reference the above section).

Javadoc comments must include:

  1. A purpose for each method.
  2. Preconditions and post conditions for each method.

 

 

7

Modular organization

3-5

B3, 4pts

Weight: 8%

  1. A written summary of class or modular structure that references item 2 below and the above sections in the design and relates how fields and methods are interconnected with various classes.
  2. A BlueJ box diagram.

 

 

Milestone 2

12-16

200

8

Usability

1

C1, 3pts

Weight: 6%

See Criterion C1. Note: the help file is part of the usability.

 

 

9

Handling errors

 

C3, 3pts

Weight: 6%

All input must be in string form with proper protection for out of boundary data. The exceptions are GUI items like sliders

 

 

10

Code Listing Listing

500-3,000 lines of code

C1, 3pts

Weight: 6%

1000 lines of code,  3 classes, a GUI, and a help file that meet all mastery needs are the minimum requirements.

1

 

Milestone 3

1-31

100

11

Annotated hard copy of tested Output

Variable

C4,D1 7pts

Weight: 15%

See C4 and D1.

 

 

12

Evaluation of solutions

1

D2, 4pts

Weight: 8%

See D2.

 

 

13

User Documentation

6

D3, 3pts

Weight: 6%

See D3.

 

 

14

Documentation of mastery aspects

2

 

Note that failure to meet mastery requirements will drop scores more dramatically than any other aspect of the project.

 

 

 

 

 

E, 3pts

Weight:

6%

 

 

 

 

Total

60-100

48

The Holistic approach criterion evaluates commitment, initiative and independence.

 

 

Final Project (Note: 1/2 of these points will be in 4th Quarter grade) Any item with out a due date listed will be due in the final project write up.

Tues.

2-28

200

Total Point Value ( the equivalent of six tests) These points will be distributed throughout the entire year. It will be nearly impossible to pass without turning in a project.

600

 

 

EXTRA CREDIT/CHALLENGE - COMPUTER SCIENCE RELATED PROJECTS COMPUTER SCIENCE RELATED PROJECTS

AP computer science students can receive up to 20 points extra credit per quarter. Up to 10 points extra credit is granted for each challenge program submitted beyond the ones required.  20 extra credit points will normally raise a grade by about 6 percentage points. Students who enter software project in the regional science fair will receive credit for two challenge programs.

All extra credit is due no later than one week before the end of the quarter it is counted in.

Major Projects

Enter the Regional Science Fair with a project which makes use of a major computer program. The idea is due by Oct 1st, the experimental work is to be completed before Christmas break, and the total project completed by January 31st. Students must also make a presentation to the computer club on their subject. This must be scheduled before the science fair.

 

Minor Projects 

Submit a working challenge programs from the list provided. Typically no more than two students are allowed to submit a particular challenge program so it's best to make arrangements in advance. Mr. Rogers will typically not consult on challenge programs.

 

Software Project Possibilities: The best projects are those which can be converted into a science fair project. Extra credit will be granted if this is done. Possible ideas are as follows:

  1. Artificial Intelligence: This attempt to simulate the human brain functions. This includes neural networks which are computer programs which learn.
  2. Artificial Life: Uses computer simulations to derive general theories about life. the Scientific American article "ARTIFICIAL LIFE: Boids of a Feather Flock Together" is a great place to start.
  3. Cellular automata: Cellular automata are computer programs that try to simulate life at the cellular level. They attempt to explain how undifferentiated cells can divide and become complex structures such as appendages.
  4. Chaos Theory: This deals with non linear systems which can become chaotic. It includes various forms of turbulence, animal populations, climate and the stock market.
  5. Fractals: These use relatively simple iterated equations to produce elaborate graphics.
  6. Number Series: There are many different type. Computers are commonly used to discover new members of various series. This includes the search for perfect numbers, mersenne primes, etc.
  7. Spam Filters: These devices are used for blocking e-mail spam. They can range from very sophisticated to very simple filters and can be fairly simple to write.
  8. Markov Chains:
  9. Physics Simulations Accounting for Air Resistance: The reason air resistance is ignored in most calculations has to do with the fact that it generally requires a computer to do account for it.
  10. Random Number Generators: There's no such thing as a perfect random number generator. Usually they have to strike a balance between performance and speed and are still a topic of research among computer scientists.
  11. Monte Carlo Simulations: These are programs which use random number generators to simulate complex problems. They can be extremely complex or very simple. Simple simulations of this type can be done with relatively little programming experience. The Marine Biology case study is an example of a Monte Carlo Simulation.
  12. Flocking/herding Behavior: Programs of this type attempt to simulate the behavior of predators and prey using simple sets of rules.
  13. Snow Flake/Crystal Growth: Look at thousands of pictures of snow flakes and they all tend to be slightly different yet they are recognizable as snow flakes. This implies that there are simple rules which can govern how the crystals are formed.
  14. Artificial Word translator: Write a program which looks for Latin or Greek roots in a word and outputs a possible definition on that basis.
  15. Language translator: Write a program which recognizes or translates foreign languages.
  16. Perception Studies: Computer programs can output sounds and colors. They can be programmed to flash text messages. These features can be used for testing human perception.

 

Mr
 

Check out other web sites created by Mr. R:

 

First the web site, now the book!


Mr. Rogers Home | Common Sylabus | AP Physics Mech | AP Physics E&M | AP Comp Sci I | AP Comp Sci I | IB Design Tech | Southside

[ Intuitor Home | Physics | Movie Physics | Chess | Forchess | Hex | Intuitor Store |

Copyright © 1996-2007 T. K. Rogers, all rights reserved. Forchess ® is a registered trademark of T. K. Rogers.
No part of this website may be reproduced in any form, electronic or otherwise, without express written approval.