Course Title: Advanced Programming for Data Science

Part A: Course Overview

Course Title: Advanced Programming for Data Science

Credit Points: 12.00

Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC2815

City Campus

Undergraduate

171H School of Science

Face-to-Face

Sem 2 2021

COSC2815

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

Sem 2 2022,
Sem 1 2024,
Sem 2 2024,
Sem 1 2025

Course Coordinator: Professor Feng Xia

Course Coordinator Phone: -

Course Coordinator Email: feng.xia@rmit.edu.au

Course Coordinator Availability: by appointment


Pre-requisite Courses and Assumed Knowledge and Capabilities

None

 


Course Description

​This is an advanced programming course, designed specifically for students who are interested in the field of Data Science.  

Advanced programming concepts and techniques for the purposes of data processing (e.g., data parsing, cleansing, integration, etc.) will be taught, enabling more complex data pre-processing and getting data ready for down-stream analysis. These include, for example, the handling of data stored in different formats (e.g., CSV, JSON, XML,), the handling of bad and missing data, and the integration of data from different sources.  The course will also introduce both fundamental and the state-of-the-art advanced techniques for text pre-processing, to convert raw natural language text data to feature representations that can be directly used in downstream analysis. The course will also explore a simple web app development framework, which enables students to deploy their developed data driven applications online.  

A Python environment will be used for implementation throughout the course.​​ 


Objectives/Learning Outcomes/Capability Development

Program Learning Outcomes

This course contributes to the program learning outcomes for the following program(s):

BP340P23 - Bachelor of Data Science
BP348 - Bachelor of Data Science (Professional)

PLO1: Knowledge Apply a broad and coherent set of knowledge and skills for developing data driven solutions for contemporary societal challenges.

PLO2: Problem Solving Apply systematic problem solving and decision making methodologies to identify, design and implement data driven 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 data driven solutions, employing data science 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.

PLO6: Responsibility and Accountability Demonstrate integrity, ethical conduct, sustainable and culturally inclusive professional standards, including First Nations knowledges and input in designing and implementing data driven solutions.

For more information on the program learning outcomes for your program, please see the program guide.


On completion of this course you should be able to:

  1. ​Programmatically parse data in the required format; 
  2. Programmatically identify and resolve data quality issues; 
  3. Programmatically integrate data from various sources for data enrichment; 
  4. Pre-process natural language text data to generate effective feature representations; 
  5. Document and maintain an editable transcript of the data pre-processing pipeline for professional reporting; 
  6. Build small to medium scale data-driven applications using a Web development framework.​ 


Overview of Learning Activities

The learning activities for this course include:

  • Key concepts will be explained in pre-recorded lecture videos, activity notebooks, and workshops, where syllabus material will be presented and the subject matter illustrated via demonstrations and examples;
  • Workshops will focus on hands-on activities and problem solving, allowing exploration of concepts with teaching staff and other students, to provide feedback on progress and understanding;
  • Assignments, as described in Overview of Assessment (below), will provide simulation of workplace activities and an opportunity to demonstrate an integrated understanding of the subject matter; and
  • Private study, working through the course materials (available online and in class) and gaining practice at solving conceptual and technical problems.


Overview of Learning Resources

You will make extensive use of computer laboratories and relevant software provided by the School and/or available for download onto private laptops/machines. You will be able to access course information and learning materials via MyRMIT/Canvas and may be provided with copies of additional materials in the library or via freely accessible internet sites.

 

Use the RMIT Bookshop’s textbook list search page to find any recommended textbook(s).


Overview of Assessment

This course has no hurdle requirements.

Assessment Tasks

Assessment Task 1: In-class Coding Exercise 
Weighting 15%
This assessment task supports CLOs 1, 2, 3.

Assessment Task 2: Assignment 1
Weighting 20%
This assessment task supports CLOs 1, 2, 3, 5.

Assessment Task 3: Assignment 2
Weighting 35%
This assessment task supports CLOs 4, 5, 6.

Assessment Task 4: Technical Interview
Weighting 30%
This assessment supports CLOs 1, 2, 3, 4.

If you have a long-term medical condition and/or disability it may be possible to negotiate to vary aspects of the learning or assessment methods. You can contact the program coordinator or Equitable Learning Services if you would like to find out more.