GCO9805 Object oriented programming - Semester 1 , 2007 unit guide

Semester 1, 2007

Chief Examiner

Shane Moore

Lecturers

Gippsland : Shane Moore

Outline

This unit will provide students with an overview of programming and its role in problem-solving and strategies for meeting user requirements and for designing solutions to programming problems. The fundamental programming concepts of the memory model, data types, declarations, expressions and statements, control structures, block structure, modules, parameters and input and output will be applied within the context of objects, attributes, methods, re-use, information-hiding, encapsulation, event-handling and message-passing. Software engineering topics include maintainability, readability, testing, documentation and modularisation.

Objectives

At the completion of this unit students will have a theoretical and conceptual understanding of:

  • The relationship between a problem description and program design;
  • The management of problems using recognised frameworks;
  • The use of design representations;
  • The semantics of imperative programs;
  • The object oriented paradigm as represented by Java;
  • The sequence of steps that a computer takes to translate source code into executable code;
  • Primitive data types and basic data structures.

At the completion of this unit students will have developed attitudes that enable them to:

  • Adopt a problem-solving approach;
  • Recognise the importance of programming and documentation conventions;
  • Appreciate quality parameters in program development;
  • Accept the code of professional conduct and practice;
  • Act in accordance with best practice, industry standards and professional ethics.

At the completion of this unit students will have the practical skills to:

  • Use diagrams to design solutions for programming problems;
  • Apply problem solving strategies;
  • Use pseudo-code to design algorithms;
  • Design object oriented solutions to simple problems using multiple user-defined classes;
  • Create and test programming solutions to problems using the Java programming language;
  • Edit, compile and execute a computer program;
  • Analyse and debug existing programs;
  • Write a test plan.

At the completion of this unit students will demonstrate the communication skills necessary to:

  • Produce formal documentation for a program;
  • Explain an existing program.
Knowledge and Understanding

This unit aims to develop sound object-oriented computer program design and construction practices and to provide a solid foundation for further programming units.

On completion of this subject students will be able to:

  • item understand the principles and processes of object-oriented software design;
  • item understand the principles and processes of simple object-oriented software development using Java;
  • item solve simple algorithmic design problems using representational notations;
  • item understand the need for and techniques of object communication;
  • item design and write single and multiple class object-oriented solutions to programming problems;
  • item understand how to translate user needs into object-oriented computer programs;
  • item understand simple data structures such as arrays.

 

Attitudes, Values and Beliefs

On completion of the unit students will:

  • Appreciate the need for effective design strategies in software development.

 

Practical Skills

Students will be able to:

  • display skills in problem solving and algorithmic design using representational forms such as pseudocode;
  • item item apply strategies to translate users' needs into object-oriented computer programs;
  • use appropriate techniques for communicating program data between objects;

 

Prerequisites

There are no prerequisites for this unit.

Unit relationships

GCO9805 is a core unit in the Graduate Diploma in Computing degree and for Master of Applied IT program. It is a corequisite for GCO9802 unit. There are no prerequisites for this unit. You may not study this unit and GCO1811, CSE1102, CSE1301, CSE1202, CSE2200, CPE1001, SFT1102, SFT2021, SFT3021, CFR2121, CSC1011, CSC1021, RDT1301 in your degree.

Texts and software

Required text(s)

Malik D.S. : Java Programming - From Analysis to Design., Thomson Learning 2006, ISBN 0619216085

Textbook availability

Text books are available from the Monash University Book Shops. Availability from other suppliers cannot be assured. The Bookshop orders texts in specifically for this unit. You are advised to purchase your text book early.

Software requirements

Required:

  • Java Development Kit, Version j2sdk-1.5.0, Sun Microsystems, Inc. This is included on the GSIT Unit Software CD.

There are a number of Integrated Development Environments avaliable, such as:

Jcreator - jcreator LE v4.0 is a powerful IDE (Integrated Development Environment) for Java and is strongly recommended. It can be downloaded from the Web Site: http://www.jcreator.com/ - You should download the freeware version (called JCreator LE). You have no need for the fuller facilities provided in JcreatorPro, and would have to pay for it as well.

BlueJ, Version 2.1.2 Programming Development Environment. Although available on CD, version 2.1.3 can be downloaded from

http://www.bluej.org

Eclipse (latest version) downloaded from

http://eclipse.org - note, this is a very memory-intensive program, and is a very large download.

The Lecturer's recommendation is to use JCreator.

Software may be:

  • downloaded from the internet

Hardware requirements

