SE Courses

Software Engineering Courses

1000-level courses

SWE 1790: Engineering Leadership

(3 hours)
Professionalism, group dynamics, professional ethics, psychology, social responsibility of engineers, legal issues for engineers, negotiation skills, documentation practice.


2000-level courses

SWE 2300: Software Engineering

(3 hours)
Prerequisite: CSC 2180 with a C or better
Development of a total system concept is emphasized. Project planning, requirements analysis, system design, program design, program implementation, program testing, system testing, system delivery, maintenance, documentation, and examining the development process. Societal and ethical impacts of software solutions are stressed. (Dual listed with CSC 2300)


3000-level courses

SWE 3120: Software Testing

(3 hours)
Prerequisite: CSC 2180, CSC 2300 with a C or better
Requirements oriented testing, test plan design, effective testing techniques, test coverage evaluation, statistical techniques for testing, reviews and inspections. Societal and ethical implications of software testing and quality are discussed.


SWE 3220: Software Requirements and Design

(3 hours)
Prerequisite: CSC 2180 with a C or better
This course provides an introduction to the concepts and methods required to successfully design professional large-scale software systems. It covers the fundamental topics in the software requirements, architecture and detailed design, including requirement elicitation, prioritization, analysis and negotiations, and validation criteria. UML, architectural views, architectural styles and patterns, component design, creational, and behavioral design patterns, design quality evaluation (e.g., efficiency, reliability, and maintainability), state based design, table based design, design management, design documentation, and code design. Ethical, societal, and professional issues present in software design will be stressed.


SWE 3240: Software Quality and Configuration Management

(3 hours)
Prerequisite: CSC 2180 with a C or better
This course provides an introduction to the Quality and Software Configuration Management activities required to successfully control the evolution of professional large-scale software systems. It covers the fundamental topics in the software quality assurance and quality models such as; CMMI, Six Sigma and Total quality management. It will also cover configuration activities, such as; configuration planning, change control and management, version control, configuration tools, and release management. Societal and ethical implications of software quality will be emphasized.


4000-level courses

SWE 4240: Software Project Management

(3 hours)
Prerequisite: SWE 3210, 3220, 3230 with a C or better
Project planning and documentation, management tools, cost estimation, productivity, metrics, options and risks, expectations management, contracts, intellectual property, process standards, long-term maintenance, progress measurement, earned value analysis, legal document management, project management standards. Societal and ethical impacts of project management are considered.


SWE 4980/4990: Capstone Project

(3,3 hours)
Prerequisite or Co-requisite: SWE 4240 Software Project Management
Group project utilizing and demonstrating all software engineering skills of the major requirements. Student conceived and marketed product is developed with complete documentation, quality control, and configuration management. Societal and ethical impact of the project development will be emphasized.