Computer Science
View courses in
- Computer Science
- All Departments
- Actuarial Science
- Administrative Sciences
- Advertising
- Anthropology
- Art History
- Arts Administration
- Astronomy
- Biology
- Biomedical Laboratory & Clinical Sciences
- Chemistry
- City Planning
- Computer Science
- Criminal Justice
- Economics
- English Composition & Literature
- Gastronomy
- Health Communication
- Health Science
- History
- Humanities
- Interdisciplinary Studies
- Leadership
- Linguistics
- Management
- Mathematics, Statistics
- Philosophy
- Physics
- Psychology
- Sociology
- Urban Affairs
-
MET CS 625: Business Data Communication and Networks
Undergraduate Prerequisites: On Campus Prerequisites: MET CS 200 Fundamentals of Information Techno logy. Or instructor^s consent. ; Undergraduate Corequisites: Restrictions: MS CIS only. This course may not be taken in conjunction with CS 425 (undergraduate) or CS 535. Only CS 535 or CS 625 can be c ounted towards degree requirements. - This course presents the foundations of data communications and takes a bottom-up approach to computer networks. The course concludes with an overview of basic network security and management concepts. Prereq: MET CS 200, or instructor's consent. 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 towards degree requirements. -
MET CS 632: Information Technology Project Management
This course provides students with 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 will 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. -
MET CS 633: Software Quality, Testing, and Security Management
Theory and practice of security and quality assurance and testing for each step of the software development cycle. Verification vs. validation. Test case design techniques, test coverage criteria, security development and verification practices, and tools for static and dynamic analysis. Standards. Test-driven development. QA for maintenance and legacy applications. From a project management knowledge perspective, this course covers the methods, tools and techniques associated with the following processes -- Plan Quality, Perform Quality Assurance, and Perform Quality Control. -
MET CS 634: Agile Software Development
This course provides students with a comprehensive overview of the principles, processes, and practices of agile software development. Students learn techniques for initiating, planning and executing on software development projects using agile methodologies. Students will obtain practical knowledge of agile development frameworks and be able to distinguish between agile and traditional project management methodologies. Students will 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. We also leverage the guidelines outlined by the Project Management Institute for agile project development as a framework in this course. -
MET CS 635: Network Media Technologies
Graduate Prerequisites: (METCS231 & METCS232 & METTC535) CS 231 or CS 232 and TC 535 or consent of the instructor. - The purpose of this course is to provide students with a deeper understanding of Media-specific Technologies not only so that they will be able to use the ones covered in this course, but more importantly be able to analyze and evaluate new technologies. This course applies the principles from CS 535 to understand the engineering that lead to them as well as the special problems that confront network technologies that operate directly over the physical media. These Media specific layers have three problems to solve: the usual one of multiple users of a common resource, accommodating the particular characteristics of the media, and providing (to the degree possible) a media- independent service to the layers above. While CS 535 provides a high-level view of some of these technologies, in this course, they are considered in much greater detail as to how these technologies address their requirements and take advantage of the assumptions made. The emphasis is on those technologies that are either representative of a type or take a unique perspective on the problem. Hence, the traditional data link protocols, such as HDLC, modern Ethernet (primarily VLANs), WiFi (802.11) represent the first type, while media technologies, such as DOCSIS, RFIDs, IoT, and cellular mobile networks are representative of the second. The course will consider how these technologies solve mobility, routing, congestion, QoS (multi-media), security, etc. A major project is part of this course. Prereq: MET CS 231 or MET CS 232 and either MET CS 625 or MET CS 535; or instructor's consent. -
MET CS 662: Computer Language Theory
Undergraduate Prerequisites: (METCS566) or instructor's consent - Theory of finite automata and regular expressions and properties of regular sets. Context- free grammars, context-free languages, and pushdown automata. Turing machines, undecidability problems, and the Chomsky hierarchy. Introduction to computational complexity theory and the study of NP-complete problems. Prerequisite: MET CS 248 or instructor's consent. -
MET CS 664: Artificial Intelligence
Graduate Prerequisites: MET CS 248 and MET CS 341 or MET CS 342. - Study of the ideas and techniques that enable computers to behave intelligently. Search, constraint propagations, and reasoning. Knowledge representation, natural language, learning, question answering, inference, visual perception, and/or problem solving. Laboratory course. Prereq: MET CS 341, MET CS 342, MET CS 520 or MET CS 521. Or instructor's consent. -
MET CS 665: Software Design and Patterns
Graduate Prerequisites: (METCS341 or METCS342 and METCS565) or consent of the instructor - Software design principles, the object-oriented paradigm, unified modeling language; creational, structural, and behavioral design patterns; OO analysis and design; implementation of semester project. Laboratory course. Prereq: (MET CS 526 or MET CS 622) and one of the following (MET CS 341, MET CS 342, MET CS 520, or MET CS 521). Or instructor's consent. -
MET CS 669: Database Design and Implementation for Business
Undergraduate Prerequisites: Restrictions: Only for MS CIS. This course may not be taken in conjunc tion with MET CS 469 (undergraduate) or MET CS 579. Only one of these courses can be counted towards degree requirements. - Students learn the latest relational and object-relational tools and techniques for persistent data and object modeling and management. Students gain extensive hands- on experience using Oracle or Microsoft SQL Server as they 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 towards degree requirements. -
MET CS 673: Software Engineering
Undergraduate Prerequisites: MET CS342 and at least one 500-level computer programming-intensive sc ience course (or instructor's consent). MET CS 564 or MET CS 565 are r ecommended. - 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. This course features a semester-long group project where students will 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.
Prereq: This is a capstone course to be taken after at least two programming intensive courses toward the end of a program of study. Familiarity with OO design concepts and proficiency in at least one high-level programming language is required. Or, Instructor's consent. Familiarity with web or mobile application development preferred.
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. -
MET CS 674: Database Security
Graduate Prerequisites: CS 579 or CS 669 or consent of the instructor - The course provides a strong foundation in database security and auditing. This course utilizes Oracle scenarios and step-by-step examples. The following topics are covered: security, profiles, password policies, privileges and roles, Virtual Private Databases, and auditing. The course also covers advanced topics such as SQL injection, database management security issues such as securing the DBMS, enforcing access controls, and related issues. Prereq: MET CS 579 or MET CS 669; or instructor's consent. -
MET CS 677: Data Science with Python
Students will learn major Python tools and techniques for data analysis. There are weekly assignments and mini projects on topics covered in class. These assignments will 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. In addition, students will choose a topic for a final project and present it on the last day of class. Prerequisite: MET CS 521 or equivalent. Or, instructor's consent. -
MET CS 682: Information Systems Analysis and Design
Undergraduate Prerequisites: 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, and implementation, management; project control; and systems-level testing. Prerequisite: Basic programming knowledge or instructor's consent. -
MET CS 683: Mobile Application Development with Android
Graduate Prerequisites: (METCS342) or instructor's consent. - This course discusses the principles and issues associated with mobile application development using Android as the development platform. Topics covered will include Android application components (Activities, Services, Content Providers and Broadcast Receivers), ICC (Inter-component Communication), UI design, data storage, asynchronous processing, 2D graphics, and Android security. Students will develop their own apps in Java and/or Kotlin using Android Studio in their semester-long projects. Prior knowledge of Java programming is required. Prerequisite: MET CS 342 OR MET CS 520 OR MET CS 521. Or instructor's consent. -
MET CS 684: Enterprise Cybersecurity Management
This course covers important topics that students need to understand in order to effectively manage a successful cybersecurity and privacy program, including governance, risk management, asset classification and incidence response. Students are first introduced to cybersecurity & privacy policy frameworks, governance, standards, and strategy. Risk tolerance is critical when building a cybersecurity and privacy program that supports business goals and strategies. Risk management fundamentals and assessment processes will be reviewed in depth including the methodology for identifying, quantifying, mitigating and controlling risks. Asset classification and the importance of protecting Intellectual Property (IP) will prepare students to understand and identify protection mechanisms needed to defend against malicious actors, including industry competitors and nation states. Incident Response programs will cover preparation and responses necessary to triage incidents and respond quickly to limit damage from malicious actors. -
MET CS 685: Network Design and Management
Undergraduate Prerequisites: (METCS535 OR METCS625) or instructor's consent - . This course will cover contemporary integrated network management based on FCAPS (Fault, Configuration, Administration, Performance, and Security management) model. The introduction to the course will be an overview of data transmission techniques and networking technologies. The middle part of the course will be on Network Management Model, SNMP versions 1, 2 and 3, and MIBs. In the second part of the course, particular focus and emphasis will be given to current network management issues: various wireless networks technologies (WLAN, WiFi, WiMax), Voice-over-IP, Peer-to-Peer Networks, networking services, Identity Management, and Services Oriented Architecture Management. Prereq: MET CS 535 or MET CS 625. or instructor's consent. -
MET CS 688: Web Mining and Graph Analytics
Prerequisites: MET CS 544, or MET CS 555 or equivalent knowledge, or instructor's consent. - The Web Mining and Graph Analytics course covers the areas of web mining, machine learning fundamentals, text mining, clustering, and graph analytics. This 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, link analysis and community detection based on graphs. Laboratory Course. -
MET CS 689: Designing and Implementing a Data Warehouse
Graduate Prerequisites: CS 579 or CS 669 or consent of the instructor - This course surveys state-of-the art technologies in DW and Big Data. It describes logical, physical and semantic foundation of modern DW infrastructure. Students will create a cube using OLAP and implement decision support benchmarks on Hadoop/Spark vs Vertica database. Upon successful completion, students will be familiar with tradeoffs in DW design and architecture. Prereq: MET CS 579 or MET CS 669 and either MET CS 520 or MET CS 521. Or instructor's consent. -
MET CS 690: Network Security
Undergraduate Prerequisites: (METCS535 OR METCS625) or instructor's consent. - This course will cover advanced network security issues and solutions. The main focus on the first part of the course will be on Security basics, i.e. security services, access controls, vulnerabilities, threats and risk, network architectures and attacks. In the second part of the course, particular focus and emphasis will be given to network security capabilities and mechanisms (Access Control on wire-line and wireless networks), IPsec, Firewalls, Deep Packet Inspection and Transport security. The final portion of the course will address Network Application security (Email, Ad-hoc, XML/SAML and Services Oriented Architecture security. As part of our course review we will explore a number of Network Use Cases. Prereq: MET CS 535 or MET CS 625; Familiarity with OSI and TCP/IP protocol stack; Background-familiarity with binary numbers, prime numbers, binary- hexadecimal-decimal conversions, etc; Familiarity with computer programming concepts; or instructor's consent. -
MET CS 693: Digital Forensics and Investigations
Provides a comprehensive understanding of digital forensics and investigation tools and techniques. Learn what computer forensics and investigation is as a profession and gain an understanding of the overall investigative process. Operating system architectures and disk structures are discussed. Studies how to set up an investigator's office and laboratory, as well as what computer forensic hardware and software tools are available. Other topics covered include importance of digital evidence controls and how to process crime and incident scenes, details of data acquisition, computer forensic analysis, e-mail investigations, image file recovery, investigative report writing, and expert witness requirements. Provides a range of laboratory and hands-on assignments either in solo or in teams. With rapid growth of computer systems and digital data this area has grown in importance. Prereq: Working knowledge of windows computers, including installing and removing software. Access to a PC meeting the minimum system requirements defined in the course syllabus.