Software engineering goes beyond programming to include the ability to determining customers? requirements, and design and test software to meet those requirements. The accomplished software engineer also must take into account the economic, legal, and social considerations of such work.?

This major focuses on a range of topics including problem modeling and analysis, software design, software verification and validation, software quality, software process, and software management.?