Data Science Courses

Note: Not all Data Science courses are offered every semester, and new courses may be added at any time. Check the schedule of classes, for the latest offerings.

Required Core Courses

DATA 601: Introduction to Data Science

The goal of this class is to give students an introduction to and hands on experience with all phases of the data science process using real data and modern tools. Topics that will be covered include data formats, loading, and cleaning; data storage in relational and non-relational stores; data governance, data analysis using supervised and unsupervised learning using R and similar tools, and sound evaluation methods; data visualization; and scaling up with cluster computing, MapReduce, Hadoop, and Spark.

Prerequisite: Enrollment in the Data Science program. Other students may be admitted with instructor permission. Must be taken in first semester.

DATA 602: Introduction to Data Analysis and Machine Learning

This course provides a broad introduction to the practical side of machine-learning and data analysis. This course examines the end-to-end processing pipeline for extracting and identifying useful features that best represent data, a few of the most important machine algorithms, and evaluating their performance for modeling data. Topics covered include decision trees, logistic regression, linear discriminant analysis, linear and non-linear regression, basic functions, support vector machines, neural networks, Bayesian networks, bias/variance theory, ensemble methods, clustering, evaluation methodologies, and experiment design. Prerequisite: Enrollment in the Data Science program. Other students may be admitted with instructor permission.

Prerequisite: DATA 601: Introduction to Data Science. Must be taken in first semester

DATA 603: Platforms for Big Data Processing

The goal of this course is to introduce methods, technologies, and computing platforms for performing data analysis at scale. Topics include the theory and techniques for data acquisition, cleansing, aggregation, management of large heterogeneous data collections, processing, information and knowledge extraction. Students are introduced to map-reduce, streaming, and external memory algorithms and their implementations using Hadoop and its eco-system (HBase, Hive, Pig and Spark). Students will gain practical experience in analyzing large existing databases.

Prerequisite: Enrollment in the Data Science program and DATA 601. Other students may be admitted with program director’s permission.

DATA 604: Data Management

This course introduces students to the data management, storage and manipulation tools common in data science. Students will get an overview of relational database management systems and various NoSQL database technologies, and apply them to real scenarios. Topics include: ER and relational data models, storage and concurrency preliminaries, relational databases and SQL queries, NoSQL databases, and Data Governance.

Prerequisite: Enrollment in the Data Science program. Other students may be admitted with instructor permission. Corequisite: DATA 601: Introduction to Data Science

DATA 605: Ethical and Legal Issues in Data Science

This course provides a comprehensive overview of important legal and ethical issues pertaining to the full life cycle of data science. The student learns how to think through the ethics of making decisions and inferences based on data and how important cases and laws have shaped the data science field. Students will use real and hypothetical case studies across various domains to explore these issues.

Prerequisite: Enrollment in the Data Science program. Other students may be admitted with instructor permission. Corequisite: DATA 601: Introduction to Data Science

DATA 606: Capstone in Data Science

This is a semi-independent course that provides the advanced graduate student in the Data Science program the opportunity to apply the knowledge, skills and tools they’ve learned to a real-world data science project. Students will work with a real data set and go through the entire process of solving a real-world data science project. The project will be conducted with industry, government and academic partners, who will be responsible for providing the data set, with guidance and feedback from the instructor.

Prerequisite: Completion of the required courses.

ENMG 652: Management Leadership and Communications

Students learn effective management and communication skills through case study-analysis, reading, class discussion and role-playing. The course covers topics such as effective listening, setting expectations, delegation, coaching, performance, evaluations, conflict management, and negotiation with senior management and managing with integrity.

Spatial Analytics Pathway

GES 770: Special Topics in Enterprise GIS

This course is to introduce the concept of geoprocessing and how to use Python to automate the process. Students will learn the basic syntax of Python, available system tools in ArcToolbox, model and ModelBuilder. They will also learn how to build a model and how to create a model tool. The core of the class is ArcPy site package. Students will work with the embedded ArcGIS Python window to write and execute scripts. They will also use the more advanced IDE tool Eclipse with PyDev plug-in. Students will write scripts using tools from ArcPy to perform various tasks, such as managing maps and layers, performing data editing, executing geoprocessing tools and creating custom geoprocessing tools. They will develop Python scripts in Eclipse. Once the Python scripts are developed, the student will learn how to convert it to a script tool so it will be available for other Geoprocessing models. In the end of the class, the students will be able to implement a geoprocessing solution for a complex geospatial problem.

