Course Title: Software Engineering Principles

Part A: Course Overview

Course Title: Software Engineering Principles

Credit Points: 12.00

Course Code




Learning Mode

Teaching Period(s)

Course Coordinator: Anna Lyza Felipe

Course Coordinator Phone: +848 3776 1300

Course Coordinator Email:

Pre-requisite Courses and Assumed Knowledge and Capabilities

Before commencing this course, you should have completed Computer Applications and Computing Engineering.

Course Description

This course is designed to impart knowledge and skills necessary to analyse, design and implement complex software engineering projects. You learn to analyse and design increasingly complex real-life systems, working as teams. The project based approach used requires you to review and refine your design iteratively based on regular feedback from staff. You are also made aware of current software engineering standards and processes. You are also taught to consider qualitative aspects including maintainability, extensibility, reusability and robustness in every stage of the software-engineering life-cycle. At the end of the course you will be able to combine top-down and bottom-up approaches to software design and choose the most appropriate process considering the underlying technology, project duration, the level of risks and the customer expectations.

Objectives/Learning Outcomes/Capability Development

This course contributes to the following Program Learning Outcomes:
1.2. Conceptual understanding of mathematics, numerical analysis, statistics, and computer and information sciences which underpin the engineering discipline.
1.6. Understanding of the scope, principles, norms, accountabilities and bounds of contemporary engineering practice in the specific discipline
2.2. Fluent application of engineering techniques, tools and resources.

On completion of this course you should be able to:

1. Explain the key principles of software engineering.
2. Explain and compare the pros and cons of all major software development processes.
3. Elicit and gather requirements to write up a requirement document.
4. Apply the object-oriented approach to analyse and design a solution using Unified Modelling Language (UML) that satisfies the requirements.
5. Communicate to others the progress of the system development and the content of the design by means of reports and presentations.
6. Work effectively in a team.

Overview of Learning Activities

Learning activities will take the form of:

  • Lectures
  • Tutorials
  • Written and Practical Assignments

Overview of Learning Resources

Learning resources will consist of recommended references and class notes which may be accessed through "myRMIT" if you are in Melbourne and via "RMIT online" if you are based in Vietnam.
The set of references is deliberately broad, including books, journal publications, government reports, industry standards and handbooks, and web-based resources.

Overview of Assessment

Assessment 1: Laboratories
Weighting (%): 30
this task assesses the following learning outcomes:
PLO 1.1, 1.3 and 2.2. CLO 1, 2, 3, 4 and 5

Assessment 2: Projects
Weighting of final grade (%): 30
this task assesses the following learning outcomes:
PLO 1.1, 1.3, 2.2 and 3.2. CLO 1, 2, 3, 4 and 5

Assessment 3: Written examination
Weighting of final grade (%): 40
this task assesses the following learning outcomes:
PLO 1.1, 1.3 and 2.2. CLO 1, 2, 3, 4 and 5