You are on page 1of 7

1.

Part IV: Co-Design Methodology 1 Abstraction Layers Abstraction and Database Design

Remembering an Old Design Model (Zachman)


Di erent people involved Planer concerned with positioning the product, with scope Owner is interested in business deliverable and how it will be used Designer - from speci cation to ful ll the owner's expectations Builder - manages the production Subcontractor fabricates out-of-context components Dimensions What: data How: functions Where: network Who: users When: time Why: motivations
Planer Owner Designer Builder Subcontractor Data, Functions Network structurs stat. sem. dyn. sem. Roles, in- Schedule teraction, organization Strategy Entities Activities LocalisationsUser Time Motivations Scope Enterprise model System model Technical model Components

Concept abstraction Classi cation/instantiation Aggregation/decomposition Generalization/specialization Localization abstraction ?? Factor out repeated patterns Naming Parametrization p Implementation abstraction (( ))(oo) Encapsulation Hiding Mapping In database design: In database design: Structure abstraction
data abstraction data organization, data structures

Often ignored in database design: Functional abstraction


process design, functions

Completely ignored in database design: Interface abstraction


dialogues, interfaces
Co-Design : : : Part IV: Co-Design Methodology 46

Repository framework Enterprise engineering framework Enterprise framework Product framework


Co-Design : : : Part IV: Co-Design Methodology 47

Managing di erent abstraction trough mappings

1.2

The Classical Spiral Model


yet another observation

Abstraction Layers
Motivation, aims

using abstraction levels

Development of a preliminary sketch


?

Main concepts (Events, ideas, sketch)

Development of a detailed sketch


? Re ned main concepts (Szenarios, themes, predesign, skeleton) ?

Design
? Conceptional model (Processes, conceptional schema, views, scene)

