The software engineering program enables students, by the time of graduation, to achieve the ability to:
a) Apply their knowledge of mathematics, sciences, and computer science to the modeling, analysis, and measurement of software artifacts.
b) Work effectively as leader/member of a development team to deliver quality software artifacts.
c) Analyze, specify and document software requirements for a software system.
d) Develop alternative design solutions to a given problem and recommend the best one within limitations of cost, time, knowledge, existing systems, and organizations.
e) Implement a given software design using sound development practices.
f) Verify, validate, assess and assure the quality of software artifacts.
g) Design, select and apply the most appropriate software engineering process for a given project, plan for a software project, identify its scope and risks, and estimate its cost and time.
h) Express and understand the importance of negotiation, effective work habits, leadership, and good communication with stakeholders, in written and oral forms, in a typical software development environment.
i) Understand the impact of computing solutions in a global and societal context.
j) Recognize and be guided by the social, professional, legal, ethical issues involved in the use and development of computer & software technology.
k) Keep abreast of current developments in the discipline to continue their own professional development and life-long learning.
l) Employ appropriate methods and tools for the specification, design, implementation, and evaluation of software systems.