dcsimg

Software Engineering (SE)

Courses

SE 299  Special Topics in Software Engineering  1-6 Credit

Individual independent or directed studies of selected topics in software engineering.

SE 300  Software Engineering Practices  3-4 Credit (3,0)

This variable credit course introduces students to the fundamental principles and methodologies of large-scale software development. Students learn about the theory and practice of software engineering and work as part of a team on a full life-cycle software project that includes planning, software specification, software design, coding, inspections, and testing. A closed laboratory is required, and includes activities that guide project teams through a software development process and support team project activities such as team building, planning, requirements analysis and specification, design, testing, and the use of tools.
Prerequisites: Students in CE/SE must have C or better in CS 125.

SE 310  Analysis and Design of Software Systems  3 Credits (3,0)

This course focuses on the fundamental methods employed in the analysis and design of software systems. Analysis is the process of determining a complete and consistent set of system requirements. Design is the process of producing a system architecture, both logical and physical, and determining an appropriate way to construct the software. The result of these processes is a documented model of the desired system. The student will learn and practice methods appropriate for both object-oriented and procedural systems.
Prerequisites: Students in SE must have C or better in CS 225 CS 317 SE 300.

SE 320  Software Construction  3 Credits (3,0)

This course provides the student with advanced instruction in programming with an object-oriented programming language. The course objective is proficiency in use of a language widely used for general purpose software development. In addition, the student will be introduced to tools and processes appropriate for employing this language in a significant software development environment. Students attending this course must already be proficient in the use of one major programming language and have knowledge of basic software engineering practices.

SE 399  Special Topics in Software Engineering  1-6 Credit

Individual independent or directed studies of selected topics in software engineering.

SE 420  Software Quality Assurance  3 Credits (3,0)

This course exposes the student to the key concepts and practices in software testing and quality assurance. The objective of this course is to introduce students to the concepts of software quality through testing, inspection, and walkthrough. The process of software testing and different testing techniques and methodologies will be covered. This course also covers topics related to the management of a testing project. Finally, different software-testing tools and their advantages and disadvantages will be discussed.
Prerequisites: Students in SE must have C or better in SE 300.

SE 450  Software Team Project I  3 Credits (2,3)

This is the first course in the sequence of a two-course senior project (SE 450 and SE 451). The senior project sequence of courses is the continuation of SE 300. They provide for additional student activities with the management, analysis, design, implementation, and testing of a software system. Students work in teams and use a defined software process to develop or modify a software product. Project work is assessed using industrial software standards and review techniques. The senior project sequence is considered the capstone course for undergraduate students in software engineering. The first course in this sequence (SE 450) emphasizes the early stages of the software development life cycle (requirements, analysis, and design). The artifacts developed during this course will be used as the foundation for further development during the second course in the sequence (SE 451).
Prerequisites: Students in SE must have C or better in CEC 320 CEC 322 SE 310 Corequisites: CEC 450.

SE 451  Software Team Project II  3 Credits (1,6)

This is the second course in the senior project sequence (SE 450 and SE 451). This is the continuation of SE 450. This course provides for additional student activities with the management, analysis, design, implementation, and testing of a software system. Students work in teams and use a defined software process to develop or modify a software product. Project work is assessed using industrial software standards and review techniques. The senior project sequence is considered the capstone course for undergraduate students in software engineering. The second course in this sequence (SE 451) emphasizes the later stages of the software development life cycle (design, implementation, testing, and maintenance). The artifacts developed during the first course (SE 450) will be used as the foundation for further development during this course (SE 451).
Prerequisites: Students in SE must have C or better in SE 420 and SE 450.

SE 499  Special Topics in Software Engineering  1-6 Credit

Individual independent or directed studies of selected topics in software engineering.