ECS2301 Software Engineering and Project – Lesson 1 (software development processes)


The aim of this course is to introduce the principles of Object Oriented Programming (OOP) paradigm, and the fundamentals of Software Engineering.


  • ECS1300 Programming fundamentals with Python
  • Basic programming knowledge and algorithms

Learning outcomes

  1. Develop computer programs using the Object Oriented Programming (OOP) paradigm.
  2. Write computer programs to implement basic algorithms, with a GUI, considering event handling, and exceptions.
  3. Design a software project to given specifications following the software engineering fundamentals.

Top to bottom vs bottom to top approach. Monolithic to component based software engineering.

All lessons >