• This course is centered on Human-Computer Interaction and its general importance and impact to the software development process. Topics include precepts of psychological and social interactions, vocabulary of human interaction with software, need-finding and task analysis, user-centered design process, and evaluative techniques for user interface design.
  • This course is the first part of the course on problem solving, algorithm design, and programming. Here, students learn programming fundamentals. Together with an overview of the computing profession, students learn the rigor of logic formulation with strong emphasis on proper use of variables, branching structures, loop structures, algorithm formulation, subroutine development and use, structures, and file processing.


  • This course is centered on Human-Computer Interaction and its general importance and impact to the software development process. Topics include precepts of psychological and social interactions, vocabulary of human interaction with software, need-finding and task analysis, user-centered design process, and evaluative techniques for user interface design.