Course Title: Apply intermediate object-oriented language skills

Part B: Course Detail

Teaching Period: Term2 2013

Course Code: COSC6122C

Course Title: Apply intermediate object-oriented language skills

School: 650T TAFE Business

Campus: City Campus

Program: C5300 - Diploma of Information Technology

Course Contact : Radhu Punchanathan

Course Contact Phone: +61 3 9925 1409

Course Contact Email:radhu@rmit.edu.au


Name and Contact Details of All Other Relevant Staff

Nominal Hours: 60

Regardless of the mode of delivery, represent a guide to the relative teaching time and student effort required to successfully achieve a particular competency/module. This may include not only scheduled classes or workplace visits but also the amount of effort required to undertake, evaluate and complete all assessment requirements, including any non-classroom activities.

Pre-requisites and Co-requisites

None

Course Description

This course covers the competency required to undertake intermediate level programming tasks using an object-oriented programming language. Competency includes building applications that interacts with a database using graphical user interfaces.

This unit is delivered using a blend of classroom based and self-paced learning activities.


National Codes, Titles, Elements and Performance Criteria

National Element Code & Title:

ICAPRG527A Apply intermediate object-oriented language skills

Element:

1. Build applications using provided language utilities

Performance Criteria:

1.1 Review program requirements
1.2 Divide multiple source-code files into logical units and packages
1.3 Use at least two of the utilities of the target language allowing for internal storage of collections of data
1.4 Use the utilities of the target language providing internal data sorting and searching facilities
1.5 Employ integrated-development environment facilities to make files to automate program building
1.6 Follow guidelines for developing maintainable code adhering to coding standards
1.7 Use the facilities in the language for persisting objects to binary files
1.8 Use the operator and function or method overloading facilities available in the language at an introductory level
1.9 Demonstrate ability to use exception-handling techniques to ensure program stability
1.10 Demonstrate use of a class that is based on multiple inheritances

Element:

2. Write programs that interact with a database

Performance Criteria:

2.1 Design and implement programs that connect to a database
2.2 Design and implement programs that use the language facilities to extract, update and delete data stored in a database
2.3 Design and implement programs that use the language facilities to manipulate database structure (query, create and delete)
2.4 Write programs that deliver transactional integrity

Element:

3. Write graphical user interface (GUI)

Performance Criteria:

3.1 Employ GUI framework or text windowing interface appropriate to the chosen language
3.2 Demonstrate use of standard GUI components
3.3 Use the facilities within the language for GUI objects to respond to user and program-generated events

Element:

4. Debug application

Performance Criteria:

4.1 Use stand-alone debugging tools or tools provided by integrated development environment to examine variables and trace running code
4.2 Use debugger to detect logical and coding errors
4.3 Use tracing of code and examination of variable contents during execution to detect and correct errors

Element:

5. Test application

Performance Criteria:

5.1 Design and document limited tests of code
5.2 Undertake limited testing of produced code to ensure it complies with program specification
5.3 Capture and document test results

Element:

6. Create and maintain documentation

Performance Criteria:

6.1 Read and interpret supplied design document to create code
6.2 Create and maintain program documentation


Learning Outcomes



Details of Learning Activities

A range of learning activities are planned for this course including self-paced and collaborative classroom based activities.

 
The collaborative classroom based activities will include theory sessions, practical lab sessions, tutorial sessions, and out-of-class research and homework.


We expect you to participate and contribute in all scheduled learning activities. 


Teaching Schedule

 

The nominal hours associated with this are a guide only and represent the total teaching time and student effort required to successfully complete the course. This may include not only scheduled classes but also the amount of effort required to undertake, evaluate and complete all assessment requirements, including any non-classroom activities.

Week Week Commencing Topics Assessment
1 8th July 2013

Pre-training review:
• RPL
• LLN as required
Familiarisation with:
• Program
• Services/facilities
• Other students
• Teacher(s)
• Where to get support
• Student responsibilities
• Course requirements
• Course support documents
• Pre-reading
• Blackboard
Overview of assessment requirements:
• Grading
• Plagiarism
• Appeals
• Extensions
• Feedback
• Privacy
• Submission requirements
• Resubmission policy
 

