Section 0: Module Objectives or Competencies
Course Objective or Competency | Module Objectives or Competency |
---|---|
The student will be able to assess and apply Object-Oriented analysis and design methods like use cases to express user requirements, UML modeling, and other OO approaches. | Understand the relationship between the behavioral models and the structural and functional models. |
Section 1: Overview
Behavioral Modeling Overview
During the analysis phase, behavioral models are used to describe what the internal logic of the processes is without specifying how the processes are to be implemented.
- Analysts use behavioral models to represent the internal behavior or dynamic view of an information system.
- Behavioral models can be used in the analysis phase to capture a basic understanding of the dynamic aspects of the underlying business process.
- The behavioral view is driven by the original use cases uncovered during business process and functional modeling. As such, behavioral modeling is also use case driven.
Types
There are two types of behavioral models:
- behavioral models used to represent the underlying details of a business process portrayed by a use case model (interaction diagrams: sequence and communication diagrams).
- behavioral models used to represent the changes that occur in the underlying data (behavioral state machines)
Using the interaction diagrams (sequence and communication diagrams) and behavioral state machines, it is possible to give a complete view of the dynamic aspects of the evolving business information system. CRUDE analysis will be used to verify and validate the behavioral models.
Purpose of Behavioral Models
One of the primary purposes of behavioral models is to show how the underlying objects in a problem domain will work together to form a collaboration to support each of the use cases.
- Behavioral models depict the internal view of the business process that a use case describes by showing the effect that the set of use cases has on the objects in the system.
Section 2: Interaction Diagrams
One of the primary differences between class diagrams and interaction diagrams is that the modeling focus on a class diagram is at the class level, whereas the interaction diagrams focus on the object level.
- Interaction diagrams allow the analyst to model the distribution of the behavior of the system over the actors and objects in the system in order to see how they collaborate to provide the functionality defined in a use case.
- The business process can be shown by the interaction that takes place between the objects that collaborate to support a use case through the use of interaction (sequence and communication) diagrams.
Section 3: Object Level
Objects
An object is an instantiation of a class, i.e., an actual person, place, or thing about which we want to capture information.
Operations
Not only does each object have attributes that describe information about the object, but it also has behaviors or operations.
- An operation is nothing more than an action that an object can perform.
- Note that at this point we focus on operations, not methods. Methods are the way in which operations are implemented later in the design phase.
Message Passing
Each object also can send and receive messages. Message passing is a way of communicating between objects.
- Essentially, a message is a function or procedure call from one object to another object telling an object to execute one of its behaviors.
- For example, if a patient is new to the doctor’s office, the system sends a createPatient message to the Patient object. The Patient object receives the instruction (the message) and does what it needs to do to create the new patient.
Section 4: Interaction Diagrams
- Sequence Diagrams — emphasize message sequence
- Communication Diagrams — emphasize message flow