Abstraction layers in our example Travel data { Traveller Employee Faculty member Project member Student ... ... { ... ...
Co-Design : : : Part IV: Co-Design Methodology 48 Co-Design : : :

Implementation
Logical?model (Programs, log. Schema, interfaces, integrated views)

Installation
? Physical model (Code, phys. schema, windows, code for integrated views)

Part IV: Co-Design Methodology

49

Codesign from the dialog side

Abstraction layer model Motivation layer


Scoping
A A

Motivation Motivation layer layer Scoping


External schemata Views HERM diagrams

Motives, ideas, tasks, work ow


Dialog side HERM dialoges Work ow spec. process spec.

A A A

Work ow process layer


Variating
? Action layer

A A

Work ow Raw schema process View layer sketch


A A A A

Raw design Story space Scene development

Operations design Business processes Architecture design Actions Conceptual design Processes Phys./Log. process design Modules

X X X XX X

Variating
A A A A

X X X XXX XX XX

A A

Action layer
A A A A A

Predesign View skeleton Conceptual design HERM views

Predesign Scenarios Scene speci cation Conceptual design Scene

Designing
? Conceptual layer

View speci cation

Designing

XX X XXX XXX

XX XXX

Dialog speci kation

Conceptual layer

Implementing

? Implementation layer

Data XX speciXcation XX X

XX XX XXX XX XX

Function speci cation

12pt]Papier ownb4,amssymb,latexsym,amstex
1.3

Implementing Scene decoration View Phys./Log. integration and dialog Imple- cooperation design mentation layer Integrated DBMS Production Views

Actors act through dialogues with the engine Data input through views Process support through supplied processes
Co-Design : : : Part IV: Co-Design Methodology 105

Actors and Dialogues

Manipulation of cient for most database applications. The approach is su data through enabled manipulation requests The approach allows to handle large-scale reactive information systems.
Co-Design : : : Part IV: Co-Design Methodology 106

Codesign from the schema side Motivation Motivation layer layer Scoping
External Schemata Views HERM-Diagrams

Motivation

Layer

Workflow Process

Motives, ideas, tasks, work ow


Data specif. HERM diagrams Work ow spec. process spec.

Work ow Raw schema process View layer sketch


Variating

Raw design Sketch Predesign Skeleton HERM schema Conceptual design HERM schema Phys./Log. data design DBMS Data Dictionary

Operations design Business processes Architecture design Actions Conceptual design Processes Phys./Log. process design Module

D i Work a l o Organization g
H

Scoping -

Layer

Action

Variating-

Layer

Layer Layer Designing- Implementing -

Conceptual Implementation

Story Space
H H

F u n c t i o n V i e w

H HH H

Story
HH

Scenario
HH

Project Area
H H H HH

Business Process

H HH H H H

Action layer
Designing

Predesign View skeleton

Business H Function H
HH H H

H H

Dialog Task
H

Dialog Scene
HH

C o m p o s i t i o n

H H Dialog Action HHHH Object H H H H

Interface Object
H H

Project Scope
HH H HH

H Elementary View H Sketch HHHH Action H

ProcessHHHH Widget
H H

Conceptual Conceptual design layer HERM views


Implementing View integration and Imple- cooperation mentation layer Integrated DBMS Views

S t r u Business c Information t u r e

H H

HH

View Unit
H H HH H H

ViewHH Operation Skeleton HHHH Intentional HH View


H H HH HH H H

HH

Module

Sketch

ViewHH Stored De nition HHHH Procedure


H H HH

Atomic Sketch

H H View Skeleton HHHConstructor

HERM Query
H H

H H

Coarse Type

SchemaHHHH Relational Query


H

H H

HERM Type
Planer Owner Developer Designer
Conceptual

H H

Relation Attribute
Builder
Logical

Integration of co-design via the role perspective of the pyramid: Co-design requires integration of structures and processes processes and dialogues
Co-Design : : : Part IV: Co-Design Methodology 107

Application Enterprise

structures and views views and dialogues System Area Model Model dialogues and manipulation

Model

Model

Co-Design : : :

Part IV: Co-Design Methodology

108

Motivation

Layer

Workflow Process

Layer

Action

Layer

Conceptual

Layer

Implementation

Layer

Motivation

Layer

Workflow Process

Layer

Action

Layer

Conceptual

Layer

Implementation

Layer

Scoping D i a l o g F u n c t i o n Work Organization


H H HH H

Variating

Designing

Implementing -

Scoping
6C

Story Space Story


HH H Business HH H Process H H H

H H

Scenario Dialog Task


HH

HH

H H

Tools Currently Available (Isolated)


HH H

o m p o s i t i o n

D i Work a l Organization o g
H

Variating

Designing -

Implementing -

Story Space
H H

besides the HERM approach]

Design Languages

Project Area
H H H HH

V i e w

S t r u c t u r e

The solution is to develop the schema, processes, views and dialogues stepwise using the abstraction layer model. Area Model Model Model Model

We need a number of roadmaps !!!


Co-Design : : : Part IV: Co-Design Methodology

Application

HH H Dialog H H H HH H Object H HHH H H HH HH HH H HHH H H H H H H HH HH Project Elementary H ViewHH HHH H H H H Scope Sketch HHH Action HH HH H H HHH H H H H H HH H HH H H HH H H H HHH H View View HH HH H H H H H Unit Skeleton H H H H H H H HH HH HH H H H H H H H View HHH Business Intentional Sketch HHH H H De nition HHH H Information View HH HH H HH H H H H H H HH H HH H H HH H H Atomic View HH Skeleton HHH Constructor HH Sketch H H HH HH HH HH H H HH HH Coarse HH HHH Type H H H H HH HHH H H H HHH H H H H HHH H H HH H H H HH H H HH H H HH Developer Designer H Planer Owner Builder H HH H H H H

H H

H DialogHHH H Scene H H

Business Function

Action

Interface Object Widget

H H

F u n c t i o n V i e w S t r u c t u r e

H HH H

Story
HH H Business HH H Process H H H

Scenario Dialog Task


HH H H HH

(Isolated at conceptual level)

Project Area
H H H HH H H

H H

Dialog Scene
H H HH

HH

Business Function
H H

Action

Dialog Object
H HH

Interface Object
H H H H

Process

Project Scope
HH H HH H H

Elementary ViewHH Sketch HHH Action H


