Computer Science (COSC)

COSC 501 FUNDAMENTALS OF DATA STRUCTURES AND ALGORITHM (6)

Designed for graduate students to provide them with the necessary background in data structures and algorithm analysis. Topics include: objects and abstract data types, dynamic variables and pointers, recursion, sort and search algorithms, linear and non-linear structures such as linked lists, trees and graphs, hashing, algorithms time complexity analysis, object-oriented design and programming. Prerequisite: Admission to COSC MS program.

COSC 502 COMPUTER ORGANIZATIONAL AND ASSEMBLY LANGUAGE FOR NON CS/CIS MAJOR (3)

Computer organization and architecture including computer arithmetic, digital logic, assembly language, memory system organization, and computer interfacing. This course is a preparatory course for the Masters in Computer Science Program. Prerequisite: degree-seeking status.

COSC 519 OPERATING SYSTEMS PRINCIPLES (3)

An overview of the principles of operating systems. Topics include multiple processes, process synchronization and intercommunication, resource allocation, memory management, processor scheduling and I/O device management. Prerequisites: COSC 501 or equivalent; COSC 502 or equivalent; and MATH 263 or equivalent; or admission to the Information Technology PhD program.

COSC 571 COMPUTER PERFORMANCE EVALUATION (3)

Computer system performance evaluation methodologies, techniques and tools including different types of monitors as a measurement tool, workload characterization, important performance indices, analytic modeling with particular emphasis on the application of the operational queuing network modeling techniques to performance analysis and technical aspects of computer selection. Prerequisite: COSC 519; or admission to the Information Technology PhD program.

COSC 578 DATABASE MANAGEMENT SYSTEMS I (3)

Build theoretical foundation for database management systems, study different database models, relational algebra, relational calculus, SQL, ER, EER models, structured query formulations, database design, analysis and modeling, functional dependencies and normalization, and overview of next generation database management systems. Prerequisites: COSC 501 or equivalent; COSC 502 or equivalent; and MATH 263 or equivalent; or admission to the Information Technology PhD program.

COSC 581 ARTIFICIAL INTELLIGENCE (3)

A survey of the problems and techniques involved in producing or modeling intelligence in computers. Particular emphasis will be placed on representation of knowledge and basic paradigms of problem solving. Topics include game playing, theorem proving, natural language and learning systems. Prerequisite: COSC 501 or equivalent; or admission to the Information Technology PhD program.

COSC 583 DESIGN AND ANALYSIS OF ALGORITHMS (3)

Algorithm design such as heuristics, backtrack programming, branch and bound, recursion, simulation and conquer, balancing and dynamic programming. Efficiency of algorithms-NP-complete problems. Prerequisites: COSC 501 or equivalent; or admission to the Information Technology PhD program.

COSC 600 ADVANCED DATA STRUCTURES AND ALGORITHM ANALYSIS (3)

Data abstraction, linear data structures, file organization and access methods, memory management, advanced internal and external sort and search algorithms and the trade-offs involved in the use of different data organization. Prerequisites: COSC 501 or equivalent; COSC 502 or equivalent; and MATH 263 or equivalent; or admission to the Information Technology PhD program.

COSC 601 SOFTWARE REQUIREMENTS ENGINEERING (3)

Introduces the basic concepts and principles of software requirements engineering, and is designed to expose student to common tools and techniques, established methods for modeling software systems and various approaches to requirements engineering (structured, object oriented and formal). Intends to cover in its entirety the process of requirements engineering. Prerequisites: AIT 624/COSC 612-Software Engineering; or admission to the Information Technology PhD program.

COSC 602 COMPUTER VISION AND IMAGE PROCESSING (3)

The study of image acquisition, representation and pattern recognition, edge detection for computer vision. Topics to be covered include digital image formats, image storage and display, bilevel image processing, measurable properties of objects, grey-level image processing, image classification and object recognition. Prerequisites: COSC 501 or equivalent; or admission to the Information Technology PhD program.