GES 773: GIS Modeling Techniques

This course addresses the concepts, tools, and techniques of GIS modeling, and presents modeling concepts and theory as well as provides opportunities for hands-on model design, construction, and application. The focus is given to model calibration and validation.

GES 774: Spatial Statistics

This course investigates statistical techniques for exploring and characterizing spatial phenomena. The course covers local/global cluster analysis, spatial autocorrelation, interpolation, kriging, as well as exposure to prominent GIS statistical packages. An emphasis is placed on exploratory spatial data analysis (ESDA) to develop spatial cognition and analytical skills with practical applications to modeling spatial phenomena in computer environments.

GES 778: Advanced Visualization and Presentation

Web technologies are providing increasingly sophisticated environments for visualization of spatial data. This course explores advanced techniques for visualizing multivariate and multidimensional data. Topics include advanced cartographic techniques, 3D, dynamic data update, and temporal modeling. Students will learn to create geospatial data-driven Web apps with modern technologies and open source software, including HTML5, JavaScript, and D3. Project-based learning will allow students to advance through the course at a pace that’s tailored to their backgrounds. Although the course requires no advanced knowledge of Web technologies, students with previous programming experience will have a wider range of project options.

Data Science Analysis Pathway

IS 661: Biomedical Informatics Applications

The focus of this course is on advanced topics in healthcare information systems. Examples of topics include the implications of the administrative simplification provisions (e-commerce standards, privacy and security) of the Health Insurance Portability and Accountability Act, the workflow management aspects of cancer center information systems and information retrieval aspects of cancer research libraries.

Prerequisite: IS 660.

IS 706: Interfaces For Info. Visualization & Retrieval

Providing access to large amounts of information is an important function of information systems. This course discusses the designs of user interfaces that allow users to search for, browse and interact with information. Specifically, students will be introduced to human information-seeking behavior and its implications for user interfaces, including user interfaces for information retrieval systems and a wide variety of information visualization tools. Information retrieval systems enable users to search for and browse information. Information visualization is the application of computer-supported graphical tools to presentation of large amounts of abstract information.

Prerequisite: IS 629 or consent of the instructor.

IS 707: Applications of Intelligent Technologies

This course provides a survey of artificial intelligence concepts, technologies, applications, techniques, methodologies and issues. The first half of the course will focus on expert systems and the knowledge engineering life cycle. The second half of the course will highlight various knowledge technologies, including case-based reasoning, genetic algorithms, fuzzy logic, neural networks, hybrid intelligent systems, data mining and knowledge management. The course also will discuss management implications of use, non-use and misuse of AI technologies.

Prerequisites: Graduate student standing and consent of the instructor.

IS 721: Semi-Structured Data Management

This course offers understanding of the latest technologies to manage semi-structured data such as XML and provides hands-on experience on managing and querying semi-structured data using relational database management systems. This course also introduces students to two important application areas of semi-structured data: data sharing and data privacy. Topics include, but are not limited to basic concepts of XML, XML Schema (XSD), XML query languages such as XPath amd XQuery, storing XML in databases, querying XML in databases, publishing XML from databases, privacy issues for data sharing, solutions to privacy issues including Platform for Privacy Preferences and XML encryptions, privacy preserving data mining, and economis aspects of data privacy. Students will keep abreast of the latest technologies and research innovations in the field of semi-structured data management, data sharing, and data privacy. There will be database programming assignments to familiarize students with the course topics. In addition, a group project will be part of the course to expose students to real life application of semi-structured data management technologies.

IS 722: Systems and Information Integration

This course focuses on the theory and practice of integrating systems and information. The problem of integrating information is extremely common nowadays when an organization buys another and inherits an entire IT department which may not be compatible with its own one. Data systems and information should easily interoperate for the success of the organization. This course investigates the various technologies in the field of information integration with an emphasis on semantics. Topics that are covered include: Data Integration Architectures, Data Warehouses, Modeling Data Semantics, Semantic Interoperability, Metadata, Semantic Integration Patterns, Context-Awareness, Semantic Networks, Mediation and Wrapper techniques, Web Services and Service Oriented Architectures (SOA), Integration Servers, etc.

Prerequisite: IS 620

IS 728: Online Communities

