Software Engineering- Bachelor of Science in Software Engineering

For information, contact the Department of Computer Science and Software Engineering, 205 Benton Hall, 513-529-0340, or visit

The software engineering major provides graduates with the foundational knowledge and practical skills necessary to develop large, complex computer software systems. The program focuses on the methodologies, techniques and tools needed to develop complex software in a multidisciplinary environment. Topics of study go beyond traditional computer science and include software design, software maintenance, and formal methods for software development. Throughout the program, students are expected to learn in a team environment and thus gain skills in effective communication. In addition to interest in analytical skills, problem solving, and an aptitude for working with technology, students are expected to develop an appreciation for teamwork.

The U.S. Bureau of Labor job outlook for software engineers is excellent. Jobs are expected to grow 32% from 2008 to 2018, much faster than average for all occupations. This US bureau reports that "expanding Internet technologies have spurred demand for computer software engineers who can develop Internet, intranet, and World Wide Web applications." (

Program Educational Objectives

Depth. Software Engineering graduates will have a sufficient understanding of the field of software engineering including scientific principles, analysis techniques, and design methodologies to:

  • Be successfully employed, pursue a graduate degree, or continue their professional education​.

Breadth. Software Engineering graduates will have a broad liberal education enabling them to:

  • Demonstrate adaptability or leadership by, for example, being promoted, moving up to a better job, or by taking a leadership role in a team.

  • Demonstrate an understanding of the context and broader impacts of technology in their organization by, for example, engaging stakeholders outside their immediate team, or by identifying ethical, economic, cultural, legal or environmental issues related to work projects.

Professionalism. Software Engineering graduates will be prepared for modern work environments, where they will:

  • Apply their skills in clear communication, responsible teamwork, and time management by, for example, managing a team or project, working on multidisciplinary project teams, or communicating with external stakeholders.
  • Demonstrate professional attitudes and ethics by, for example, assisting colleagues in professional development (e.g. mentoring), engaging in continuing education or training, participating in professional societies, engaging in service to the community, or contributing to an employer’s efforts to comply with software licensing, protect privacy, or assure quality and safety.

Student Outcomes

Upon graduation, software engineering majors should be able to:

  • Demonstrate an understanding of the key facts, concepts, principles, and theories of software engineering.
  • Analyze real problems, and select and apply appropriate techniques from computing, mathematics and engineering to solve them.
  • Demonstrate an ability to use software development tools.
  • Model, design, build, and evaluate software systems of varying complexity based on client requirements, and subject to realistic constraints.
  • Design experiments and think critically in evaluating the design choices made and tradeoffs considered when developing software-based systems.
  • Work effectively as a member or leader in a multidisciplinary team.
  • Describe the importance of and avenues for continuing professional development.
  • Communicate technical information effectively, both orally and in writing.
  • Recognize the social, professional, cultural, and ethical issues involved in the use of computer technology and give them due consideration in decision making.

For more information, visit our website at

Departmental Honors

If you excel in your studies, you may qualify for the University Honors Program or the program for Honors in Computer Science and Software Engineering. As a senior in these programs, you will have the opportunity to work closely with the faculty on research projects of interest.

Credit/No-Credit Policy

All courses in chemistry, physics, biology, mathematics, statistics and those in the College of Engineering and Computing (CPB, CSE, ECE, EGM, MME, CEC) that are used to fulfill requirements of the major, must be taken for a grade.

Program Requirements

Core Requirements
ECO 201Principles of Microeconomics3
or ECO 202 Principles of Macroeconomics
ENG 313Technical Writing3
STC 135Principles of Public Speaking3
or STC 231 Small Group Communication
MTH 151Calculus I5
MTH 231Elements of Discrete Mathematics3
or MTH 331 Proof: Introduction to Higher Mathematics
STA 301Applied Statistics3-4
or STA 261 Statistics
or ECE 345 Applied Probability and Statistics for Engineers
Mathematics/Statistics Electives9-10
Take three of the following:
Nonparametric Statistics
Introduction to Statistical Modeling
Statistical Monitoring and Design of Experiments
Statistical Programming
Advanced Data Visualization
Introduction to Bayesian Statistics
Survey Sampling in Business
Experimental Design Methods
Statistical Learning
Introduction to Linear Algebra
Calculus II
Calculus III
Differential Equations
Foundations of Geometry
Introduction to Abstract Algebra
Combinatorial Designs and Coding Theory
Game Theory and Related Topics
Theory and Applications of Graphs
Real Analysis
Topics in Mathematical Finance
Natural Science Electives8-10
Select two of the following six options
Biological Concepts: Ecology, Evolution, Genetics, and Diversity
Biological Concepts: Structure, Function, Cellular, and Molecular Biology
College Chemistry
and College Chemistry Laboratory
College Chemistry
and College Chemistry Laboratory
General Physics with Laboratory I
General Physics with Laboratory II
Mathematics/Statistics/Science Elective 13-5
Select one additional course from one of the following
Any of the above Mathematics/Statistics Electives
Any of the above Natural Science Electives
Any Global Miami Plan Natural Science (MPF IV A or IV B)
Software Engineering Core
CEC 101Computing, Engineering & Society1
CSE 102Introduction to Computing and Engineering (or equivalent)3
CSE 174Fundamentals of Programming and Problem Solving3
CSE 201Introduction to Software Engineering3
CSE 211Software Construction3
CSE 212Software Engineering for User Interface and User Experience Design3
CSE/CIT 262Technology, Ethics, and Global Society3
CSE 271Object-Oriented Programming3
CSE 274Data Abstraction and Data Structures3
CSE 278Systems I: Introduction to Systems Programming3
CSE 311Software Architecture and Design3
CSE 321Software Quality Assurance and Testing3
CSE 322Software Requirements3
CSE 383Client Server Programming3
ISA 406IT Project Management3
CSE 448Senior Design Project 22
CSE 449Senior Design Project 22
Specialization Area12
Complete an area of specialization 3
Total Credit Hours99-105

Software engineering majors are required to take at least 32 hours of mathematics, statistics, and natural science courses. Mathematics courses must be selected from courses at or beyond MTH 151.


IMS 440/IMS 540 may be substituted for CSE 448/CSE 449, but only with prior approval from the CSE Department. See your CSE academic advisor before enrolling.


See the department for a list of specialization areas or consult with your faculty advisor to define a custom specialization area.