Courses
The courses listed below count toward the ALM in IT. They are grouped under the three areas of concentration. Because of the rapid evolution taking place in technology, these course offerings vary from year to year. Courses marked (H) count toward the Harvard-affiliated instructor requirement. Some courses are offered both terms or in multiple sections. If all the sections are taught by Harvard-affiliated instructors, the instructors are listed by name (H: McManus and White only). The courses marked by a plus (+) are available via the Internet.
Note: To understand how the courses listed below fulfill program requirements, students should read the Requirements section.
Software Engineering
Required Courses
- CSCI E-70 Java for Graphical User Applications
+ or CSCI E-160 Java for Distributed Computing - + CSCI E-124 Algorithms and Data Structures (H)
+ or CSCI E-207 Introduction to Formal Systems and Computation (H)
+ or CSCI E-300 Randomized Analysis (H)
or MATH E-118 Introduction to Wavelets and Their Applications (H) - + CSCI E-131b Communication Protocols and Internet Architectures (H)
- + CSCI E-215 Unix Systems Programming (H)
- + CSCI E-247 Software Design: Principles, Models, and Patterns (H)
Elective Courses
- BIOL E-178 Cellular Engineering (H)
- + CSCI E-13 Practical Perl (H)
- CSCI E-21b Advanced Topics in Visual Effects
- CSCI E-40 Geographic Information Science and Web Mapping (H)
- CSCI E-113 Introduction to C, Unix, and CGI Programming (H)
- + CSCI E-132 Advanced Topics in Data Networking Protocols and Network Architectures (H)
- + CSCI E-135 Computer Networks and Network Programming (H)
- CSCI E-153 Web Development Using XML (H)
+ or CSCI E-259 XML with J2EE - + CSCI E-162 Distributed and Enterprise Computing (H)
- CSCI E-166 Web Services and Service-Oriented Architectures
- + CSCI E-170 Security, Privacy, and Usability
- CSCI E-220 Artificial Intelligence
- + CSCI E-234 Introduction to Computer Graphics
- CSCI E-236 Topics in Advanced Computer Graphics
- CSCI E-237 Programming Microsoft .NET
or CSCI E-239 Web Development Using ASP.NET - CSCI E-251 Principles of Operating Systems (H)
- + CSCI E-268 Database and Information Management Systems (H)
- + CSCI E-275 Software Architecture and Engineering (H)
- CSCI E-280 Machine Learning Algorithms for Data Mining
- CSCI E-295 Compiler Design and Implementation (H)
- ENSC E-123 Laboratory Electronics: Digital Circuit Design (H)
- ENSC E-140 Introduction to Nanoscale Science and Technology (H)
Mathematics and Computation
Required Courses
- + CSCI E-124 Algorithms and Data Structures (H)
- CSCI E-143 Programming in C# Using .NET Framework
+ or CSCI E-160 Java for Distributed Computing - MATH E-21a Multivariable Calculus
- MATH E-21b Linear Algebra
- MATH E-102 Sets, Counting, and Probability (H)
- MATH E-118 Introduction to Wavelets and Their Applications (H)
Elective Courses
- BIOL E-178 Cellular Engineering (H)
- + CSCI E-131b Communication Protocols and Internet Architectures (H)
- + CSCI E-132 Advanced Topics in Data Networking Protocols and Network Architectures (H)
+ or CSCI E-135 Computer Networks and Network Programming (H) - CSCI E-153 Web Development Using XML (H)
+ or CSCI E-259 XML with J2EE - + CSCI E-170 Security, Privacy, and Usability
- + CSCI E-207 Introduction to Formal Systems and Computation (H)
- + CSCI E-234 Introduction to Computer Graphics
- CSCI E-236 Topics in Advanced Computer Graphics
- CSCI E-251 Principles of Operating Systems (H)
- + CSCI E-275 Software Architecture and Engineering (H)
- CSCI E-280 Machine Learning Algorithms for Data Mining
- CSCI E-295 Compiler Design and Implementation (H)
- + CSCI E-300 Randomized Analysis (H)
- ENSC E-123 Laboratory Electronics: Digital Circuit Design (H)
- ENSC E-140 Introduction to Nanoscale Science and Technology (H)
- MATH E-104 Discrete Mathematics with Computer Science Applications
- MATH E-105 Groups, Graphs, and Algebraic Structures for Computing (H)
- + MATH E-126 Decisions, Games, and Negotiation (H)
- MATH E-138 Classical Geometry (H)
One of the following courses:
- MATH E-301 Theory and Practice of Teaching Number Theory (H)
- MATH E-302 Theory and Practice of Teaching Geometry (H)
- MATH E-303 Theory and Practice of Teaching Algebra (H)
- MATH E-305 Theory and Practice of Teaching Advanced Algebra (H)
- MATH E-310 Graph Theory: Investigating the Mathematical Process (H)
- MATH E-312 Unifying Principles of Geometry and Algebra (H)
Information Management Systems
Required Courses
- + CSCI E-12 Fundamentals of Website Development (H)
- + CSCI E-131b Communication Protocols and Internet Architectures (H)
- CSCI E-143 Programming in C Using .NET Framework
+ or CSCI E-160 Java for Distributed Computing - CSCI E-253 Developing Web-Based Database Applications
- CSCI E-273 Latest Trends in Information Technology Management
+ or CSCI E-275 Software Architecture and Engineering (H) - CSS E-112a Project Management of Information Technology
or CSS E-118 Information Systems Management - CSS E-435 Operations Research and Risk Management
Elective Courses
- + CSCI E-13 Practical Perl (H)
or CSCI E-113 Introduction to C, Unix, and CGI Programming (H) - CSCI E-40 Geographic Information Science and Web Mapping (H)
- CSCI E-68 Applied Innovation in Mobile Computing
- + CSCI E-132 Advanced Topics in Data Networking Protocols and Network Architectures (H)
+ or CSCI E-135 Computer Networks and Network Programming (H) - CSCI E-153 Web Development Using XML (H)
+ or CSCI E-259 XML with J2EE - + CSCI E-162 Distributed and Enterprise Computing (H)
or CSCI E-166 Web Services and Service-Oriented Architectures - + CSCI E-170 Security, Privacy, and Usability
- CSCI E-237 Programming Microsoft .NET
- CSCI E-239 Web Development Using ASP.NET
- CSCI E-254 Oracle 10g: Programming with PL/SQL
- + CSCI E-256 Oracle Database Administration (H)
- + CSCI E-268 Database and Information Management Systems (H)
- CSCI E-280 Machine Learning Algorithms for Data Mining
- + CSS E-105e Internet Marketing Strategies
or CSS E-105f Customer Relationship Management and the Market-Driven - Organization
- CSS E-205 Organizational Behavior (H: McManus and White only)
or CSS E-208 Dealing with Change in Organizations - CSS E-215 The Challenges of Team Management
- + CSS E-310 Managerial Accounting
or CSS E-408 Spreadsheet Models for Managers
or CSS E-408a Enterprise Spreadsheet Management - CSS E-410 e-Commerce Strategies for Managers and Entrepreneurs (H)
Top of page