COSC 603 SOFTWARE TESTING AND MAINTENANCE (3)

A comprehensive survey of software maintenance and testing, principles, methodologies, management strategies, techniques and tools. Software testing at the unit, subsystem and system levels using various test design techniques, as well as integration, regression, and system testing methods, and software testing tools. Designing and implementing software technologies to increase maintainability and testability; evaluating software for change and validating software changes. Prerequisites: AIT 624/COSC 612-Software Engineering; or admission to the Information Technology PhD program.

COSC 605 HUMAN FACTORS AND HUMAN-COMPUTER INTERACTION (3)

Design of information systems interfaces. Discussion of how information systems components and work environments can be constructed to make people more effective, productive and satisfied with their work life. Output and input design, arrangement of displays and controls, case studies in human factors.

COSC 609 SOFTWARE PROJECT MANAGEMENT (3)

Factors necessary for the successful management of information systems development or enhancement projects. Both technical and behavioral aspects of project management are discussed. Topics include project management concepts, needs identification, the software project manager, software teams, software project organizations, project communications, software project planning, scheduling, control and associated costs. Project-management software tools are an integral part of the course. Prerequisites: COSC 501 or equivalent, COSC 502 or equivalent, and MATH 263 or equivalent; or admission to the Information Technology PhD program.

COSC 611 COMPUTER SIMULATION (3)

Continuous and discrete event systems simulation application, implementation, role of modeling and languages, experimental design, data collection, verification, validation, object-oriented simulation, random variable generation, Monte Carlo methods for performance evaluation, sensitivity analysis and optimization. Prerequisites: COSC 501 or equivalent; or admission to the Information Technology PhD program.

COSC 612 SOFTWARE ENGINEERING I (3)

Formal software engineering principles and practices and their application to the development of computer-based systems. Prerequisites: COSC 501 or equivalent; COSC 502 or equivalent; or admission to the Information Technology PhD program.

COSC 614 SOFTWARE ENGINEERING II (3)

Formal process leading to requirements, design and test specifications, quantitative measures of useful software parameters, review of software systems components and complete design and test processes. Prerequisites: COSC 612; or admission to the Information Technology PhD program.

COSC 617 ADVANCED WEB DEVELOPMENT (3)

Design and implementation of distributed information systems involving the technologies developed for the World Wide Web (WWW). Emphasis will be given to server architectures, database connectivity and the enterprise packages provided by web development languages. Prerequisites: COSC 600 and COSC 457/COSC 578; or admission to the Information Technology PhD program.

COSC 618 ENTERPRISE ARCHITECTURE (3)

Provides a set of latest approaches in designing IT infrastructures aligning them with enterprise business activities at the architectural level, including business architecture, information architecture, solution architecture, and technology architecture. Institutionalization of enterprise architecture frameworks and standards will be discussed. Topics include the fundamentals of business functions and IT infrastructure of an enterprise including definitions, frameworks, business process modeling, process institutionalization using CMMI, EA implementations through service-oriented architecture, (SOA), and the various networking technologies in LAN/MAN/WAN as the enablers for EA. Prerequisites: AIT 624 or COSC 612; or admission to the Information Technology PhD program.

COSC 638 ADVANCED COMPUTER ARCHITECTURES (3)

Design principles for multiprocessor and RISC machines, comparison between RISC and CISC architectures, multiprocessor interconnection networks, memory organizations, parallel algorithms for sorting, image processing, FFT and various applications, data flow computers and VLST computations. Prerequisites: COSC 501 or equivalent and COSC 502 or equivalent; or admission to the Information Technology PhD program.

COSC 639 OPERATING SYSTEMS II (3)

Implementation of operating systems for online multiprogramming environment. Primary and secondary storage management techniques, file security, data integrity and a detailed study of operating systems such as UNIX. Prerequisites: COSC 439/COSC 519 or equivalent; or admission to the Information Technology PhD program.

