Course Title: Programming Techniques
Part A: Course Overview
Course Title: Programming Techniques
Credit Points: 12.00
Terms
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, Sem 2 2017, Sem 1 2018, Sem 2 2018, Sem 1 2019, Sem 2 2019, Sem 1 2020, Sem 2 2020 |
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: Dr Haytham Fayek
Course Coordinator Phone: +61 3 9925 0858
Course Coordinator Email: haytham.fayek@rmit.edu.au
Course Coordinator Location: 014.11.003
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.
- Enabling Knowledge:
You will gain skills as you apply knowledge effectively in diverse contexts.
- 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
- 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:
- Demonstrate (through small programming exercises) knowledge and skills with concepts of program design and acceptable coding standards.
- Use Java programming language as a vehicle to demonstrate good software development practices
- Use arrays and control structures to demonstrate skills of basic algorithms and data structures
- Apply knowledge of the basic principles of the object oriented development process to the analysis and design of solutions for small scale problems
- Analyze requirements for a small scale programming project
- Design and implement small-scale software systems
- Explain the rationale for program design, data structures and user interface design chosen
- Demonstrate skills for self-directed learning.
Overview of Learning Activities
The learning activities included in this course are:
- key concepts will be explained in lectures where course material will be initially presented and demonstrated using programming examples
- small class practical sessions will reinforce the concepts taught in the lectures and discuss common problems
- students will be guided in the use of tool and programming exercises to analyse and apply the concepts taught in the lectures
- design and implement programming solutions to the prescribed problems during self-directed studies
- 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