May 25, 2024  
2023-2024 Catalog 
2023-2024 Catalog [ARCHIVED CATALOG]

Software Engineering, B.S. 2+2*

Return to {$returnto_text} Return to: Degrees and Program Requirements

*The Software Engineering, B.S. “2+2 ” is offered at the CSUSM Campus in Temecula through Extended Learning.

The “2 + 2” Software Engineering program is based on collaboration between Mt. San Jacinto College (MSJC) and California State University San Marcos (CSUSM). Students are expected to complete their lower-division requirements at MSJC. This is regarded as the “2+” part of the degree.

The entire upper-division curriculum for the major, as well as the courses necessary for students to complete the upper-division General Education requirements for the Bachelor of Science in Software Engineering, are offered through CSUSM at the Temecula campus. This is regarded as the “+2” part of the degree.

Program of Study

Software engineering is the application of engineering principles and techniques in the process of software design, development, construction and maintenance. IEEE defines software engineering as “The application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software.” With computing as its foundation, software engineering seeks to develop and use systematic models and reliable techniques to produce high-quality software.

The educational objectives of the Bachelor of Science in Software Engineering at CSUSM are to produce graduates who, within three or five years after graduation, are able to:

  • Engage in professional practice as innovative problem-solvers with a strong work ethic;
  • Demonstrate the ability to work effectively as a team member and/or leader in an ever-changing professional environment; and
  • Continue their life-long learning such as progressing through advanced degree or certificate in programs in computing, science, engineering, business, and other professionally related fields.

Toward the above educational objectives, this undergraduate program is designed to blend engineering principles, computing skills, project leadership, and software construction to provide students with a comprehensive understanding of the field and prepare graduates for the workforce or future study. The Software Engineering major at CSUSM emphasizes both theoretical foundations and practical applications with substantial laboratory work in software construction.

Program Student Learning Outcomes

Students who graduate with a Bachelor of Science in Software Engineering are expected to demonstrate:

  1. an ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics
  2. an ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, security, and welfare, as well as global, cultural, social, environmental, and economic factors
  3. an ability to communicate effectively with a range of audiences
  4. an ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts
  5. an ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives
  6. an ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions
  7. an ability to acquire and apply new knowledge as needed, using appropriate learning strategies

Career Opportunities

Software engineers hold key positions in many industries — including medical, industrial, military, communications, aerospace, business, scientific and general computing. As a graduate of this program, you should be well prepared to apply your knowledge, techniques, and skills to implement high-quality software and provide innovative solutions in industry and government. Possible software engineering jobs may include:

  • computer systems analyst
  • software engineer
  • user interface designer
  • software testing engineer
  • video game designer
  • computer systems administrator
  • project/product manager
  • sales engineer


High school students are encouraged to take four (4) years of English, four (4) years of mathematics including trigonometry, one (1) year of biological science, and one (1) year of physical science. Courses in calculus, physics or chemistry, and computer programming are recommended. Experience in clear, concise, and careful writing is valuable for success in all courses.

Special Conditions for the Bachelor of Science in Software Engineering

All courses counted toward the major, including Preparation for the Major courses, must be completed with a grade of C (2.0) or better.

Requirements for the Bachelor of Science in Software Engineering

General Education Requirements (48 Units)

General Education Requirements 

Preparation for the Major (34 Units)

Complete the lower-division requirements at MSJC. This is regarded as the “2+” part of the degree.

Lower Division (12 Units)

  • CSIS 113A     Units: 3
  • CSIS 118B     Units: 3
  • CSIS 123A     Units: 3
  • CSIS 213       Units: 3

Non-Computer Science Supporting Courses (22 Units)

  • MATH 140     Units: 3
  • MATH 211     Units: 4
  • MATH 212     Units: 4
  • MATH 218     Units: 3
  • PHYS 101     Units: 4
  • PHYS 102     Units: 4

Nine (9) lower-division General Education units in Area B (Math and Science) are automatically satisfied by courses taken in Preparation for the Major.

Minimum Total (120 Units)

Students must take a sufficient number of elective units to bring the total number of units to a minimum of 120.

Return to {$returnto_text} Return to: Degrees and Program Requirements