USISbar.gifcogslogo.jpglogobackneutral.gif22USISbar.gif
previous up next
Left: Project Guidelines Up: Formal Assessment Right: Past Projects

Marking Criteria

Here is the sheet currently used for marking programming projects.

                             AI PROGRAMMING I AND II
                                   MARK SHEET

Name/Number of student:......................................................
Year:................

First Examiner Mark........ Second Examiner Mark........ Agreed Mark........

Assessment mode: programming project

              CRITERIA                                    COMMENTS

The programming project comprises both a
program and report describing the
program and its performance.  The focus
of the assessment is primarily aimed at
determining how well a candidate has
learned the basic features of the
programming language and is able to
apply them to a particular problem. The
difficulty and novelty of the
programming task is clearly relevant
here.

The quality of code and level of
understanding and ability it
demonstrates is used to determine the
baseline mark for the project.  The
quality of the report may then either
enhance or detract from this basic
appraisal.


1. Program

70% and above: code that executes
efficiently, incorporates sophisticated
programming features, is non-redundant,
well-structured, properly commented and
elegant, addresses the problem
effectively for a non-trivial
application.

60% - 69%: code that executes,
incorporates some complex data
manipulations (such as recursive
list-processing), is relatively
well-designed and presented (eg
separated into modules, commented),
addresses a reasonably non-trivial
problem.

50% - 59%: code that executes,
incorporates AI language features (such
as fact and rule clauses or pattern
matching comparisons) and simple
datastructure manipulations, and
addresses a simple problem.

40% - 49%: code that largely executes
but is based on the simplest language
features e.g. derived from exercise,
lecture or textbook examples or
minimally adjusts a program from a
textbook or other source (e.g. a teach
file).

39% and below: code that does not
execute, or demonstrates a lack of
knowledge of basic prolog syntax, or is
not coherent in terms of the problem
being addressed or the methods to be
employed in doing this.


2. Project report

Marks are allocated in general for
overall quality of writing, structuring
of the report and presentation.

Specifically, the report should

(i) introduce the topic of the program
and motivate it

(ii) provide any key background
information to the domain of application
(eg chess) or specific techniques
employed (eg expert systems)

(iii) provide an example of interaction
with the system to demonstrate input and
output, perhaps with screenshots where a
GUI is employed

(iv) describe at a high level the major
system components, referring where
appropriate to design decisions and how
these influenced the choice of problem
solving methods, representation of
stored information, interactive
components.

(v) describe how the program works,
preferably using at least one worked
example.

(vi) evaluate the program's performance
and comment on problems encountered
(this may include some user
trials/feedback where appropriate, eg
for a game playing program)

(vii) discuss self-critically what can
be learned from the program and possible
future developments.

The mark allocated to the report will
reflect the extent to which aspects of
the above are incorporated, and how well
they are executed.

3. Appendices

Attached to the report should be
well-annotated and modularised program
code, one or more examples of
interaction with the program, possibly a
user-guide to running the program.

---------------------------------------------------------

Benedict du Boulay, AI Programming II web pages updated on Wednesday 8 January 2003