H H

ProcessHHHH Widget Operation H


H HH H H

Operation

Module

Stored Procedure HERM Query

HH

View Unit
H H HH

ViewHH Skeleton HH Intentional View

HH

Module
H H H H

Business Information

H Sketch HHH

H H

View HH Stored De nition HHH Procedure View HERM Query

Atomic Sketch

HH H Skeleton HHH

Schema HERM Type

Relational Query Relation

Coarse Type

H Constructor H HH H H HH

Schema HHH Relational Query HERM Type


H H

Relation Attribute
Logical

H H

Attribute
Logical

Planer
2.1

Enterprise

System

Conceptual

Application

Several alternatives: Data-centered development


109 Co-Design : : :

Roadmaps to database design Builder Area Model Model Model Selecting one path throughModel roadmap the
2
Owner Developer
System

Designer

Enterprise

Conceptual

Part IV: Co-Design Methodology

110

HH Substitute HH H ?

Supplied Process
H HH HH H

HH

HH activate H ? H HH HH H

Interface actions Dialog actions Actions of actors Action sketch Task enable
?

human actor

Actor

Role

Dialogues
6 HH

view handler

View
6

H useHH Manipulation Request H

local

views
6

supplied views - dialogues enabled manipulation requests


6

ltration construction global

supplied processes

database - processes schema enabled processes dynamic static

Problem: view integration problem View-centered development

3. From interfaces to procedures and relational views 4. From relational views to relational schema

data manager

Interface object HERMHHH query H Dialog scene View deHnition HH H Scenario View skeleton H HH Sketch Story space H H HH Motivation H H Hprocess SketchBusiness HH H Skeleton Action HH H Conceptional schema HH Process H H Log./phys. schema Module

dialogue engine

computing engine

Problem: see mismatches above Dialog-centered development

1. Develop business information, project scope, project-area 2. From business information to the relational schema 3. From relational schema and project scope to relational views 4. From relational schema and project area to stored procedures 5. From relational schema, relational views, procedures to interfaces 1. Develop business information, project scope, project-area, work organization 2. From work organization to interfaces
Part IV: Co-Design Methodology 111

Problem: view integration problems

1. Develop business information, project scope, project-area, work organization 2. From project scope to relational views 3. From business information and relational views to relational schema 4. From project area and relational schema to procedures 5. From work organization, relational views and procedures to interfaces

Co-Design : : :

Co-Design : : :

Part IV: Co-Design Methodology

112

Abstraction-layer-driven approach
1. Develop motivation layer 2. Develop work ow process layer 3. Develop action layer 4. Develop conceptual layer 5. Develop implementation layer

Dependences of steps in the view-centered path


(str.) structure MotivationL 3 Work owL 5XX 8 ActionL 9 views dialogues functions (fct.) 1 2 4 7XX
Z Z Z

Problem: Mappings from layer to layer Solution: path through the roadmap of the pyramid Several pathes are possible: Data-centered path developing data speci cation rst Problem: behavior of dialogues requires reorganization Dialogue-centered path developing dialogue speci cation rst Problem: view integration requires reorganization Process-centered path developing process speci cation rst Problem: Optimization, normalization View-centered path developing view speci cation rst Problem: mappings Solution: use a powerful language (see above) ... what ever you want Let us consider one path and the obligations. The approach works !!
Co-Design : : : Part IV: Co-Design Methodology 113

Z Z

Z Z

XX XX X Z Z

6 (8)

Z Z

XX XXX

Z Z Z

10

11 13

14 15 16 ConcL (20d)
@ @ @

12

17 18 X X 19
@ XXXXX XX @ XX XX X

21

Z Z

20c

Z Z

Z Z Z

20d
Z Z Z Z

(22d) P P ImplemL (24d) P P

PP

22a 23

22b

Z Z Z

(21)

22c

22d

PP

PP

PP

24aX (24b) XX X 25a

B B B B

XX @ XXX XXX XX @

24d (24a)

25b

25c

25d

Co-Design : : :

Part IV: Co-Design Methodology

114

A : Motivation layer
Step 1. Speci cation of visions

