Program Learning Outcomes
Master of Science in Computer Engineering:
- Understands and is able to apply the latest cutting edge computer hardware technologies
- Is able to apply digital signal processing and digital circuit design
- Understands computer architecture and organization and hardware/software integration
- Is able to apply biosignal processing and low level human/computer interaction
- Understands computer operating systems including embedded systems
- Knows data structures and algorithms
- Is able to apply programming and networking fundamentals
- Is able to write assembly language and machine code programs
- Understands societal impacts and professional responsibilities
Master of Science in Software Engineering:
- Be able to identify and apply the latest cutting edge software engineering technologies
- Be able to apply object-oriented methodology and other programming paradigms, such as aspect-oriented design, functional decomposition, etc. to software design
- Understands the SWEBOK principles and the software life-cycle and be able to apply software development models and technology for testing and other SE processes
- Understands the importance of requirements-gathering and clear requirements-specification, understand the importance of developer/customer interaction
- Is able to apply important management principles in the context of software development
- Is able to apply one or more important programming and design languages
- Knows essential computer science topics, such as algorithms, data structures, and cryptography methods
- Knows the inner-workings of a relational database. Be able to design, program, and manage a database
- Understands the essential requirements of a user-friendly graphical user interface (GUI), be able to design a user-friendly GUI
Doctor of Philosophy in Software Engineering:
- Be able to explain, apply, and extend basic software engineering methodologies.
- Be able to teach software engineering theory and methodology, and advise doctoral students.
- Be able to apply advanced software engineering methodologies in industrial, governmental, and university research organizations.
- Be able to develop new software engineering methodologies.
- Be able to serve as research collaborators, consultants, and team leaders.
- Be able to demonstrate proficiency in software architecture design, software engineering management, requirement analysis, and the interpretation of software-quality matrices.
- Be able to demonstrate awareness of the problems involved in software development and engineering management.
- Be able to initiate a new software engineering project and apply software engineering methodology to the project life cycle.
- Be able to demonstrate proficiency in presentation and publication of software engineering research findings.


