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 200: Fundamentals of Information Technology
    This course is a technically-oriented introductory survey of information technology. Students learn about basic computer information, different types of business systems and basic systems analysis, design and development. Students also study basic mathematics, software development and create simple Java programs.
  • 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 C++. Laboratory course.
  • MET CS 231: Programming with C++
    Undergraduate Prerequisites: MET CS 201; or instructor's consent
    Covers the elements of object-oriented programming and the C++ language. Data types, control structures, functions, library functions, classes, inheritance, and multiple inheritance. Use of constructors, destructors, function and operator overloading, reference parameters and default values, friend functions, input and output streams, templates, and exceptions. Laboratory course.
  • MET CS 232: Programming with Java
    Undergraduate Prerequisites: MET CS 201; or instructor's consent
    This course 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. Laboratory course.
  • MET CS 248: Discrete Mathematics
    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, shortest path and minimal spanning trees algorithms. Monoids and Groups.
  • MET CS 341: Data Structures with C++
    Undergraduate Prerequisites: MET CS 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.
  • MET CS 342: Data Structures with Java
    Undergraduate Prerequisites: MET CS 232; or instructor's consent
    This course 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, and graphs, and searching and sorting algorithms. Laboratory course.
  • MET CS 382: Information Systems for Management
    Undergraduate Prerequisites: MET CS 201; 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
    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 425: Introduction to Business Data Communications and Networks
    Undergraduate Prerequisites: MET CS 200; or instructor's consent.
    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, management IT Economic: Total Cost Ownership, Return on investment and IT Project Portfolio Management.
  • MET CS 432: Introduction to IT Project Management
    This course provides comprehensive overview of IT Project Management and the key processes associated with planning, organizing and controlling of software Projects. The course will focus on various knowledge areas such as: project scope management, risk management, quality management, communications management and integration management. Students will be required to submit a term paper.
  • MET CS 469: Introduction to 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. Topics covered include: the relational and entity-relational models, data modeling, normalization, object modeling, SQL, advanced SQL, stored procedures, triggers, database design, database lifecycle, and transactions. Students are introduced 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 Class. Restrictions: This course may not be taken in conjunction with MET CS 669 or MET CS 579. Only one of these courses can be counted towards degree requirements.
  • MET CS 472: Computer Architecture
    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. Prereq: MET CS 231 or MET CS 232; or instructor's consent
  • MET CS 473: Introduction to 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; or instructor's consent.
  • MET CS 495: Directed Study
    Undergraduate Prerequisites: consent of advisor.
    Independent study on special projects under faculty guidance.
  • MET CS 496: Directed Study
    Undergraduate Prerequisites: consent of advisor.
    Independent study on special projects under faculty guidance.
  • MET CS 503: Windows .NET Application Programming with C#
    In-depth exploration of the C# programming language and Visual Studio .NET for development, debugging, and deployment of applications. Programming in C# encompassing the following topics: Device I/O handling, .NET Framework application development classes such as window forms, splitters, views, controls, dialogs, resources, such as menus, tool bars, bitmaps, and status bars. Custom controls, visual inheritance, SDI, MDI, and extending the Visual Studio .NET interface. File I/O for reading and storing binary and textual information. Data services for manipulating SQL-databases using ADO.NET. Graphics Services (GDI+) for 2D-vector graphics, imaging, and text rendering, including the new features of gradients, anti-aliasing, double buffering techniques, zooming, off-screen image processing and rendering. Communication services: TCP and UDP sockets, broadcast, unicast, and multicast sockets. Utilizing idle time processing, timers, and threading for building responsive GUI applications. Laboratory course. Prereq: MET CS 341 and MET CS 342; or instructor's consent.
  • MET CS 504: Green Information Technology
    This course empowers students to reduce the energy use, waste, and other environmental impacts of IT systems while reducing life cycle costs, thereby improving competitive advantage. Students learn how to measure computer power usage, minimize power usage, procure sustainable hardware, design green data centers, recycle computer equipment, configure computers to minimize power, use virtualization to reduce the number of servers, and other green technologies. Students also learn how to make green IT an integral part of organizational culture and planning, to foster long-term sustainable information technology. The course is executed through a combination of lectures, guest lectures, field trips, assignments, labs, case studies, and a term project.
  • MET CS 506: Internship in Computer Science
    This course provides graduate students with the opportunity to receive academic credit for a part‐time or full‐time internship. The chosen internship must be related to the student's specialization of study and located at an off‐campus facility. 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. International students choosing to take this course to receive a CPT benefit must have completed one academic year of study in order to comply with International Students and Scholars Office requirements. Graduate standing in Computer Science, Computer Information Systems or Telecommunication is required