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.