Skip to main content

Introduction to Software Engineering

Enrollment in this course is by invitation only

About this course

This course will guide you walk through the Software Engineering activities and processes. You're on the way to complete the learning program and going to become a software engineer. On that role, you should have a wider understand about software engineering aspects, not only coding. And this course tries to help you get that sense by looking at an overall picture in software engineering.

Course code:


Course name:

Introduction to Software Engineering



Estimated Duration:

45 hours


Some main objectives of this course:

    • Understanding critical challenges in Software engineering

    • Discussing Software engineering processes for a full life-cycle software development

    • Understainding features of specific phases in software engineering as overview  (what should be digged deeply in next courses)

    • Experiencing some up-to-date methodologies in software development collaboration: Agile, Scrum, Lean

    • Discussing some advanced topics in software engineering: critical systems, SOA, configuration management

Course Structure

The course is divided into four parts:

Module 1: Software Processes

    • Introduction to Software engineering

    • Software Processes

    • Agile Software Development

Module 2: Software Requirement and Architectural Software Design

    • Requirements Engineering

    • System Modeling

    • Architectural Design

Module 3: Detail Design and Implementation

    • Detail Design and Implementation

    • Software Testing

    • Software Evolution

Module 4: Advanced Software Engineering

    • Critical systems

    • Service-oriented software engineering

    • Configuration Management


  • Software Engineering, 9th or 10th Edition, By Ian Sommerville

Course Designer

Nguyễn Tất Trung

Nguyễn Tất Trung

            • Experienced Software Engineer at FPT-Software. Now he is a lecturer at FPT University.


Below is the list of all free massive open online learning sources (MOOC) used for this course by FUNiX: Edward Kench, Agile Training Videos, axurerp, Balsamiq, Barbara Hecke, Bharath Thippireddy dot com, cmbestpractices, Computer Floss, Derek Banas, Enfocus Solutions, GenesisConsulting1, George Fairbanks, HandsonERP, Hong K. Sung, Ian Sommerville, InfoQ, ITGSFrau, ITMPI, JackmanClass, nptelhrd, NTNU openVideo, Oracle Learning Library, Philip Johnson, SelectBusinessSolns, SourceSeek, Tech 24, William Matheson .

All open learning sources used in FUNiX training program are public, constantly updated and freely used. FUNiX is always willing to receive and discuss any comments, suggestions and responses related to our learning sources via email