COSC 641 INTRODUCTION TO E-COMMERCE (3)

A broad overview and discussion of the technologies relevant to electronic commerce, including communication networks and the Internet, Web programming languages, computer security, electronic payments, multimedia databases and distributed transaction processing, and legal and ethical issues. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 643 INTERNET SUPPLY CHAIN MANAGEMENT (3)

E-business strategies, Web-based system architecture, collaboration techniques among buyers and sellers. business-to-business system requirements analysis in the context of supply chain management. Focus on the technical aspects of supply chain management system, which include message passing framework, XML, DTD, XSL, XSLT, XPath, Web-based database manipulation, and VPN. Managerial aspects of e-business as well, which include the integration of e-business systems and back-end systems such as enterprise resource planning ERP systems and business security. Student will implement a B2B site as a team project. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 644 INTRODUCTION TO INFORMATION ASSURANCE (3)

Principles, mechanisms, and implementation of information assurance. Emphasis on human and technological aspects of information assurance and issues relevant to the risks in which information systems are exposed and methods of dealing with such risks. Students who have successfully completed IHSM 620 will not receive additional credit for COSC 644. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 645 APPLIED CRYPTOLOGY (3)

A broad introduction to cryptography and its application to computer-network security services and mechanisms, such as confidentiality, digital signature, access control and electronic payments. Analysis of software implementations of cryptographic algorithms and network-security protocols. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 647 APPLICATION SOFTWARE SECURITY (3)

Security concepts in developing software applications. Discusses design principles for secure software development, and some of the security issues in current programming and scripting languages, database systems and Web servers. Prerequisites: COSC 578 and COSC 600; or admission to the Information Technology PhD program.

COSC 650 COMPUTER NETWORKS (3)

Computer networking concepts and technologies. Architectures and protocols, LANS, Internet working, and applications. Prerequisites: COSC 501 or equivalent; COSC 502 or equivalent; and MATH 263 or equivalent; or admission to the Information Technology PhD program.

COSC 657 DATABASE MANAGEMENT SYSTEMS II (3)

Relational database systems application, implementation, management, administration, design, advanced data modeling, object-oriented databases, deductive databases, query optimization, functional dependencies, concurrency, security and integrity. Prerequisites: COSC 457/COSC 578; or admission to the Information Technology PhD program.

COSC 661 ARTIFICIAL INTELLIGENCE PROGRAMMING AND ADAPTIVE SYSTEMS (3)

Major differences between AI and conventional programming, symbolic programming techniques and adaptive systems, PROLOG and LISP. Prerequisites: COSC 461/ COSC 581; or admission to the Information Technology PhD program.

COSC 665 EXPERT SYSTEM DESIGN AND DEVELOPMENT (3)

Approaches and methods employed in expert system design and development analysis of selected expert systems, prototyping and presentation. Prerequisites: COSC 581; or admission to the Information Technology PhD program.

COSC 670 SPECIAL TOPICS IN COMPUTER SCIENCE (3)

Reading and study in selected topics in the field of computer science; emphasis is on an increased knowledge of computer science. A project or paper is required. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 680 SEMINAR IN COMPUTER SCIENCE (1)

Presentation and discussion of research trends and advanced topics in computer science. Students may enroll in this course up to three times for a total of 3 credits. Prerequisite: Consent of instructor.

COSC 683 SECURITY AND INTERNET ALGORITHMS (3)

State of the art trends in designing algorithms for the Internet and security. Typical topics include network routing, Web search engine algorithms, data compression algorithms, caching, online algorithms, number theoretical algorithms relevant in cryptology, error-correcting codes, zero-knowledge protocols, secret-sharing protocols, one-way functions, pseudo-random generators. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 685 INFORMATION SECURITY AND RISK MANAGEMENT (3)

