top of page
Bachelor of Software Engineering

General description:

Software engineering applies both computer science and engineering principles, and practices to the design and development of software systems. It is a disciplined approach to software development that includes negotiating and documenting the software's requirements, following fundamental design principles, analyzing design alternatives, and evaluating whether the final product meets its requirements. Such evaluation not only checks that a product functions correctly, but also determines that it is safe, reliable, maintainable, and economical to produce and to operate.


Software engineers must be able to work in teams. They may also have to interact with specialists from other disciplines, who may have varying levels of software expertise.



The program covers early development activities, analysis, and specification, in the development process; systematic, predictable processes that help to ensure that a software product satisfies its requirements; consideration of non-functional properties such as performance, maintainability, usability, economy and time-to-market-that often determine whether a software product is acceptable.


The program also develops the know-how and tools that allow the program coordinator of the activities of large project groups.



Graduates can pursue careers in software engineering and development, consulting, work for financial institutions, technology companies, and software corporations.


Learning outcomes:

  1. Negotiate the requirements for a new feature or product.

  2. Specify and implement a software solution to meet those requirements.

  3. Analyze alternative software architectures and design trade-offs.

  4. Identify and adopt design patterns.

  5. Evaluate whether the final software product meets its requirements.

  6. Understand and extend existing software systems.

bottom of page