Computer Science

  • MET CS 625: Business Data Communication and Networks
    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.
  • MET CS 633: Software Quality, Testing, and Security Management
    Many of today's software systems are developed by geographically distributed teams. The course examines software engineering in this context, from the project and program management perspective. The term project consists of in-process submissions that are thoroughly reviewed, including among peers, together with a working system prototype. No programming background is required. Prereq: MET CS 520 or MET CS 521, and MET CS 682. Or instructor's consent.
  • 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 Design and Implementation
    This course presents the concepts and fundamental design principles of computer networks and Internet that have contributed to the modern networks technologies. It will also present an overview of new trends in networks and Internet/Intranet with design of real campus networks. Topics include design principles for network topology and optimization of network elements. Design of network architecture is also covered, including the fundamentals of Internet applications (HTTP, FTP, DNS), TCP and UDP protocols and implementations, congestion control and traffic engineering, multimedia networking, and security in computer networks. Prereq: MET CS 231 or MET CS 232 and either MET CS 625 or MET CS 535; or instructor's consent.
  • MET CS 651: Web Development with .NET
    This course provides a comprehensive introduction to building state-of-the-art Web sites, Web applications, Web services, and Web-connected devices with Microsoft technologies, with an emphasis on server-side technologies, cross-platform (Windows, OS X, Linux) methodologies, and how they interplay with today's client-side script. Server-side technologies covered include the C# programming language, the ASP.NET system for developing web sites and web apps, REST-based and SOAP-based web services, ADO.NET and LINQ for data access, Model View Controller (MVC) and Model- View-ViewModel (MVVM) architectures and frameworks like Windows Communication Framework (WCF). This class requires some programming experience in either Java, C#, or C++. Programming will be based on Microsoft Visual Studio or Microsoft Code, available through BU's MSDNAA. A copy of the software will be provided to students. Prereq: MET CS 232, or instructor's consent.
  • MET CS 662: Computer Language Theory
    Undergraduate Prerequisites: MET CS 566; 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.
  • MET CS 664: Artificial Intelligence
    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 248 and MET CS 341 or MET CS 342; or instructor's consent.
  • MET CS 665: Software Design and Patterns
    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 341, MET CS 342, MET CS 520, or MET CS 521. Or instructor's consent.
  • MET CS 667: Enterprise Java
    The Java Enterprise Edition (Java EE) architecture is explored starting with the presentation layer which includes the servlets and Java Server Pages (JSP). Java Server Faces (JSF) are briefly covered. The business layer is examined using the enterprise java beans (EJB). The persistence layer is studied through the Java Persistence API (JPA) and the Hibernate framework. Java based web services are explored using JAX- WS (SOAP based) and JAX-RS (REST based) APIs. The Spring framework is compared as an alternative architecture. Prereq: MET CS 565; or instructor's consent.
  • MET CS 669: Database Design and Implementation for Business
    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: Only for MS CIS. 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 671: Systems Programming Using UNIX
    Teaches students how to develop complex applications based on the UNIX/POSIX standard. Topics include UNIX standardization and implementation, shell programming, system calls, library function, process control and relationships, signals, file and terminal input/output, and interprocess communication. Laboratory course. Prereq: MET CS 575; or instructor's consent.
  • MET CS 673: Software Engineering
    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. Prereq: MET CS 342 and at least one 500-level computer programming-intensive computer science course; or instructor's consent.
  • MET CS 674: Database Security
    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 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.
  • MET CS 683: Mobile Application Development
    This course will be divided into two parts. The first part, two thirds of the course, covers the principles and problems associated with mobile device applications, using as examples Google Android, iPhone, and other platforms such as Nokia. The last third is an in depth coverage of the open source Android development platform. Issues covered will include Mobile Hardware and Cell Networks, Architectures, Operating Systems, Languages, Development Environments and Simulators, User Interfaces, Location-based Services, Storing and Retrieving Data. Students will accomplish the following. (1) Learn the unique set of problems and challenges in developing mobile applications compared with desktop applications; (2) Learn the platform, tools, technology and process for developing mobile applications using Google Android and the Apple iPhone platforms as the main examples; (3) Write applications for the platforms covered, simulate them, and test them on the mobile hardware where possible; and (4) Work collaboratively with fellow students on their projects. Prereq: MET CS 342 OR MET CS 520. Or instructor's consent.
  • MET CS 684: IT Security Policies and Procedures
    This course enables IT professional leaders to identify emerging security risks and implement highly secure networks to support organizational goals. Discussion of methodologies for identifying, quantifying, mitigating and controlling risks. Students implement a comprehensive IT risk management plans (RMP) that identify alternate sites for processing mission-critical applications, and techniques to recover infrastructure, systems, networks, data and user access. The course also discusses related topics such as: disaster recovery, handling information security; protection of property, personnel and facilities; protection of sensitive and classified information, privacy issues, and criminal terrorist and hostile activities.
  • MET CS 685: Network Design and Management
    . 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 Analytics and Mining
    The Web Analytics and Mining course covers the areas of web analytics, text mining, web mining, and practical application domains. The web analytics part of the course studies the metrics of web sites, their content, user behavior, and reporting. Google analytics tool is used for collection of web site data and doing the analysis. The text mining module covers the analysis of text including content extraction, string matching, clustering, classification, and recommendation systems. The web mining module studies how web crawlers process and index the content of web sites, how search works, and how results are ranked. Application areas mining the social web and game metrics will be extensively investigated. Laboratory Course. Prerequisites: MET CS 544, or MET CS 555 or equivalent knowledge, or instructor's consent.
  • MET CS 689: Designing and Implementing a Data Warehouse
    This course surveys state-of-the art technologies in DW and Big Data. It describes logical, physical and semantical 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.