The courses below were offered in summer 2023. They are listed here to indicate what is typically available during Summer Term. Please check back on December 15, when the full summer 2024 course schedule will be available.

 

 

Computer Science

Computing & Data Sciences

Faculty of Computing and Data Sciences

  • Foundations of Data Science

    CDS DS 120

    Prereq: basic knowledge of a programming language such as Python is expected. The first in a three-course sequence (with CDS DS 121 and CDS DS 122) that introduces students to theoretical foundations of data science. Introduction to key concepts from calculus (differentiation and integration), probability (discrete and continuous random variables) and linear algebra (vector spaces, matrices, and linear systems). The course links mathematics and computational thinking through problem sets requiring students to answer mathematically-posed questions using computation. Students must register for two sections: lecture and discussion. 4 cr.

    Top

College of Arts & Sciences

  • Introduction to Computing

    CAS CS 101

    The computer is presented as a tool that can assist in solving a broad spectrum of problems. This course provides a general introduction designed to dispel the mystery surrounding computers and introduces the fundamental ideas of programs and algorithms. Students must attend lecture and laboratory. Carries MCS divisional credit in CAS. Effective Fall 2022, this course fulfills a single unit in each of the following BU Hub areas: Digital/Multimedia Expression, Quantitative Reasoning II, Critical Thinking. 4 cr.

    Top

  • Introduction to Internet Technologies and Web Programming

    CAS CS 103

    Introduction to the basic architecture and protocols underlying the operation of the Internet with an emphasis on web design, web application programming, and algorithmic thinking. General familiarity with the Internet is assumed. Students must attend lecture and laboratory. Carries MCS divisional credit in CAS. Effective Fall 2022, this course fulfills a single unit in each of the following BU Hub areas: Digital/Multimedia Expression, Quantitative Reasoning II, Creativity/Innovation. 4 cr.

    Top

  • Introduction to Computer Science 1

    CAS CS 111

    Online offering. The first course for computer science majors and anyone seeking a rigorous introduction. Develops computational problem-solving skills by programming in the Python language and exposes students to a variety of other topics from computer science and its applications. Carries MCS divisional credit in CAS. Effective Fall 2018, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Creativity/Innovation, Critical Thinking. 4 cr.

    Top

  • Introduction to Computer Science 2

    CAS CS 112

    Prereq: (CAS CS 111) or equivalent. Covers advanced programming techniques and data structures. Topics include recursion, algorithm analysis, linked lists, stacks, queues, trees, graphs, tables, searching, and sorting. Carries MCS divisional credit in CAS. Effective Fall 2018, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Creativity/Innovation, Critical Thinking. 4 cr.

    Top

  • Combinatoric Structures

    CAS CS 131

    Representation, analysis, techniques, and principles for manipulation of basic combinatoric structures used in computer science. Rigorous reasoning is emphasized. Effective Fall 2019, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Critical Thinking. 4 cr.

    Top

  • Probability in Computing

    CAS CS 237

    Prereq: (CAS CS 131). Introduction to basic probabilistic concepts and methods used in computer science. Develops an understanding of the crucial role played by randomness in computing, both as a powerful tool and as a challenge to confront and analyze. Emphasis on rigorous reasoning, analysis, and algorithmic thinking. Students must attend lecture and laboratory. Effective Fall 2018, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Critical Thinking. 4 cr.

    Top

  • Concepts of Programming Languages

    CAS CS 320

    Prereq: (CAS CS 131 & CAS CS 210). Concepts involved in the design of programming languages. Bindings, argument transmission, and control structures. Environments: compile-time, load-time, and run-time. Interpreters. Students must attend lecture and laboratory. Effective Fall 2019, this course fulfills a single unit in the following BU Hub area: Creativity/Innovation. 4 cr.

    Top

  • Introduction to Analysis of Algorithms

    CAS CS 330

    Prereq: (CAS CS 112 & CAS CS 131 & CAS CS 132) or (CAS CS 235) or (CAS CS 237). Examines the basic principles of algorithm design and analysis; graph algorithms; greedy algorithms; dynamic programming; network flows; polynomial-time reductions; NP-hard and NP-complete problems; approximation algorithms; randomized algorithms. Students must attend lecture and laboratory. Effective Fall 2018, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Critical Thinking. 4 cr.

    Top

  • Software Engineering

    CAS CS 411

    Prereq: (CAS CS 112). Introduction to the construction of reliable software. Topics may include software tools, software testing methodologies, retrofitting, regression testing, structured design and structured programming, software characteristics and quality, complexity, entropy, deadlock, fault tolerance, formal proofs of program correctness, chief program teams, and structured walk-throughs. Students must attend lecture and laboratory. Effective Fall 2019, this course fulfills a single unit in the following BU Hub area: Teamwork/Collaboration. 4 cr.

    Top

  • Full-Stack Application Design and Development

    CAS CS 412

    Prereq: (CAS CS 111 & CAS CS 112 & CAS CS 411) or consent of instructor. Introduction to design and development of full-stack web applications. Topics include asynchronous programming; non-relational data stores; use of APIs; serverless (cloudbased) applications; decoupled client/server architectures; performance; testing; packaging; and deployment. Examines current and proposed technology stacks. 4 cr.

    Top

  • Deep Learning

    CAS CS 523

    Prereq: (CAS CS 365 & CAS CS 542). Mathematical and machine learning background for deep learning. Feed-forward networks. Backpropagation. Training strategies for deep networks. Convolutional networks. Recurrent neural networks. Deep reinforcement learning. Deep unsupervised learning. Exposure to Tensorflow and other modern programming tools. Other recent topics, time permitting. 4 cr.

    Top

  • Advanced Topics in Computer Science

    CAS CS 599

    Topic: Artificial General Intelligence. Includes consciousness, human general intelligence, and artificial general intelligence. Covers the elements required for a conscious neural network and examines human intelligence from a neuroscience perspective, including synaptic transmission, perception, movement, emotion, and motivation. Describes human development and emergent behavior, as well as the neural mechanisms of learning, memory, language, and cognition. Presents a path toward artificial general intelligence and summarizes its ethical implications. 4 cr.

    Top

