Culminating Project

advertisement
ICS4U Culminating Task
Task: Create a game or application that uses the various topics we covered in the course. Your program
should utilise:
-
Object oriented coding structures, 2D arrays and other advanced variable types.
Advanced algorithms, such as sorts, searches, or recursion
Functions/Methods with and without return statements
Your program should consist of multiple screens (menus etc), including instructions for the user.
Program operation should be intuitive (example game rules are clear and easy to follow)
Total time allotted for project: 4 weeks
Work is to be completed in class.
Be sure to confirm your game/app idea with me to be sure it is not too easy or too hard.
Knowledge: Complexity of code syntax, use of advanced variables and constructors etc.
Level 1
Variables are very basic
in type. No advanced
objects are present. No
arrays are present.
Level 2
Variables have some
complexity. Higher
level arrays are present.
Level 3
Variables are somewhat
complex. Simple
objects are present,
though objects do not
contain custom
methods. Arrays are
present (example array
of objects)
Level 4
Variables consist of
clearly defined objects
comprised of many
variables and custom
methods. Other
variables include 2D
arrays etc.
Application: General structure and design of the program.
Level 1
Variable types are not
chosen appropriately.
Data is structured
inefficiently. Use of
advanced coding
structures is absent.
Code is very repetitive
due to total lack of
custom functions.
Level 2
Variables are chosen
consistently to fit the
design. Though some
complex elements of
the program are not
well implemented (ie
inefficient or too basic).
Code is repetitive due
to lack of custom
functions.
Level 3
Most variables types
are well chosen. All
variable data is
structured in an
organised and well
thought out way.
Custom methods exist
in way that is beneficial
to overall structure of
the program.
Level 4
Data structures are
organised and well
designed.
Level 3
Data handling is well
done. Searching and
sorting is present.
Level 4
Data handling is very
well done. Algorithms
include, searching,
sorting, and recursion.
Code is highly efficient
and maintainable due
excellent use of custom
methods.
Thinking: Complexity of algorithms in data handling.
Level 1
Data handling is simple.
Makes very little use of
algorithms of higher
complexity.
Level 2
Data handling is
somewhat advanced.
Data is searched using
search alogorithms.
Communication: Visual layout of code, indenting, comments, variable naming conventions etc.
Level 1
Layout of code is not
well organised.
Functions are scattered.
Indentation is partial.
Comments are rare.
Variable names are
inconsistent.
Level 2
Layout of code is not
well organised.
Functions are labelled,
but locations are not
consistent. Indentation
is present.
Comments exist, but
are brief.
Variable names are
somewhat consistent.
Level 3
Layout of code well
organised. Functions
are defined and mostly
located in an organised
fashion. Indentation is
consistent.
Comments are brief but
informative.
Variable names are
consistent.
Level 4
Layout of code very well
organised. Functions
are located in specific
areas. Indentation is
precise.
Comments are
consistent and
informative.
Variable names are
consistent.
ICS4U
Culminating
Exam
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
K T C A
A. Programming Concepts and Skills
A1. demonstrate the ability to use different data types and expressions when creating
computer programs
A2. describe and use modular programming concepts and principles in the creation of
computer programs
A3. design and write algorithms and subprograms to solve a variety of problems
A4. use proper code maintenance techniques when creating computer programs
B. Software Development
B1. demonstrate the ability to manage the software development process effectively,
through all
of its stages – planning, development, production, and closing
B2. apply standard project management techniques in the context of a studentmanaged team project
C. Designing Modular Programs
C1. demonstrate the ability to apply modular design concepts in computer programs;
C2. analyse algorithms for their effectiveness in solving a problem.
D. Topics In Computer Science
D1. assess strategies and initiatives that promote environmental stewardship with
respect to the use of computers and related technologies
D2. analyse ethical issues and propose strategies to encourage ethical practices
related to the use of computers
D3. analyse the impact of emerging computer technologies on society and the
economy
D4. research and report on different areas of research in computer science, and
careers related to computer science.
Download