340 likes | 433 Views
Wykład 4 Notacja modelu obiektowego - dodatek. Object Model Notation. Class Name. Class Name. attribute. attribute : data_type. attribute : data_type := init_value. operation. operation ( arg_list ) : return type. Class. Superclass. Subclass-1. Subclass-2.
E N D
Class Name Class Name attribute attribute : data_type attribute : data_type := init_value ... operation operation ( arg_list ) : return type Class
Superclass Subclass-1 Subclass-2 Generalization - Inheritance
Assembly Class Part-1-Class Part-2-Class Assembly Class Part-1-Class Part-2-Class Aggregation
Object Instances/ Instantiation relationship ( Class Name ) attribute_name = value ( Class Name ) ( Class Name ) Class Name
Association Association Name Class-1 Class2 role-1 role-2 Association Name 1 * Class-1 Class2 qualifier role-2 role-1
Exactly one Class Many (zero or more) Class Optional (zero or one) Class 1+ One or more Class 1-2, 4 Numerically specified Class Multiplicity of Association
{ordering} Class Ordering
Link Attribute Association Name Class-1 Class-2 link attribute ...
Class-2 Class-1 Association Name role-2 role-1 role-3 Class-3 Ternary association
Superclass Operation is abstract in the superclass operation {abstract} Subclass-1 Subclass-2 operation operation Subclasses must provide concrete implementation of operation Abstract operation
Association as Class Class-1 Class-2 Association Name link attribute ... link operation
Superclass Subclass-1 Subclass-2 … More subclasses exist Generalization Properties
Multiple Inheritance Superclass-2 Superclass-1 ... Subclass ... Superclass Discriminator is an attribute whose value differentiates between subclasses Discriminator Subclass-1 Subclass-2
Class Name Class Name $attribute /attribute $operation Class Name Class Attributes and Class Operations Derived Attribute Derived Class Derived Association Class Name Class Name
Class-1 attrib-1 attrib-2 { attrib-1 0} Propagation of Operations Class-1 Class-2 operation operation operation Constraints on Objects Constraints between Associations A1 Class Name {subset} Class Name A2
State-1 State-2 event State-2 State-1 event ( attribute ) Event causes Transition between States Event with Attribute
Initial State Itermediate State result State-2 State-1 Event/action Initial and Final States Action on a Transition
event[ guard ] State-2 State-1 event1/ event2 State-2 State-1 Guarded Transition Output Event on Transaction Sending an event to another object event1 State-2 State-1 event2 Class-3
State Name entry / entry-action do : activity-A do : event-1/action-1 ... exit / exit-action Actions and Activity while in a State
State Generalization (Nesting) Superstate event1 Substate-1 Substate-2 event3 event2
Superstate event1 Substate-1 Substate-3 Substate-2 Substate-4 event2 Concurrent Subdiagrams
Superstate event1 Substate-1 Substate-3 event3 event0 event2 event4 Substate-2 Substate-4 Splitting of control/Synchronization of control
Process name data name process-1 process-2 Process Data Flow between Processes
Name of data store Name of data store Data Store or File Data flow that Results in a Data Store
d1 d2 Actor-1 Actor-2 process-2 boolean result process-1 process-2 Actor objects (as Source or Sink of Data) Control Flow
Data store d1 process Data store d1 process-1 Access of Data Store Value Update of Data Store Value
Data store d1 process Access and Update Store Value
d1 composite d2 d1 Composition of Data Value Duplication of Data Value
d1 composite d2 Decomposition of Data Value
Projekt • Plan Projektu • Analiza • Projektowanie systemowe • Projektowanie obiektowe - Select • Process Hierarchy Diagrams • Process Thread Diagrams • Use Case Diagrams • Class Diagrams • Object Collaborations • Object Sequence Diagrams • State Diagrams • Implementacja