Students studying off-campus are required to have the minimum system configuration specified by the faculty as a condition of accepting admission, and regular Internet access. On-campus students, and those studying at supported study locations may use the facilities available in the computing labs. Information about computer use for students is available from the ITS Student Resource Guide in the Monash University Handbook. You will need to allocate up to 10 hours per week for use of a computer, including time for newsgroups/discussion groups.

Recommended reading

In addition to the prescribed book, you may find the following book useful:

Robertson LA: Simple Program Design, 5th ed., Thomson/Nelson, 2007, ISBN 017010704-3

Library access

You may need to access the Monash library either personally to be able to satisfactorily complete the subject.  Be sure to obtain a copy of the Library Guide, and if necessary, the instructions for remote access from the library website.

Study resources

Study resources for GCO9805 are:

  • This Unit Information outlining the administrative information for the unit
  • The MUSO unit web site where lecture slides, weekly tutorial and lab requirements, assignment specifications, and supplementary material will be available
  • Discussion groups via MUSO
  • An electronic Unit Book containing a number of Modules covering the unit content

Additionally, students studying by Off-Campus Learning mode will receive:

  • A CD-ROM sent at the start of the year, with software required for the unit
  • Another CD-ROM which is called "GSCIT Computing Support Modules" - an interactive multimedia system to help you learn.

Structure and organisation

Week Topics Key Dates
1 Unit Administration and Introduction
2 Program Design
3 Variables and Data types
4 Selection Assignment 1 Due
5 Repetition
6 Arrays
Non teaching week
7 Methods Assignment 2 Due
8 Objects and Classes I
9 Objects and Classes II
10 Debugging and I/O
11 Inheritance Assignment 3 Due
12 Applied Arrays
13 Revision

Timetable

The timetable for on-campus classes for this unit can be viewed in Allocate+

Assessment

Assessment weighting

  • Exam
    • 60%
  • Non-Exam
    • 30% Assignments (three)
    • 10% ongoing Assessment (quizzes)

Assessment Policy

To pass this unit you must:

  • get at least 40% of the marks for the exam
  • get at least 40% of the marks for the assignments
  • attempt all quizzes.
  • achieve at least 50% overall after the Assessment Formula is applied

Your score for the unit will be calculated by:

Exam component * 0.6 + Non-exam component * 0.4

Assessment Requirements

Assessment Due Date Weighting
Assignment 1 Week 4 5%
Assignment 2 Week 7 10 %
Assignment 3 Week 11 15 %
unit test/lab sessions weekly, from week 3 10 %
The exam is 3 hours long and is closed book. Exam period (S1/07) starts on 07/06/07 60 %

Assignment specifications will be made available via the FIT1002 MUSO site (being used for GCO9805 as well).

Assignment Submission

Upload zipped Java files via MUSO Assignment tool.

Multiple uploads will be allowed. The last upload made by the due time will be the work that is marked. Late submission is not possible.

Lab exercises will be able to be submitted using webface: http://wfsubmit.its.monash.edu.au/

 

Some students may feel a little uncertain about their assignment submissions and request if the assignment can be looked over prior to submission. Unfortunately this is not possible (and disadvantages other students). Use the assignment newsgroup to place a question related to your area of uncertainty.

Extensions and late submissions

Late submission of assignments

Late submissions will not be accepted.

Once the MUSO assignment tool deadline has passed upload will be disabled.

This policy is strict because comments or guidance will be given on assignments as they are returned, and sample solutions may also be published and distributed, after assignment marking or with the returned assignment. 

Extensions

It is your responsibility to structure your study program around assignment deadlines, family, work and other commitments. Factors such as normal work pressures, vacations, etc. are seldom regarded as appropriate reasons for granting extensions. 

Requests for extensions must be made by email to your lecturer at least two days before the due date. You will be asked to forward original medical certificates and may be asked to provide other forms of documentation where necessary. A copy of the email or other written communication of an extension must be attached to the assignment submission.

The lecturer will arrange some upload mechanism other than MUSO (probably webface).

Grading of assessment

Assignments, and the unit, will be marked and allocated a grade according to the following scale:

Grade Percentage/description
HD High Distinction - very high levels of achievement, demonstrated knowledge and understanding, skills in application and high standards of work encompassing all aspects of the tasks.
In the 80+% range of marks for the assignment.
D Distinction - high levels of achievement, but not of the same standards. May have a weakness in one particular aspect, or overall standards may not be quite as high.
In the 70-79% range.
C Credit - sound pass displaying good knowledge or application skills, but some weaknesses in the quality, range or demonstration of understanding.
In the 60-69% range.
P Pass acceptable standard, showing an adequate basic knowledge, understanding or skills, but with definite limitations on the extent of such understanding or application. Some parts may be incomplete.
In the 50-59% range.
N Not satisfactory failure to meet the basic requirements of the assessment.
Below 50%.

