ICS3U | Introduction to Computer Science

Hello, if you have any need, please feel free to consult us, this is my wechat: wx91due

ICS3U Final Project

The objective of this course is for you to be able to develop your problem solving skills. In particular, the skills required to develop meaningful programs. The best way to do this is to actually develop a meaningful program. Your final project is to develop a meaningful program of your choice. Each person is at a different stage in their programming ability. The final project you pick should be a reflection of your programming ability. Before you start working on your project you must submit a proposal. This is to prevent you from starting a project you cannot finish, or taking on a task that is too easy, and would result in a low mark. Before you begin writing code for your project you must   also develop a clear plan of what you plan to do, this will help prevent you from wasting time wondering what you should be doing. A good plan will allow you to work at a steady pace and avoid hitting too many dead ends. It will also ensure that you are using the most appropriate data structures and algorithms. Don’t be afraid to ask for help from me when you are planning your project. Some projects are very difficult to plan and you may need a nudge in the right direction.

Start thinking about what you would like to work on now. If you are at a loss, come see me and I will give you some ideas. Traditionally most people do games, but there is a wide variety of other programs you can do. The only absolute requirement of your final project is that it must be one you enjoy working on.

Extra-Help

As with any real program you are not expected tore-invent the wheel yourself. It is reasonable to use code that you find on the Internet and get help from friends but it is very important that you make it clear in comments which sections you received help with and which sections you copied directly. Obviously,I don’t give you the same credit for other people’s work as for work you do yourself. Failure to give credit could result in a zero for your project mark not just the section that was not commented.

Evaluation

The following rubric will be used to evaluate the final project. An interview will be conducted for each project shortly after they are submitted.

The final FSE mark will include the final product (80%) and the process (20%) of the mark.

During class you must be working on the FSE. If students do minimal work during class and most of the work at home that WILL affect your FSE mark. If you work on anything else during class (e.g.

Chemistry homework, English essay, FSE for another class, it will affect your“process mark”and your FSE mark will be lower.

I will be making “daily observations” during the FSE and on “day 6” and “day 11” students will upload their “FSE Check 1” and “FSE Check 2” projects onEdsby.

Mark Range

0

1-2

3-4

5

Score

Use of Comments and choice of

variable names

Program listing has no comments

Only some sections

have comments or

variables are poorly named

Most sections have

comments and

variables are properly

named

Variables are properly named,

useful comments are present at

program header, all

function headers, all variables

and any complicated code

Choice of data structures

Program was not completed

No  lists, classes, files or string manipulation used.

Data structures used

but there are cases

where better choices

should have been

made.

Logical choices made to

represent all data in the

program.

Mark Range

0-2

3-4

5-7

8-10

Use of Graphics

Graphics included

is very basic in

setup and design

with only a few

commands used

Graphics show

some originality and uses a variety of

different graphic commands

Graphics show individual originality and inventive design

Graphics show both advanced

design and individual

creativity

Use of functions

Program has no functions

functions present but parameters

improperly used or

many large blocks still need to be broken down

functions used but a few sections of code need to be broken

down.

All code is broken down into

reasonably sized functions

that perform one logical task

each. Only a few global

variables are accessed from functions

Fun (for games) or usefulness(other)

Program was not completed

Game is boring or program   would never be used.

Game is worth playing

a few times or

program basically

accomplishes it’s goal

Fun to play or program is

actually worth using in a day-

to-day setting

Mark Range

0-5

6-10

11-15

16-20

Complete

Does not run or is very minimal

Does not run or is very minimal

Basic structure is there, but the game

does not seem “polished”

Attention to detail is obvious.

Has intro, high score, many

“little” features.

Amount of work

Project could be

finished by an

"averagestudent

in a few days.

"Average" student can finish only using class time.

"Averagestudent can

finish with full use of

class time and some

extra time.

Project requires full use of class time and extra time to

complete

Inventive Problem Solving Techniques.

- use of ifs, loopslists,

functions

- solutions

that require deep

thinking.

Program has limited use of programming concepts.

Program has no or few advanced

sections.

Program has a few advanced solutions or many moderately

advanced solutions.

Program has frequent use of

advanced algorithms.

发表评论

电子邮件地址不会被公开。 必填项已用*标注