Part A: Course Overview

Course Title: C++ Programming Studio

Credit Points: 24.00

Flexible Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC2804

City Campus

Undergraduate

171H School of Science

Face-to-Face

UGRDFlex21 (All)

COSC2804

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

UGRDFlex22 (F2S2),

UGRDFlex22 (F4S2)

COSC2804

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

UGRDFlex24 (STEM)

COSC2804

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

UGRDFlex25 (STEM)

Course Coordinator: Fabio Zambetta

Course Coordinator Phone: +61 (3) 99259694

Course Coordinator Email: fabio.zambetta@rmit.edu.au

Course Coordinator Location: -

Course Coordinator Availability: by appointment


Pre-requisite Courses and Assumed Knowledge and Capabilities

Recommended Concurrent Study

It is recommended to undertake the following course/s at the same time as this course as it contains areas of knowledge and skills which are implemented together in practice.

 

If you have completed prior studies at RMIT or another institution that developed the skills and knowledge covered in the above course/s you may be eligible to apply for credit transfer.

Alternatively, if you have prior relevant work experience that developed the skills and knowledge covered in the above course/s you may be eligible for recognition of prior learning.

Please follow the link for further information on how to apply for credit for prior study or experience.


Course Description

C++ Programming Studio is an intermediate studio-based course that focuses on the further acquisition and development of technical and professional skills for computing. The studio-based approach provides an authentic problem setting where theory and practice of computer architecture are blended. In this course you will develop programming principles, skills and practices for modern software development, continuing the study of design, development and testing from previous courses. These learning outcomes will be achieved by developing a medium-sized real-world application.


Objectives/Learning Outcomes/Capability Development

Program Learning Outcomes

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

BP094P23 - Bachelor of Computer Science
BP096P25 - Bachelor of Software Engineering (Professional)
BP347 - Bachelor of Computer Science (Professional)

PLO 1    Knowledge - Apply a broad and coherent set of knowledge and skills for developing user-centric software engineering solutions for contemporary societal challenges.
PLO 2    Problem Solving - Apply systematic problem solving and decision-making methodologies to identify, design and implement software engineering solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects.
PLO 3    Cognitive and Technical Skill - Critically analyse and evaluate user requirements and design systems employing software development tools, techniques and emerging technologies.
PLO 4    Communication -  Communicate effectively with diverse audiences, employing a range of communication methods in interactions to both computing and non-computing personnel.
PLO 5    Collaboration and Teamwork - Demonstrate effective teamwork and collaboration by using tools and practices to manage and meet project deliverables. 
PLO 6    Responsibility and Accountability - Demonstrate integrity, ethical conduct, sustainable and culturally inclusive professional standards, including First Nations knowledges and input in designing and implementing software engineering solutions. 

BH101CS - Bachelor of Science (Dean's Scholar, Computer Science) (Honours)

PLO 1    Enabling Knowledge
PLO 2    Critical Analysis
PLO 3    Problem Solving
PLO 4    Communication
PLO 5    Teamwork
PLO 7    Responsibility and Scholarship

 

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


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

  1. Analyse and solve computing problems; design and develop suitable algorithmic solutions; implement and debug algorithmic solutions using modern skills and practices in the C++ programming language;
  2. Apply fundamentals of computer architecture , operating systems, and system deployment to the design and development of medium-sized software applications;
  3. Demonstrate the ability to communicate effectively with industry professionals and peers;
  4. Demonstrate skills for self-directed learning, reflection and evaluation of your own and your peers work to improve professional practice;
  5. Demonstrate adherence to appropriate standards and practice of Professionalism and Ethics.


Overview of Learning Activities

You will be actively engaged in a range of learning activities such as lectorials, tutorials, practicals, laboratories, seminars, project work, class discussion, individual and group activities. Delivery may be face to face, online or a mix of both. 

You are encouraged to be proactive and self-directed in your learning, asking questions of your lecturer and/or peers and seeking out information as required, especially from the numerous sources available through the RMIT library, andthrough links and material specific to this course that is available through myRMIT Studies Course. 

Working in groups, you will identify, discuss and devise solutions to practical problems using, for example, theory, research, experimental data and your group’s collective creativity.


Overview of Learning Resources

RMIT will provide you with resources and tools for learning in this course through myRMIT Studies Course. 

You will make extensive use of computer laboratories and relevant software provided by the School of Computing Technologies.

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 myRMIT student portal. 


Overview of Assessment

This course has no hurdle requirements.

Assessment Tasks

Assessment Task 1: Programming Assignment 1 (Individual)
Weighting: 20%
This task supports CLOs: 2, 4, 5.

Assessment Task 2:Programming Assignment 2 (Individual)
Weighting: 30%
This task supports CLOs: 2, 4, 5.

Assessment Task 3:Programming Assignment 3 (Team)
Weighting: 50%
This task supports CLOs: 1, 3, 4, 5.

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.