Social interaction via the Internet is becoming increasingly important. People are gathering in online communities of interest and communities of practice to discuss health, hobbies, games, education, politics and professional issues. In this class, students will analyze the technology and social support needed to make these social interactions successful. They also will discuss and debate current research in this field and either develop an online community or carry out a small research project.

IS 731: Electronic Commerce

This course analyzes the role of Web design in electronic commerce (e-commerce) from organizational and operational perspectives, and is focused on user-related (front-end) issues in e-commerce. One of the goals of Human-Computer Interaction (HCI) is to solve real-world problems in design and use of technology in the e-commerce environment from the user’s perspective. Tools and techniques for creating and improving e-commerce sites are emphasized, as well as developing guidelines, heuristics and testing methods. Structure, navigation and information sharing-related HCI issues are covered within the context of e-commerce.

IS 733: Data Mining

The purpose of this course is to provide a comprehensive discussion of using organizational databases to enable decision support through mining data. This course will provide an in-depth understanding of the technical, business and research issues in the area of data mining. Areas of data mining will include justifying the need for knowledge recovery in databases and data mining methods such as clustering, classification, Bayesian networks, association rules and visualization. The course will provide a brief introduction to issues in data warehousing which include designing multi-dimensional data models; cleansing and loading of data; reporting; ad hoc querying and multi-dimensional operations, such as slicing, dicing, pivoting, drill-down and roll-up operations. New areas of research and development in data mining will also be discussed.

Prerequisite: IS 620.

IS 777: Data Analytics for Statistical Learning

IS 777 has the objective of introducing students to the essential concepts related to analyzing data for statistical learning. The fundamental building blocks, principles, and ideas related to analyzing data and building statistical models will be discussed. Furthermore, the course will involve application of the concepts by including various assignments, exercises, and activities in the statistical environment, R. In addition, the teams of students will be engaged in a semester-long project involving a particular topic selected by students.

Project Management Pathway

ENMG 650: Project Management Fundamentals

Students learn the fundamentals of managing projects in a systematic way. These fundamentals can be applied within any industry and work environment and will serve as the foundation for more specialized project management study. Principles and techniques are further reinforced through practical case studies and team projects in which students simulate project management processes and techniques.

ENMG 661: Leading Global Virtual Teams

This course is designed to help the student apply managerial concepts and skills to managing and leading virtual and/or global work teams. Geographically dispersed work teams have great challenges: tone is difficult to convey electronically, time zones limit audio communication opportunities, work oversight requires more reposting, and team building is exceedingly difficult using technological – rather than in-person – tools. Language and culture differences in multinational teams compound these challenges. Students will learn to empower others, build credibility, communicate appropriately and adapt quickly across cultures and technologies.

ENMG 663: Advanced Project Management Applications

This advanced course in project management builds on the beginner level project management courses to expand the hands-on applications, with a focus on critical evaluation of project performance and ultimately creating an environment for maximizing one’s own project management performance. With a strong emphasis on the importance of learning through application, the course will bridge academia with the professional business environment to provide opportunities for students to interact with industry professionals as the students execute their course work. Students will also confront the real challenges facing project managers associated with the growing global and virtual workforce through the use of on-line learning tools and methods of collaboration. At the successful completion of the course, students will have the requisite skills and experiences necessary to function effectively, and artfully, as skilled project managers.

Management Science Pathway

ENMG 650: Project Management Fundamentals

Students learn the fundamentals of managing projects in a systematic way. These fundamentals can be applied within any industry and work environment and will serve as the foundation for more specialized project management study. Principles and techniques are further reinforced through practical case studies and team projects in which students simulate project management processes and techniques.

ENMG 654: Leading Teams and Organizations

Students analyze leadership case studies across a wide range of industries and environments to identify effective leadership principles that may be applied in their own organizations. Students learn how to influence people throughout their organization, lead effective teams, create an inclusive workplace, use the Six Sigma process, implement and manage change and develop a leadership style.

Prerequisite: ENMG 652: Management, Leadership and Communication

ENMG 656: Engineering Law and Ethics

This course provides a comprehensive overview of important legal principles affecting engineers, engineering sciences and corporate management, with a focus on the intersection of these legal principles with business ethics. The student learns how to think through and process legal problems consistent with ethical norms, and how to analyze business risks in light of operative legal constructs, taking into consideration ethical issues, to arrive at a range of correct business decisions. Throughout the course, the student will learn substantive legal principles including an overview of constitutional, contract, tort, corporate and regulatory law. Students will work in groups during certain exercises, role play in real and hypothetical case studies, and make a final presentation of a comprehensive legal and ethical engineering problem.