Introduction to Course, Eclipse the IDE, Review of Classes & Objects, Creating Code from Supplied Design Documentation, Coding Standards
 

 
2 15th July 2013 The Java API, Program Documentation & Javadoc, Review of Arrays & ArrayLists and More Data Structures Project handout Available
3 22nd July 2013 Interfaces, Saving (Persisting) and Retrieving Objects  
4 29th July 2013 Relationships: Inheritance & Inclusion, Polymorphism & Method Overriding, Collections of Data, Sorting & Searching  
5 5th Aug 2013 Review of Constructor and Method Overloading, Testing & Debugging with Eclipse Project draft check and feedback
6 12th Aug 2013 Project stage 1 Due Project stage 1 Due
7 19th Aug 2013 Introduction to GUI Programming using Inbuilt Java GUIs (JOptionPane)  
8 26th Aug 2013 GUI Programming  
  Mid-Semester Break (2nd Sept to 6th Sept 2013)  
9 9th Sept 2013 GUI Programming continued. Project draft check and feedback
10 16th Sept 2013 Project stage 2 Due Project stage 2 Due
11 23rd Sept 2013 Introduction to Database Programming  
12 30th Sept 2013 More on Database Programming  
13 7th Oct 2013 Work on Project Project draft check and feedback
14 14th Oct 2013 Project stage 3 Due Project stage 3 Due
15 21st Oct 2013 Feedback  
16 28th Oct 2013 Resubmits  


Learning Resources

Prescribed Texts

Gerard Sparke, The Java Way, 3rd Edition, ISBN 978-0-646-54746-6


References

