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
Degree Pathway.

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.309Database IAND91.310Database II
91.406Introduction to Compiler WritingANDXX.XXXComputer Science Elective
91.411Software Engineering IAND91.412Software Engineering II
91.413Data Communications IAND91.414
Data Communications II
91.414
Data Communications I
AND91.561
Computer Security I
91.420
Artificial Intelligence
AND91.421
Data Mining
91.420
Artificial Intelligence
AND91.422
Machine Learning
91.421
Data Mining
AND91.422
Machine Learning
91.422
Machine Learning
AND91.423
Computer Vision
91.422
Machine Learning
AND91.442
Natural Language Processing
91.427Graphics IAND91.428Graphics II
91.450Robotics IAND91.451Robotics II
91.461GUI Programming IAND91.462GUI Programming II
91.561Computer SecurityAND91.562Computer 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.131Calculus I4 credits
92.132Calculus II4 credits
92.321Discrete Structures I3 credits
92.322Discrete Structures II3 credits
92.386Probability and Statistics I3 credits
16.265Logic Design3 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:

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.203Introduction to Ethics3 credits
45.334Engineering and Ethics3 credits
45.335Ethical Issues in Technology3 credits
45.341Science, Ethics, and Society3 credits
45.342Critical Theory & Society3 credits
45.401Bioethics and Genetic Research3 credits
47.363Introduction to Disability Studies3 credits
57.211Sustainable Development3 credits
57.220Designing the Future World3 credits
59.303Society & Technology3 credits
59.395Computers in Society3 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:

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

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.