Course Title: Apply intermediate object oriented language skills

Part B: Course Detail

Teaching Period: Term1 2010

Course Code: COSC5923C

Course Title: Apply intermediate object oriented language skills

School: 650T TAFE Business

Campus: City Campus

Program: C6074 - Advanced 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: 50

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

Apply introductory object oriented language skills         ICAB4219B                  COSC 5356C

Course Description

This course will include coverage of the broad areas of: building application programs using objects; internal usage of collections of data; using coding standards for ease of code maintenance; saving and retrieving objects to/from binary files; overloading functions, exception handling, and inheritance; connecting to, and manipulating (creating, querying, inserting, deleting, and updating), a database; GUIs; debugging, testing, and documenting programs.


National Codes, Titles, Elements and Performance Criteria

National Element Code & Title:

ICAB5223A Apply intermediate object oriented language skills

Element:

Build applications using provided language utilities
Write programs that interact with a database
Write GUI
Debug application
Test application
Create and maintain documentation

Performance Criteria:

1. Build applications using provided language utilities

1. Divide multiple source code files into logical units/packages
2. Use at least two of the utilities of the target language allowing for internal storage of collections of data
3. Use the utilities of the target language providing internal data sorting and searching facilities
4. Employ integrated development environment facilities to make files to automate program building
5. Follow guidelines for developing maintainable code adhering to coding standards
6. Use the facilities in the language for persisting objects to binary files
7. Use the Operator and function/method overloading facilities available in the language at an introductory level
8. Demonstrate ability to use exception handling techniques to ensure program stability
9. Demonstrate use of a class that is based on multiple inheritances

2. Write programs that interact with a database

1. Design and implement programs that connect to a database
2. Design and implement programs that use the language facilities to extract, update and delete data stored in a database
3. Design and implement programs that use the language’s facilities to manipulate database structure (query, create, and delete)
4. Write programs that deliver transactional integrity

3. Write GUI

1. Employ GUI framework or text windowing interface appropriate to the chosen language
2. Demonstrate use of standard GUI components
3. Use the facilities within the language for GUI objects to respond to user and program generated events

4. Debug application

1. Use standalone debugging tools or tools provided by integrated development environment to examine variables and trace running code
2. Use debugger to detect logical and coding errors
3. Use tracing of code and examination of variable contents during execution to detect and correct errors


5. Test application

1. Design and document limited tests of code
2. Undertake limited testing of produced code to ensure program specification is complied with
3. Capture and document test results

6. Create and maintain documentation

1. Read and interpret supplied design document to create code
2. Create and maintain program documentation


Learning Outcomes



Details of Learning Activities

In this course students will have practical lab sessions and out-of-class research and homework (including the programming of a major project).


Teaching Schedule

 

 

The total number of scheduled hours of teaching, learning and assessment involved in this course includes all planned activities including face-to-face classes, lectures, workshops and seminars; workplace visits, online learning and other forms of structured teaching and learning. The total scheduled hours also covers the amount of effort required to undertake, evaluate and complete all assessment requirements, including observation of work performance, discussions with supervisors and others providing third party evidence and one on one and group assessment sessions with students.

Wk Week Beginning (Monday) Weekly Topics Resources
Textbook: Head First Java 2nd Edn.

Elements Covered
&
Assessments

1 8th Feb 2010 Introduction to Course
Review of Classes & Objects, Creating Code from Supplied Design Documentation
Coding Standards
Textbook: Chapters 1 to 9 & 14
Class Handout: Coding Standards
1 & 6
2 15th Feb 2010 The Java API, Program Documentation & Javadoc
Review of Arrays & ArrayLists, and More Data Structures
Class Handout: Using Eclipse – Javadoc
Textbook: Chapters 3, 6 & 16
1 & 6
Project Available
3 22nd Feb 2010 Review of Text File Processing, Interfaces, and, Saving (Persisting) and Retrieving Objects Textbook: Chapter 14 1 & 6
 4 1st Mar 2010  Relationships: Inheritance & Inclusion, and, Polymorphism & Method Overriding
Collections of Data and Sorting & Searching
 Textbook: Chapters 7, 8 & 16
Class Handout: Sorting & Searching
 1, 4, 5 & 6
 5 8th Mar 2010  Review of Constructor and Method Overloading
Testing & Debugging with Eclipse
Textbook: Chapter 9
Class Handout: Using Eclipse – Testing & Debugging
1, 4, 5, & 6
Project Part 1 Due
 6 15th Mar 2010 Revision See Above See Above
 7 22nd Mar 2010 Mid-Semester Test
Project Part 1 Feedback
   
 8

29th Mar 2010 & 5th Apr 2010

