LMU Computer Science offers a B.S. degree program in Computer Science, an undergraduate minor program in Computer Science, an M.S. degree program in Computer Science, and an MS/MBA program leading to master's degrees in both Computer Science and Business. Students are well-prepared for both industry careers and graduate study though a constructivist, practice-before-theory educational approach, and a collaborative, welcoming culture.
The B.S. degree is awarded upon successful completion of the undergraduate major field curriculum with a minimum of 124 total units. Department criteria for graduation include completion of all courses in the curriculum with a minimum grade point average of C (2.0) in the upper division requirements.
A minor in Computer Science is fulfilled by completing a minimum of 18 units with courses selected from a curriculum featuring programming, data structures, a lower division elective, and at least 6 units of upper division elective courses.
The M.S. degree is awarded upon successful completion of the graduate curriculum. The program is normally completed in two years. A 4+1 Program, where students study for five years at LMU receiving the B.S. Degree after four years and the M.S. Degree after five, is also available. Contact the Graduate Director, Dr. B. J. Johnson, for more information.
The Department of Computer Science provides undergraduate and graduate programs featuring courses and laboratories in data structures and algorithms, computation theory, artificial intelligence and machine learning, computer systems, computer graphics and user experience, programming languages and translation, database systems, human factors and ethics, as well as other traditional, modern, and interdisciplinary subject areas. One hundred twenty-four (124) semester hours of credit from the following areas are required.
Seventy-four (74) or more units from:
Computing Foundations (12 units): CMSI 1010 Programming and Laboratory, CMSI 2120 Data Structures and Applications, CMSI 2130 Algorithms and Analysis, CMSI 1900 Exploring Computer Science.
Sophomore Practicum (2 units): CMSI 2021 Web Application Practicum, or CMSI 2022 Mobile Application Practicum. (Only one practicum is required, but both can be taken.)
Digital Systems (8 units): CMSI 2210 Computer Systems organization, EECE 2242 Logic and Computer Design
Calculus, Linear Algebra, and Probability: MATH 131 Calculus I, MATH 132 Calculus II, MATH 251 Applied Linear Algebra, and either (a) MATH 361 Probability and Mathematical Statistics or (b) CMSI 4320 Cognitive Systems Design
Discrete Mathematics: Either (a) CMSI 2820 Discrete Mathematics for Computer Science, or (b) MATH 367 Discrete Systems with appropriate prerequisites. Option (b) is recommended for students that wish to minor or double major in mathematics, or pursue graduate study
Computer Science Explorations (24+ units): CMSI 3801 Languages and Automata 1, CMSI 3802 Languages and Automata 2, as well as:
One course form the Systems and Architecture group: CMSI 3510 Operating Systems, CMSI 3520 Database Systems, CMSI 3550 Networks and Internets, EECE 3140 Microprocessor and Microcontroller Systems
One course form the Artificial Intelligence group: CMSI 3300 Artificial Intelligence, CMSI 4320 Cognitive Systems Design, CMSI 5350 Machine Learning, CMSI 5370 Natural Language Processing.
One course form the Games and Interaction group: CMSI 3700 Interaction Architecture and Design, CMSI 3710 Computer Graphics, CMSI 3751 Game Design, CMSI 3752 Game Development.
At least one additional course at the 3xxx level or above
Capstones and/or Theses (8 units): CMSI 4071 Senior Project 1 or CMSI 4081 Senior Thesis I; CMSI 4072 Senior Project II or CMSI 4082 Senior Thesis II
A minimum of thirty-two* (32) units from University Core, as follows:
Seven required core courses: First year seminar, Rhetorical arts, Philosophical inquiry, Theological inquiry, American diversity, Faith and reason, and Ethics and justice.
If necessary, additional core courses to satisfy the 32-unit minimum, from: Historical analysis, Human behavior, Creative experience, or Interdisciplinary connections. These additional units may, if desired, be satisfied entirely with the courses CMSI 3700 and CMSI 3710, which are part of the university core (Human behavior and Creative experience, respectively). This option allows the student more room for free electives or the pursuit of a minor or double major.
Students must take a sufficient number of electives to reach the minimum requirement of 124 total units (which some students do far exceed). We recommend planning a coherent program of electives and related core courses with a faculty advisor. The following strategies for the use of free electives are provided as recommendations only:
More computer science: Ample free elective space is offered for students to take 3-5 additional computer science electives; one can fill out an entire track or exploring more of the discipline through additional elective courses or independent studies.
A minor or double major: We've designed the program so that minors are quite possible, and in some cases, double majors. See your advisor for assistance in planning. In the past, Animation, Psychology, Modern languages, Asian and Pacific studies, Dance, and Applied Mathematics have been the most popular choices, but anything you wish to do is fine!
The broad-based education: Maximize your educational experience and broaden your world view by taking as many and as varied courses as possible. Martial arts, languages, musical instruments or music theory, film, animation, psychology, and various selections form the creative and performing arts are common choices.
A focus tailored to your interests: If you don't wish to be constrained by structure of a published minor or second major, work with an advisor to plan out a set of electives tailored to some specific interest. Examples include but are not limited to:
Business and Information Management, with electives from economics, business, and ISBA (Information Systems and Business Analytics)
Scientific Computing, with science and math courses (preferably with a computational component), perhaps fulfilling the CMSI elective with an interdisciplinary elective such as CMSI 3422 Biological Databases
Games and Animation, augmenting CMSI 3751 and CMSI 3752 with several animation courses and courses in Physics
Mathematics, selecting courses from Calculus 3, Differential Equations, Abstract Algebra, Methods of Applied Math, Real Variables, Complex Variables, Topology, and other upper division mathematics courses
Cognitive Science, augmenting CMSI 3300 and 4320 with additional regular or independent study courses in advanced artificial intelligence, PSYC 2003 Brain and Behavior, PSYC 4001 Cognitive Neuroscience (with appropriate prerequisites), and one or more courses in linguistics or the philosophy of language and thought
A typical course sequence for the completion of the B.S. degree is as follows.
(*) Only ONE of CMSI 2021 or CMSI 2022 is required, though many students take both
(**) Required computer science courses that satisfy core requirements, such as CMSI 3700 and 3710, can count for both computer science and core requirements and thus increase the number of available free electives.
Transferring into Computer Science?
If you wish to start your computer science program in your sophomore year, you can do that, provided you made good progress toward your core requirements during your first year (otherwise you might be best picking them up in the summer). Expect a rough go later in your career, as CS, like martial arts, music, sports, and the trades, requires time and practice, and many of our courses have strict prerequisites! That said, we'd love to have you. Spread out your required computer science, math, science, and engineering courses among your final three years as follows:
Fall Year 2: CMSI 1010, 2820; MATH 131
Spring Year 2: CMSI 2120, 2022; MATH 132
Fall Year 3: CMSI 2130, 2210, breadth-elective
Spring Year 3: CMSI breadth-elective; MATH 250; EECE 2242
Fall Year 4: CMSI 3801, 40(71|81), breadth-elective, MATH 360
Spring Year 4: CMSI 3802, 40(72|82); breadth-elective
See your advisor to help work in the remaining core courses and free electives into this plan.
A minor in Computer Science is fulfilled by completing:
(a) CMSI 1010 and 2120, OR (b) ENGR 160 and CMSI 3630
CMSI 2130 or CMSI 2210 or CMSI 2820
Enough upper division CMSI courses to reach 18 units total
The M.S. Degree in computer science requires 30 units of coursework partitioned as follows:
CMSI 583 Computability and Complexity (3 units)
CMSI 585 Programming Language Semantics (3 units)
CMSI 694 Graduate Capstone Project or CMSI 694 Master's Thesis (3 units)
21 units of graduate-level electives from Computer Science, Electrical Engineering, Systems Engineering, or related fields.
At least fifteen (15) units must be at the 600 level, and an overall GPA of 3.0 is required.
Prior to admission to the M.S. program, students must demonstrate competency equivalent to semester-length undergraduate experiences in Data Structures and Algorithms and two of the three areas: Systems Programming / Machine Organization, Operating Systems, and Database Systems. These (undergraduate) courses may be taken at LMU, but the units cannot be counted toward the 30-unit requirement.