Faculty of Informatics
CSCI124
Applied Programming Solving
Subject Outline
Autumn Session 2007
Head of
School –Professor Philip Ogunbona, Student Resource Centre, Tel: (02) 4221 3606
|
Subject
Coordinator |
Dr Koren
Ward |
|
Telephone
Number: |
4221 5322 |
|
Email: |
|
|
Location: |
3.110 |
Dr Ward’s Consultation
Times During Session
Subject
Organisation
|
Session: |
Autumn
Session, |
|||||||||||
|
Credit
Points |
6 |
|||||||||||
|
Contact
hours per week: |
3 hours
lectures + 2 hours lab /1 hour tutorial |
|||||||||||
|
Lecture
Times & Location: |
|
|||||||||||
|
Tutorial
Day, Time and Location can be found at: |
|
|||||||||||
Lecture Schedule
|
Week |
Topic |
Comments |
|
1 |
Modular Programming
(M1) |
No
Laboratory |
|
2 |
Modular Programming
(M1) |
M1 Exercises Due |
|
3 |
Modular Programming
(M1) |
M1
Assignment Due |
|
4 |
Pointers and Dynamic
Memory (M2) |
M1 Test * |
|
5 |
Pointers and Dynamic
Memory (M2) |
M2
Exercises Due |
|
6 |
Pointers and Dynamic
Memory (M2) |
M2
Assignment Due |
|
7 |
Classes (M3) |
M2 Test * |
|
8 |
Classes (M3) |
M3
Exercises Due |
|
9 |
Classes (M3) |
M3
Assignment Due |
|
10 |
Data Structures(M4) |
M3 Test * |
|
11 |
Data Structures (M4) |
M4
Exercises Due |
|
12 |
Data Structures (M4) |
M4
Assignment Due |
|
13 |
Revision |
M4 Test * |
Note:
This schedule may be subject to variation.
*Module
Tests dates and times will be shown on the subject website. If changes are made to the above schedule
students will be notified during lectures, via sols mail and/or on the subject
website.
Students
should check the subject’s web site regularly as important information,
including details of unavoidable changes in assessment requirements will be
posted from time to time. Any
information posted to the web site is deemed to have been notified to all
students.
This subject develops a thorough understanding of program design
using data structures. It extends CSCI114 and presents pointers, dynamic memory
management and exception handling. Other topics include implementation of
Sorting and Searching Algorithms including the use of typedefs, void pointers
and indexes to generalise algorithms; Implementation of data structures:
queues, stacks, linked lists, dequeues, trees; Use of arrays as an
implementation structure – hashing, radix sort, heaps and Heapsort; Random
Access files and internal I/O; Testing of programs: black and white box
testing, and the use of debuggers; Use of multi-file organisation in
encapsulation and data hiding, with make files; These concepts will be treated
through formal lectures, tutorials, assignments and laboratory sessions
employing an object oriented language.
On successful completion of this subject, students should be
able to:
1. Use memory management and exception handling in software
implementation
2. Use dynamic memory allocation to create and maintain dynamic
data structures
3. Identify and describe` structured data types, their
implementation in C++, and use in problem solving
4. Design, implement, test and debug simple programs.
5. Write programs that display a working knowledge of good
programming style.
Attendance
Requirements
It is the responsibility
of students to attend all lectures/tutorials/labs/seminars/practical work for
subjects for which you are enrolled.
It should be noted that according to Course Rule 003{Interpretation Point 2 (t)} each credit point for a single session subject has the value of about two hours per week including class attendance. Therefore, the amount of time spent on each 6 credit point subject should be at least 12 hours per week, which includes lectures/tutorials/labs etc
Satisfactory
attendance is deemed to be attendance at approximately 80%* of the
allocated contact hours. Attendance rolls may be kept for lectures, TUTORIALS and laboratories. If you are
present for less than 80%* you need to apply for special consideration,
otherwise a fail grade may be recorded.
Students
MUST attend their allocated tutorial
unless they have the written permission of the subject coordinator.
Subject
delivery and assessment is comprised of 4 modules (see M1-M4 on the schedule
below). Each module culminates with a module test. Module tests are given
during the weeks shown on the Lecture Schedule below. Lectures will comprise
the content of this subject plus explanations, illustrations and
demonstrations. Lab tasks will be
introduced and discussed in lectures and will relate to the lecture
topics. Laboratories start from week
two.
Subject
Materials
Lecture notes, exercises
and assignments for this subject will be available on the subject website.
Please note that many example programs, demonstrations, revision solutions and
assignment solutions will only be discussed during the lectures and tutorials. Some of the more important examples will be
posted to the website. Thus attending
the lectures cannot be completely replaced by the published material on the
subject website.
Reference Books
Some of these are
available from UniCentre Bookshop and Library
These readings/references are recommended only and are not intended to be an exhaustive list. Students are encouraged to use the library catalogue and databases to locate additional readings
This subject has the
following assessment components.
|
Assessment Items & Format |
Percentage
of Final Mark |
Due Date |
|
Module
Tasks |
60% |
See
lecture schedule above |
|
Examination |
40% |
Formal
Examination Period |
A hard copy
may also be required.
All assignments
are expected to be completed independently.
Plagiarism may result in a FAIL grade being recorded for that
assignment.
(a) Subject
assessment is based on 4 modules of work and a final exam. Each module is worth
15% of the final assessment of the subject and the final examination is worth
40% of the final assessment.
(b) Module tasks
are comprised of lab exercises, assignments and topic tests. The approximate
weight of each task toward each module total is shown in the table below. These
weightings are subject to adequate performance in the module test as explained
below.
Module
Assessment Guide
|
Task |
%
of Module Total |
|
Lab
Exercises + Assignment |
50% (15 + 35) |
|
Module Test |
50% |
|
Module Total (assessment marks) |
100% (15 marks) |
Failure
to pass the module test of any module will result in less weight being applied
to the practical tasks of that module (i.e. the lab exercises and assignment).
This is calculated according to the following formula:
IF T > 25
PWt
= 50
TWt
= 50
ELSE
PWt
= (T / 25) x 50
TWt
= 100 – (T / 25) x 50
where: T = Module Test Result
PWt
= Weight applied to Exercises and Assignment
TWt
= Weight applied to test
For example, if a
student receives 50 out of 50 for the exercises and assignment but only achieves
20 out of 50 for the module test then the weight applied to the practical tasks
and the test for this module would be:
PWt =
20 / 25 x 50
= 40
TWt =
100 – 40
= 60
Consequently the module
total would be calculated thus:
Practical Tasks = 50
/ 50 x 40
= 40
Test = 20 / 50 x 60
= 24
Module Total = 40 + 24
= 64
Module Marks = 64 x (15 / 100)
= 9.6 marks (toward the final assessment)
(c) Assignments and exercises are to be
submitted electronically via Unix/Linux system before the scheduled time,
nominally 11.59pm of the date of submission. Submission via email/fax/printed
form is not acceptable. Some tasks
will require the student to demonstrate C++ programs to the tutor in the
laboratory. These tasks will be clearly identified on the instructions on
exercises and assignments.
(d) Attendance at lectures and lab
classes when module tests or demonstrations are scheduled is mandatory. If you
are unable to attend any test or demonstration you should contact the Subject
Coordinator before the test or demonstration date to make alternative
arrangements. Failure to attend a module test or lab demonstration may result
in a zero mark for the task or module.
(e) Special
consideration for extending the due date of an assignment or exercise, or for
absence from a test, or for poor performance in any task may be granted in
certain circumstances. Such special consideration should be submitted via SOLS.
Supporting documentation should accompany the request for special consideration.
The Subject Coordinator has the right to accept/reject the request. A request
for an extension of an assignment can only be granted if it is made to the
Subject Coordinator before the due
date.
(f) Late assignments or exercises
without granted extension will be marked but the mark awarded will be reduced
by 20% of the total marks for the task for each day late (unless otherwise
stated on the task’s instructions). Assignments and exercises will not be
accepted if more than three days late.
(g) As assignments and exercises are to
assess a student's understanding of course material, each assignment should be
solved using only material covered up to that point in the course. If in doubt
ask your tutor or the lecturer.
(h) Students who copy work may receive zero for that task. This also covers work which may be the
product of community effort by several students. Working together is acceptable, but the final
coding must be the work of the
individual student, as assessment is a measure of your own ability.
(i) Programs submitted which do not
produce the required result cannot be awarded more than half marks. Programs which do not compile due to syntax
errors will receive no marks, but
may still be commented upon. Proper
documentation and program style are needed in the assignments to receive full
marks.
(j) Assignments and exercises will be
available from the subject website. Students should check the website regularly
for changes and updates to subject information together with assessment marks.
Assignments
and exercises will be returned in the laboratory classes. Enquiries about the
marking can only be made to the tutors during laboratory class times, with a maximum of 1 week after the work is handed back. After 1 week, no further reassessment can be made. The module and task results will be
accessible on the subject website as soon as they become available.
Late Assignments
Penalties
apply to all late work, except where special consideration has been
granted. Late submissions will attract a
penalty of 20% of the assessment mark per day including weekends. Work more than 3 days late will be awarded a mark of zero
Scaling (School)
Final results in this subject may be scaled. The scaling method that will be used in this subject is as follows.
If
E is the student exam mark, and A is the student assignment mark, the student
final mark will be determined as follows:
if E >= 40% of the
maximum exam mark: then student final mark is E + A;
if 35% <= E < 40% of the maximum exam
mark: then student final mark is /min/{E+A,
47}
if E < 35% of the maximum exam mark:
then student: final mark is /min/{E+A,
42}.
Students must refer to the Faculty Handbook or online references which
contains a range of policies on educational issues and student matters.
Laboratory
Procedures
• Students
must abide by the laboratory rules posted on the wall of the Laboratory
• Students
may use the computers outside their designated laboratory times provided the
laboratory is open and no other laboratory class is scheduled. If another class is scheduled for the
laboratory, you may enter no earlier than 20 minutes after the scheduled
starting time and ask the supervisor whether any vacant machines may be used.
• When
there is a queue for computers, students must give up the computer they are
using after one hour of use. They may
rejoin the end of the queue.
• To
complete the assignment component of the subject, students need to design and
implement programs in C++. There is no
requirement to carry out the work in the laboratories. You may still work at home to develop
solutions. However, submissions are via
the labs, and assistance in laboratories will be for programs demonstrable in a
Linux environment.
• Copying software for another person
is in breach of either copyright or the license agreement, as is selling
original disks whilst retaining a
copy. Exchanging disks also leads to
the introduction of software viruses
which may corrupt the system
Please note that if this is your last session and you are granted a supplementary exam, be aware that your results will not be processed in time to meet the graduation deadline.
Plagiarism
When you submit an assessment task, you are
declaring the following
1.
It is your own work and you did not collaborate
with or copy from others.
2.
You have read and understand your
responsibilities under the
3.
You have not plagiarised from published work
(including the internet). Where you have used the work from others, you have
referenced it in the text and provided a reference list at the end ot the
assignment.
4.
Plagiarism will not be tolerated.
5.
Students are responsible for submitting original
work for assessment, without plagiarising or cheating, abiding by the
University’s policies on Plagiarism as set out in the Calendar under University
Policies, and in Faculty handbooks and subject guides. Plagiarism has led to
the expulsion from the University.
This outline should be read in conjunction with the following documents:
|
Code of
Practice - Teaching and Assessment http://www.uow.edu.au/handbook/codesofprac/teaching_code.html |
Key Dates |
|
Code of
Practice - Students http://www.uow.edu.au/handbook/codesofprac/cop_students.html |
Information
Literacies Introduction Program |
|
Acknowledgement
Practice Plagiarism will not be
tolerated |
Student
Academic Grievance Policy http://www.uow.edu.au/handbook/codesofprac/cop_supervision.html#8 |
|
Special
Consideration Policy http://www.uow.edu.au/handbook/courserules/specialconsideration.html |
Code of
Practice-Honours |
|
Non-Discriminatory
Language Practice and Presentation |
Intellectual
Property Policy http://www.uow.edu.au/research/researchmanagement/1998IP.html |
|
Occupational Health and Safety http://staff.uow.edu.au/ohs/commitment/OHS039-ohspolicy.pdf |
SCSSE
Internet Access & Student Resource Centre http://www.sitacs.uow.edu.au/info/current/internet_access_and_resource.shtml |
|
SCSSE
Computer Usage Rules http://www.itacs.uow.edu.au/info/current/support/labs/rules.shtml |
SCSSE Style
Guide for Footnotes, Documentation, Essay and Report Writing |
|
SCSSE
Student Guide |
Informatics
Faculty Librarian, Ms
Annette Meldrum, phone: 4221 4637,ameldrum@uow.edu.au |
|
SCSSE
Subject Outlines |
|