ENMG 658: Financial Management

This course will cover the fundamentals of setting up, reading and analyzing financial statements and reports in a business setting. Course topics will include: project budgeting, profit planning, return on investment and basic corporate finance. Students will analyze case studies from specific industries.

ENMG 659: Strategic Management

This course is intended to integrate the learning from the previous management courses and to focus it on the perspective and problems of the Chief Executive Officer and other organizational strategic managers. The theme of the course is that any organization improves its chances of sustained success when its managers formulate an action-oriented strategic business plan based on the strategic management process. Case studies are included to illustrate the concepts and their applications.

Prerequisite: Minimum of three engineering management courses

ENMG 660: Systems Engineering Principles

This course provides the foundational framework to understand the system engineering (SE) process, selection of specialized SE tools and the execution of SE under differing design or acquisition philosophies. the courses addresses: (1)SE principles (2)SE processes and metholodogies (3) integration of technical disciplines and (4) SE management.

This course can be counted as either a management course or an engineering course for the M.S. in Engineering Management.

ENMG 661: Leading Global Virtual Teams

This course is designed to help the student apply managerial concepts and skills to managing and leading virtual and/or global work teams. Geographically dispersed work teams have great challenges: tone is difficult to convey electronically, time zones limit audio communication opportunities, work oversight requires more reposting, and team building is exceedingly difficult using technological – rather than in-person – tools. Language and culture differences in multinational teams compound these challenges. Students will learn to empower others, build credibility, communicate appropriately and adapt quickly across cultures and technologies.

ENMG 663: Advanced Project Management Applications

This advanced course in project management builds on the beginner level project management courses to expand the hands-on applications, with a focus on critical evaluation of project performance and ultimately creating an environment for maximizing one’s own project management performance. With a strong emphasis on the importance of learning through application, the course will bridge academia with the professional business environment to provide opportunities for students to interact with industry professionals as the students execute their course work. Students will also confront the real challenges facing project managers associated with the growing global and virtual workforce through the use of on-line learning tools and methods of collaboration. At the successful completion of the course, students will have the requisite skills and experiences necessary to function effectively, and artfully, as skilled project managers.

ENMG 664: Quality Engineering & Management

This course provides an overview of the basic principles and tools of quality and their applications from an engineering perspective. The primary quality schools of thought or methodologies, including Total Quality Management, Six Sigma and Lean Six Sigma, and quality approaches from key figures in the development and application of quality as a business practice, including W. Edwards Deming and Joseph M. Juran will be analyzed. Some of the key mathematical tools used in quality systems will be discussed, including Pareto charts, measurement systems analysis, design of experiments, response surface methodology, and statistical process control. Students will apply these techniques to solve engineering problems using the R software. Reading assignments, homework, exams, and the project will emphasize quality approaches, techniques, and problem solving.

This course can be counted as either a management course or an engineering course for the M.S. in Engineering Management.

ENMG 668: Project and Systems Engineering Management

This course will cover fundamental project control and systems engineering management concepts, including how to plan, set up cost accounts, bid, staff and execute a project from a project control perspective. It provides an understanding of the critical relations and interconnections between project management and systems engineering management. It is designed to address how systems engineering management supports traditional program management activities to break down complex programs into manageable and assignable tasks.

SYST 672: Decision and Risk Analysis

This course provides an overview of decision and risk analysis techniques. It focuses on how to make rational decisions in the presence of uncertainty and conflicting objectives. This course covers rational decision-making principles and processes; competing objectives, multi-attribute analysis and utility theory; modeling uncertainty and decision problems using decision trees and influence diagrams; solving decision trees and influence diagrams; uses of Bayes’ Theorem; defining and calculating the value of information; regression analysis; incorporating risk attitudes into decision analyses; and conducting sensitivity analyses. A significant portion of the course is devoted to the use of various applications of analytic, empirical, and subjective probability theory to the modeling of uncertain events. As such, students will find it useful to have some experience with basic probability.

This course can be counted as either a management course or an engineering course for the M.S. in Engineering Management.

ENMG 690: Innovation and Technology Entrepreneurship