Explores approaches for performing risk assessment of information systems. Foundational concepts in risk management will be introduced, as well as approaches and tools for monitoring, identifying, analyzing, and responding to risks. Students will become knowledgeable of general information security risk management frameworks, know how to identify and model security risks, and know how to conduct thorough business impact analyses to provide recommended action plans. Prerequisites: COSC 600 or AIT 500; or admission to the Information Technology PhD program.

COSC 686 COMPUTER GRAPHICS (3)

A presentation of the basic concepts in the field of computer generated and/or displayed graphics. The students will get an understanding of the basic mathematical and physical principles behind computer graphics and will learn a concrete programming package for computer graphics. Topics include animation, user interface, affine geometry and 3-D transformations, lighting and shading, texture mapping, rendering algorithms, ray tracing and modeling. Prerequisites: COSC 501; or admission to the Information Technology PhD program.

COSC 695 INDEPENDENT STUDY IN COMPUTER SCIENCE (3)

Independent study in selected areas of computer science. Prerequisites: 9 units at the graduate or upper-division level; and consent of instructor.

COSC 697 GRADUATE INTERNSHIP (3)

Gives MS COSC students the opportunity to be involved in a computing facility, at an industrial setting. Students work in a local computing facility associated with a local business or industry and will be supervised by the appropriate supervisor of the computing facility and by the faculty member in charge of the course. MS COSC majors can count one 3-unit internship course towards their units that apply to the major. Graded S/U. Prerequisites: minimum of 18 hours of graduate level Computer Science courses, GPA of 3.0 or above, and consent of MS COSC Program Director.

COSC 710 SOCIAL NETWORK ANALYSIS (3)

Covers the concepts, structures and analysis of large social and information networks. Hands-on techniques will explore how to analyze large-scale social network data, explore social behavior, and apply the techniques to real-world problems. Students will work on cases on actual social network data and present strategic recommendations based on analysis of the data. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 715 ROBOTICS (3)

Physical mechanisms of robotics, issues of modeling, planning control and programming. Principles underlying the design and analysis of robotic systems. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 716 OBJECT-ORIENTED METHODOLOGY (3)

Object-oriented approach to modeling, problem solving, requirement analysis, system design, system implementation, database design, system engineering and software engineering. Prerequisites: COSC 600; or admission to the Information Technology PhD program.

COSC 725 PROCESS CONTROL AND REAL-TIME SYSTEMS (3)

Analog to digital and digital to analog conversions, signal conditioning and processing, direct digital control of processes, adaptive control of nonlinear systems and real-time programming considerations: response time, survival time, recovery time, and throughput, executive-system calls, memory-related system calls, task-synchronization system calls, multiprocessing, interrupts, task scheduling and task concurrency. Prerequisites: a course in computer architecture; or admission to the Information Technology PhD program.

COSC 732 WIRELESS NETWORKS AND MOBILE COMMUNICATIONS (3)

The principles and practice of wireless networks and mobile communications. Wireless transmission and media access technologies, study of a typical cellular system, satellite networks, wireless LANs, wireless ATM, mobile IP, mobility and TCP, and the wireless application protocol (WAP). Prerequisites: COSC 650; or admission to the Information Technology PhD program.

COSC 734 NETWORK SECURITY (3)

Principles and practice of network security. Topics include authentication services, email security, IP security, Web security, security systems and threats, wireless security, and security applications. Prerequisites: COSC 650; or admission to the Information Technology PhD program.

COSC 735 ADVANCED TOPICS ON COMPUTER NETWORKS (3)

Advanced networking, covering various aspects of new technologies and current topics in computer networks. Topics will include design architecture, network threats and monitoring, network anonymity, sensor/actor networks, cyber-physical systems (CPS), networks visualization, and other current topics. Prerequisites: COSC 650; or admission to the Information Technology PhD program.

COSC 740 PARALLEL COMPUTING (3)

Parallel computing and its applications including parallel computer models, parallel matrix algorithms, optimization algorithms, complexity of parallel algorithms, parallel programming environment, application of parallel algorithms in sorting, searching, matrix operations, system of linear equations and optimization. Prerequisites: COSC 600 or equivalent and a course in linear algebra; or admission to the Information Technology PhD program.

