Skip to content Mobile Contact Library A-Z

Course Title: Software Engineering Fundamentals

Part A: Course Overview

Course Title: Software Engineering Fundamentals

Credit Points: 12


Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

ISYS1117

City Campus

Postgraduate

140H Comp Sci & Info Technology

Face-to-Face

Sem 1 2006,
Sem 2 2006,
Sem 1 2007,
Sem 2 2007,
Sem 1 2008,
Sem 2 2008,
Sem 1 2009,
Sem 2 2009,
Sem 1 2010,
Sem 2 2010,
Sem 1 2011,
Sem 2 2011

ISYS1118

City Campus

Undergraduate

140H Comp Sci & Info Technology

Face-to-Face

Sem 1 2006,
Sem 2 2006,
Sem 1 2007,
Sem 2 2007,
Sem 1 2008,
Sem 2 2008,
Sem 2 2009,
Sem 1 2010,
Sem 2 2010,
Sem 1 2011,
Sem 2 2011

ISYS1118

City Campus

Undergraduate

140H Comp Sci & Info Technology

Face-to-Face or Internet

Sem 1 2009

ISYS2089

RMIT Intl University Vietnam

Undergraduate

140H Comp Sci & Info Technology

Face-to-Face

Viet3 2008,
Viet1 2009,
Viet3 2009,
Viet1 2010,
Viet2 2010,
Viet3 2010,
Viet1 2011,
Viet2 2011,
Viet3 2011

ISYS3292

Taylors College KL

Undergraduate

140H Comp Sci & Info Technology

Face-to-Face

Offsh 3 10,
Offsh 1 11

Course Coordinator: Charles Thevathayan

Course Coordinator Phone: +61 3 9925 9604

Course Coordinator Email:charles.thevathayan@rmit.edu.au

Course Coordinator Location: 14.10.12


Pre-requisite Courses and Assumed Knowledge and Capabilities

If this is your first semester/course in the School of Computer Science and IT, you should attend the Unix Survival Skills induction sessions (held during Weeks 0, 1 and 2 of each semester; see http://www.rmit.edu.au/compsci).
Corequisite Intro to Programming.


Course Description

This course aims to guide you in both the theoretical and practical aspects of developing computer solutions for real-world problems. You will study the tools and techniques used in analysis and design of software systems, and apply those tools within a recognised software development methodology and within the context of industry-based examples.


Objectives/Learning Outcomes/Capability Development

Relevant program capabilities are embedded in the learning outcomes for this course. In meeting these learning outcomes you will gain or improve your capabilities in:

Enabling Knowledge: apply knowledge effectively to new situations and learn from the experience.

Critical Analysis: examine and consider accurately and objectively any topic, evidence, or situation. More specifically:

  • Analyse and model requirements and constraints for the purpose of designing and implementing software systems;
  • Evaluate and compare designs of such systems on the basis of requirements of the organisational needs.
Problem Solving: analyse problems and synthesise suitable solutions. Specifically:
  • Design and implement software solutions that accommodate specified requirements and constraints, based on analysis or modelling or requirements specification.
Communication: communicate effectively with a variety of audiences through a range of modes and media. Specifically:
  • Present and explain complex software solutions, alternative solutions, and decision recommendations to both IT and non-IT personnel via technical reports of professional standard and technical presentations.
Team Work: work as an effective and productive team member in a range of professional and social situations. Specifically:
  • Work effectively in different roles, to form, manage, and successfully produce outcomes from teams, whose members may have diverse cultural backgrounds and life circumstances, and differing levels of technical expertise.
Responsibility: accept responsibility for your own (life-long) learning and make informed decisions in judging and adopting appropriate behaviour in professional and social situations. Specifically:
  • Effectively apply relevant standards, ethical considerations, and an understanding of legal and privacy issues to designing software systems.


At the conclusion of the course, you should be able to:

- Explain the theory and foundations of software engineering.
- Explain key aspects of models and processes for designing a complex software system.
- Apply key aspects of a software engineering process to the development of a complex software system.
- Create models for analysing the requirements of a complex software system.
- Evaluate requirements for a complex software system.
- Apply the process of analysis and design using the object-oriented approach.
- Apply analytical and problem-solving skills to determine the requirements of a complex software system.
- Apply analytical and problem-solving skills to design a complex software system that satisfies specific requirements.
- Work effectively in a team to analyse the requirements of a complex software system, and to create a design that satisfies these requirements.
- Communicate to others the progress of the system development and the content of the design by means of reports and presentations.
- Effectively apply relevant standards, ethical considerations, and an understanding of legal and privacy issues to designing software systems.
- Keep abreast of current trends in the area of software engineering.    


Overview of Learning Activities

Teaching staff inputs: This course consists of lectures, demonstrations, online tutorials, and laboratory classes. Each week there will be 2 hours of lectures, and, 1 hour of demonstration and from the second week, 1 hour of supervised laboratory work.

The weekly lecture series continues throughout the semester. The lecture material comes in part from the prescribed textbook, from other referred texts and from the lecturer’s own experience. It is designed such that students are able to follow examples during lectures and follow up with further study and examples in the demo and text book. Laboratory experiences include using a Computer Aided Software Engineering tool to model possible solutions to given problems; converting detailed design models to computer code; and taking part in a formal review of system requirements. The online tutorials are provided as supplementary learning material and are provided by a group of experienced software engineers, some currently employed in industry.

Your inputs as learners: Your active and constructive participation in lecture, and tutorial discussions is expected in addition to weekly private study, completion of tutorial and laboratory questions and careful planning and completion of assessment tasks.


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 the Learning Hub (also known as online@RMIT) 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 is assessed via a team project and a formal written examination.

For standard assessment details, including hurdle requirements, relating to Computer Science and IT courses see: http://www.rmit.edu.au/compsci/cgi