2.2

View-centered development methodology


1. General visions on the application 2. Strategic information analysis 3. Actors and their actions

Step 2. Speci cation of aims, tasks and motivation

1. Speci cation of formal aims 2. Speci cation of content objectives 3. Planung of design development

Booking
6

System Edit Selection Options Object

(1,1)

Transfer Approval Allowance

Business Trip

HH

deducting
HH ?

H H HH

Traveller Data

Trip Data

Accounting Data
Traveller

(1,n)

(1,n)

HH H

applies
H

HH H

(1,1) Approval -Business trip Trip details Finance view

Traveller Data

may be split: Business Trip

Trip Data Accounting Data

Application view Allowance and report view

Co-Design : : :

Part IV: Co-Design Methodology

115

Co-Design : : :

Part IV: Co-Design Methodology

116

Step 3. Skeletal speci cation of the application


Application Trip details Booking Deduction
? ? ? -

B : Work ow Process Layer

1. Sketch of communication structure 2. Structural associations 3. View sketch 4. General functionality 5. Modularization, separation
-

Step 5. Speci cation of the view sketch


Application Trip details
? -

1. Representing main types 2. Use cases for views 3. Associations among views 4. Rei cation of the interaction diagram
-

Form lling

Approval

Endorsement

Application view
Form lling

Approval view 1
Approval

Approval view 2
Endorsement

Trip details view Approval view 3 Approval


of trip details Checking Approval view 4 Approval trip details, booking computing of deduction rates Deduction view 2 Bank transfer Deduction view 3 Transfer to cashier Deduction view 4 Counter-demand

Checking trip details, computing of deduction rates * Bank Selecting H -Transfer transfer to cashier deduction modus HH Counter-demand j Approval of trip details

Approval booking

Booking Deduction
?

Booking 1

Deduction view 1
Selecting deduction modus
H

* HH j

Step 4. Speci cation of the story space


Application Trip details Booking Deduction
? ? ? -

1. Speci cation of the general story 2. Modi cations of the story 3. Klassi cation, roles, rights, tasks of actors 4. Sketches of the main dialogues
-

Form lling

Traveller

Department head
Approval

Endorsement

Dean

(1 10) (1 1) H H H is HH H H Travel- 200 (1 ) H appliesHH (0 1) H deducted H 500 H H er HH HH (proposal) 2000 H H (1 2) (1 50) (1 30)
; ;n ; ; ; ; ;

Application view sketch

Traveller Dean Approval of trip details Case worker X


Selecting deduction modus
H

Trip Case worker X Checking Case worker Y Approval


booking

1000 5000 30000

100 Booking 200 300

* HH j

trip details, computing of deduction rates Bank transferCase worker Transfer to cashier Cassier Case Counter-demand worker

X X

Step 6. Speci cation of business processes

1. Business cases 2. Organization models 3. Business rules 4. Speci cation of the work ow

Co-Design : : :

Part IV: Co-Design Methodology

117

Co-Design : : :

Part IV: Co-Design Methodology

118

C. Action Layer

Step 7. Speci cation of scenarios

1. Speci cation of plots 2. Modelling the scenes and their associations 3. Rei cation of the main dialogues 4. Speci cation of dialogues 5. Speci cation of actions of di erent actors

Step 8. Identify major types and their associations

1. Name, de ne, diagram and document major typs 2. Name, de ne, diagram and document structural relationships 3. Name, de ne, diagram and document semantical relationships

HERM type Attribute Key (min,avg,max)-cardinality Employee (200, 500, 2000) Surname P. First names P. Living place Working place Payment category (2,5,8) Additional conditions Trip (1000, 5000, 30000) Destination P. Duration P. Reason P. (3,3,5) Companion Means of transportation (1,2,6) Booking (100, 200, 300) Faculty S1. (4,4,4) Institute (1,3,5) Chair S1. (2,6,10) Booking account P. (10,50,140) Title P., S1. (2,5,8)

Step 10. Modeling actions

1. Rei cation of tasks and business functions 2. Rei cation of functions 3. Speci cation of semantics, dynamic integrity constraints 4. Consideration of variations

