The objectives of the BS ACS concentration in Software Engineering are to provide students with the following:
- Fundamental knowledge regarding theory, methods and applications of Computer Science.
- Foundational knowledge in engineering principles as applied to producing high quality software.
- An understanding of how to integrate Computer Science and Software Engineering to produce software that is usable, reliable, maintainable, secure, scalable and efficient
- Preparation for employment as a software engineer in the software industry.
- Preparation for graduate studies in fields such as Software Engineering and Computer Science.
Software Engineering is one of the largest global industries today. Jobs are plentiful and salaries high. Whereas in past decades, the success of software was due to efficiency, algorithms and time-to-market; 21st century software must be usable, reliable, maintainable, secure, scalable and efficient. Creating high quality software requires teams of people with highly developed, diverse, skills and knowledge of cutting-edge technologies. This program is ideal for students who want careers designing, building, and evaluating high quality software products, either as part of a unified team or in leadership roles.
Therefore, this program emphasizes formal education in software usability, applied object-oriented theory, software requirements and design, software security, software testing and software maintenance. Since workplace communication and interaction are crucial to successful software projects, coursework in technical writing and organizational interactions are included. A major component of this program is a term of practical training in the form of an internship at a software company to cement the connection between academic lessons and real-world challenges.
Many industries desperately need teamwork-oriented engineering knowledge for software. These industries include web application companies, aerospace, financial, government, military, and energy.