CSE416

Course CSE416
Title Software Engineering
Credits
Course Coordinator

Scott Stoller

Description

Introduces the basic concepts and modern tools and techniques of software engineering. Emphasizes the development of reliable and maintainable software via system requirements and specifications, software design methodologies including object-oriented design, implementation, integration, and testing; software project management; life-cycle documentation; software maintenance; and consideration of human factor issues.

Bulletin Link

Prerequisite

C or higher in CSE 316; and CSE major; and U4 standing.

Course Outcomes
  • An ability to perform project planning, requirements analysis, and system/test design.
  • An ability to work as a team to produce software systems that meet specifications while satisfying an implementation schedule.
  • An ability to produce professional quality oral/written presentations of system designs, reviews, and project demonstrations.

Textbook
Major Topics Covered in Course

1.     Approaches to software engineering
2.     The UML (Universal Modeling Language)
3.     Requirements Analysis and Use Case Modeling
4.     Object Modeling and/or Functional Modeling
5.     Dynamic Modeling using appropriate diagrammatic approaches
6.     Specification Documents
7.     Design Documents
8.     Testing -- Black Box, Glass Box, Test Plan Documents
9.     Project Planning -- Pert Charts, Gantt Charts
10.   Software Engineering tools
11.   Oral and Written Communication

Laboratory Projects
Course Webpage