Dec 05, 2025  
2025-26 Undergraduate Catalog 
    
2025-26 Undergraduate Catalog

Computer Science/Software Engineering, BS


Return to {$returnto_text} Return to: Programs of Study

IUP's computer science programs share a curricular core covering fundamental concepts, programming, problem solving, data structures, algorithms, software engineering, database, and seminars on technical topics and the profession. The department focuses on providing a broad foundation to create agile graduates who can adapt to the rapidly changing trends in the computer science field.  Upper-level courses are designed to provide depth of theory and build career skills.  Every student in the B.S. in Software Engineering program also completes a minor (or double major) in a complementary field. The program trains students to analyze complex computing problems and to identify solutions by applying software engineering principles and by leveraging their skills from other disciplines.  The curriculum includes courses held in computer classrooms and offers hands-on learning that blends theory with supervised practice. The major prepares work-force ready graduates who function effectively as a team members or leaders while engaged in software engineering activities.

Students completing the program are prepared to work in computer-dependent areas of business, government, and industry. Recent graduates have started their careers with positions in programming and systems analysis, business applications, computer software development, scientific and applied mathematical programming, and other computer-related areas or have continued with graduate school.

Crimson Core: 40-42


As outlined in the Crimson Core Requirements  with the following specifications:

Quantitative Reasoning and Data Analysis: 3


Scientific Reasoning: 3-4


One course with prefix BIOL, CHEM, or GEOS.

Major: 45


Software Engineering Required Courses:


Additional MATH Requirement: 3


Other Requirements: 9-20


Complete a minor from one of the following areas: (6, 7)

  • Cybersecurity
  • Business Administration
  • Economics 
  • Communications Media 
  • Geography or Regional Planning
  • Other minors or concentrations approved by the department chair or any minor in the Kopchick College of Natural Sciences and Mathematics 

Free Electives: 10-23


Total Degree Requirements: 120


(1) MATH 125  can be substituted by MATH 121 .

(2) Students with 6 or more credits in CMSC 493  may petition the department to substitute CMSC 493  for CMSC 473 . This petition must be completed prior to commencement of the internship to ensure approval of the substitution. Note: If a 6cr CMSC 493  is taken and not substituted for CMSC 473 , 3cr are applied toward CMSC Upper-level Electives. If a 12cr CMSC 493  is taken and substituted for CMSC 473 , 3cr are applied toward the Required Courses and 3cr toward CMSC Upper-level Electives.

(3) Upper-level electives may be counted as controlled electives. 3cr of Intermediate Level foreign language may be applied toward controlled electives.

(4) CMSC 216  cannot be counted for major credit if a student does a Cybersecurity minor.

(5) Controlled and upper level electives may not be applied toward more than one Computer Science major.

(6) No more than 6 credits of overlap can be used for computer science majors and Cybersecurity minor.

(7) The number of credits required will depend on if other Crimson Core or major courses also count towards requirements for a minor.

SLOs




#

Outcome

How measured

Courses Used

1

Analyze a complex computing problem, then design and implement computing-based solution to meet a given set of computing requirements in the context of software engineering.

Assignments, Exams, Projects, Practicum or Internship

CMSC 319, 473 or 493, Upper-level electives

2

Communicate effectively in a variety of professional contexts.

Written Assignments, Oral Presentations

CMSC 319, 380, 480

3

Recognize professional responsibilities and make informed judgements in computing practice on legal and ethical principles.

Assignments, Exams, Oral Presentations

CMSC 380

4

Function effectively as a member or leader of a team engaged in activities appropriate to software engineering.

Group Projects, Practicum or Internship

CMSC 319, 473 or 493



Return to {$returnto_text} Return to: Programs of Study