Kathy Sierra & Bert Bates, Head First Java, 2nd Edition, (Sebastopol: O'Reilly Media, 2005), ISBN 978-0-596-00920-5.

James Overton, Simple Program Design, (Thomson Learning) ISBN 978-0-17-012895-7.


Other Resources

Other materials will include worksheets distributed by the teacher in class and various Websites which will be indicated.


Overview of Assessment

Students must demonstrate an understanding of all elements of competency to be deemed competent.

A range of assessment methods are used to assess practical skills and knowledge, for example:
• direct questioning combined with review of portfolios of evidence and third party workplace reports of on-the-job performance by the candidate
• review of authenticated documents from the workplace or training environment
• demonstration of techniques 

Students are advised that they are likely to be asked to personally demonstrate their assessment work to their teacher to ensure that the relevant competency standards are being met.


Assessment Tasks

You are required to complete a project which is in 3 stages. Java would be the programming language that is used for all assessments. You must successfully complete all the three stages of the project to be deemed competent in this unit.

Project:
This is a major project which is assessed progressively in 3 stages as
Project Stage 1 – due week 6 – (Individual)
Project Stage 2 – due week 10 – (Group)
Project Stage 3 – due week 14 – (Group).

Note: Late submissions of work required for any stage of this project will be eligible for grading at pass level only.

Project Description / Scenario: You are a developer within a small software consulting firm and have been assigned to build a new software application for a client based on the guidelines provided by your teacher. Your application has to be submitted to, and approved by, your Project Leader (in this case your teacher). There are three (3) stages involved in submitting your task.
For this project the application that is being developed will have a GUI (Graphical User Interface) user interface and will be interacting with a relational database. The application will be tested and the test data and results created will be documented.

Project stage 1 deliverables:
• A UML class diagram of all classes (including all subclasses and driver classes), their attributes, methods, etc., and showing their relationships to one another. This diagram should also show which tiers the classes are in.
• The entire java source code implementing inheritances and object oriented concepts.
• The application created will be saving and retrieving objects (persistent) created using object oriented programming concepts.

Project stage 2 deliverables:
• A UML class diagram of all classes (including all subclasses and driver classes), their attributes, methods, etc., and showing their relationships to one another. This diagram should also show which tiers the classes are in.
• The entire java source code implementing inheritances and object oriented concepts.
• The application created and modified at this stage will be GUI based. Program documentation will also have to be created and submitted.
• This is a group work (no more than 3) where each member of the group will be assigned specific responsibility to complete. Also the group will have to work together to produce the required application.

Project stage 3 deliverables:
• A UML class diagram of all classes (including all subclasses and driver classes), their attributes, methods, etc., and showing their relationships to one another. This diagram should also show which tiers the classes are in.
• The entire java source code showing inheritances and object oriented concepts.
• The application created and modified at this stage will be GUI based, connecting to a relational database. Data will be saved to / retrieved from a relational database. Program documentation will also have to be created and submitted.
• This is a group work (no more than 3) where each member of the group will be assigned specific responsibility to complete. Also the group will have to work together to produce the required application.
 


Assessment Matrix

Other Information

Submission Requirements

Assessment tasks need to be submitted via Blackboard.

You should:
• Ensure that you submit assessments on or before the due date. If your performance in the assessment is affected by unexpected circumstances, you should consider applying for Special Consideration. Information on the process and application forms is available at http://rmit.edu.au/browse;ID=ls0ydfokry9rz website.
• Always retain a copy of your assessment tasks. (hard copy and soft copy)
• When you submit work for assessment at RMIT University you need to use a cover sheet that includes a declaration and statement of authorship. You must complete, sign and submit a cover sheet with all work you submit for assessment, whether individual or group work. On the cover sheet you declare that the work you are presenting for assessment is your own work. An assignment cover sheet for submission of work for assessment is available on blackboard.
• Each page of your assessment should include footer with your name, student number, the title of the assessment, unit code and title and page numbers. For example, Julie Macpherson, 324567, Task 2, OHS2345C Ensure safe workplace, Page 1 of 10.


Marking Guide (competency):

Vocational Education and Training (VET) is based on current industry needs and the focus on preparing you for the workplace. Because VET courses are informed by practical application of knowledge and skills, they are based on a system known as ‘competency based training’ (CBT).

So when you are assessed in VET it is about whether you are competent to do the job, as well as having a firm grasp on the knowledge and skills required to do that job, as opposed to traditional curriculum based education settings that are often based on knowledge retention.

You need to demonstrate you are competent in each element of the unit of competency you are studying.

You will receive feedback on each assessment task that will inform you whether you are competent or not and how well you are performing. Once competent in all elements of the unit you receive a competency grading.

Please refer to the Final Grades table below.


Resubmission Guide:
Once a student has submitted the project, a resubmission may be granted if deemed NYC. On resubmission, a student will not receive a grade higher than CAG (Competency achieved)

Marking Guide (Grading)

After achieving competency we then grade your performance in the unit; this gives you the opportunity to have the level of your performance formally recognized against industry standards and employability skills.

The grading is according to the following criteria:

1. LEVEL OF INDEPENDENCE, INITIATIVE, ENTERPRISE AND PERFORMANCE OF WORK TASK

We are looking for a high level of ability to complete all tasks independently as per the specifications as well as demonstrating a high level of initiative in your approach to introductory programming tasks using an object-oriented programming language.

2. DEMONSTRATED BREADTH OF UNDERPINNING KNOWLEDGE AND A WILLINGNESS TO CONTINUE LEARNING 

We are looking for depth of understanding of the key concepts and knowledge required in programming tasks using an object-oriented programming language. You should be able to demonstrate a thorough understanding of all applicable Object-Oriented concepts in all the assessment tasks.

3. TECHNIQUES & PROCESSES, TECHNOLOGY SKILLS AND PROBLEM SOLVING

We are looking for appropriate use of technology to assist in presenting all tasks clearly and suitable for the intended audience. You also need to show an understanding of the kinds of problems that can arise in managing Object-oriented programming systems and how these might be addressed..

4. WORK ORGANISATION, PLANNING AND SELF MANAGEMENT 

We expect to see ongoing uploading of information into Blackboard as per course requirements and timely submission of all required assessment tasks.

5. COMMUNICATION, PEOPLE NETWORKING, LANGUAGE AND INTERPERSONAL SKILLS AND TEAMWORK 

We expect to see contributions to relevant discussions in class and with your other members. We expect to see your tasks should demonstrate a very good understanding of strategies for a collaborative approach to object oriented programming in the workplace.


Final Grades Table:

CHD   Competent with High Distinction
CDI     Competent with Distinction
CC      Competent with Credit
CAG    Competency Achieved – Graded
NYC    Not Yet Competent
DNS   Did Not Submit for assessment

Further information regarding the application of the grading criteria will be provided by your teacher.
 

Course Overview: Access Course Overview