College of Engineering

  • Introduction to Software Engineering

    ENG EC 327

    Prereq: (ENG EK 125). Introduction to software design, programming techniques, data structures, and software engineering principles. The course is structured bottom up, beginning with basic hardware followed by an understanding of machine language that controls the hardware and the assembly language that organizes that control. It proceeds through fundamental elements of functional programming languages, using C as the case example, and continues with the principles of object-oriented programming, as principally embodied in C++ but also its daughter languages Java, C#, and objective C. The course concludes with an introduction to elementary data structures and algorithmic analysis. Throughout, the course develops core competencies in software engineering, including programming style, optimization, debugging, compilation, and program management, utilizing a variety of Integrated Development Environments and operating systems. 4 cr.

    Top

  • Software Design

    ENG EC 447

    Prereq: (ENG EC 327) or equivalent programming experience. Object-oriented software design for desktop applications with a graphical user interface. C# and Microsoft .NET programming assignments. Provides a solid foundation in modern programming for engineering and other applications. 4 cr.

    Top

  • Deep Learning

    ENG EC 523

    Prereq: A strong mathematical background in calculus, linear algebra, and probability & statistics, as well as prior coursework in machine learningand programming experience in Python. Prereq: (CAS CS 365 & CAS CS 542). Mathematical and machine learning background for deep learning. Feed-forward networks. Backpropagation. Training strategies for deep networks. Convolutional networks. Recurrent neural networks. Deep reinforcement learning. Deep unsupervised learning. Exposure to Tensorflow and other modern programming tools. Other recent topics, time permitting. Same course as CAS CS 523. Students may not receive credit for both. 4 cr.

    Top

