Course Title: Essentials of Computing

Part A: Course Overview

Course Title: Essentials of Computing

Credit Points: 12.00

Important Information:

Please note that this course may have compulsory in-person attendance requirements for some teaching activities. 

To participate in any RMIT course in-person activities or assessment, you will need to comply with RMIT vaccination requirements which are applicable during the duration of the course. This RMIT requirement includes being vaccinated against COVID-19 or holding a valid medical exemption. 

Please read this RMIT Enrolment Procedure as it has important information regarding COVID vaccination and your study at RMIT:

Please read the Student website for additional requirements of in-person attendance: 

Please check your Canvas course shell closer to when the course starts to see if this course requires mandatory in-person attendance. The delivery method of the course might have to change quickly in response to changes in the local state/national directive regarding in-person course attendance. 


Course Code




Learning Mode

Teaching Period(s)


City Campus


175H Computing Technologies


Sem 2 2024

Course Coordinator: Daniel Beck

Course Coordinator Phone: +61 3 9925

Course Coordinator Email:

Course Coordinator Location: City Campus

Pre-requisite Courses and Assumed Knowledge and Capabilities

Enforced Pre-requisite:

MATH2411 Mathematics for Computing 1 (Course ID 054076)


COSC2123 Algorithms and Analysis (Course ID 004302).

Course Description

Essentials of Computing introduces you to foundational concepts and techniques in Computer Science. You will learn and apply fundamental theories of computation and how these are realised and related to different programming paradigms. Topics include the study of various models of computation (e.g., finite state automata, grammars, regular expressions, Turing Machines, lambda calculus), computational complexity (e.g., P vs NP), limits of computation, and realisation of computation via programming paradigms (e.g., imperative vs declarative programming).

Objectives/Learning Outcomes/Capability Development

The course will contribute to following program learning outcomes for the following programs:

BP094 Bachelor of Computer Science
BP347 Bachelor of Computer Science (Professional).

PLO1: Knowledge - Apply a broad and coherent set of knowledge and skills for developing user-centric computing solutions for contemporary societal challenges.

PLO2: Problem Solving - Apply systematic problem solving and decision-making methodologies to identify, design and implement computing solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects.

PLO3: Cognitive and Technical Skill - Critically analyse and evaluate user requirements and design systems employing software development tools, techniques, and emerging technologies.

PLO4: Communication - Communicate effectively with diverse audiences, employing a range of communication methods in interactions to both computing and non-computing personnel.

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

  • CLO 1: Identify the core concepts and notions of fundamental theories of computing and their relation to programming.
  • CLO 2: Discriminate between core ideas of computation and programming and computing technology.
  • CLO 3: Analyse and compare the characteristics of different types of computational models, problems, and programming paradigms.
  • CLO 4: Design and implement solutions to a wide range of problems,
  • CLO 5: Communicate clearly and effectively using the technical language of the field correctly. 

Overview of Learning Activities

Teacher-guided learning will include lectures to present main concepts, small-class tutorials to reinforce those concepts, and supervised computer laboratory sessions to support programming practice under guidance from an instructor.

Learner-directed hours include time spent reading and studying lecture notes and prescribed text in order to better understand the concepts; working through examples that illustrate those concepts; and performing exercises and assignments designed by the teachers to reinforce concepts and develop practical skills across a variety of problem types.

Overview of Learning Resources

You are encouraged to bring your laptops and use the freely available software to conduct the laboratories.

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 Canvas and the RMIT Student website, and may be provided with copies of additional materials in class or via email. 

A list of recommended learning resources will be provided by your lecturer, including books, journal articles and web resources. You will also be expected to seek further resources relevant to the focus of your own learning:

There are services available to support your learning through the University Library. The Library provides guides on academic referencing and subject specialist help as well as a range of study support services. For further information, please visit the Library page on the RMIT University website and the RMIT Student website.

Overview of Assessment

This course has no hurdle requirements.

Assessment Component 1:  Take-home Assignments
This assessment task supports CLO1, CLO2, CLO3, CLO4 and CLO5.

Assessment Component 2: Quizzes
Weighting: 10%
This assessment task supports CLO1, CLO2 and CLO3.

Assessment Component 3: Exam
Weighting: 50%
This assessment task supports CLO1, CLO2, CLO3, CLO4 and CLO5.