Computer Science

  • MET CS 101: Computers and Their Applications
    For students with no prior 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. Laboratory course.
  • MET CS 201: Introduction to Programming
    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.
  • MET CS 231: Programming with C++
    Prerequisite: MET CS 201 or consent of the instructor. Cover the elements of object-oriented programming and the C++ language, including data types, control structures, functions, library functions, classes, inheritance, and multiple inheritance. You will also study constructors, destructors, function and operator overloading, reference parameters and default values, friend functions, input and output streams, templates, and exceptions.
  • MET CS 232: Programming with Java
    Learn the fundamentals of object-oriented programming and the Java programming language, including primitive data types, control structures, methods, classes, arrays, and strings. You will also explore key concepts and tools such as inheritance, polymorphism, interfaces, exceptions, the Java collections framework, basic data structures, and recursion.
  • MET CS 248: Discrete Mathematics
    Prerequisite: high school algebra. 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.
  • MET CS 300: Introduction to Software Development
    This course introduces basic concepts in discrete mathematics, computer systems and programming that are necessary for modern computing systems. It also develops analytic and logical thinking and prepares students to take graduate-level courses in software development degree. This course first reviews the basic concepts in discrete mathematics including logic, sets, functions, relations and combinatorics. Then it discusses the fundamental concepts in computer systems such as computer organization, basic OS concepts, CPU scheduling, memory management, process management and synchronization. Concurrently with the above mathematics and systems studies, programming concepts are introduced and practiced throughout the whole course using Python. Restriction: Not for CS undergraduate students
  • MET CS 341: Data Structures with C++
    Undergraduate Prerequisites: (METCS 231) or instructor's consent. - Covers data structures, using the C++ language. Topics include data abstraction, encapsulation, the use of recursion, creation and manipulation of various data structures; bags, lists, queues, tables, trees, heaps and graphs, and searching and sorting algorithms. Laboratory course. Prereq: METCS 231 or instructor's consent.
  • MET CS 342: Data Structures with Java
    Prerequisites: MET CS 232 or consent of instructor. Learn 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. Effective Fall 2020, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Creativity/Innovation, Critical Thinking.
    • Creativity/Innovation
    • Critical Thinking
    • Quantitative Reasoning II
  • MET CS 382: Information Systems for Management
    Undergraduate Prerequisites: (METCS201) or consent of the instructor - Computer-based management information systems. Management's role in development and use of computer systems. Planning for a comprehensive information system; role in decision making, case studies.
  • MET CS 401: Introduction to Web Application Development
    Undergraduate Prerequisites: (METCS231 OR METCS232) or instructor's consent - This course focuses on building core competencies in web design and development. It 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 is covered comprehensively. AJAX with XML and JSON are covered, as they are the primary means to transfer data from client and server. Prereq: METCS231 OR METCS232 or instructor's consent.
  • MET CS 422: Advanced Programming Concepts
    Prerequisite: MET CS 342 or consent of instructor. Comprehensive coverage of object-oriented programming with cooperating classes. Implementation of polymorphism with inheritance and interfaces and in Java library containers. Programming with exceptions, stream input/output and graphical AWT and Swing components. Threads, sockets, datagrams, and database connectivity are also covered in this course. Laboratory course. For undergraduate students. Effective Fall 2020, this course fulfills a single unit in each of the following BU Hub areas: Quantitative Reasoning II, Creativity/Innovation, Critical Thinking.
    • Creativity/Innovation
    • Critical Thinking
    • Quantitative Reasoning II
  • MET CS 425: Introduction to Business Data Communications and Networks
    Prerequisites: MET LB 102 or consent of instructor. Basic concepts of data communications and computer networks; hardware, software, and reference models; TCP/IP protocol suit. Overview of voice communication, LAN, network development life cycle, security, and management. IT Economics: Total Cost Ownership, Return on Investment, and IT Project Portfolio Management. Restrictions: May not be taken in conjunction with MET CS 535 or MET CS 625. Only one of these courses can be counted toward degree requirements.
  • MET CS 432: Introduction to IT Project Management
    A comprehensive overview of the principles, processes, and practices of software project management, grounded in the latest standards from the Project Management Institute (PMI). You will gain hands-on experience in planning, organizing, scheduling, and controlling software projects, with a strong emphasis on both predictive and adaptive methodologies. In particular, you will explore agile project management with a focus on the Scrum framework and develop practical competencies in business analysis, defining requirements, leading and managing distributed teams, facilitating project communications, handling change management, and assessing risk and cost estimation. A key component of the course involves the design and development of AI-powered applications, equipping you with AI literacy and demonstrating how AI can enhance software project management practices. This course qualifies you to pursue CAPM and PMP credential. Also, this course fulfills the educational requirements necessary to pursue the Certified Associate in Project Management (CAPM)® and Project Management Professional (PMP)® certifications offered by the Project Management Institute (PMI). Effective Fall 2020, this course fulfills a single unit in the following BU Hub area: Teamwork/Collaboration.
    • Teamwork/Collaboration
  • MET CS 469: Introduction to Database Design and Implementation for Business
    Learn the latest relational and object-relational tools and techniques for persistent data and object modeling and management. You will gain extensive hands-on experience using Oracle or Microsoft SQL Server and Structured Query Language (SQL). 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. Advanced topics, including performance tuning, distributed databases, replication, business intelligence, data warehouses, internet databases, database administration, security, backup, and recovery, will be introduced. You will 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.
  • MET CS 472: Computer Architecture
    Prerequisites: MET CS 232 or consent of instructor. 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.
  • MET CS 473: Introduction to Software Engineering
    Prerequisites: MET CS 342 or consent of instructor. 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.
    • Digital/Multimedia Expression
    • Oral and/or Signed Communication
    • Teamwork/Collaboration
  • MET CS 495: Directed Study
    Undergraduate Prerequisites: consent of advisor. - Independent study on special projects under faculty guidance.
  • MET CS 506: Internship in Computer Science
    This course provides graduate students with the opportunity to seek internships. The chosen internship must be related to the student's specialization of study. Students enrolled in the course will be individually supervised by a faculty member from the Department of Computer Science. This course may not be taken until the student has completed at least six courses towards their master's program. Graduate standing in MS programs offered by the MET Department of Computer Science is required. The internship credits cannot be applied toward the MS degree program.
  • MET CS 520: Information Structures with Java
    Prerequisite: MET LB 102 or consent of instructor. Not recommended for students without a programming background. Explore the concepts of object-oriented approach to software design and development using the Java programming language. You will engage in a detailed discussion of programming concepts starting with the fundamentals of data types, control structures methods, classes, applets, arrays and strings, and proceeding to advanced topics such as inheritance and polymorphism, interfaces, creating user interfaces, exceptions, and streams. Upon completion of this course, you will be able to apply software engineering criteria to design and implement Java applications that are secure, robust, and scalable.
  • MET CS 521: Information Structures with Python
    This course covers the concepts of the object-oriented approach to software design and development using Python. It includes a detailed discussion of programming concepts starting with the fundamentals of data types, control structures methods, classes, arrays and strings, and proceeding to advanced topics such as inheritance and polymorphism, creating user interfaces, exceptions and streams. Upon completion of this course students will be 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. Prerequisite: Programming experience in any language. Or Instructor's consent.
    • Creativity/Innovation
    • Critical Thinking
    • Quantitative Reasoning II