The BRADLEY DEPARTMENT of ELECTRICAL and COMPUTER ENGINEERING

Graduate PROGRAMS

Course Information

Description

5575: Use cases, class models, state models, interaction modeling, constraint modeling, message design, and concurrent and real-time systems. Students develop analysis documentation for an Engineering related project.

Why take this course?

Object-oriented software principles are being applied in all engineering disciplines. This course provides an introduction to fundamental and advanced object-oriented analysis and design topics.

Prerequisites

4574

Experience with dynamic polymorphism, operator overloading, generic progamming and working with frameworks at the level of 4574, Large-Scale Software Development for Engineers, is required.

Major Measurable Learning Objectives

  • Apply use cases to the development of requirements
  • Develop object-oriented static and dynamic models
  • Perform object-oriented analysis for concurrent and real-time systems
  • Use the Unified Modeling Language to document software designs

Course Topics

Topic

Percentage of Course

Fundamental principles 5%
Use cases and requirements engineering 15%
Classes, objects, types, and parameterized types 5%
Object and class modeling 10%
State modeling 10%
Interaction modeling 10%
Assertions: preconditions, postconditions, invariants 5%
Message design 10%
Packages and frameworks 10%
Concurrent systems 10%
Real-time systems 10%