Course Title: Programming Techniques

Part A: Course Overview

Course Title: Programming Techniques

Credit Points: 12.00


Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC1283

City Campus

Postgraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 1 2006,
Sem 2 2006,
Summer2007,
Sem 1 2007,
Sem 2 2007,
Summer2008,
Sem 1 2008,
Sem 2 2008,
Sem 1 2009,
Sem 2 2009,
Sem 1 2010,
Sem 2 2010,
Sem 1 2011,
Sem 2 2011,
Sem 1 2012,
Sem 2 2012,
Sem 1 2013,
Sem 2 2013

COSC1284

City Campus

Undergraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 1 2006,
Sem 2 2006,
Summer2007,
Sem 1 2007,
Sem 2 2007,
Summer2008,
Sem 1 2008,
Sem 2 2008,
Sem 1 2009,
Sem 2 2009,
Sem 1 2010,
Sem 2 2010,
Sem 1 2011,
Sem 2 2011,
Sem 1 2012,
Sem 2 2012,
Sem 1 2013,
Sem 2 2013,
Sem 1 2014,
Sem 2 2014,
Sem 1 2015,
Sem 2 2015,
Sem 1 2016

COSC1284

City Campus

Undergraduate

171H School of Science

Face-to-Face

Sem 1 2017

COSC2451

RMIT University Vietnam

Undergraduate

140H Computer Science & Information Technology

Face-to-Face

Viet2 2011,
Viet1 2012,
Viet3 2012,
Viet2 2013,
Viet1 2016

COSC2451

RMIT University Vietnam

Undergraduate

171H School of Science

Face-to-Face

Viet1 2017

COSC2497

Taylors College KL

Undergraduate

140H Computer Science & Information Technology

Face-to-Face

Offsh 3 10

Course Coordinator: Assoc. Prof. John Thangarajah

Course Coordinator Phone: +61 3 9925 9535

Course Coordinator Email: john.thangarajah@rmit.edu.au

Course Coordinator Location: 14.08.10

Course Coordinator Availability: by appointment


Pre-requisite Courses and Assumed Knowledge and Capabilities

none


Course Description

 

This course introduces programming techniques, including Object-Oriented programming using the Java programming language. This course covers algorithm development using standard control structures, design methods such as step-wise refinement, the object oriented programming framework, the use of standard Java classes and interfaces, the use of container classes, disk file processing and introduces techniques for code reuse.


Objectives/Learning Outcomes/Capability Development

This course contributes to the following Program Learning Outcomes (PLOs) for BP094 Bachelor of Computer Science.

 

  1. Enabling Knowledge:

You will gain skills as you apply knowledge effectively in diverse contexts.

 

  1. Critical Analysis:

You will learn to accurately and objectively examine and consider computer science and information technology (IT) topics, evidence, or situations, in particular to analyse and model requirements and constraints for the purpose of designing and implementing software artefacts and IT systems

 

  1. Problem Solving:

Your capability to analyse problems and synthesise suitable solutions will be extended as you learn to: design and implement software solutions that accommodate specified requirements and constraints, based on analysis or modelling or requirements specification.


Upon successful completion of this course you should be able to:

  1. Demonstrate (through small programming exercises) knowledge and skills with concepts of program design and acceptable coding standards.
  2. Use Java programming language as a vehicle to demonstrate good software development practices
  3. Use arrays and control structures to demonstrate skills of basic algorithms and data structures
  4. Apply knowledge of the basic principles of the object oriented development process to the analysis and design of solutions for small scale problems
  5. Analyze requirements for a small scale programming project
  6. Design and implement small-scale software systems
  7. Explain the rationale for program design, data structures and user interface design chosen
  8. Demonstrate skills for self-directed learning.


Overview of Learning Activities

The learning activities included in this course are:

  1. key concepts will be explained in lectures where course material will be initially presented and demonstrated using programming examples
  2. small class practical sessions will reinforce the concepts taught in the lectures and discuss common problems
  3. students will be guided in the use of tool and programming exercises to analyse and apply the concepts taught in the lectures
  4. design and implement programming solutions to the prescribed problems during self-directed studies
  5. use online forums to discuss any course related materials.

 

A total of 120 hours of study is expected during this course, comprising:

Teacher-directed hours (48 hours): lectures, and laboratory sessions. Each week there will be 2 hours of lecture and 2 hours of computer laboratory work practical sessions. You are encouraged to participate during lectures through asking questions, commenting on the lecture material based on your own experiences and through presenting solutions to written exercises. The tutorial / laboratory sessions will introduce you to the tools necessary to undertake the assignment work. There will be in-class tests held in both the lectures and laboratory sessions throughout the semester.

Student-directed hours (72 hours): You are expected to be self-directed, studying independently outside class.


Overview of Learning Resources

The course is supported by the Blackboard learning management system which provides specific learning resources. See the RMIT Library Guide at http://rmit.libguides.com/compsci

 


Overview of Assessment

 

Assessment Tasks and Feedback

 

The assessment for this course uses a number of different methods and is designed to provide you with regular feedback on your progress. Regular feedback based on student progress will be given in the practical sessions. The marked assignments will be returned within two weeks, if they are submitted on time.

Note: This course has no hurdle requirements.

 

Assessment tasks

 

Assessment Task 1: Programming Assignments

Weighting 25%

This assessment task supports CLOs : 1-8

Assessment Task 2: In-class Tests

Weighting 25%

This assessment task supports CLOs : 1, 3, 4 &7

Assessment Task 3: Final Examination

Weighting 50%

This assessment task supports CLOs : 1, 3, 4, 7 & 8