Information Technology (IT)

IT-101  Introduction to Information Technology  (1 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.

IT-111  Java Programming  (3 credits)  

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.

Prerequisite(s): Take IT-101

IT-112  Java Programming II  (3 credits)  

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.

Prerequisite(s): Take IT-111

IT-231  Computer Organization & Architecture  (4 credits)  

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.

Prerequisite(s): Take IT-112

IT-241  Data Structures & Algorithms  (3 credits)  

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 system.

Prerequisite(s): Take IT-112

IT-304  Object-Oriented Computing  (3 credits)  

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 software implementation.

Prerequisite(s): Take IT-112

IT-315  Interactive Interface Design  (3 credits)  

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 are required.

Prerequisite(s): Take IT-112

IT-323  Database Design and Development  (3 credits)  

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.

Prerequisite(s): Take IT-241

IT-331  Internet Working & Communication  (3 credits)  

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.

Prerequisite(s): Take IT-231 MAT-120

IT-338  Modern Operating Systems  (3 credits)  

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.

Prerequisite(s): Take IT-231

IT-415  System Development Concepts Methodologies  (3 credits)  

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.

Prerequisite(s): Take IT-315 IT-304