Course Title: Programming Fundamentals
Part A: Course Overview
Course Title: Programming Fundamentals
Credit Points: 12.00
140H Computer Science & Information Technology
|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 2 2016
171H School of Science
|Sem 1 2017,
Sem 2 2017,
Sem 1 2018,
Sem 2 2018,
Sem 1 2019,
Sem 2 2019
Course Coordinator: Assoc Professor Tao Gu
Course Coordinator Phone: +61 3 9925 5088
Course Coordinator Email: firstname.lastname@example.org
Course Coordinator Location: 14.11.26
Course Coordinator Availability: By appointment, by email
Pre-requisite Courses and Assumed Knowledge and Capabilities
There are no enforced requisites.
Programming skill represents a generic problem solving ability, and is considered essential for anyone involved in the development and maintenance of software systems.
This course aims to introduce you to foundational knowledge about:
- computer systems;
- their components and interactions between components;
- the conceptual building blocks necessary for programming; and
- basic computer programming skills.
Objectives/Learning Outcomes/Capability Development
Program Learning Outcomes:
This course is an option course for several programs and a core course in MC208 Master of Information Technology contributing to the following Program Learning Outcomes:
1. Enabling Knowledge:
You will gain skills as you apply knowledge with creativity and initiative to new situations. In doing so, you will demonstrate mastery of a body of knowledge that includes recent developments in computer science and information technology
2. Critical Analysis:
You will learn to accurately and objectively examine, and critically investigate computer science and information technology (IT) concepts, evidence, theories or situations, in particular to analyse and model complex requirements and constraints for the purpose of designing and implementing software artefacts and IT systems
3. Problem Solving:
Your capability to analyse complex 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.
You will learn to communicate effectively with a variety of audiences through a range of modes and media, in particular to: interpret abstract theoretical propositions, choose methodologies, justify conclusions and defend professional decisions to both IT and non-IT personnel via technical reports of professional standard and technical presentations.
You will be required to accept responsibility for your own learning and make informed decisions about judging and adopting appropriate behaviour in professional and social situations. This includes accepting the responsibility for independent life-long learning and a high level of accountability. Specifically, you will learn to: effectively apply relevant standards, ethical considerations, and an understanding of legal and privacy issues to designing software applications and IT systems.
Course Learning Outcomes:
Upon successful completion of this course you should be able to:
- Analyse simple computing problems.
- Devise suitable algorithmic solutions and code these algorithmic solutions in a computer programming language.
- Develop maintainable and reusable solutions using the object oriented paradigm.
Overview of Learning Activities
1. Teaching staff inputs:
Syllabus material will be presented, explained and illustrated with demonstrations, examples and problems in lectures, tutorials, laboratories or online. Problem solving exercises, assignments and discussions are designed to develop your analytical skills, drawing on knowledge and frameworks covered in lectures.
2. Your inputs as a learner:
Your active and constructive participation in lecture, and tutorial discussions is expected in addition to weekly private study, completion of tutorial and laboratory questions and careful planning and completion of assessment tasks.
Please note that postgraduate students are expected to demonstrate knowledge and skills at postgraduate level.
A total of 120 hours of study is expected during this course, comprising:
Teacher-guided activities (48 hours): 2 hours per week of lectures and 2 hours per week of tutorial/laboratory classes.
Student-directed activities (72 hours): To achieve high levels of academic results you are expected to spend on average an additional 6 hours per week on self-directed independent learning (reading, online activities and assignments).
Overview of Learning Resources
You should make extensive use of computer laboratories and relevant software provided by the School. You should be able to access course information and learning materials through myRMIT and may be provided with copies of additional materials in class or via email.
Lists of relevant reference texts, resources in the library and freely accessible Internet sites will be provided.
Overview of Assessment
Please note this course has no hurdle requirements. The assessment for this course comprises assignments involves programming tasks, class tests assessing understanding of concepts, a mid-semester test giving early feedback and the final written exam forming the main summative assessment.
Assessment 1: Assignments
This assessment task involving both procedural and object oriented programming supports CLOs 1, 2 & 3
Assessment 2: Weekly Quizzes
This assessment task supports CLOs 1 & 2
Assessment 3: Mid-term Test (week 8)
This assessment supports CLOs 1 and 2
Assessment 4: Written Exam
This assessment task supports CLOs 1, 2 & 3 Please note that postgraduate students are expected to demonstrate knowledge and skills at postgraduate level.