This course offers an overview of innovation and its role in entrepreneurial ventures, both in new companies and within existing corporations. The basics of entrepreneurship with specific emphasis on technology-based business start-up are investigated. For the purposes of this course, technologies include IT, engineering and biotech. The course covers where to find innovative ideas and how to determine if a business idea is feasible along with an overview of the critical success factors in a new venture start-up.

Cybersecurity Pathway

CYBR 620: Intro to Cybersecurity

This course introduces students to the interdisciplinary field of cybersecurity by discussing the evolution of information security into cybersecurity, cybersecurity theory, and the relationship of cybersecurity to nations, businesses, society, and people. Students will be exposed to multiple cybersecurity technologies, processes, and procedures, learn how to analyze the threats, vulnerabilities and risks present in these environments, and develop appropriate strategies to mitigate potential cybersecurity problems.

Prospective students who have earned the CISSP designation within the past 5 years may, if admitted, substitute another course for CYBR 620 “Introduction to Cybersecurity” in their first semester of the CYBR MPS program. Students should provide evidence of successful completion of the CISSP exam within that timeframe (such as a transcript or official documentation from the certifying authority) to UMBC as part of their application.

Prerequisite: Enrollment in the CYBR program or in at least the second semester of graduate study. Other students may be admitted with instructor permission.

CYBR 650: Managing Cybersecurity Operations

This course takes an operational approach to implementing and managing effective cybersecurity in highly networked enterprises. Topics include an evaluation of government and commercial security management models; security program development; risk assessment and mitigation; threat/vulnerability analysis and risk remediation; cybersecurity operations; incident handling; business continuity planning and disaster recovery; security policy formulation and implementation; large-scale cybersecurity program coordination; management controls related to cybersecurity programs; information-sharing; and privacy, legal, compliance, and ethical issues.

Prerequisite: Completion of CYBR 620 and in at least the second semester of graduate study. Other students may be admitted with instructor permission.

CYBR 658: Risk Analysis and Compliance

This course focuses the student on a broad range of topics relative to risk-based planning for enterprise cybersecurity. The intent is focusing on creating risk assessment and modeling approaches to solve cybersecurity issues so that organizations can build security framework and sustain a healthy security posture. This course analyzes external and internal security threats, failed systems development and system processes and explores their respective risk mitigation solutions through policies, best practices, operational procedures, and government regulations. Risk frameworks covered include NIST SP 800-12, SP 800-37, SP 800-39, and CERT/CC risk analysis guidelines.

Policy Analysis Pathway

ECON 600: Policy Consequences of Economic Analysis

A course in political economy dealing with the implications and consequences for policy outcomes of different models of economic analysis, including an introduction to microeconomic theory. Note: May not be counted toward the concentration in economics.

PUBL 601: Political and Social Context of the Policymaking Process

This course is designed to introduce students to the processes by which policy is made in the United States. It introduces students to the policymaking system, including the institutional, structural and political contexts, as well as the policy making environment. The various stages of the policymaking process from problem definition and agenda-setting to implementation are examined and discussed, and important theories and models of policy making are presented. Significant concepts relating to the political analysis of public policy are discussed, such as the social construction of problems, group demands, political influence and resources, motivations and incentive for political behavior and political feasibility.

PUBL 603: Theory and Practice of Policy Analysis

An overview of the basic principles and elements of policy analysis. The course focuses on the activities and elements of policy analysts. In addition, the relationship between policy analysis and policy making, along with emerging professional and ethical issues, are addressed.

PUBL 607: Statistical Applications in Evaluation Research

Advanced course in analyzing and evaluating data. Focuses on interpreting statistical procedures for assessing the impact of programs and policies based on a variety of experimental and quasi-experimental designs, including true experiments, non-equivalent control group designs and interrupted time-series designs.

PUBL 608: Applied Multivariate Regression Analysis

An introduction to the practical application of widely used basic multivariate regression techniques. Experience in the use of these techniques is provided through hands-on exercises and the preparation of an original regression analysis of real-world data in an area of interest selected by the student. Methods covered include multiple linear regression, models with binary dependent variables, analysis of pooled data, and methods for assessing and comparing the performance of alternative models. Rather than focusing on the mechanics of regression computation, the course emphasizes the basic concepts involved in constructing and estimating regression models, and in interpreting their results. Consent of instructor.

PUBL 610: Special Topics In Public Policy

Topics selected on the basis of the background and interests of the faculty member and students.

Healthcare Analysis Pathway

