Software Engineering

Software engineering comprises the core principles consistent in software construction and maintenance: fundamental software processes and life-cycles; mathematical foundations of software engineering; requirements analysis; software engineering methodologies and standard notations; principles of software architecture and re-use; software quality frameworks and validation; software development; and maintenance environments and tools. Current industry-strength programming languages, technologies and systems feature highly in the practical components, electives and projects of the course.

As a software engineer, you will apply engineering principles to systematically analyse, develop and improve software to ensure it runs effectively, safely and securely. You will acquire high-level programming expertise, but software engineering goes well beyond writing code. Most modern IT systems are so complicated that teams of people must work together to create them. This specialisation’s emphasis on collaborative studio-based learning will give you strong skills in teamwork, project management and communication.

You can apply for the highly regarded IT Industry Based Learning (IBL) program to do a half-year placement with leading Malaysian and global organisations. Placement counts towards your course and is supported by scholarship.


Monash Graduate Attributes

Monash University prepares its graduates to be:

1. Responsible and effective global citizens who:

          a. engage in an internationalised world
          b. exhibit cross-cultural competence
          c. demonstrate ethical values

2. Critical and creative scholars who:

          a. produce innovative solutions to problems
          b. apply research skills to a range of challenges
          c. communicate perceptively and effectively


Program Education Objectives (PEOs)

The Software Engineering discipline expects to produce graduates, who are:

  1. competent in Software Engineering
  2. responsible and effective global citizens
  3. leaders in their chosen profession or society at large


Program Outcomes (POs)

The Software Engineering discipline has developed a set of Program Outcomes (POs) for all of its graduates based on the competencies required by the Malaysian Engineering Accreditation Council.

  1. Software Engineering Knowledge: Apply knowledge of mathematics, natural science, engineering fundamentals and specialization in Software Engineering to the solution of complex engineering problems
  2. Problem Analysis: Identify, formulate, survey research literature and  analyze complex Software Engineering problems reaching substantiated conclusions using first principles of mathematics, natural sciences and engineering sciences
  3. Design/Development of Solutions: Design solutions for complex Software Engineering problems and design systems, components or processes that meet specified needs.
  4. Research-based Investigation: Conduct investigations of complex Software Engineering problems using research-based knowledge and research methods including design of experiments, analysis and interpretation of data, and synthesis of information to provide valid conclusions.
  5. Modern Tool Usage: Create, select and apply appropriate techniques, resources, and modern engineering and IT tools, including prediction and modelling, to complex Software Engineering problems, with an understanding of the limitations
  6. Engineer and Society: Apply reasoning informed by contextual knowledge to assess societal, health, safety, legal and cultural issues and the consequent responsibilities relevant to professional engineering practice and solutions to complex Software Engineering problems
  7. Environment and Sustainability: Understand and evaluate the sustainability and impact of professional engineering work in the solution of complex Software Engineering problems in environmental contexts
  8. Ethics: Apply ethical principles and commit to professional ethics and responsibilities and norms of engineering practice
  9. Communication: Communicate effectively on complex Software Engineering activities with the engineering community and with society at large, such as being able to comprehend and write effective reports and design documentation, make effective presentations, and give and receive clear instructions
  10. Individual and Team work: Function effectively as an individual, and as a member or leader in diverse teams and in multi-disciplinary settings
  11. Lifelong Learning: Recognize the need for, and have the preparation and ability to engage in independent and life-long learning in the broadest context of technological change
  12. Project Management and Finance: Demonstrate knowledge and understanding of engineering management principles and economic decision-making and apply these to manage projects


Course