Computer Science

Computer Science Major

For additional information visit the Computer Science Department or contact us.

University Core/General Education Requirements

Major Requirements

BS/MS Program 
Course Descriptions

General Education Requirements 

For a general description of the current General Education ("GenEd") requirements, please see the General Education website

For a list of courses that currently satisfy the General Education requirements, please see the General Education website.

Computer science majors typically satisfy the new GenEd 2000 requirements by taking

  • College Writing I and College Writing II, 
  • three courses designated as Arts and Humanities,
  • three courses designated as Social Sciences,
  • one course designated as a Diversity course, and
  • one course that satisfies the Computer Science Ethics Requirement.

Major Requirements

Computer Science Courses

91.101 Computing I 4 credits
91.102 Computing II 4 credits
91.201 Computing III 4 credits
91.203
Computer Organization & Assembly Language
4 credits
91.204
Computing IV
3 credits
91.301
Organization of Programming Languages
3 credits
91.304
Foundations of Computer Science
3 credits
91.305
Computer Architecture
3 credits
91.308
Introduction to Operating Systems
3 credits
91.404
Analysis of Algorithms
3 credits
XX.XXX
Computer Science Project Sequence
6 credits
XX.XXX
Computer Science Elective
6 credits
View the complete Course of Study (pdf).

Computer Science Project Sequence

All Computer Science majors must take a one- or two-semester project course from the approved department list. Students who take an approved one-semester project course such as Compiler Writing must take two additional Computer Science electives; otherwise, only one is required. Students may not take more than 6 credits from any combination of the following: 91.401, 91.402, 91.460, and 91.490. Current project course sequences include:

91.309 Database I AND 91.310 Database II
91.406 Introduction to Compiler Writing AND XX.XXX Computer Science Elective
91.411 Software Engineering I AND 91.412 Software Engineering II
91.413 Data Communications I AND 91.414
Data Communications II
91.414
Data Communications I
AND 91.561
Computer Security I
91.420
Artificial Intelligence
AND 91.421
Data Mining
91.420
Artificial Intelligence
AND 91.422
Machine Learning
91.421
Data Mining
AND 91.422
Machine Learning
91.422
Machine Learning
AND 91.423
Computer Vision
91.422
Machine Learning
AND 91.442
Natural Language Processing
91.427 Graphics I AND 91.428 Graphics II
91.450 Robotics I AND 91.451 Robotics II
91.461 GUI Programming I AND 91.462 GUI Programming II
91.561 Computer Security AND 91.562 Computer Security II
This list is subject to revision. Students should check with their advisors for the latest information.

Some project sequences are not offered every year. Thus, you should take the second course of a project sequence in the semester immediately following the one in which you took the first course of that sequence.

Computer Science Electives 

In addition to undergraduate courses with 91.3xx and 91.4xx numbers, most 500-level computer science courses may also be used as computer science electives. For example, undergraduate computer science majors are often qualified to take 91.502, 91.515, 91.521, 91.522, 91.538, 91.539, 91.540, 91.541, 91.543, or 91.546.

Supporting Courses in Science and Mathematics

92.131 Calculus I 4 credits
92.132 Calculus II 4 credits
92.321 Discrete Structures I 3 credits
92.322 Discrete Structures II 3 credits
92.386 Probability and Statistics I 3 credits
16.265 Logic Design 3 credits

Additional Writing Requirement

In addition to 42.101 and 42.102, College Writing I and II, all CS majors are required to take 42.220, Oral and Written Communication for Computer Science.

Technical Electives

CS students must complete 6 credits of courses offered by the College of Arts & Sciences, Science Division (this is our college) or the College of Engineering. Courses that fulfill this requirement must be classified as required or elective courses for the majors in those departments. In general, 90.xxx courses may not be used to fulfill this requirement.

Natural Science Requirements

Student must pass at least 12 credits of approved natural science courses and companion lab courses (see below for details on approved courses). Among these, at least one natural science course and a complementary lab section have to be taken. However, that the Computer Science faculty recommends that students always take the complementary lab for any natural science course when a lab is available, so that three natural science courses and companion labs satisfy the requirements. When one natural science course and a companion lab are taken, three additional natural science courses without companion labs satisfy the requirements.

Natural science electives must come from one of the four natural science departments in the College of Sciences. These are:

  • Biological Sciences
  • Chemistry
  • Environmental, Earth, and Atmospheric Sciences
  • Physics and Applied Physics

The courses in these departments that fulfill the CS natural science elective requirement are those that are classified as either required or elective courses for the majors in the respective departments.  In general, courses that satisfy GenEd technical elective requirements for non-science majors do not satisfy the CS natural science elective requirement.  Such unallowed courses are ones whose University catalog descriptions contain the statement: “This course satisfies the GenEd science requirement, but not specific science requirements for majors in the Division of Science.”

Ethics Requirement

The Computer Science Department requires its majors to take an Ethics course.

Courses currently approved as satisfying this requirement are:

45.203 Introduction to Ethics 3 credits
45.334 Engineering and Ethics 3 credits
45.335 Ethical Issues in Technology 3 credits
45.341 Science, Ethics, and Society 3 credits
45.342 Critical Theory & Society 3 credits
45.401 Bioethics and Genetic Research 3 credits
47.363 Introduction to Disability Studies 3 credits
57.211 Sustainable Development 3 credits
57.220 Designing the Future World 3 credits
59.303 Society & Technology 3 credits
59.395 Computers in Society 3 credits
When a course satisfies the Ethics Requirement and a General Education Requirement, CS Majors can use it to satisfy both requirements.

General Elective Courses

With certain exceptions, CS students may take any three or four credit course from any academic department within the University as a general elective.

At least one general elective must be in a non-technical area, i.e., not in computer science, the sciences, mathematics, engineering, or similar disciplines.  It is safe to choose a course in the humanities or social sciences that does not have a computation or other technical focus.

For all the general electives, CS students must avoid:

  • courses in areas required by the CS curriculum (mathematics and physics) unless they are at a level higher than the courses required by the CS curriculum
  • non-CS courses having a significant computing component or a significant overlap in content with courses required by the CS curriculum
  • CS courses for non-majors

The determination of the acceptability of any proposed general elective course will be made by the CS Department Undergraduate Coordinator.

Examples of courses that may NOT be used as general electives are

  • programming language courses offered by other departments (all computer science courses have 91.xxx course numbers; 90.xxx and 92.xxx courses are offered by the Mathematics Department)
  • MIS or IT courses
  • mathematics courses below the level of the science and engineering calculus sequence
  • CS courses for non-majors
  • many certificate courses (including some Computer Science Department courses) offered through Continuing Education

You may take courses that do not qualify as general electives. Such courses appear on your transcript and are part of your overall GPA. However, these courses do not count toward your BS degree in Computer Science.

Students who have taken courses in the above categories before they came to UMass Lowell are usually allowed to use them as general electives.

Total Credits Required for the Degree

Students must take or transfer an appropriate course for each slot in the curriculum grid. Each course can fill only one slot. The University requires at least 120 credits to graduate.

Academic Standing

Beginning with the first semester of the sophomore year, and every semester thereafter, CS majors must maintain

  • a cumulative grade point average of 2.5 or better in all CS courses (91.xxx) taken at UMass Lowell.
  • a cumulative grade point average of 2.3 or better in all courses taken at UMass Lowell.

Students who fail to satisfy these requirements will not be allowed to graduate. Thus, students should review their cumulative grade point averages regularly with their advisors.