Course Title: Rapid Application Development

Part A: Course Overview

Course Title: Rapid Application Development

Credit Points: 12.00


Course Code




Learning Mode

Teaching Period(s)


City Campus


171H School of Science


Sem 1 2017,
Sem 1 2018,
Sem 1 2019,
Sem 1 2020,
Sem 1 2021

Course Coordinator: Dr Andy Song

Course Coordinator Phone: +61 3 9925 9761

Course Coordinator Email:

Course Coordinator Location: 14.08.11

Course Coordinator Availability: By appointment

Pre-requisite Courses and Assumed Knowledge and Capabilities

Enforced Pre-requisite Courses:

Successful completion of:

COSC2413 / COSC2430 / COSC2453 / COSC2690 - Web Programming (Course ID 039990)
COSC1284 - Programming Techniques (Course ID 004301)
COSC2803 - Programming Studio 1 (Course ID 054081)
COSC2769 - Full Stack Development (Course ID 053172)

Note: it is a condition of enrolment at RMIT that you accept responsibility for ensuring that you have completed the prerequisite/s and agree to concurrently enrol in co-requisite courses before enrolling in a course.

For your information go to RMIT Course Requisites webpage.

Course Description

Rapid application development provides a range of enabling skills for independent development of complete and industry standard software applications.  These skills will equip students to be ready for commercial development and to meet the demand of clients of various sizes, especially startups.

A range of application development, especially web application development frameworks, that are popular in industry, will be introduced in this course.  The focus will be on building applications based on the most widely used framework, Ruby on Rails, which is behind Airbnb, Yammer, Github and many other famous brands.

In addition students will learn model-view-controller (MVC) paradigm through this course.  Students will also learn industry level development methodologies as well as software engineering patterns.  Students will practise rapid application development assignments and projects that involve a variety of real world scenarios.

Objectives/Learning Outcomes/Capability Development

Program Learning Outcomes

his course contributes to the following Program Learning Outcomes for BP094 Bachelor of Computer Science, BP096 Bachelor of Software Engineering, BP162 Bachelor of Information Technology, BP232 Bachelor of Technology (Computing Studies), MC061 Master of Computer Science

  • 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.
  • 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 computing solutions.

On successful completion of this course you should be able to:

  1. Demonstrate knowledge of the fundamental concepts of development frameworks;
  2. Demonstrate knowledge of and perform a range of techniques and procedures for developing a commercial software application using a particular framework;
  3. Design and build essential components of an application using a given development framework;
  4. Demonstrate knowledge of and perform a range of rapid development methodologies that are widely used in the software development industry;
  5. Demonstrate knowledge of and utilize software engineering patterns in development;
  6. Design and manage the development life-cycle of a complete application.

Overview of Learning Activities

The learning activities included in this course are:

  • key concepts will be explained in pre-recorded lectures, classes or online, where syllabus material will be presented and the subject matter will be illustrated with demonstrations and examples;
  • tutorials and/or labs and/or group discussions (including online forums) focused on projects and problem solving will provide practice in the application of theory and procedures, allow exploration of concepts with teaching staff and other students, and give feedback on your progress and understanding;
  • assignments, as described in Overview of Assessment (below), requiring an integrated understanding of the subject matter; and private study, working through the course as presented in classes and learning materials, and gaining practice at solving conceptual and technical problems.


Teacher Guided Hours (face to face): 48 per semester

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


Learner Directed Hours: 72 per semester

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 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 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.

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 Task 1: In-Class Ruby Challenge
Weighting 10%

This assessment supports CLOs 1, 2, 3, 4, 5, 6

Assessment Task 2: Assignment (major development of a web application)
Weighting 40%

This assessment supports CLOs 1, 2, 3, 4, 5, 6

Assessment Task 3: In-Class Rails Challenge
Weighting 10%

This assessment supports CLOs 1, 2, 3, 4, 5, 6

Assessment Task 4: Final development challenge
Weighting 40%

This assessment supports CLOs 1, 2, 3, 4, 5, 6