Metropolitan College

  • Computers and Their Applications

    MET CS 101

    For students with no previous experience with computers. Organization and function of computer systems; application of computers in today's society; social impact of computers. Introduction to algorithms, various types of application packages, and the internet. Not for computer science majors. 4 cr.

    Top

  • Introduction to Programming

    MET CS 201

    Introduction to problem-solving methods and algorithm development. Includes procedural and data abstractions, program design, debugging, testing, and documentation. Covers data types, control structures, functions, parameter passing, library functions, and arrays. Laboratory exercises in Python. Laboratory course. 4 cr.

    Top

  • Programming with Java

    MET CS 232

    Pre-req: (MET CS 201) or instructor's consent. Covers the elements of object-oriented programming and the Java programming language. Primitive data types, control structures, methods, classes, arrays and strings, inheritance and polymorphism, interfaces, creating user interfaces, applets, exceptions and streams. Restrictions for undergraduate students: This course may not be taken in conjunction with MET CS 520. Only one of these courses can be counted toward degree requirements. 4 cr.

    Top

  • Discrete Mathematics

    MET CS 248

    Fundamentals of logic (the laws of logic, rules of inferences, quantifiers, proofs of theorems). Fundamental principles of counting (permutations, combinations), set theory, relations and functions, graphs, trees and sorting. 4 cr.

    Top

  • Data Structures with Java

    MET CS 342

    Prereq: (MET CS 232) or instructor's consent. Covers data structures using the Java programming language. Topics include data abstraction, encapsulation, information hiding, and the use of recursion, creation, and manipulation of various data structures: lists, queues, tables, trees, heaps, graphs, and searching and sorting algorithms. Laboratory course. Effective Fall 2020, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Creativity/Innovation, Critical Thinking. 4 cr.

    Top

  • Introduction to Web Application Development

    MET CS 401

    Prereq: (MET CS 231 or MET CS 232) or instructor's consent. Focuses on building core competencies in web design and development. Begins with a complete immersion into HTML, essentially XHTML and Dynamic HTML (DHTML). Students are exposed to Cascading Style Sheets (CSS), as well as Dynamic CSS. The fundamentals of JavaScript language including object-oriented JavaScript are covered comprehensively. AJAX with XML and JSON are covered, as they are the primary means to transfer data from client and server. 4 cr.

    Top

  • Introduction to IT Project Management

    MET CS 432

    Provides a comprehensive overview of IT Project Management and the key processes associated with planning, organizing, and controlling of software projects. Focuses on various knowledge areas such as project scope management, risk management, quality management, communications management, and integration management. Students are required to submit a term paper. Effective Fall 2020, this course fulfills a single unit in the following BU Hub area: Teamwork/Collaboration. 4 cr.

    Top

  • Introduction to Database Design and Implementation for Business

    MET CS 469

    Studies the latest relational and object-relational tools and techniques for persistent data and object modeling and management. Provides extensive hands-on experience using Oracle or Microsoft SQL Server as students learn the Structured Query Language (SQL) and design and implement databases. Topics include the relational and entity-relational models, data modeling, normalization, object modeling, SQL, advanced SQL, stored procedures, triggers, database design, database lifecycle, and transactions. Introduces to advanced topics including performance tuning, distributed databases, replication, business intelligence, data warehouses, internet databases, database administration, security, backup, and recovery. Students design and implement a database system as a term project. Laboratory course. Restrictions: This course may not be taken in conjunction with MET CS 579 or MET CS 669. Only one of these courses can be counted toward degree requirements. 4 cr.

    Top

  • Computer Architecture

    MET CS 472

    Prereq: (MET CS 231 or MET CS 232) or instructor's consent. Computer organization with emphasis on processors, memory, and input/output. Includes pipelining, ALUs, caches, virtual memory, parallelism, measuring performance, and basic operating systems concepts. Discussion of assembly language instruction sets and programming as well as internal representation of instructions. 4 cr.

    Top

  • Introduction to Software Engineering

    MET CS 473

    Prereq: (MET CS 342) or instructor's consent. Techniques for the construction of reliable, efficient, and cost-effective software. Requirement analysis, software design, programming methodologies, testing procedures, software development tools, and management issues. Students plan, design, implement, and test a system in a group project. Laboratory course. Effective Fall 2020, this course fulfills a single unit in each of the following BU Hub areas: Digital/Multimedia Expression, Oral and/or Signed Communication, Teamwork/Collaboration. 4 cr.

    Top

  • Information Structures with Python

    MET CS 521

    Covers the concepts of the object-oriented approach to software design and development using Python. Includes a detailed discussion of programming concepts starting with the fundamentals of data types, control structures methods, classes, arrays and strings, and proceeds to advanced topics such as inheritance and polymorphism, creating user interfaces, exceptions and streams. Upon completion of this course, students are able to apply software engineering principles to design and implement Python applications that can be used in with analytics and big data. Effective Fall 2021, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Creativity/Innovation, Critical Thinking. 4 cr.

    Top

  • Foundations of Analytics and Data Visualization

    MET CS 544

    Prereq: (MET CS 546 and (MET CS 520 or MET CS 521)) or equivalent knowledge or instructor's consent. Formerly titled Foundations of Analytics with R. Provides students with the mathematical and practical background required in the field of data analytics. Probability and statistics concepts are reviewed as well as the R tool for statistical computing and graphics. Different types of data are investigated along with data summarization techniques and plotting. Data populations using discrete, continuous, and multivariate distributions are explored. Errors during measurements and computations are analyzed. Confidence intervals and hypothesis testing topics are also examined. The concepts covered in the course are demonstrated using R. Laboratory course. 4 cr.

    Top

  • Introduction to Probability and Statistics

    MET CS 546

    Prereq: academic background that includes the material covered in a standard course on college algebra or instructor's consent. Provides students with the mathematical fundamentals required for successful quantitative analysis of problems. The first part of the course introduces the mathematical prerequisites for understanding probability and statistics. Topics include combinatorial mathematics, functions, and the fundamentals of differentiation and integration. The second part of the course concentrates on the study of elementary probability theory and discrete and continuous distributions. Restrictions for undergraduate students: This course may not be taken in conjunction with MET MA 213; only one of these courses will count toward degree program requirements. Students who have taken MET MA 113 as well as MET MA 123 will also not be allowed to count MET CS 546 toward degree requirements. 4 cr.

    Top

  • Foundations of Machine Learning

    MET CS 555

    Prereq: (MET CS 544) or equivalent knowledge or instructor's consent. Formerly titled Data Analysis and Visualization with R. Provides an overview of the statistical tools most commonly used to process, analyze, and visualize data. Topics include simple linear regression, multiple regression, logistic regression, analysis of variance, and survival analysis. These topics are explored using the statistical package R, with a focus on understanding how to use and interpret output from this software as well as how to visualize results. In each topic area, the methodology, including underlying assumptions and the mechanics of how it all works along with appropriate interpretation of the results, are discussed. Concepts are presented in context of real world examples. 4 cr.

    Top

  • Analysis of Algorithms

    MET CS 566

    Prereq: (MET CS 248 and (MET CS 341 or MET CS 342)) or (MET CS 521 and MET CS 526) or instructor's consent. Discusses basic methods for designing and analyzing efficient algorithms emphasizing methods used in practice. Topics include sorting, searching, dynamic programming, greedy algorithms, advanced data structures, graph algorithms (shortest path, spanning trees, tree traversals), matrix operations, string matching, and NP completeness. 4 cr.

    Top

  • Operating Systems

    MET CS 575

    Prereq: (MET CS 472 and (MET CS 231 or MET CS 232)) or instructor's consent. Overview of operating system characteristics, design objectives, and structures. Topics include concurrent processes, coordination of asynchronous events, file systems, resource sharing, memory management, security, scheduling, and deadlock problems. 4 cr.

    Top

  • Database Management

    MET CS 579

    Prereq: (MET CS 231 or MET CS 232) or instructor's consent. Provides a theoretical yet modern presentation of database topics ranging from data and object modeling, relational algebra and normalization, to advanced topics such as how to develop web-based database applications. Other topics include relational data modeling, SQL, and manipulating relational data; applications programming for relational databases; physical characteristics of databases; achieving performance and reliability with database systems; and object-oriented database systems. Restrictions: This course may not be taken in conjunction with MET CS 469 (undergraduate) or MET CS 669. Refer to your department for further details. 4 cr.

    Top

  • Health Informatics

    MET CS 580

    Presents the technological fundamentals and integrated clinical applications of modern Biomedical IT. The first part of the course covers the technological fundamentals and the scientific concepts behind modern medical technologies, such as digital radiography, CT, nuclear medicine, ultrasound imaging, etc. It also presents various medical data and patient records, and focuses on various techniques for processing medical images. This part also covers medical computer networks and systems and data security and protection. The second part of the course focuses on actual medical applications that are used in health care and biomedical research. 4 cr.

    Top

  • Web Application Development

    MET CS 601

    Prereq: (MET CS 200 or MET CS 231 or MET CS 232 or MET CS 300) or instructor's consent. Focuses on building core competencies in web design and development. Begins with a complete immersion into HTML, essentially XHTML and Dynamic HTML (DHTML). Students are exposed to Cascading Style Sheets (CSS), as well as Dynamic CSS. The fundamentals of JavaScript language including object-oriented JavaScript are covered comprehensively. AJAX with XML and JSON are covered, as they are the primary means to transfer data from client and server. 4 cr.

    Top

  • Business Data Communication and Networks

    MET CS 625

    Prereq: (MET CS 200) or instructor's consent. Presents the foundations of data communications and takes a bottom-up approach to computer networks. Concludes with an overview of basic network security and management concepts. Restrictions: This course may not be taken in conjunction with MET CS 425 (undergraduate) or MET CS 535. Only one of these courses can be counted toward degree requirements. 4 cr.

    Top

  • Information Technology Project Management

    MET CS 632

    A comprehensive overview of the principles, processes, and practices of software project management. Students learn techniques for planning, organizing, scheduling, and controlling software projects. There is substantial focus on software cost estimation and software risk management. Students obtain practical project management skills and competencies related to the definition of a software project, establishment of project communications, managing project changes, and managing distributed software teams and projects. Effective Fall 2020, this course fulfills a single unit in the following BU Hub area: Teamwork/Collaboration. 4 cr.

    Top

  • Agile Software Development

    MET CS 634

    A comprehensive overview of the principles, processes, and practices of Agile software development. Students learn techniques for initiating, planning, and executing software development projects using Agile methodologies. Students obtain practical knowledge of Agile development frameworks and distinguish between Agile and traditional project management methodologies. Students learn how to apply Agile tools and techniques in the software development lifecycle from project ideation to deployment, including establishing an Agile team environment, roles and responsibilities, communication and reporting methods, and embracing change. Also leverages the guidelines outlined by the Project Management Institute for Agile project development as a framework. 4 cr.

    Top

  • Database Design and Implementation for Business

    MET CS 669

    Studies the latest relational and object-relational tools and techniques for persistent data and object modeling and management. Provides extensive hands-on experience using Oracle or Microsoft SQL Server as students learn the Structured Query Language (SQL) and design and implement databases. Students design and implement a database system as a term project. Restrictions: This course may not be taken in conjunction with MET CS 469 (undergraduate) or MET CS 579. Only one of these courses can be counted toward degree requirements. 4 cr.

    Top

  • Software Engineering

    MET CS 673

    Prereq: At least two 500-level or above programming-intensive courses or instructor's consent. Students should be familiar with object-oriented design concepts and proficient in at least one high level programming language before taking this course. Overview of techniques and tools to develop high quality software. Topics include software development life cycle such as Agile and DevOps, requirements analysis, software design, programming techniques, refactoring, testing, as well as software management issues. Features a term-long group project where students design and develop a real world software system in groups using Agile methodology and various SE tools, including UML tools, project management tools, programming frameworks, unit and system testing tools, integration tools, and version control tools. Effective Fall 2020, this course fulfills a single unit in each of the following BU Hub areas: Digital/Multimedia Expression, Oral and/or Signed Communication, Teamwork/Collaboration. 4 cr.

    Top

  • Data Science with Python

    MET CS 677

    Prereq: (MET CS 521) or equivalent or instructor's consent. Major Python tools and techniques for data analysis. Weekly assignments and mini projects help build necessary statistical, visualization, and other data science skills for effective use of data science in a variety of applications including finance, text processing, time series analysis, and recommendation systems. Students choose a topic for a final project and present it on the last day of class. 4 cr.

    Top

  • Information Systems Analysis and Design

    MET CS 682

    Prereq: basic programming knowledge or instructor's consent. Object-oriented methods of information systems analysis and design for organizations with data-processing needs. System feasibility; requirements analysis; database utilization; Unified Modeling Language; software system architecture, design, implementation, and management; project control; and systems-level testing. 4 cr.

    Top

  • Web Mining and Graph Analysis

    MET CS 688

    Prereq: (MET CS 544 or MET CS 555) or equivalent knowledge or instructor's consent. Formerly titled Web Analytics and Mining. Covers the areas of web mining, machine learning fundamentals, text mining, clustering and graph analytics. Includes learning fundamentals of machine learning algorithms, how to evaluate algorithm performance, feature engineering, content extraction, sentiment analysis, distance metrics, fundamentals of clustering algorithms, how to evaluate clustering performance, and fundamentals of graph analysis algorithms. Laboratory course. 4 cr.

    Top

  • Enterprise Information Security

    MET CS 695

    Prereq: (MET CS 535 or MET CS 625) or instructor's consent. Provides an in-depth presentation of security issues in computer systems, networks, and applications. Formal security models are presented and illustrated on operating system security aspects, more specifically memory protection, access control and authentication, file system security, backup and recovery management, and intrusion and virus protection mechanisms. Application level security focuses on language level security and various security policies including conventional and public keys encryption, authentication, message digest, and digital signatures. Internet and intranet topics include security in IP, routers, proxy servers, firewalls, application-level gateways, web servers, and file and mail servers. Discusses remote access issues, such as dial-up servers, modems, and VPN gateways and clients. 4 cr.

    Top

  • Data Mining

    MET CS 699

    Prereq: (MET CS 546) and (MET CS 579 or MET CS 669) or instructor's consent. Studies basic concepts and techniques of data mining. Topics include data preparation, classification, performance evaluation, association rule mining, and clustering. Students discuss basic data mining algorithms in class and practice data mining techniques using data mining software. Students use Weka and JMP Pro. 4 cr.

    Top

  • Advanced Machine Learning and Neural Networks

    MET CS 767

    Prereq: (MET CS 521) and (MET CS 622 or MET CS 673 or MET CS 682) or instructor's consent; (MET CS 677 highly recommended). Formerly titled Machine Learning. Theories and methods for learning from data. Covers a variety of approaches, including Supervised and Unsupervised Learning, Neural Nets and Deep Learning, Adversarial Learning, Bayesian Learning, and Genetic Algorithms. Each student focuses on two of these approaches and creates a term project. Laboratory course. 4 cr.

    Top

  • IT Strategy and Management

    MET CS 782

    Prereq: (MET CS 682) or instructor's consent. Describes and compares contemporary and emerging information technology and its management. Students learn how to identify information technologies of strategic value to their organizations and how to manage their implementation. The course highlights the application of IT to business needs. MET CS 782 is at the advanced Master's (700-) level and assumes that students understand IT systems at the level of MET CS 682 Systems Analysis and Design. Students who have not completed MET CS 682 should contact their academic advisor or the instructor to determine if they are adequately prepared. 4 cr.

    Top