Step 9. Add identi cation mechanisms to major types


Co-Design : : :

1. Identi cation in major types 2. Generalization and spezialisation hierarchies, roles 3. Identi cation in hierarchies 4. Candidates for identi cation in relationships 5. Adjoin keys to component types 6. Recursive de nition of identi cation
Part IV: Co-Design Methodology 119

Step 11. Rei cation of interaktion diagram


Co-Design : : :

1. Consideration of obligations 2. Check on completeness of views and actions 3. Speci cation of associations among dialogue tasks and scenes
120

Part IV: Co-Design Methodology

D : Conceptual Layer
Step 12. Speci cation of dialogue scenes
1. Speci cation of action phases 2. Categorization of main goals and partial goals 3. Speci cation of dialogues 4. Requirements of dialogues to views and processes 1. Categorizing actors 2. Working approaches of actors 3. Properties of presentations and e ects of actors 4. Development of presentation forms 1. Completing attribute structure 2. Completing semantics 1. Speci cation of existence constraints 2. Enforcement for insert operations 3. Enforcement for delete operations 4. Enforcement for update operations
Enforcement rules H Unconditional No enforcement enforcement H
H HH H ?

Step 16. Development of views through sample data

1. Development of sample populations 2. Modeling semantics 3. Check of structures and semantics 4. Decomposition and re-engineering of types 5. Checking samples rei cation

Step 13. Rei cation of actions of actors Step 14. Full rei cation of types Step 15. Handling of identi cation of types

Employee Surname First names Living place Working place PaymentCat AddCond Elker Helmut Berlin Cottbus C4 Gerhard Helmut Hamburg Cottbus Bat-3 : Gruba Albrecht Berlin Cottbus C3 : Holz Thomas Cottbus Cottbus Bat-1A : Horlitz Reinhard F. Regensburg Cottbus C4 Metzker Angelika Cottbus Cottbus Bat-2A : Niebergelt Brigitte Berlin Bad Saarow C4 : Scharfe Wolfgang Cottbus Cottbus Bat-1B : Wiener Gerhard Hannover Cottbus C4

H HH H

Conditional enforcement H
H

H HH j

Cascading constraints
Co-Design : : :

Null value treatment

HH j

default values

j H ? Dependening With additional on existence; modi cation conditions; Rollback predicates

HH H

Employee Trip ApplDate Surname First names Destination Duration Reason Elker Helmut Plauen 20.10 - 4.11.98 Cooperation 10.2.98 Gerhard Helmut Eberswalde 16.8.- 16.8.98 Ressource change 10.8.98 Gruba Albrecht Zurich 18.4. - 22.4.98 Conference talk 1.4.98 Gruba Albrecht Budweis 24.10. - 25.10.98 Colloquium talk 1.10.98 Holz Thomas Most 14.7. - 15.7.98 Workshop attend. 1.6.98 Horlitz Reinhard F. Plauen 30.10. - 4.11.98 Cooperation 10.2.98 Horlitz Reinhard F. Mexiko 10.7. - 16.7.98 Conference talk 1.3.98 Horlitz Reinhard F. So a 12.9. - 16.9.98 Conference talk 1.7.98 Metzker Angelika Lauchhammer 27.10 - 27.10. 98 Working group talk 1.10.98 Niebergelt Brigitte Hamburg 23.10. - 26.10.98 Conference talk 10.10.98 Scharfe Wolfgang Frankfurt 1.7. - 9.7.98 Preexcursion 1.7.98 Wiener Gerhard Beyreuth 26.10. -28.10.98 Chairing workshop 10.9.98
121 Co-Design : : : Part IV: Co-Design Methodology 122

Part IV: Co-Design Methodology

Step 17. Modular rei cation

1. Rei cation of types 2. Checking types 3. Checking hierarchies 4. Modular rei cation of units 5. Summarizing development obligations

Step 21. Integration of user views

Step 18. Validation of views through normalization

