600

Computer Architecture

This course teaches students the fundamentals of computer architecture. The course covers the basic organizations of computer systems including number systems, computer logic, ARM architecture, RISC, bus designs, multimedia, performance, processor control, memory hierarchy, secondary storage, I/O, parallel processing, and multithreading. It also addresses a wide range of micro-architecture issues geared toward to improving processor performance.

3

Operating System Design

This course is an introduction to operating system (OS) and its functions regardless of the hardware that houses it. It is intended for students with a basic background in computing systems. The course presents the basic concepts of operating systems, and covers specific issues of storage, memory management, processor scheduling, process management, concurrent processes, device management, and networking functions of OS. Current operating systems such as Unix/Linux, Windows, and/or Android are explored through case studies.

3

Software System Design

This course is a comprehensive, accessible, and concise introduction to core topics and methodologies of software development. The essential topics emphasized by IEEE Computer society-sponsored Software Engineering Body of Knowledge (SWEBOK) are included. Students are given an overview of programming concepts, system analysis and design, principles of software engineering, development and support processes, testing methodologies, and product management.

3

Object Oriented Software

This course is a conceptual and practical study of object-oriented programming. Students learn how to use data structures known as “objects” to implement object-oriented problem solving. Topics covered include functions, multi-dimension arrays, lists, classes, objects, methods, inheritance, polymorphism, exception handling, recursion, multithreading, and graphics. Object-oriented languages like C#, Java, or Python are used.

3

Database Systems

This course introduces the fundamental concepts of database management systems, with emphasis on relational model. Students are exposed to database design topics such as data models, ER modeling, normalization of database tables, SDLC, performance and query optimization, distributed systems, web technology and database connectivity, and data warehousing. Students learn how to create and maintain databases as well as perform queries using Structured Query Language (SQL). Advanced SQL topics such as joins, subqueries, set operators, and procedural SQL are also covered. Students use Oracle or a similar database package to complete several hands-on database projects.

3

Data Mining

This course presents a conceptual and practical study of the basic concepts in data mining. Students learn the fundamental principles of data querying, data analysis, inferential statistics, and classification and then implement solutions to extract meaningful insights from the data. Building upon previous course requirements in coding, programmatic solutions are developed using an enterprise DBMS and a popular language environment.

3

Prerequisites

CS-625; CS-630

Mobile Computing

This course introduces students to mobile computing, device security, and mobile application development. The overall goal of this course is to provide an in depth understanding of the fundamental problems in the area of mobile computing and study the existing and proposed solutions for these problems from both research and development perspective. Mobile computing is discussed  from three standpoints: mobile  technology,  application development, and user interaction.  The course will first overview various mobile computing applications, technologies and wireless communication.  Next, students learn about common paradigms in mobile computing such as low power computing, computing in an environment with limited resources, fault tolerance, security measures in mobile devices and persistence.  Students are introduced to and use the cross-platform mobile development environment to reinforce concepts covered in lectures.  User interface and user experience are discussed and application development guidelines from various platforms are analyzed.  Lastly,  the course will look at some current research in mobile computing.
3

Prerequisites

CS-625; CS-630

Designing E-Commerce Site

The phenomenal growth in the last few years of the Internet and its related technologies has created new ways of communicating and trading. The most obvious effects of this growth is the great impact of e-commerce on business transactions in today’s marketplace. This course presents concepts and skills for the strategic use of e-commerce and related information system technologies needed to plan, design, analyze develop and evaluate an e-commerce website. Through this project oriented course, students learn essentials of e-commerce Web site development including design techniques, shopping carts, payment options, security, ethical and legal issues. Students design and create a fully functioning e-commerce site and online shops for small business clients. In class projects guide the students step by step through the design and business decisions that are critical to success.

3

Prerequisites

CS-625; CS-630

Computer Networks

This course explores the fields of computer networks and data communications in detail. Students become familiar with network topologies and standards necessary to support computer network systems and their applications. Emphasis is to achieve a balance between the technical aspects of data communications and everyday practical aspects. Topics include networking protocols, ethernet standards, OSI model, transmitting media, interfaces, various Network Operating Systems case studies, Internet protocols, network management, and network security.

 

3

Network Security and Privacy

This course expands students’ knowledge of computer network and business security. Emphasis is on hands-on projects to guide students through several key security activities. Students will also apply the concepts to case projects. The course topics include the ten domains of CISSP (Certified Information Systems Security Professional) Security: access control; telecommunications and network security; information security governance and risk management; software development security; cryptography; security architecture and design; security operations; business continuity and disaster recovery and planning; legal regulations, investigations, and compliance; and physical environment security.

3

Prerequisites

CS-640

Artificial Intelligence

This course surveys of the field of Artificial Intelligence. The focus is on theory of AI, problems in the field of AI, and techniques and algorithms for solving those problems. Various computer languages of AI from LISP to Python are discussed. Students are exposed to many applications of AI in game programming, intelligent agents, neural networks, pattern recognition, data mining, and more. Students are not expected to have any prior knowledge of AI, but they are expected to have good programming skills and basic understanding of theoretical techniques for analyzing computer algorithms.

3

Prerequisites

CS-625

Managing Projects, Resources and Risks

This course helps students develop the knowledge and skills necessary to successfully address the complex and unique issues in an Information Technology project environment. The emphasis is on learning how to accomplish project objectives on time and within budget. The course focuses on the nine knowledge areas specified by the Project Management Institute (PMI). Team-based and discovery-based methodology is stressed. An industry recognized software is used in conjunction with this course, and students participate in group projects to investigate the scopes, deadlines, and constraints of actual industry problems.

3

Prerequisites

CS-620

Cloud Computing

This course provides a comprehensive study of Cloud concepts and capabilities across the various Cloud service models including Software as a Service (SaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS), and Identity as a Service (IDaaS). The course also covers data storage, collaboration, virtualization, security, and disaster recovery aspects in the cloud. Students learn to design and code scalable applications using Cloud-based software applications on top of various Cloud platforms. Students are introduced to different layers of the cloud technologies, as well as practical solutions such as Google, Amazon, Microsoft, and SalesForce.com.

3

Prerequisites

CS-640