140 likes | 301 Views
MSIS 670: Object-Oriented Software Engineering. Week 10: Object Modeling (1)Use Case Model. Figure 1: UML Models using Use-Case Driven Approach (Rosenburg, 1999). Performing Object Oriented Analysis (OOA).
E N D
MSIS 670: Object-Oriented Software Engineering Week 10: Object Modeling (1)Use Case Model
Figure 1: UML Models using Use-Case Driven Approach (Rosenburg, 1999)
Performing Object Oriented Analysis (OOA) • OOA requires that we identify the objects, their data attributes, associated behavior, and relationships which support the required business system functionality. • We perform object modeling to document the identified objects, the data and behavior they encapsulate, plus their relationships with other objects.
Performing OOA (cont.) • Two general activities when performing object oriented analysis: • Gathering requirements through use case analysis • Finding and identifying the business objects. • Organizing the objects and identifying their relationships in class diagrams
Gathering Requirements • A system’s requirements consist of a document (or a collection of documents) that describes the functionality that system provides. • Use case models show discrete groups of system users as they interact with the system.
Dynamic Modeling: Use Case Model • Use case modeling breaks down the entire scope of system functionality into many smaller statements of system functionality called use cases or business events. • Ause case: a behaviorally related sequence of steps (a scenario), both automated and manual for the purpose of completing a single business task.
Developing Use Case Diagrams • Identify actors • Determine how these actors will get value from the system • Provide a simple and accessible view of the users and their use of the system
A B C D E F
Relationships Between Use Cases • Communicates b. Uses c. Extends
Use of Includes and Extends Relationships • Includes (uses): the base (abstract) use case depends on the included use case because it absorbs its behavior • Extends: the base (abstract) use case does not include the subordinate use case, instead, the extension use case depends on the base use case
Class Exercise 1: Use Case Diagram • (see handout)