Software Engineering

Courses

SE 101 Foundations of Software Engineering I 3.0 Credits

Teaches students basic programming concepts within a software engineering process that involves specification, documentation, and testing. Programming coverage includes basic programming concepts such as the declaration and assignment of variables, standard data types, constants, conditional statements, loops, introduction to classes and methods, standard and file input/output, arrays, and strings. Process concepts emphasize good internal documentation practices, specifying functional requirements, defect tracking and analysis, and "black-box" testing.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Corequisite: EXAM 080

SE 102 Foundations of Software Engineering II 3.0 Credits

Introduces students to additional programming concepts. Teaches students how to design, implement, and test object-oriented software applications using simple reusable components. Introduces basic techniques for creating reusable software components. Provides an overview of the software engineering as a discipline.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: SE 101 [Min Grade: D]
Corequisite: EXAM 080

SE 103 Foundations of Software Engineering III 3.0 Credits

Introduces students to issues and practices for working with medium-size software systems. Teaches students basic techniques for using application frameworks. Introduces students to software development in teams and provides an overview of the software engineering professional practice.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: SE 102 [Min Grade: D]

SE 210 Software Specification and Design I 3.0 Credits

Study of the principles, practices, and techniques used to gather system requirements and document them in a requirements specification. Includes techniques for requirements discovery such as user interviews and prototyping. Introduces approaches for organizing and expressing software requirements in a requirements specification.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: SE 103 [Min Grade: D] or CS 133 [Min Grade: D] or CS 172 [Min Grade: D]

SE 211 Software Specification and Design II 3.0 Credits

Continues study of requirements with increasing emphasis on converting requirements into a software system design. Presents alternate approaches, techniques for evaluating specifications, specification and design tools, and use of specifications to develop system-level tests.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: SE 210 [Min Grade: D]

SE 280 Special Topics in Software Engineering 4.0 Credits

This course covers topics in software engineering. Different topics may be considered in different quarters.

College/Department: College of Computing and Informatics
Repeat Status: Can be repeated multiple times for credit

SE 310 Software Architecture I 3.0 Credits

Study of macro-level software system architectures with an emphasis on approaches to interconnection and distribution of current and emerging architectural styles.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: SE 211 [Min Grade: D] and CS 265 [Min Grade: D] and CS 260 [Min Grade: D]

SE 311 Software Architecture II 3.0 Credits

Continues discussion of software architecture with a focus on micro-level architecture including patterns, frameworks, and component-based software engineering, and commercial off-the-shelf software.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: SE 310 [Min Grade: D] or CS 350 [Min Grade: D]

SE 320 Software Verification and Validation 3.0 Credits

Presents theory and practice of software testing. Covers structural testing including such topics as path testing, dataflow testing, logic based testing, syntax testing, program slicing, mutation testing, fault injection, program perturbation, and testing tools. Discusses techniques for test construction and test suite evaluation, and validation against requirements and design models. Also covers methods of inspection and review at various phases of the software lifecycle.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: CS 260 [Min Grade: D]

SE 410 Software Evolution 3.0 Credits

Covers issues related to change in software systems. Addresses principles and techniques of corrective software maintenance, software enhancements, and software product family. Introduces students to issues of change in large software systems including configuration control, change and product management.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Prerequisites: CS 260 [Min Grade: D]

SE 480 Advanced Topics in Software Engineering 4.0 Credits

This course covers topics in Software Engineering selected from advanced topics from research in this field. Different topics may be considered in different quarters.

College/Department: College of Computing and Informatics
Repeat Status: Can be repeated multiple times for credit

SE 491 [WI] Design Project I 3.0 Credits

An independent project in which student teams design and implement a software system under faculty guidance. Students apply a defined software engineering process for the project including process customization as appropriate.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Restrictions: Can enroll if classification is Senior.

SE 492 [WI] Design Project II 3.0 Credits

Continues Design Project I.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Restrictions: Can enroll if classification is Senior.
Prerequisites: SE 491 [Min Grade: D]

SE 493 [WI] Design Project III 3.0 Credits

Continues Design Project II.

College/Department: College of Computing and Informatics
Repeat Status: Not repeatable for credit
Restrictions: Can enroll if classification is Senior.
Prerequisites: SE 492 [Min Grade: D]

  • Schedule of Classes
  • All Course Descriptions
  • Co-op
  • Academic Advising
  • Admissions
  • Tuition & Fees
LEARN MORE