HIT 658: Health Informatics I

As the first required course in the series, Health Informatics I starts with introductory topics and proceeds with an overview of the essential topics of Health IT. Consistent with the interdisciplinary nature of Health IT, the course touches people and organizational aspects of health information systems as well as technology. While covering the essentials of Health Informatics, the course also achieves depth by engaging students in a semester- long study of a particular topic in Health IT. Some of the topics covered in this course include electronic health records, practice management, health information exchange, data standards, consumer health informatics and mobile health.

HIT 674: Process & Quality Improvement with Health IT

This course provides an overview of quality measurement and process improvement as they relate specifically to the health care industry. The course will focus on the tools, techniques, and resources available to health care professionals through effective use of health IT. Students will learn how to create quality benchmarks, gather data, and analyze results. They will learn how to design specific processes that directly address analytical findings and have the potential to improve outcomes. Students will understand a variety of implementation strategies for new processes, and be able to use health IT and other tools to measure the overall effectiveness. They will also learn how to prioritize improvement efforts across complicated business and practice systems. Students will work in groups during certain exercises, explore real and hypothetical case studies, and make a final presentation of an improvement process and implementation which utilizes health IT as their course project.

HIT 723: Public Health Informatics

This course will cover the key components of public health practice, and include topics such as disease surveillance, outbreak, detection, investigation, vital records, and dissemination of information. The course will include data collection, data analysis, data cleaning, ways to provide data to customers, improve data quality and access to care, and develop and evaluate interventions. Students will develop an understanding of the use of IT to support public health practice, increase individual effectiveness, and improve the effectiveness of the public health enterprise.

HIT 751: Introduction to Healthcare Databases

This graduate level course provides an introduction to the theoretical and practical aspects of creating and maintaining databases within a healthcare setting. This is a beginner’s course and no previous programming or technical experience is required. Topics include: relational databases, normalization, data integrity, database design, data querying, and data forms/reports. The class includes applied lab and project components to provide hands-on experience with creating and maintaining databases; using Access and SQLite as our database systems. This course is intended for students interested in databases within the context of healthcare informatics, health information technology, and healthcare.

HIT 759: Health Informatics II

As the second required course in the health informatics series, Health Informatics II extends the coverage of the health informatics issues into areas such as online medical resources and search engines, evidence-based medicine and clinical practice guidelines, disease management, disease registries and quality improvement, patient safety and health IT, electronic prescribing, telemedicine, and bioinformatics.

Prerequisite: Health Informatics I.

Advanced Computing and Analytics Pathway

CMSC 615: Introduction to Systems Engineering and Systems Architecting

The course provides an introduction to systems engineering and systems architecture with an emphasis on software/communications systems. It introduces systems engineering activities, artifacts and milestones, as well as key systems engineering-related references and tools. Although the course focuses principally on requirements elaboration and analysis, design synthesis and architecture modeling (DOD architecture framework, structured analysis, UML and SysML) and requirements document development and traceability, other topics include: life cycle models, DOD acquisition process, systems engineering process, quality management systems engineering planning and team-building, configuration management, risk management, technical performance measures, analysis and simulation, design and development, verification, validation and testing. Homework and exams are designed to provide the opportunity to practice the concepts learned in class.

Prerequisite: Prerequisites: B.S. in Computer Science, Information Systems or consent of instructor

CMSC 625: Modeling and Simulation of Computer Systems

Performance evaluation methods, Markovian queuing models, open networks of queues, closed product form queuing networks, simulation and measurement of computer systems, benchmarking and workload.

Prerequisite: Prerequisite: CMSC 411, CMSC 421 or consent of instructor.

CMSC 627: Wearable Computing

This course covers fundamental concepts, methodologies, algorithms and the research challenges related to wearable computing, including the following: Emotional Design, Convergent Design Processes, Wearability Considerations, Wearable Sensors Networks, Wearable Networks, Physiological Wearable Sensors, Innovation Processes, Marketing and business considerations, Human Aware Computing, Context Awareness, Wearable Communities, Future Mobility and Wearable Systems Applications.

CMSC 628: Introduction to Mobile Computing

This course will introduce students to the techniques and research issues involved with mobile computing, which deals with access to the networked information and computation resources from wirelessly connected palmtop/laptop devices. Topics covered deal with both networking (MAC protocols, ad-hoc routing and mobile IP) and data management (proxy-based systems, mobile DBMS, mobile transactions, sensor networks and stream data) issues.

