Computer Science

  • MET CS 664: Artificial Intelligence
    Undergraduate Prerequisites: MET CS 248 and CS 341 or CS 342 or instructor's consent.
    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.
  • 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.
  • MET CS 667: Enterprise Java
    Undergraduate Prerequisites: MET CS 342 or MET CS 565; or instructor's consent
    The course begins with an overview of advanced Java concepts like databases, networking, and remote method invocation (RMI). The J2EE architecture is explored starting with the presentation layer which includes the servlets and Java Server Pages (JSP). The Struts application framework is presented as a case study. Hibernate and Spring framework will be covered extensively. The business layer is covered using the enterprise java beans (EJB 2.1 and EJB 3.0). Advanced concepts like Java Messaging Service and Java Server Faces will be briefly covered.
  • MET CS 669: Database Design and Implementation for Business
    Undergraduate Prerequisites: 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 thesecourses 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. class. 4 credits.
  • MET CS 671: Systems Programming Using UNIX
    Graduate Prerequisites: MET CS 575.
    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.
  • MET CS 673: Software Engineering
    Undergraduate Prerequisites: MET CS342 and at least one 500-level computer programming-intensive science course (or instructor's consent). MET CS 564 or MET CS 565 are recommended.
    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.
  • 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.
  • MET CS 680: Business Structure and Strategy in the Telecommunication Industry
    Market structure, market rivalry, regulations, and public policy will be discussed. Merger/acquisition and strategic partnerships, as well as the business structure of the cable, wireless, and satellite industries. E-commerce and Web-related issues will be examined.
  • 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
    Graduate Prerequisites: MET CS 342; or instructor's consent.
    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.
  • 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
    Undergraduate Prerequisites: MET CS 535 or MET CS 625; or instructor's consent
    This course covers computer networks management including configuration, fault, performance, as well as security management. Particular focus and emphasis is given to security management. Problem solving techniques and network management tools are discussed and practiced during extensive laboratory sessions. Topics include LAN and WAN network management, fault detection, configuration, security, performance, accounting management. Strong focus on problem-solving techniques and network management tools based on SNMP, detailed discussion of multi-user computer systems security techniques, basics of cryptography, authentication techniques, and Kerberos, Secure operating systems. Software protection. Electronic mail. Web Security, IPsec, e-commerce: payment protocols, electronic cash. Risk assessment.
  • 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.
  • MET CS 689: Designing and Implementing a Data Warehouse
    Graduate Prerequisites: CS 579 or CS 669 or consent of the instructor
    This course provides students with the technical skills required to plan, implement, and maintain a data warehouse using a DBMS such as Oracle Warehouse Builder. It describes basic data warehousing concepts. Key topics: Design a data warehousing system; implement a database designed with a star schema, gather data from primary data sources, transform data, and load data in to a DBMS. Students will create a cube using OLAP and analyze cube data using client applications. Upon successful completion, students will be familiar with the typical data warehouse components and architecture, and have an understanding of the practical uses of data warehousing.
  • MET CS 690: Network Security
    Undergraduate Prerequisites: MET CS 535 or MET CS 625; 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. 4 credits.
  • MET CS 693: Digital Forensics and Investigations
    Provides a comprehensive understanding of digital forensics and investigation tools and techniques. Laboratory and hands-on assignments either in solo or in teams. 4 credits.
  • MET CS 695: Enterprise Information Security
    Undergraduate Prerequisites: MET CS 625; or instructor's consent
    The course 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, intrusion and virus protection mechanisms. Application level security focuses on language level security and various security policies; conventional and public keys encryption, authentication, message digest and digital signatures. Internet and intranet topics include security in IP, routers, proxy servers, and firewalls, application-level gateways, Web servers, file and mail servers. Discussion of remote access issues, such as dial-up servers, modems, VPN gateways and clients.
  • MET CS 699: Data Mining and Business Intelligence
    Undergraduate Prerequisites: MS CS Prerequisites: MET CS 579, or instructor's consent. MS CIS Prerequisites: MET CS 669 and MET CS 546, or instructor's consent.
    Data mining and investigation is a key goal behind any data warehouse effort. The course provides an introduction to concepts behind data mining, text mining, and web mining. Algorithms will be tested on data sets using the Weka Data mining software and Microsoft SQL Server 2005 (Business Intelligence Development Studio). 4 credits.
  • MET CS 701: Rich Internet Application Development
    Undergraduate Prerequisites: MET CS 520 or MET CS 601 and programming experience, or instructor's consent
    The Rich Internet Application (RIA) Development course concentrates primarily on building rich client web applications in the browser for desktop and mobile devices. The course is divided into various modules covering in depth the following technologies: HTML5, jQuery UI & Mobile, and AngularJS. Along with the fundamentals underlying these technologies, several applications will be showcased as case studies. Students work with these technologies starting with simple applications and then examining real world complex applications. At the end of this course, students would have mastered the latest and widely used RIA methodologies.
  • MET CS 703: Network Forensics
    Undergraduate Prerequisites: MET CS 625 and MET CS 695; or instructor?s consent.
    This course provides a comprehensive understanding of network forensic analysis principles. Within the context of forensics security, network infrastructures, topologies, and protocols are introduced. 4 credits.