About the Software Engineering Program

Not only was University of Houston-Clear Lake one of the first universities in the country to offer a master's degree in software engineering, it was also one of the first to offer the degree completely online. This has been especially attractive to students with full-time jobs, those who travel, and those who live outside a reasonable commuting distance from campus. Some students choose to pursue the degree completely online and others combine online and face to face classes to complete the program.

What is Software Engineering?

Software engineering is loosely defined as the application of engineering concepts, techniques, and methods to the development of software systems. It is a process that is very design driven. It is distinct from the field of computer science. Computer science is very code driven and it draws on a strong theoretical foundation in mathematics, statistics, and computing to develop new computing algorithms. And it is distinct from computer engineering, which in general covers the design and construction of computers and computer-based systems.

The field of software engineering is also distinct for the scale of the systems it addresses. In software engineering there is a special emphasis on working on very large software projects, such as large enterprise or government projects that might require a team of 50 people to write the code.

Because the field of software engineering is concerned with large-scale systems it is a team-oriented discipline. Professionals need to know how teams work and they must have the organizational, technical, process, and people skills needed to be productive in a team environment. They need the ability to link software programs together and the know-how to measure the effectiveness of a team's performance and the finished product.

Software engineers thus need a broad set of skills. They must be able to specify and design software design at the architecture level and the subsystem level and be able to design at the code level, using knowledge from the basics of computer science.

UHCL Software Engineering Program

Students are best prepared for this program by having an undergraduate degree in computer science. By providing a careful balance between theory and practice, the plan prepares students for key software positions in industry, government, and institutions where software engineering has become a key activity. The plan requires core areas of software engineering to be mastered, with each area covered by a dedicated core course. Students may also choose the extended course work option. View capstone and thesis project information for additional details.

Software Engineering Specializations

Courses in specializations below are available as face to face classes and in some cases, depending on the semester, may also be available as online courses.

  • Gaming and Robotics Software Specialization
  • Software Project Management Specialization
  • Software Development Specialization

Software Online Program for Domestic Students

The Software Engineering online domestic program has the same program requirements as the regular software engineering program. The only exception is that the elective course options will be limited to those courses that are offered 100% online. Students in the online program must be able to take 100% of their courses online. Such students may choose face to face course equivalents if they elect to drive to campus to attend class meetings.