1. Validation of the attribute structure 2. Control on hierarchical decompositions 3. Control of semantical decompositions on FD's 4. Treatment of key-based and other ID's 5. Checking problematic units 6. Developing semantical decompositions with join dependencies 7. Checking operational behavior

1. Intersemantics of views 2. Combination: a. Entity types 3. Combination: b. Hierarchies 4. Combination: c. Adoption of types 5. Combination: d. Adoption of behavior 6. Combination: e. Relationship types 7. Combination: f. Attribute types 8. Normalization 9. Cooperation associations: Mapping 10. Stability analysis and extension 11. Integration of dialogues and views

Partial integration of application, endorsement, approval views


Car
6

Payment category
6 H EHasP H HH

Step 19. Developing domains

1. Domains and their characteristics 2. Semantics of domains 3. Domains for keys and integrity constraints 4. Rules for derived attributes 5. Domains in hierarchies 6. Consistency rules for consistency enforcement

H H H

Uses

HH H H

H HH H

H H

H H

DeanHH H H H Commitment H H
H H H applies HX X y H H

H H H

H DeptHH H Endorsement H

H H H

H H DeanAppr H

HH

Person
6 6

H HH ? H H j H H H H H H H H 6

Emplyoee
H H

H H

H WorksInH H H ?

H H HH

Head

HH H H

Department
6

? ? H H H H H H H H H H H H H H XX H XX H XXX XX XXX XX ? ? ? XH H H H H H H H H H H H @ HH HH J @* J @ @ R J J HH H J H H J H HH J ^ H H

Booking

Approval

Possible trip

DeptFonds

FBooking

DHasFond

Destination Transport through


H H

Step 20. Rei cation of scenes and of processes


Co-Design : : :

1. Rei cation of the dialogue scenes and development of dialogue objects 2. Rei cation of processes and development of operations 3. Solution of obligations of the interaction diagram
Part IV: Co-Design Methodology 123

H HH

DeanF
H

HH H

H HH H

FacOfDept

H HH H

Faculty

? -

H H FacHasFond H HH H

FacFonds

Co-Design : : :

Part IV: Co-Design Methodology

124

D : Orthogonal Steps
1. Analysis of requirements 2. Analysis of the network architecture 3. Development of the architecture Fragmentation of data Replication of data 4. Allocation of data and processes

E : Implementation Layer
Step 22. Transformation of conceptional views, processes, schema and scenes
1. Translation to classical DB models 2. Transformation of integrity constraints 3. Development of interface objects 4. Implementation of processes

Step i. Modeling of distribution

Step ii. Speci cation of security concepts

1. Speci cation of security views 2. Rei cation of roles 3. Optimizing availability 4. Check of con dence

Step iii. Usability

1. Speci cation of help facilities 2. User management 3. User documentation Educational material Strategies to user education 4. Utilization, adminstration management 5. Planing of integrating the system into enterprise processes 6. Maintenance and support strategies

Step 23. Performance evaluation, tuning, Redundanz

1. Considerations on optimization Major entity types Adoption to platform Enforcement rules for entity types Rules for relationship types Enforcement rules for attribute types Rules for functionality 2. Tuning of access Tune for scan e ciency Tune on the basis of clustering sequences Tune on the basis of hash mechanisms 3. Tuning of indexes Selection of keys Support of operations Adoption to the platform 4. Introduction of controlled redundancy Introduction of component copies Introduction of derived data Introduction of repeating groups Introduction of abstract types Introduction of object copies Introduction of outer joins
Part IV: Co-Design Methodology 126

Co-Design : : :

Part IV: Co-Design Methodology

125

Co-Design : : :

Step 24. Rede nition and revision of components

1. Evaluation of storage intensive components 2. Stepwise revision of component keys 3. Elimination of types 4. Adding duplikat types 5. Segmentation of types 6. Combination of Typen 7. Combination with outer join

Step 25. Performance for very large databases

1. Performance of retrieval 2. Throughput 3. Insert and delete processes 4. Checkpoints recovery 5. Administration

Step 26. Consider potential changes

1. Removal of types 2. Addition of types 3. Modi cation of types

Co-Design : : :

Part IV: Co-Design Methodology

127

You might also like