Sunday’s commencement singer, Michael Convicer (CFA’12), is an incoming MET Arts Administration student.
The faculty chose Convicer for many reasons says Phyllis Hoffman (CFA’61,’67), a...
Click on any course title below to read its description. Courses offered in the upcoming semester include a schedule, and are indicated by a label to the right of the title.
To view courses offered at North Campus–Chelmsford, select a semester below:
Visit bu.edu/summer to see the Computer Science & IT courses offered this summer.
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 [ 4 cr. ]
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. [ 4 cr. ]
This course covers the concepts of object-oriented approach to software design and development using the Java programming language. It includes 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 the students will be able to apply software engineering criteria to design and implement Java applications that are secure, robust, and scalable. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| C1 | IND | Kalathur | FLR ARR | W | 6:00 pm – 9:00 pm |
| EL | IND | Kalathur | ARR | – | |
| EL | Kalathur | MCS B23 | W | 6:00 pm – 9:00 pm | |
| OL | IND | Kalathur | ARR | – |
This course is primarily the study of design of graphic algorithms. At the end of the course you can expect to be able to write programs to model, transform and display 3-dimensional objects on a 2-dimensional display. The course starts with a brief survey of graphics devices and graphics software. 2-d primitives such as lines and curves in 2-d space are studied and a number of algorithms to draw them on a rectangular surface are introduced, followed by a study of polygons, scan conversion and other fill methods. Attributes of the primitives are studied as well as filtering and aliasing. Geometric transformations in 2 dimensions are introduced in homogeneous coordinates, followed by the viewing pipeline, which includes clipping of lines, polygons and text. Hierarchical graphics modeling is briefly studied. The graphics user interface is introduced and various input functions and interaction modes are examined. 3-d graphics is introduced through object representations through polygonal methods, spline techniques, and octrees. This is followed by 3-d transformations and the 3-d viewing pipeline. The course ends with a study of algorithms to detect the visible surfaces of a 3-d object in both the object space and the image space. Laboratory Course [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Greisokh | FLR ARR | R | 6:00 pm – 9:00 pm |
The first part of this course lays down the mathematical foundation for the study of Probability Theory and Statistics. Combinatorial mathematics, functions, linear systems of equations, differentiation and integration fundamentals are covered. The second part of the course concentrates on the study of discrete and continuous distributions, linear regression and correlation. [ 4 cr. ]
This course presents financial algorithms used in applications of computer science in financial decision analysis, risk management, data mining and market analysis, and other modern business processes. The course covers theoretical background on probabilistic methods used for financial decision making and their application in number of fields such as financial modeling, venture capital decision making, operational risk measurement and investment science. Number of financial applications and algorithms are being presented for portfolio risk analysis, modeling real options, venture capital decision making, etc. The course concludes with algorithms for financial risk assessment and presents the security concepts and challenges of financial information systems. [ 4 cr. ]
In-depth discussion of object oriented programming with C++ for mathematical finance. Topics include: built-in-types, control structure, classes, constructors, destructors, function overloading, operator functions, friend functions, inheritance, polymorphism with dynamic binding. Case study: finite differences solutions for the basic models of financial derivatives; design and development of modular, scalable, maintainable software for modeling financial derivatives. Laboratory course. [ 4 cr. ]
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. [ 4 cr. ]
Discusses basic methods for designing and analyzing efficient algorithms emphasizing methods used in practice. Topics include sorting, searching, dynamic programming, greedy algorithms, advanced data structures, graph algorithms (shortest path, spanning trees, tree traversals), matrix operations, string matching, NP completeness. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| C1 | IND | Lee | SMG 302 | W | 6:00 pm – 9:00 pm |
Overview of operating system characteristics, design objectives, and structures. Topics include concurrent processes, coordination of asynchronous events, file systems, resource sharing, memory management, security, scheduling and deadlock problems. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Zhang | CAS B20 | R | 6:00 pm – 9:00 pm |
| W1 | IND | Zhang | M | 6:00 pm – 9:00 pm |
This course provides a theoretical yet modern presentation of database topics ranging from Data and Object Modeling, relational algebra and normalization to advanced topics such as how to develop Web-based database applications. Other topics covered - relational data model, SQL and manipulating relational data; applications programming for relational databases; physical characteristics of databases; achieving performance and reliability with database systems; object-oriented database systems. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Djordjevic | PSY B51 | M | 6:00 pm – 9:00 pm |
| W2 | IND | Lee | T | 6:00 pm – 9:00 pm |
Prereq: consent of the instructor. [ 4 cr. ]
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. Open source libraries such as Prototype, jQuery and Mootools might optionally be covered, as they assist in building cross-browser web applications rapidly and efficiently. The PHP language will be presented and covered; however, students can use other server-side languages; such as ASP.NET, Java (JEE) or Ruby on Rails (RoR) for their projects. The course will focus on MySQL as a relational database system with the final project. Students may use other databases with instructor approval. Students will work with either IIS 6 (or better) or Apache 2, using any conventional operating system when working on their term projects and class laboratories. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| B1 | IND | Sheehan | MCS B31 | T | 6:00 pm – 9:00 pm |
Provides an introduction to human-computer interface design and evaluation, with an emphasis on graphical user interfaces for software products. Covers design principles and theory, web usability, and selected basic research in the areas of human factors and human cognition, hands-on application of learned principles using VB.NET. Laboratory course. [ 4 cr. ]
Computer Networks continue to grow and diversify at unprecedented rate. Much of that diversification is in how the media are utilized. One can not truly understand networking, analyze alternatives or design good networks without a solid founding in how the media are utilized. This course will explore current and expected media technologies with the intent of understanding what they offer and the trade-offs they present. The course will cover both wireline (Ethernet, DOCSIS, MPLS, ATM) and wireless (802.11, Wi-Max, Zigbee, Bluetooth, etc). The course will analyze the technologies to consider their error characteristics, support for quality of service, congestion control, and security, and their manageability. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Day | SHA 202 | M | 6:00 pm – 9:00 pm |
This course provides a comprehensive introduction to building web applications and web services using the Microsoft .NET (Version 3.5) development platform. The key technologies covered include the C# programming language (Version 3.0), the ASP.NET (Version 3.5) system for developing web applications and web services using C#, and ADO.NET and LINQ (Language INtegrated Query) for data access. In addition to the above topics, we will also cover Windows Communication Framework (WCF) and Windows Presentation Framework (WPF). All programming will be based on Microsoft Visual Studio 2008 available through BU's MSDNAA. A copy of the software will be provided to the students. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Konstantopou | MCS B31 | M | 6:00 pm – 9:00 pm |
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| B1 | IND | Temkin | MCS B23 | T | 6:00 pm – 9:00 pm |
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| B1 | IND | Berry | MCS B21 | T | 6:00 pm – 9:00 pm |
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. [ 4 cr. ]
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. [ 4 cr. ]
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. [ 4 cr. ]
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. [ 4 cr. ]
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| B1 | IND | Staff | MCS B19 | T | 6:00 pm – 9:00 pm |
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Hebert | MCS B23 | R | 6:00 pm – 9:00 pm |
The Rich Internet Application 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: Flex, ActionScript, HTML5, jQuery, jQuery Mobile, and Silverlight. 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 Web application development methodologies. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| OL | IND | Kalathur | ARR | – |
This is the second class in the four-course Certificate in Multimedia and Video Game Engineering. It assumes an understanding of computer graphics. The course is an update and re-orientation of MET CS 732, an existing course that has not been offered for at least five years. The first half of this course applies the basics of computer graphics covered in CS 532. It extends these by exploring lighting, texture, and rendering algorithms. The second half explores geometrical techniques for 3D representation and their application to intersection and collision. [ 4 cr. ]
This class examines core game engine techniques that form the basis for most modern computer games. Students will implement two games of their own, one built from scratch and the other using the OGRE 3D Rendering Engine. Topics covered include Windows & DirectX Programming, Game Engine Architectures, User Input, Sound, an introduction to 3D Games Architectures, Animation, Path Planning & Movement Control, Performance Optimization, and Networked Multiplayer Games. [ 4 cr. ]
The course explains the basic role of Artificial Intelligence (AI) in game play. It covers languages and scripting that enable AI. AI is used in planning the paths of game-owned assets. The course shows how AI moves the story and its characters forward. The second half of the course shows how game programs can learn responses and generate plans and movements based on players? actions. These ideas are applied to traditional video games, action games, strategy games, role-playing games, and other genres. [ 4 cr. ]
Architecture of Web Services; review of XML Shemas; SOAP (Simple Object Access Protocol); WSDL (Web Services Description Language); UDDI (Universal Description, Discovery, and Integration); Web Services in .NET; Sun and Apache tools; Company-specific Web Service API?s; Java API?s for XML Messaging; Java Application Servers; review of Security, transactions, and business process languages (e.g. BPEL) among Web Services. [ 4 cr. ]
Cloud computing leverages the World Wide Web to fulfill computing needs. It packages applications, computing power, and storage as a metered service similar to a utility. This model is designed to supplant the traditional mechanism of desktop computing in many cases. This course will cover the origin, theory, enabling technology, and hands-on labs for key concepts in cloud computing. Students will: (1) Learn the unique set of problems and challenges in developing cloud computing applications; (2) Learn the platform, tools, technology and processes for developing cloud computing applications using Hadoop as the main example; and (3) Propose, develop, and run applications for the platforms covered. [ 4 cr. ]
Theories and methods for automating the solution of problems with inexact specifications, input, models, or output (e.g., text checkers, help desks). Expert systems, fuzzy methods, neural net architectures, and genetic algorithms are examined and compared. Algorithms and a term project are implemented using shells and C++ or Java. Laboratory course. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Braude | MCS B19 | R | 6:00 pm – 9:00 pm |
In-depth coverage of the architecture, interfaces, protocols, and technologies of high-speed broadband networks. Topics include broadband wide-area network (WAN) technologies such as gigabit routers with IP switching, MPLS, ATM and Frame Relay; broadband LAN technologies: Fast Ethernet and Ethernet Switching, Gigabit Ethernet, and FDDI; broadband access technologies: DSL and Cable modems, as well as discussion of network performance, congestion control and traffic management, provision of different levels of quality of service (QoS),resource reservation, unicast and multicast routing, and multimedia compression and security in broadband networks. Students are required to complete a research project in one of the advanced Internet technologies. Labs on network performance analysis. [ 4 cr. ]
This course covers advanced aspects of database management systems including advanced normalization and denormalization, query optimization, object-oriented and object-relational databases, data warehousing, data mining, distributed databases, XML, XSL, and databases for web applications. There is extensive coverage of SQL and database instance tuning. Students learn about the advanced object-relational features in DBMS such as Oracle, including navigational query, BLOBs, abstract data types, and methods. Students learn about database programming in Oracle's PL/SQL language, including triggers, stored procedures, and methods. By the end of the course, students should understand the basic concepts in all of these advanced database topics. Students define independent advanced database term projects, which may be related to their work or other interests. The students prepare reports and audio-video presentations for their classmates using PowerPoint and Impatica. 4 cr [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Schudy | MCS B21 | R | 6:00 pm – 9:00 pm |
| EL | IND | Schudy | MCS B21 | R | 6:00 pm – 9:00 pm |
| OL | IND | Schudy | ARR | – |
This course prepares students to perform day-to-day administration of a database system. While most of the examples in this course are based on Oracle database administration, the course also covers the differences in administering Microsoft SQL Server and MySQL and examples. The course covers administration on Windows, Linux, and Unix platforms. The course is conducted in the MET computer laboratories, where students will use virtualizations of Oracle and MSSQL on virtualized platforms to perform exercises and gain experience administering databases. Students will also have the opportunity to install these virtualizations on their own PCs. Students interested in obtaining Oracle's Oracle Certified Professional (OCP) Database certification will find this course very relevant. A database management course comparable to MET CS579 or CS669, or consent of the instructor, is the prerequisite for this course. [ 4 cr. ]
Prereq: Consent of advisor. Requires prior approval of student-initiated proposal. Independent study on special projects under faculty guidance. [ Var cr. ]
Prereq: consent of the instructor. Requires prior approval of student-initiated proposal. Independent study on special projects under faculty guidance. variable cr [ Var cr. ]
This thesis must be completed within 12 months. Students majoring in Computer Science may elect a thesis option. This option is available to Master of Science in Computer Science candidates who have completed at least seven courses toward their degree and have a GPA of 3.7 or higher. Students are responsible for finding a thesis advisor and a principal reader within the department. The advisor must be a full-time faculty member; the principal reader may be part-time faculty member with a doctorate. Permission must be obtained by the department. 4cr. [ 4 cr. ]
This thesis must be completed within 12 months. Students majoring in Computer Science may elect a thesis option. This option is available to Master of Science in Computer Science candidates who have completed at least seven courses toward their degree and have a GPA of 3.7 or higher. Students are responsible for finding a thesis advisor and a principal reader within the department. The advisor must be a full-time faculty member; the principal reader may be part-time faculty member with a doctorate. Permission must be obtained by the department. 4cr. [ 4 cr. ]
Contemporary software engineering takes several distinct and rapidly changing forms. First, Agile methods are based on the need for flexibility while applications are being built. Agile methods constitute a radical departure from pre-existing methods: They rely on newly developed technologies such as test-driven development, XUnit, and refactoring. A second form is the emergence of open-source development. This course teaches the architectural and operational implications of open source development and explores its relationship with agile methods. The course will also discuss aspect-oriented programming, the decomposition of applications into onshore and offshore components, design for security, and formal methods. Laboratory course. [ 4 cr. ]
[ 4 cr. ]
The goal of this course is to provide Computer Information Systems students with the mathematical fundamentals required for successful quantitative analysis of problems in the field of business computing. The first part of the course introduces the mathematical prerequisites for understanding probability and statistics. Topics include combinatorial mathematics, functions, and the fundamentals of differentiation and integration. The second part of the course concentrates on the study of elementary probability theory, discrete and continuous distributions. 4 cr [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| OL | IND | Temkin | ARR | – |
This course presents the foundations of data communications and takes a bottom-up approach to computer networks. It begins with an overview of modern data communication requirements, and basic distributed data concepts. A brief history of the Internet is presented followed by the basics of the OSI and TCP/IP computer networks models. The Physical Layer is presented in the form of basic Data communication concepts over various transmission media, wireless transmission, and the telephone system. The Data Link Layer presentation deals with design issues, error detection and correction, and the Medium Access Sub-layer covers channel allocation problems, multiple access protocols, IEEE standard 802 for LANs and WLANs, as well as bridges, switches and high-speed LANs. The basic functions of the Network Layer are explained in the context of design issues, internetworking, and the network layer in the Internet. The Transport Layer includes the transport service and elements of transport protocols, as well as the TCP and UDP Internet transport protocols. The Application Layer issues cover the main distributed applications, such as electronic mail, DNS, ftp, www etc. The course concludes with an overview of basic network security and management concepts. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| B1 | IND | Arena | FLR 266 | T | 6:00 pm – 9:00 pm |
| EL | IND | Arena | ARR | – | |
| EL | Arena | T | 6:00 pm – 9:00 pm | ||
| OL | IND | Chitkushev | ARR | – |
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. (Lab class) [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Maiewski | FLR ARR | R | 6:00 pm – 9:00 pm |
| EL | IND | TBA | FLR ARR | R | 6:00 pm – 9:00 pm |
| OL | IND | Mansur | ARR | – | |
| BHA | IND | Staff | S | 8:30 am – 4:00 pm |
Object-oriented methods of information systems analysis and design for organizations with data-processing resources. System feasibility, information requirements analysis, database utilization, including data dictionaries, software design and implementation management, project control, and systems-level testing and installation. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| C1 | IND | Guadagno | MCS B21 | W | 6:00 pm – 9:00 pm |
| OL | IND | Braude | ARR | – |
This course provides an overview of contemporary information systems technology (IT) management. It explains the relevant issues of effective management of information services activities and highlights the areas of greatest potential application of the technology. No assumptions are made concerning the reader's experience with IT, but it is assumed that the reader has some course work or work experience in administration of management. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Arakelian | FLR ARR | M | 6:00 pm – 9:00 pm |
| EL | IND | Arakelian | FLR ARR | M | 6:00 pm – 9:00 pm |
| OL | IND | Braude | ARR | – |
Overview of data communication and computer networks, including network hardware and software, as well as reference models, example networks, data communication services and network standardization. The OSI and the Internet (TCP/IP) network models are discussed. The course covers each network layer in details, starting from the Physical layer to towards the Application layer, and includes an overview of network security topics. Other topics covered include encoding digital and analog signals, transmission media, protocols. circuit, packet, message, switching techniques, internetworking devices, topologies. LANs/WANs, Ethernet, IP, TCP, UDP, and Web applications. Labs on network analysis. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Day | SMG 315 | R | 6:00 pm – 9:00 pm |
This course presents the foundations of data communications and takes a bottom-up approach to computer networks. It begins with an overview of modern data communication requirements, and basic distributed data concepts. A brief history of the Internet is presented followed by the basics of the OSI and TCP/IP computer networks models. The Physical Layer is presented in the form of basic Data communication concepts over various transmission media, wireless transmission, and the telephone system. The Data Link Layer presentation deals with design issues, error detection and correction, and the Medium Access Sub-layer covers channel allocation problems, multiple access protocols, IEEE standard 802 for LANs and WLANs, as well as bridges, switches and high-speed LANs. The basic functions of the Network Layer are explained in the context of design issues, internetworking, and the network layer in the Internet. The Transport Layer includes the transport service and elements of transport protocols, as well as the TCP and UDP Internet transport protocols. The Application Layer issues cover the main distributed applications, such as electronic mail, DNS, ftp, www etc. The course concludes with an overview of basic network security and management concepts. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| B1 | IND | Arena | FLR 266 | T | 6:00 pm – 9:00 pm |
| EL | IND | Arena | ARR | – | |
| EL | Arena | T | 6:00 pm – 9:00 pm | ||
| OL | IND | Chitkushev | ARR | – |
Provides a comprehensive understanding of digital forensics and investigation tools and techniques. Learn what computer forensics and investigation is as a profession and gain an understanding of the overall investigative process. Operating system architectures and disk structures are discussed. Studies how to set up an investigator?s office and laboratory, as well as what computer forensic hardware and software tools are available. Other topics covered include importance of digital evidence controls and how to process crime and incident scenes, details of data acquisition, computer forensic analysis, e-mail investigations, image file recovery, investigative report writing, and expert witness requirements. Provides a range of laboratory and hands-on assignments either in solo or in teams. With rapid growth of computer systems and digital data this area has grown in importance. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| EL | IND | Burrell | ARR | – | |
| EL | Burrell | FLR 267 | S | 9:00 am – 12:00 pm | |
| BHA | IND | Staff | U | 8:30 am – 4:00 pm |
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. The course surveys various data mining applications, methodologies, techniques, and models. Topics include classification, decision trees, association rules, and clustering. The course wraps up with data mining case studies using large data sets taken from real-world projects. Algorithms will be tested on data sets using the Weka Data mining software and Microsoft SQL Server 2005 (Business Intelligence Development Studio). [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| EL | IND | Staff | ARR | – | |
| EL | Staff | FLR 266 | S | 9:00 am – 12:00 pm | |
| OL | IND | Lee | ARR | – |
This course provides a comprehensive understanding of network forensic analysis principles. Within the context of forensics security, network infrastructures, topologies, and protocols are introduced. Students understand the relationship between network forensic analysis and network security technologies. Students will learn to identify network security incidents and potential sources of digital evidence and demonstrate the ability to perform basic network data acquisition and analysis using computer based applications and utilities. Students will also identify potential applications for the integration of network forensic technologies and demonstrate the ability to accurately document network forensic processes and analysis. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| EL | IND | Jacobs | ARR | – | |
| EL | Jacobs | GCB 208 | S | 1:00 pm – 4:00 pm |
This course provides an introduction to the advanced digital forensic topic relating to malicious software (malware), which represents an increasing information security threat to computer systems and networks. Students will review software engineering design fundamentals and reverse engineering techniques utilized to conduct static and dynamic forensic analysis on computer systems and networks. Students will learn about the importance of forensic principles, legal considerations, digital evidence controls, and documentation of forensic procedures. This course will incorporate demonstrations and laboratory exercises to reinforce practical applications of course instruction and will require an independent research paper related to the course topic. [ 4 cr. ]
This course presents the technological fundamentals and integrated clinical applications of modern Biomedical IT. The first part of the course covers the technological fundamentals and the scientific concepts behind modern medical technologies, such as digital radiography, CT, nuclear medicine, ultrasound imaging, etc. It also presents various medical data and patient records, and focuses on various techniques for processing medical images. This part also covers medical computer networks and systems and data security and protection. The second part of the course focuses on actual medical applications that are used in health care and biomedical research. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| B1 | IND | Brusic | SMG 302 | T | 6:00 pm – 9:00 pm |
| OL | IND | Staff | ARR | – |
Electronic Health Records (EHRs) are application systems that automate the activities of healthcare clinicians including physicians, nurses, physician assistants, and healthcare administrative staff. Use of EHRs is increasing rapidly due to the systems? benefits and federal government programs to deploy EHRs. This increased use of EHRs has many challenges including complex data, high security requirements, integration to multiple application systems, a distributed user base, and broad impact on how these users work. This course will focus on real-world use and deployment of EHRs through readings, hands-on labs and case studies. Students will: (1) Learn the functionality of EHRs through hands-on labs; (2) Learn the technical infrastructure required for EHRs including distributed architecture, network and security design; (3) Understand how EHRs change healthcare delivery workflows and how to manage that change; and (4) Learn best-practices for deploying EHRs including project management, typical budgets, system selection and governmental requirements and funding. [ 4 cr. ]
The goal of this course is to provide Computer Information Systems students with the mathematical fundamentals required for successful quantitative analysis of problems in the field of business computing. The first part of the course introduces the mathematical prerequisites for understanding probability and statistics. Topics include combinatorial mathematics, functions, and the fundamentals of differentiation and integration. The second part of the course concentrates on the study of elementary probability theory, discrete and continuous distributions. 4 cr [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| OL | IND | Temkin | ARR | – |
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| C1 | IND | Heda | CAS B18B | W | 6:00 pm – 9:00 pm |
| OL | IND | Kanabar | ARR | – | |
| W3 | IND | Staff | W | 6:00 pm – 9:00 pm |
Contemporary communication costs allow software applications to be produced via geographically distributed development (GDD). In addition to the traditional challenges of specifying and developing IT. systems, GDD projects must accommodate differing cultures, time zones, and development methodologies. This course prepares students to justify,lead, participate in, and maintain such projects. Students work in geographically dispersed teams and produce documented applications. Lab course. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Czik | FLR ARR | M | 6:00 pm – 9:00 pm |
| EL | IND | Czik | ARR | – | |
| EL | Czik | PHO 205 | M | 6:00 pm – 9:00 pm |
This course covers the theory and practice of quality assurance and testing for each step of the software development cycle. It introduces, defines, and contrasts the two pillars of software quality: Verification and Validation. The course covers test case design techniques, test coverage criteria, and tools for static and dynamic analysis. IEEE standards for test design and documentation are included. The course explains test-driven development and its relation with validation in the small and the large. QA for maintenance and legacy applications are covered. The course explores experimental and contemporary approaches to quality such as those inherent in agile development. [ 4 cr. ]
This course provides an overview of contemporary information systems technology (IT) management. It explains the relevant issues of effective management of information services activities and highlights the areas of greatest potential application of the technology. No assumptions are made concerning the reader's experience with IT, but it is assumed that the reader has some course work or work experience in administration of management. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Arakelian | FLR ARR | M | 6:00 pm – 9:00 pm |
| EL | IND | Arakelian | FLR ARR | M | 6:00 pm – 9:00 pm |
| OL | IND | Braude | ARR | – |
A review of Enterprise architecture, traditional and internet-based open distributed systems with emphasis on Enterprise Integration. System Modeling with IBM's Rhapsody. XML Schema. SOA and Web Services. Messaging Systems and JMS. Enterprise Service Bus. Identity and Access Management. Single Sign-On and LDAP. Caching and In-Memory Databases. J2EE frameworks (Spring). Object Relational Mapping (Hibernate). Business Process Management. Workflow Management and BPEL. Integration with Mainframes (zOS). [ 4 cr. ]
Automatic and reliable identification of individuals for issuing official documents (e.g., passport and visa) and providing access to secure facilities (e.g., military base) and proprietary information (e.g., corporate websites) has become an essential part of our modern networked society. Biometric recognition systems utilize the physiological or behavioral characteristics of an individual for identification. By using biometrics, it is possible to establish an identity based on "who you are", rather than by "what you possess" (e.g., an ID card) or "what you remember" (e.g., a password). In this course we will study the fundamental and design applications of various biometric systems based on fingerprints, voice, face, hand geometry, palmprint, iris, retina, and other modalities. Multimodal biometric systems that use two or more of the above characteristics will be discussed. Biometric system performance and issues related to the security and privacy aspects of these systems will also be addressed. [ 4 cr. ]
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| C1 | IND | Wolfe | CAS 322 | W | 6:00 pm – 9:00 pm |
| EL | IND | Wolfe | CAS 322 | W | 6:00 pm – 9:00 pm |
| OL | IND | Lee | ARR | – |
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| D1 | IND | Burgoyne | GCB 204 | R | 6:00 pm – 9:00 pm |
| OL | IND | Burgoyne | ARR | – |
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 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Staff | SHA 201 | M | 6:00 pm – 9:00 pm |
| W4 | IND | Staff | R | 6:00 pm – 9:00 pm |
Provides a comprehensive understanding of digital forensics and investigation tools and techniques. Learn what computer forensics and investigation is as a profession and gain an understanding of the overall investigative process. Operating system architectures and disk structures are discussed. Studies how to set up an investigator?s office and laboratory, as well as what computer forensic hardware and software tools are available. Other topics covered include importance of digital evidence controls and how to process crime and incident scenes, details of data acquisition, computer forensic analysis, e-mail investigations, image file recovery, investigative report writing, and expert witness requirements. Provides a range of laboratory and hands-on assignments either in solo or in teams. With rapid growth of computer systems and digital data this area has grown in importance. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| EL | IND | Burrell | ARR | – | |
| EL | Burrell | FLR 267 | S | 9:00 am – 12:00 pm | |
| BHA | IND | Staff | U | 8:30 am – 4:00 pm |
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Jacobs | FLR ARR | M | 6:00 pm – 9:00 pm |
This course provides a comprehensive understanding of network forensic analysis principles. Within the context of forensics security, network infrastructures, topologies, and protocols are introduced. Students understand the relationship between network forensic analysis and network security technologies. Students will learn to identify network security incidents and potential sources of digital evidence and demonstrate the ability to perform basic network data acquisition and analysis using computer based applications and utilities. Students will also identify potential applications for the integration of network forensic technologies and demonstrate the ability to accurately document network forensic processes and analysis. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| EL | IND | Jacobs | ARR | – | |
| EL | Jacobs | GCB 208 | S | 1:00 pm – 4:00 pm |
This course provides an introduction to the advanced digital forensic topic relating to malicious software (malware), which represents an increasing information security threat to computer systems and networks. Students will review software engineering design fundamentals and reverse engineering techniques utilized to conduct static and dynamic forensic analysis on computer systems and networks. Students will learn about the importance of forensic principles, legal considerations, digital evidence controls, and documentation of forensic procedures. This course will incorporate demonstrations and laboratory exercises to reinforce practical applications of course instruction and will require an independent research paper related to the course topic. [ 4 cr. ]
The course covers the main concepts and principles of cryptography with the main emphasis put on public key cryptography. It begins with the review of integers and a thorough coverage of the fundamentals of finite group theory followed by the RSA and ElGamal ciphers. Primitive roots in cyclic groups and the discrete log problem are discussed. Baby-step Giant-step and the Index Calculus probabilistic algorithms to compute discrete logs in cyclic groups are presented. Naor-Reingold and Blum-Blum-Shub Random Number Generators as well as Fermat, Euler and Miller-Rabin primality tests are thoroughly covered. Pollard's Rho, Pollard's and Quadratic Sieve factorization algorithms are presented. The course ends with the coverage of some oblivious transfer protocols and zero-knowledge proofs. There are numerous programming assignments in the course. This course serves a prerequisite to CS 799 Advanced Cryptography. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Temkin | GCB 203 | M | 6:00 pm – 9:00 pm |
This course builds on the material covered in CS 789 Cryptography. It begins with the coverage of commutative rings, finite fields, rings of polynomials, and finding of the greatest common divisor in the ring of polynomials. Irreducible polynomials are discussed. Field extensions and fields Fᴩ [x]/P are thoroughly covered. The main emphasis is put on elliptic curves over Fᴩ and F₂ and the ElGamal cipher on elliptic curves is presented. Block ciphers DES and double and triple DES are introduced. AES and WHIRLPOOL block ciphers and modes of operation are covered. The course continues with the introduction of message integrity and message authentication. In the last part of the course cryptographic hash functions SHA-512 and WHIRLPOOL as well as various digital signatures are introduced. Finally, entity authentication and key management issues are discussed. [ 4 cr. ]
Investigation of the object-oriented paradigm; creational, structural, and behavioral design patterns; component technology; implementation in java. Laboratory course. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| A1 | IND | Braude | KCB 107 | M | 6:00 pm – 9:00 pm |
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. [ 4 cr. ]
| Section | Type | Instructor | Location | Days | Times |
|---|---|---|---|---|---|
| C1 | IND | Zhang | GCB 209 | W | 6:00 pm – 9:00 pm |
This course covers the theory and practice of quality assurance and testing for each step of the software development cycle. It introduces, defines, and contrasts the two pillars of software quality: Verification and Validation. The course covers test case design techniques, test coverage criteria, and tools for static and dynamic analysis. IEEE standards for test design and documentation are included. The course explains test-driven development and its relation with validation in the small and the large. QA for maintenance and legacy applications are covered. The course explores experimental and contemporary approaches to quality such as those inherent in agile development. [ 4 cr. ]
Builds on previous design and programming courses and introduces students to the technological, social, and pragmatic aspects of developing open source software through direct involvement in an open source project. Students learn to use the tools, techniques, and strategies of open source developers. They become familiar with the open source movement, its philosophy, history and licensing issues. This is a project-based laboratory course. Students are directly involved with and integrated into an open source project. They are expected to be active participants in the project and contribute to the project in various ways. [ 4 cr. ]