1- Understand and implement the best practices of software engineering to develop high-performance, maintainable software:
2- Analyze, localize and solve problems in complex software systems.
3- Acquire new knowledge and technical skills through self-learning.
4- Understand computer essentials sufficiently to be prepared to pursue graduate studies in ICT
5- Engage in life-long learning for emerging technologies and their implications for ICT.
6- Understand current issues in software development which impact society.
7- Communicate effectively in oral and written formats in both technical and non-technical environments.
8- Work effectively as a team member.