B.S. in Software Engineering
The Bachelor of Science degree in Software Engineering is designed to prepare students for an entry-level software engineering position in industry that supports the design and implementation of software systems with the focus on real-time, embedded, and safety critical applications. Such systems are critical in aviation, space, medicine, and other disciplines that rely on high-quality, dependable software. The objectives of the Software Engineering program are that our graduates:
- Demonstrate achievements in their chosen profession
- Contribute to the development of the profession
- Engage in professional growth
- Contribute to the welfare of society through service
The curriculum is designed to facilitate accomplishment of these objectives by program graduates. It provides a broad education, including fundamental knowledge about computer software and hardware. It also allows graduates to work in a team environment and to recognize the value of collaborative effort. The program lays a foundation for lifelong learning, professional growth, and ethical and responsible behavior in society.
The degree features an optional focus on cyber-security. Students who select this focus will be prepared to support government and industry’s need for people skilled in software development as well as in cyber-security.
For the cyber-security focus, the two technical electives are replaced with CS 304 Introduction to Computer Forensics (3) and CS 432 Information & Computer Security (3), and the two open electives are replaced with CI 450 Computer Forensics (3) and CS 303 Network Security (3),
The Bachelor of Science degree can be earned in eight semesters assuming appropriate background and full-time enrollment. Successful completion of a minimum of 128 credit hours is required. Students entering this program should have demonstrated a competence in mathematics and science (preferably physics). They should be prepared to enter Calculus I, having demonstrated proficiency in algebra and trigonometry. Students can prepare for this program by taking MA 140, College Algebra, and MA 142, Trigonometry, prior to taking MA 241. For those students who have not taken physics in high school, it is recommended that PS 113, Technical Physics I, be taken prior to PS 150. The Software Engineering program is designed to prepare students to work as part of a team on the development of software systems. Software engineering concepts, methods, and techniques are integrated through the curriculum. The curriculum includes courses in general education, math and science, and computing. The latter is divided into computing fundamentals, advanced concepts, applied computing, and software engineering. In addition, a student can acquire a minor or a concentration in a domain area of interest.
Students should be aware that several courses in each academic year may have prerequisites and/or corequisites. Check the course description section of this catalog before registering for classes to ensure requisite sequencing. The B.S. degree requires that students have a minimum cumulative grade point average of 2.00 in all CEC, EE, SE, CS, and EGR courses that fulfill any degree requirement.
Suggested Program of Study
|CEC 220||Digital Circuit Design||3|
|CEC 222||Digital Circuit Design Laboratory||1|
|COM 122||English Composition||3|
|CS 125||Computer Science I||4|
|EGR 101||Introduction to Engineering||2|
|EGR 115||Introduction to Computing for Engineers||3|
|MA 241||Calculus and Analytical Geometry I||4|
|MA 242||Calculus and Analytical Geometry II||4|
|PS 150||Physics for Engineers I||3|
|HU 14X Lower-Level Humanities||3|
|UNIV 101 College Success ***||(1)|
|COM 221||Technical Report Writing||3|
|CS 225||Computer Science II||4|
|CS 315||Data Structures and Analysis of Algorithms||3|
|HU 330||Values and Ethics||3|
|MA 225||Introduction to Discrete Structures||3|
|MA 243||Calculus and Analytical Geometry III||4|
|PS 160||Physics for Engineers II||3|
|PS 250||Physics for Engineers III||3|
|PS 253||Physics Laboratory for Engineers||1|
|SE 300||Software Engineering Practices||3|
|HU/SS Lower Level Elective||3|
|CEC 320||Microprocessor Systems||3|
|CEC 322||Microprocessor Systems Laboratory||1|
|CEC 470||Computer Architecture||3|
|CS 317||Files and Database Systems||3|
|CS 332||Organization of Programming Languages||3|
|CS 420||Operating Systems||3|
|MA 345||Differential Equations and Matrix Methods||4|
|MA 412||Probability and Statistics||3|
|SE 310||Analysis and Design of Software Systems||3|
|SE 420||Software Quality Assurance||3|
|CEC 450||Real-Time Systems||3|
|CEC 460||Telecommunications Systems||3|
|EC 225||Engineering Economics||3|
|CS 415||Human-Computer Interfaces||3|
|SE 320||Software Construction||3|
|SE 450||Software Team Project I||3|
|SE 451||Software Team Project II||3|
Embry-Riddle courses in the General Education categories of Humanities and Social Sciences may be chosen from those listed below, assuming prerequisite requirements are met. Courses from other institutions are acceptable if they fall into these broad categories and are at the level specified above in the Software Engineering vertical outline.
Technical electives include any AE, CE, CS, EE, ES, MA, or PS course above the 300 level or other courses approved by the SE department chair.
UNIV 101 is taken in excess of degree requirements or meets open elective credit.
General Education Electives
Any course in the HU/L series under 300 level
Any EC/SIS/SS/PSY/RS course under 300 level
Students in the SE program are required to have a C or better in the following prerequisite courses before taking the follow-on courses: CEC 220, CEC 320, CS 125, CS 315, CS 317, CS 420, MA 225, SE 300, SE 310, SE 320, and SE 450.