CMSC 636: Data Visualization

This course addresses the theoretical and practical issues in creating visual representations of large amounts of data. It covers the core topics in data visualization: data representation, visualization toolkits, scientific visualization, medical visualization, information visualization and volume rendering techniques. Additionally, the related topics of applied human perception and advanced display devices are introduced. Open to computer science students with a background in computer graphics or students in data-intensive fields and a familiarity with computers for data collection, storage or analysis.

Prerequisite: CMSC 435, CMSC 634 or consent of instructor.

CMSC 653: Information and Coding Theory

An introduction to the theory of error-correcting codes, with an emphasis on applications and implementations. Shannon’s theorems, bounds on code weight distributions, linear codes, cyclic codes, Hamming and BCH codes, linear sequential circuits and encoding/decoding algorithms. Other topics may be drawn from Goppa, Reed Solomon, QR codes, non-linear codes and convolutional codes.

CMSC 655: Numerical Computations

Numerical algorithms and computations in a parallel processing environment. The architecture of supercomputers, vectorizing compilers and numerical algorithms for parallel computers.

Prerequisites: CMSC 411 and MATH 221 or consent of instructor.

CMSC 661: Principles of Database Systems

Advanced topics in the area of database management systems: data models and their underlying mathematical foundations, database manipulation and query languages, functional dependencies, physical data organization and indexing methods, concurrency control, crash recovery, database security and distributed databases.

Prerequisite: CMSC 461 or consent of instructor.

CMSC 668: Service-Oriented Computing

This course addresses the revolutionary concepts of service-oriented architectures (SOA) and Cloud Computing for web service applications arising in science, engineering and commerce. Service oriented computing is a style of loosely coupled multi-tier computing that helps organizations share logic and data among multiple applications and usage modes. The basic suite of web service protocols are presented for invoking autonomic computer-to-computer interactions. A brief introduction to parallel computing principles and languages such as MPI and the Cloud Computing Map Reduce paradigm will be presented. High-end clusters will be available for student projects as well as a tiled hyperwall for visualization services.

Prerequisites: CMSC 341 & CMSC 421.

CMSC 671: Principles of Artificial Intelligence

A study of topics central to artificial intelligence, including logic for problem-solving, intelligent search techniques, knowledge representation, inference mechanisms, expert systems and AI programming.

Prerequisite: CMSC 471 or consent of instructor.

CMSC 673: Introduction to Natural Language Processing

Natural language processing (NLP), the first non-numerical application of computing, was first studied more than 50 years ago. The ultimate goal of NLP is to enable computers to communicate with people the same way that people communicate among themselves. To do so, the computers must be able to understand and generate text. The course will introduce the students to the problems, methods, and applications of NLP.

Prerequisite: CMSC 331.

CMSC 675: Introduction to Neural Networks

A comprehensive study of fundamentals of neural networks. Topics include feed forward and recurrent networks; self-organizing networks and thermodynamic networks; supervised, unsupervised and reinforcement learning; and neural network application in function approximation, pattern analysis, optimization and associative memories.

CMSC 676: Information Retrieval

This course is an introduction to the theory and implementation of software systems designated to search through large collections of text. This course will have two main thrusts. The first is to cover the fundamentals of IR: retrieval models, search algorithms and IR evaluation. The second is to give a taste of the implementation issues through the construction and use of a text search engine.

Prerequisite: CMSC 341

CMSC 678: Introduction to Machine Learning

This course will cover fundamental concepts, methodologies, and algorithms related to machine learning, including the following: decision trees, perceptrons, logistic regression, linear discriminant analysis, linear and non-linear regression, basis functions, support vector machines, neural networks, genetic algorithms, reinforcement learning, naive Bayes and Bayesian networks, bias/variance theory, ensemble methods, clustering, evaluation methodologies, and experiment design.

Prerequisite: CMSC 471 or 671, or permission of the instructor.

CMSC 691: Special Topics in Computer Science

Technical courses on specialized or emerging topics offered on a periodic or as-needed basis such as the semantic web, data privacy, forensics, or malware analysis. 

Prerequisite: Completion of CYBR 620 and in at least the second semester of graduate study. Depending on the course(s) offered, additional technical pre-requisites will be indicated. Contact instructor for pre-requisites and eligibility.

Looking for more info?