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)

COSC2399

City Campus

Undergraduate

155T Vocational Health and Sciences

Face-to-Face

Sem 1 2008,
Sem 2 2008,
Sem 2 2009,
Sem 1 2010

Course Coordinator: Natalya Stepanova

Course Coordinator Phone: +61 3 9925 4931

Course Coordinator Email: natalya.stepanova@ems.rmit.edu.au

Course Coordinator Location: RMIT Building 51, Level 6 Room 3


Pre-requisite Courses and Assumed Knowledge and Capabilities

Pre-requisite: Programming 2

To successfully complete this course you must have a good ability in programming.
You are required to have successfully completed the course Programming 2, or an equivalent course, or provide evidence of equivalent capabilities.


Course Description

This course extends the study of programming principles developed in prerequisite courses, including use of defensive programming, debugging, testing, and coding standards and practices. The material is presented within the context of a detailed study of the C programming language. The course may serve as a foundation for further studies in computer science and software engineering.


Objectives/Learning Outcomes/Capability Development

Relevant program capabilities are embedded in the learning outcomes for this course. In meeting these learning outcomes you will also gain or improve capabilities in:
AD1 Enabling Knowledge
• Apply knowledge effectively to new situations and learn from the experience.
AD2 Critical Analysis
• Examine and consider accurately and objectively any topic, evidence or situation.
• Analyse and model requirements and constraints for the purpose of designing and implementing information technology systems.
• Evaluate and compare designs of such systems on the basis of requirements of organisational needs.
AD3 Problem Solving
• Analyse problems and synthesise suitable solutions.
• Design and implement information technology systems that accommodate specified requirements and constraints, based on analysis or requirements specification.
AD4 Communication
• Communicate effectively with a variety of audiences through a range of modes and media.
• Present and explain complex information technology systems solutions, alternative solutions and decision recommendations to IT and non-IT personnel via technical reports of professional standard and technical presentations.
AD5 Team Work
• Work as an effective and productive team member in a range of professional and social situations.
• Work effectively in different roles to form, manage and successfully produce outcomes from teams, whose members may have diverse cultural backgrounds and life circumstances, and differing levels of technical expertise.
AD6 Responsibility
• Accept responsibility for one’s own learning and make informed decisions in judging and adopting appropriate behaviour in professional and social situations. This includes accepting responsibility for life-long learning.
• Effectively apply relevant standards, ethical considerations and an understanding of legal and privacy issues to designing IT systems.
AD7 Sustainability
• Balance the technical, economic, environmental and social demands of a problem.
• Ensure safety, health and welfare.


On successful completion of this course you will be able to:
1. Read, comprehend and write non-trivial programs using the ANSI/ISO C programming language.
2. Use many widely used programming principles and C programming idioms.
3. Successfully program using modules and interfaces in C.
4. Effectively use dynamic memory and code dynamic data structures such as simple linked lists and binary trees in C.
5. Effectively use debugging techniques and tools.


Overview of Learning Activities

The learning activities included in this course are:

  • Attendance at lectures where syllabus material will be presented, explained and illustrated with demonstrations and examples;
  • Completion of tutorial questions and laboratory programming exercises and projects, all designed to give further practice in the application of theory and procedures, and to give feedback on your progress and understanding;
  • Private study to consolidate your understanding of the theory and practice.


Overview of Learning Resources

You will make extensive use of computer laboratories and relevant software provided by the School. You will be able to access course information and learning materials through the Learning Hub (also known as online@RMIT).
Lists of relevant textbooks, reference texts, resources in the Library and relevant internet sites will be provided.


Overview of Assessment

The assessment for this course comprises practical work involving the development of computer programs, and a final exam.