uml for database design1 business analysis- naiburg and maksinchuk (uml for database design ) the...

26
UML for database design 1 Business analysis - Naiburg and Maksinchuk (UML for database design ) • The first phase systems analysis. • Identify business actors and their roles prior to system use cases. • Distinguish between – Business actors. – Actors. • In ARGOUML these can be represented as stereotypes.

Post on 15-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 1

Business analysis - Naiburg and Maksinchuk (UML for database design )

• The first phase systems analysis.

• Identify business actors and their roles prior to system use cases.

• Distinguish between– Business actors.– Actors.

• In ARGOUML these can be represented as stereotypes.

Page 2: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 2

Business Use case elements

• Distinguish between – Business use cases.– System Use cases.

• Activity diagrams are used to indicate the activities carried out by actors involved in use cases.

• At least one activity diagram per use case.• Initial business models are built.• Database designers can see required elements

for databases.

Page 3: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 3

Business Use case symbols

Page 4: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 4

Build up a context of the system to be examined

Page 5: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 5

Look in side the context for activities

• Initial analysis of EAB reveals 30 use cases so W.A.V.E. some away.

• Does the use case describe What to do and not how?

• Is the use case described from the Actors point of view.

• Does the use case include Value for the actor.• Is the flow of events an Entire business process.

Page 6: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 6

Business Use case model expanded.

Page 7: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 7

Activity Diagrams in EAB

• Used to explain the detailed interaction between the Actors and the use case.

• Describes one use case usually.

• Describes the sequence of activities contained within the use case.

• Graphical alternative to textual templates.

Page 8: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 8

EAB Activity example

Page 9: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 9

Identify Business Objects

• Differentiate between– Business actors.– Business workers.– Business entities.– These too can be defined

using classes with stereotypes in ARGOUML. After all actors are special instances of classes.

Inquirer Facility Manager Clinical Records

Business object model for Respond to Inquiry business use case

Page 10: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 10

Representing Business Objects in ARGOUML and Rational Rose

• We use the class modelling element to represent the relationships between business objects.

• Create an ordinary class objects but set the stereotype to business entity or one of the others.

• To create the stereotype. Press the up arrow until you get to the model level in the hierarchy of model elements. You will recognise it by the menu bar.

• Then choose the add stereotype button.

ARGOUML has a business, worker, and entity stereotype already.

Page 11: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 11

Representing Business Objects in ARGOUML and Rational Rose

• Once a stereotype is created then you can attach it to any class definition. Thus we can get the equivalent representation as shown. Note the attribute and operation compartments are hidden.

• The same effect can be achieved in rational rose.• The relationship between objects is important from the point

view of the database designer as it can indicate – Access to data object by certain entities (workers and actors)– Information which will need to be stored (business entities)

Page 12: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 12

Sequence diagrams and business objects

• Sequence diagram show the detailed interaction between objects.

• Can be used to show the interaction between business objects.

• From these diagrams we can gather new information for the object model.

Page 13: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 13

Example from EAB of business object model development

• From the following part of the Use Case model.

Page 14: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 14

Activity diagram for manage clinical records

Page 15: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 15

Sequence diagram for transfer records in

Page 16: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 16

Divulging further information about business models

• From sequence diagrams and activity diagrams we can get an indication elements of a business object model and their nature and relationships.

• For example from the sequence diagram we can see that there are two types of clinical records. We also see who has access to the clinical records. This is important for the database designer.

• From this information and a few more sequence diagrams we get a business object model for this part of the system.

Page 17: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 17

Business object model for manage clinical records ARGOUML Notation

Page 18: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 18

A complete Business object model for manage clinical records - book notation

Page 19: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 19

A complete business object model for manage clinical records ARGOUML

• Looking at further activities and sequence diagrams (see text book) we get a more complete picture.

Page 20: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 20

Stipulating roles of actors• Again Use class generalisation (hierarchy) to represent roles of

various actors with stereotypes.

Only part Of Diagram show Here See text for CompleteDiagrams.

Page 21: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 21

Stipulating roles of actors Book notation

Page 22: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 22

Why Business Model?

• Business practices and actors roles change when a computer system is introduced.

• Interaction between different types of actors gives an initial object model, which can be used for both – database design – class diagrams.

• Preloads system use case diagrams.• A lot of the time there will be little difference between

business and system use case models, if the business practices are initially well structured (although the role of some individuals might still change.

Page 23: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 23

Moving to the System Model• All business modelling elements must be included in the system model.• We look at all the models developed

– Business use case model.– Activity diagrams and use case templates if available.– Sequence diagrams.– Business object model

In the Business Model In the System Model

Business use Cases Become Subsystems

Business Actors Become Actors

Business workers Become Actors or Use Cases

Business workers’ activities

Become Use Cases

Page 24: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 24

Moving to the System Model

• We look to automate the activities of some of the business workers.

• We can do this by looking at the activity diagrams involving the business actors and combining activities carried out into a use case.

• We also want to carry over the external business actors to the system use case

• We also look at the Actor generalisations.– We use the generalised name on the system use

case.– We look for overlap in the functions carried out by

actors to come up with common use cases.

Page 25: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 25

System Use Case EAB

• By examining the various artefacts produced in the business analysis we come up with the following system diagram.

Page 26: UML for database design1 Business analysis- Naiburg and Maksinchuk (UML for database design ) The first phase systems analysis. Identify business actors

UML for database design 26

EAB system Use case Assess Clinical Records sub-use case