COSC 741 E-COMMERCE CASE STUDIES (3)

Key elements of E-commerce such as catalog, marketing, enterprise resource planning (ERP), Web-based database, network security, Internet supply chain, XML, two or three e-business models will be analyzed and discussed in class. The analysis includes system structure and technology review, marketing strategy review, and is followed by presentations and discussions. Based on the e-commerce concepts studies, students will examine the advantages and the disadvantages of various e-commerce systems. Class can choose an e-commerce model (a B2B model) as a class project. The class project will be divided into several small group projects (buyers and sellers, B2B models) so that each group of students can take each piece. Each group will design and implement the part of e-business model of their choice and integrate with other group's project at the end of the semester. Prerequisites: COSC 641; or admission to the Information Technology PhD program.

COSC 745 ADVANCED TOPICS IN COMPUTER SECURITY (3)

In-depth study of advanced topics in computer security. Topics will vary according to current trends and research directions in the field. Possible topics include: secure file and mail systems, operating system vulnerabilities, firewall and intrusion detection system design, denial of service attack issues, malicious code, virus detection and removal, router security, password attacks, Internet security mechanisms, spoofing, session hijacking, sniffers, scanners, logging and auditing techniques, and security in mobile environments. A project that requires security tools and software, and a paper based on a research topic in computer security is required. Prerequisites: COSC 645; or admission to the Information Technology PhD program.

COSC 750 NEURAL NETWORKS AND DEEP LEARNING (3)

Discussion of neural network and deep learning, architectures, algorithms and applications, including feedforward neural networks, backpropagation, convolutional neural networks, recurrent neural networks, LSTM, deep belief networks, autoencoders, generative models, and Boltzmann machines. Prerequisites: COSC 600 and COSC 757; or admission to the Information Technology PhD program.

COSC 757 DATA MINING (3)

Designed to provide students with a broad background in data mining techniques and related topics. Real-world applications including Web mining will be emphasized. Current data mining tools will be used in student projects. Prerequisites: COSC 578; or admission to the Information Technology PhD program.

COSC 760 BIG DATA ANALYTICS (3)

Study of big data analytics, including the management of various public and private datasets from business, health care, multimedia, cyber-physical systems (CPS), Internet of Things (IoTs), and social media. Hands-on experience with managing the collection, ingestion, storage, analytics, and interpretation of big data using various cloud-based big data frameworks and NoSQL databases such as Hadoop, MongoDB, CouchDB, Elasticsearch, and Spark. Introduction to various big data analytics methods using distributed machine learning libraries. Current research and future trends in big data analytics from the current literature will be explored. Prerequisites: COSC 578; or admission to the Information Technology PhD program.

COSC 795 RESEARCH SEMINAR (1)

Students will be exposed to, and share, research findings in information technology. May be repeated for a maximum of 3 units. It is expected that all doctoral candidates will register for this course; all other graduate students are encouraged to register as well. Graded S/U.

COSC 880 COMPUTER SCIENCE GRAD PROJECT (3)

Enables students to conduct a study in an advanced computer-related topic or undertake the analysis, design and implementation of a real-world application. Prerequisite: Completion of at least 18 graduate credits towards the M.S. in Computer Science.

COSC 885 PROJECT CONTINUUM (1)

Continuing work on previously started project. Prerequisites: Previous registration for project work.

COSC 897 COMPUTER SCIENCE THESIS (6)

An original investigation using an acceptable research method and design. Prerequisites: Completion of at least 21 graduate credits toward an M.S. degree in Computer Science.

COSC 898 COMPUTER SCIENCE THESIS (3)

The previous course, COSC 897, taken over two consecutive semesters.

COSC 899 THESIS CONTINUUM (1)

Continuation of graduate thesis. Prerequisite: Previous registration for graduate thesis.