Questrom School of Business

  • Introduction to Information Systems

    QST IS 223

    Prereq: (QST SM 131). Provides students with an understanding of the important role that information and information technology play in supporting the effective operation and management of business. Elaborates on the themes of "place to space" and the implications for business of the digital enterprise. Focuses on learning IS concepts in the context of application to real business problems. 4 cr.

    Top

  • Agile Development Methodologies

    QST IS 467

    Prereq: (QST IS 223) and (QST BA 222 or CAS CS 105 or CAS CS 108 or CAS CS 111, previous or concurrent). Designed to provide students with an overview of Agile Development methodologies. Introduces the various methods currently used in the industry and then focuses on the primary methodologies used today, Scrum and Kanban. Students learn the tools of these software development approaches that produce deliverables to end users every two to four weeks, and then analyze the value each of these methodologies brings into the development process and the reasoning behind a corporation selecting one method over the other (or a combination of both). In addition, students are introduced to CA Project Management software, the leader in the industry for Scrum. Students learn to analyze requirements, create backlogs, schedule "stories" to be developed, hold Standup meetings, Reviews and Retrospectives. 4 cr.

    Top

  • Innovating with Information Technology

    QST IS 479

    Prereq: (QST IS 223). Surveys the organizational implementation, uses, and impacts of advanced information technology including decision support systems, management support systems, and expert systems. Includes a group project to design and develop a decision support system. 4 cr.

    Top