Introduction to GUI Programming using Inbuilt Java GUIs (JOptionPane) Lab Sheet: Introduction to GUI Programming in Java using JOptionPane 1, 3, 4, 5 & 6
 9 12th Apr 2010 GUIs, Interfaces (Events & Listeners) and Multiple Inheritance, and More on Exception Handling Textbook: Chapters 8 & 11 1, 3, 4, 5 & 6
Project Part 2 Due
 10

19th Apr 2010

More Advanced GUI Programming – Basic Layout Managers and Events & Listeners Textbook: Chapters 12 & 13 1, 3, 4, 5 & 6
 11 26th Apr 2010 Introduction to Database Programming – Querying a Database (MS Access) Table, Inserting, Updating, & Deleting Records Lab Sheet: Database Programming 1, 2, 3, 4, 5 & 6
 12 3rd May 2010 Even More Advanced GUI Programming – the GridBag Layout Manager Lab Sheet: GridBagLayout
Project Part 2 Feedback
1, 2, 3, 4, 5 & 6
 13 10th May 2010 More on Database Programming – Creating and Deleting Tables, and
Databases & Transactional Integrity
Lab Sheet: Introduction to Transactional Integrity in Java 1, 2, 3, 4, 5 & 6
 14 17th May 2010 Work on Project See Above 1, 2, 3, 4, 5 & 6
 15 24th May 2010 Work on Project See Above 1, 2, 3, 4, 5 & 6
 16 31st May 2010 Finalisation of Project See Above Project Part 3 Due
 17 7th Jun 2010 Revision

See Above

Final Project Feedback

See Above

 18 14th Jun 2010 Project Resubmit & Final Test    
         
         
         


Learning Resources

Prescribed Texts

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


References

The Java Tutorials at: http://java.sun.com/developer/onlineTraining/
Sparke, Gerard. (2006) The Java Way: An Introduction to Programming in Java (2nd Edn.) French's Forest: Pearson Education Australia.
Geary, David M. (1999) Graphic Java: Mastering the JFC (Volumes 1 & 2 – 3rd Edn.) Palo Alto: Prentice Hall.
Any book that you can find on JDBC Programming.


Other Resources


Overview of Assessment

Assessment may incorporate a variety of methods including technical requirements documentation, homework, assignments, group and/or individual projects and in class exercises, written tests, practical problem solving exercises, presentations, practical tests and a final exam. 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. Students will be provided with feedback throughout the course to check their progress.


Assessment Tasks

Assessment 1, Due Week 5, Project Part 1 - Ensure that a planning process is incorporated into the project. Using earlier project, code the 3rd tier to save/retrieve objects. Documenting, testing, and debugging the application - CA / NYC, 10%

Assessment 2, Week 7, Mid-Semester Test  - Provides an opportunity to demonstrate an understanding of theoretical and practical aspects of Java OO programming, including relationships, polymorphism and collections - CA / NYC, 25%

Assessment 3, Due Week 9, Project Part 2 - Continuation of project program design process and systematic ongoing project task analysis and review. Adding GUI components to the 1st tier & building on the 2nd tier. Documenting, testing, and debugging the application - CA / NYC, 15%

Assessment 4, Due Week 16, Project Part 3 - Rebuilding the 3rd tier to interact with a database. Documenting, testing, and debugging the application - CA / NYC, 25%

Assessment 5, Week 18, Final Test - Provides an opportunity to demonstrate an understanding of theoretical and practical aspects of Java GUI and database OO programming - 25%


Assessment Matrix

Other Information

Competency and Grading Requirements:
To be deemed competent students must demonstrate an understanding of all elements of a competency. Assessment methods have been designed to measure achievement of each competency in a flexible manner over multiple tasks.
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.
All assessments for this course must be completed to achieve a CA (Competency Achieved) grade.
Each assessment task will also carry a numerical weighting to be used for grading purposes. The grade applied to this weighting will only be awarded if a CA has been achieved in all compulsory assessment tasks.
If a student has been marked NYC (Not Yet Competent) in any of the assessment tasks, the weighting will carry no value until the student has obtained a CA.
If a CA is achieved on re-assessment then a maximum mark of 50% of the original weighting will be granted for that assessment.
Reassessments will only be granted to students who were either unsuccessful in the first attempt or have an approved special consideration application.
A final examination worth 25% will be offered to students who have achieved CA.


RMITUniversity Sustainability Statement
In adherence with RMITUniversity’s commitment to sustainability, course teachers will seek to incorporate environmental concerns in the facilitation of this course. These include, but are not limited to:
 Conserving natural resources
 Using recycled materials wherever possible
 Minimising pollution
 Applying energy savings measures
 Reducing waste
Students are encouraged to identify and follow environmental and resource efficient ways of working whilst studying this course.

Course Overview: Access Course Overview