Assignment return

We will aim to have assignment results made available to you within two weeks after assignment receipt.

Feedback

Feedback to you

You will receive feedback on your work and progress in this unit. This feedback may be provided through your participation in tutorials and class discussions, as well as through your assignment submissions. It may come in the form of individual advice, marks and comments, or it may be provided as comment or reflection targeted at the group. It may be provided through personal interactions, such as interviews and on-line forums, or through other mechanisms such as on-line self-tests and publication of grade distributions.

Feedback from you

You will be asked to provide feedback to the Faculty through a Unit Evaluation survey at the end of the semester. You may also be asked to complete surveys to help teaching staff improve the unit and unit delivery. Your input to such surveys is very important to the faculty and the teaching staff in maintaining relevant and high quality learning experiences for our students.

And if you are having problems

It is essential that you take action immediately if you realise that you have a problem with your study. The semester is short, so we can help you best if you let us know as soon as problems arise. Regardless of whether the problem is related directly to your progress in the unit, if it is likely to interfere with your progress you should discuss it with your lecturer or a Community Service counsellor as soon as possible.

Unit improvements

In response to student comments about overloading of content, several non-essential topics have been removed.

Globally common assignment tasks have been introduced.

Plagiarism and cheating

Plagiarism and cheating are regarded as very serious offences. In cases where cheating  has been confirmed, students have been severely penalised, from losing all marks for an assignment, to facing disciplinary action at the Faculty level. While we would wish that all our students adhere to sound ethical conduct and honesty, I will ask you to acquaint yourself with Student Rights and Responsibilities and the Faculty regulations that apply to students detected cheating as these will be applied in all detected cases.

In this University, cheating means seeking to obtain an unfair advantage in any examination or any other written or practical work to be submitted or completed by a student for assessment. It includes the use, or attempted use, of any means to gain an unfair advantage for any assessable work in the unit, where the means is contrary to the instructions for such work. 

When you submit an individual assessment item, such as a program, a report, an essay, assignment or other piece of work, under your name you are understood to be stating that this is your own work. If a submission is identical with, or similar to, someone else's work, an assumption of cheating may arise. If you are planning on working with another student, it is acceptable to undertake research together, and discuss problems, but it is not acceptable to jointly develop or share solutions unless this is specified by your lecturer. 

Intentionally providing students with your solutions to assignments is classified as "assisting to cheat" and students who do this may be subject to disciplinary action. You should take reasonable care that your solution is not accidentally or deliberately obtained by other students. For example, do not leave copies of your work in progress on the hard drives of shared computers, and do not show your work to other students. If you believe this may have happened, please be sure to contact your lecturer as soon as possible.

Cheating also includes taking into an examination any material contrary to the regulations, including any bilingual dictionary, whether or not with the intention of using it to obtain an advantage.

Plagiarism involves the false representation of another person's ideas, or findings, as your own by either copying material or paraphrasing without citing sources. It is both professional and ethical to reference clearly the ideas and information that you have used from another writer. If the source is not identified, then you have plagiarised work of the other author. Plagiarism is a form of dishonesty that is insulting to the reader and grossly unfair to your student colleagues.

Communication

Communication methods

Unless you have personal enquiries all communication related to the content of the unit must be via the newsgroups. If you do send your lecturer an email that relates to the content of the unit it will probably not be answered by email (it may be answered in the discussion forum). Personal enquiries may include requests for assignment extensions, special consideration requests, or the need to discuss your personal progress. You are certainly not meant to put anything of a personal nature (including assignment result disputes) into your postings to the discussion groups. Personal matters can also be dealt with by telephone.

Off-campus students who live or work near the Gippsland campus, and the on-campus students, may visit the lecturer at his office.

Notices

Notices related to the unit during the semester will be made via the Announcement tool in MUSO. If you have pop-ups turned on, then you will see the notice the next time you log in to MUSO after the announcement is made. After then you must check the Announcement tool for any that you missed. Check this regularly. Failure to read the announcements is not regarded as grounds for special consideration.

Consultation Times

Shane is available most of the time for phone or office consultation. If you are not normally on the Gippsland campus, you should arrange by email first to make sure he will be around.

If direct communication with your unit adviser/lecturer or tutor outside of consultation periods is needed you may contact the lecturer and/or tutors at:

Mr Shane Moore
Lecturer
Phone +61 3 990 26716

All email communication to you from your lecturer will occur through your Monash student email address. Please ensure that you read it regularly, or forward your email to your main address. Also check that your contact information registered with the University is up to date in My.Monash.

Last updated: Feb 16, 2007