|Course Number||Course Name||Credits|
This course provides first-year students an introduction to information technology
including social implications and the creation, organization, analysis, storage, retrieval
and communication of information. Through interactions in a small group environment,
students will become more familiar with the information technology curriculum, career
options and ethical issues. Students will learn about the history of information technology.
A broad spectrum of information technologies and their impacts will be examined.
This course is an introduction to computer programming designed to provide the fundamentals
for information technology students. The students will learn how to write programs
in a modern high-level programming language (JAVA). Lecture and laboratory topics
focus on the use of data types, variables, operators, expressions, programming constructs
and input/output. Students will also have an introduction to the basics of abstract
data types and object-oriented design. Good programming practices such as top-down
planning, modularity, debugging strategies and documentation are also introduced and
emphasized throughout the course.
Designed as a second course in Java programming, this course explores advanced JAVA
features such as applets, exception handling, internationalization, multithreading,
multimedia and networking. Together with Programming I, the two courses form a comprehensive
introductory on JAVA programming. Good programming practices such as top-down planning,
modularity, debugging strategies and documentation are reinforced throughout the course.
The associated lab component enables students to translate theory into practice.
This course is an introduction to computer architecture and implementation. Topics
include CPU organization, memory, registers, addressing modes, busses, instruction
sets, multiprocessor versus single processor, peripheral devices and input/output.
Basic digital system concepts such as number systems, Boolean algebra, flip-flops,
decoder, encoder, multiplexer, ROM and adder will also be covered. The laboratory
provides more insight into the physical aspects of the design and implementation of
modern computer systems.
This course is a study of the manipulation of data structures, stacks, queues, lists,
linked lists and trees. Other topics covered are: integration of data structures and
efficient algorithms of sorting, merging and searching in a database or file management
This course focuses on techniques in problem solving principles of object-oriented
design and modeling, and structured programming using C++. It introduces the fundamental
concepts of object-oriented computing: objects, classes, inheritance, abstraction,
encapsulation, polymorphism and visibility. The course emphasizes high-level front-end
conceptual processes of analysis and design rather than back-end implementation. By
the end of the course, students will gain an appreciation for the object-oriented
approach for reusability, extensibility, and easy maintenance, and avoid common software
design errors. The C++ programming language is used to link the concepts to real-life
This course is a study of the fundamental design theories of an interactive system.
The topic covers the human user, the computer system and the nature of the interactive
process. Theory and research along with practical applications are discussed within
the context of organizational impact. Programming projects that apply the design principles
This course is an introduction to the state of practices in modern database systems.
Topics include database design, database architecture, SQL, normalization, storage
structures, query processing, concurrency control, security, recovery, object-oriented
and distributed database systems. Programming projects with commercial database systems
and tools are required.
This course introduces basic elements of modern computer and telecommunication networks.
The popular Internet TCP/IP five-layer model as well as OSI seven-layer model will
be discussed. In each layer, the state-of-the-art hardware and software technologies
are introduced. These include, for example, fiber-optic and mobile/cellular communications,
ATM and World Wide Web. Technologies and architectures that have been developed for
networking over short (LAN) and long (WAN) distances will also be explored.
This course provides an overview of architecture, goals and structure of an operating
system. Topics include process management, memory and file system management, scheduling,
security and distributed operating systems. Concepts will be illustrated with examples
from existing operating systems.
Study Abroad Special Topics
Study Abroad Special Topics
This course is an introduction to information systems development process and methodologies.
Topics include product development life cycle and standards, requirement acquisition
and analysis, systems design methodologies, implementation techniques, configuration
management and quality assurance.
Course transfers in as an information technology elective.