COMP7000 – Fundamentals of Computer Science (required) Topics include: theory, computability and complexity, computer organization and architecture, operating systems, and data communications
COMP7050 – Programming Paradigms and Systems (required) This course looks at the four (4) programming paradigms: imperative, functional, logic, and object-oriented, as well as the systems and techniques needed to operate i.e. parallel and distributed systems, real-time systems, and embedded systems.
COMP7100 – Managing Software Development Designed to help software engineers acquire the knowledge and skills necessary to lead project teams, understand the relationship of software development to project engineering, estimate time and costs, and understand the software process.
COMP7150 – Data Science and Web Services Foundational topics in data science include: data sources (structure/unstructured data, relational databases, web scraping, APIs), data wrangling/manipulation/sampling, manageable data set (formats, missing values, imputation), data analysis with statistics and machine learning (statistical tests/parameters, foundational machine learning methods, output evaluation/validation), data communication with visualization (data types, visual encoding, perception, time series), and working with data at scale (“big data,” MapReduce, NoSQL, graph analytics).
COMP7200 – Mobile Application Development Application topics include: platform introduction, environment setup, version control system, system prototyping, project structure and resources, application lifecycle, UI components, system services, sensors, security and permissions, data storage, testing and debugging, and application deployment.
COMP7250 – Enterprise Computing Enterprise computing refers to business oriented information technology that is critical to an organization’s success. This course considers mainframe computing and compares it to distributed and cloud-based computing. The course examines the architecture, operating system, application programming environment, networking, security and management of mainframe systems.
COMP7300 – Computer Security Computer Security (cybersecurity) is information security as applied to computers and mobile computational devices. The course examines the processes and mechanisms by which computer-based equipment, information and services are protected from unauthorized or unintended access, changes, or distribution, how threats are assessed and attacks are handled, and how analysis is undertaken to determine what information was lost or compromised after a breach or attack.
COMP7500 – MSACS Capstone The capstone experience brings together course materials and concepts learned in the MSACS program. Students are guided by faculty members to build a software system that integrates knowledge and skills developed throughout the program and is the “culminating experience” where students demonstrate MSACS competencies.
MSACS Computing Electives
COMP7400 – Big Data Big Data is a collection of data so large and complex that it becomes difficult to process using traditional data processing applications. Course topics include: analysis, capture, classification, search, sharing, storage, transfer, visualization and privacy violations. Big Data is of interest to science, government, and the private sector as more and more data is collected daily, as such the course examines techniques to capture, manage and manipulate large data sets.
COMP7425 – Data Mining Data mining is an interdisciplinary field involving the computational process of discovering patterns in large data sets, and involves methods at the intersection of artificial intelligence, machine learning, statistics, and database systems. Topics include: raw analysis step, addressing database and data management aspects, data preprocessing, model and inference considerations, metrics to determine how “interesting” a result is, complexity considerations, post processing of discovered structures, visualization, and online updating.
COMP7450 – Software Engineering Software Engineering is the study and application of engineering relative to the design, development and maintenance of software. Course topics include: requirements engineering, software design, software construction, software testing, software maintenance, software configuration management, software engineering management, software engineering process, software engineering tools and methods and software quality management.