Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst...

30
Gerard Ohm Architect Begroten als het model = de applicatie = de documentatie

description

 

Transcript of Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst...

Page 1: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Gerard Ohm Architect

Begroten als het model = de

applicatie = de documentatie

Page 2: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Introduction

Sizing and estimation:

model based

Business in control of..

Productivity!

Page 3: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Be Informed is a direct model-driven

business process platform.

The Be Informed technology and solutions

provide break-through results for administrative processes,

that are becoming more knowledge-intensive.

Page 4: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

The Be Informed story…

2002 - First toolkit

2003 - Thrown away,

too conventional

2004 - Be Informed 1.0

2006 - Government portal,

Be Informed established

2007 - Be Informed 3.0

2009 - First Million+ Euro deal,

Gartner Cool Vendor,

NAF Award

2010 – 150 staff

NAF Award Again

2015 - Realize the dream!

2011 - Be Informed USA and UK

Be Informed 4.0

2012 - First Pan European project,

Solutions

Page 5: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Traditional Be Informed

Bottom-up, prescriptive,

inductive

Top-down, declarative, deductive

5

<business rule 1>

<business rule 2>

<business rule 3>

Activity 1

<business rule 4>

<business rule 5>

<business rule 6>

Activity 2

<business rule 7>

<business rule 8>

<business rule 9>

Activity 3

Compact,

manageable !

Page 6: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Model-driven Traditional

Above the line

1010

0110

data

logic

system

integration

Above the line

data

logic

system

integration

1010

0110

develo

per

analy

st

Page 7: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

7

based on

single

semantic

model…

handles

multiple

case

types…

Generic

business

process

model…

Page 8: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

translate translate

The essential idea: don’t translate, but detail No clear distinction between design and build

business

process &

requirements

translate

architecture

technical

design code

translate

business

process

requirements model

define

detail design

develop

functional

design

Page 9: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

9

Model = Application = Documentation

Page 10: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Introduction

Sizing and estimation:

model based

Business in control of..

Productivity!

Page 11: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

• Be Informed estimation general

• Zooming in on fpa

Page 12: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

12

Starting points Be Informed estimation

• Combining different estimation techniques

- usage of historic project metrics for model estimation

- analogy estimation based on project archetype and model archetype

- model based FPA

• In line with Be Informed implementation method:

- Estimation at end of Discover, Define and Design phase with

increasing reliability and accuracy

- Use right terminology for applied Be Informed patterns and

characterization of business knowledge domains, business

functions and components.

• Support in project estimation of Be Informed implementation

- framing and qualifying of scope

- estimation of scale and scope

- estimation of productivity and cost drivers

• Support in project control of Be Informed implementation

- managing project scope by monitoring characteristics

- tracking of productivity vs. size (and therefore time)

discover

design

define

core

application

detail

Page 13: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Characteristics and Metrics

• Characteristics describe a project on content properties unambiguous characterization of project -> estimate based on analogy

enables monitoring on content properties

• Metrics describe a project in quantitative properties Metrics defined on substantive and statistical grounds -> estimate based on models/formulas

Enables monitoring on quantitative properties possible

• Monitoring of characteristics by : • Repeated determination: holds the target operating model still the same components ? Is the

number of core taxonomies still the same ? Do we still have the same number of experienced

analysts ?

• Relating to measurements of metrics: e.g. In the second increment we did 20 knowledge models

in six weeks.

13

Size Productivity

Characteristics

Knowledge service / taxonomy

pattern, knowledge domain,

products, business functions,

registrations

Application architecture,

teamexperience, projectmonitoring,

Avalability of domain knowledge

Metrics Number & size core taxonomies

depth of norms, principles and

properties, activities, atribuutsets

Number of knowledge models /

concepts per core taxonomie,

historical metrics, project WBS

Derived metrics Number of knowledge models /

concepts

Number of hours / knowledge model

or concept

Page 14: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Housing benefit request

Applicant Case worker

used by used by used by used by used by used by

Applicant Welcome Documentation Case worker

offers offers

lookup

creates

triggersdecides

calculates

creates

Decision

document

Amount

EligibilityScreening

Rental

house

Customer

Functionaliteit FP MD €

Externe Berichten Simpel Medium Complex

Inkomende berichten 0

Uitgaande berichten 0

Tijdtriggers 0

Registraties #objecten #activiteiten Triggers

Companies 4 79 2 1.600

Stationary installations 3 52 17 13.944

Documents & Mail 2 45 12 9.296

Persons 3 52 2 1.600

Aviation 1 38 6 4.648

0

Kernfuncties #objecten #activiteiten Triggers

Permit request & update MP 21 178 122 97.608

Report Annual Emissions 13 122 76 60.424

Verification 3 52 17 13.944

Enforcement 0

0

0

Serviceprocessen #objecten #activiteiten Triggers

Authorization 3 43 4 3.486

E-mail 3 43 4 3.486

Archiving of cases 3 43 4 3.486

0

0

Portalen instruments bronnen overzichten

Operator 2 5 1 40 9 7.200

Competent Authority 2 5 1 40 9 7.200

Verifier 2 5 1 40 9 7.200

0

0

Koppelingen Simpel Medium Complex

XETL Data import 6 3 63 24 19.200

e-authenticatie 1 7 4 3.200

public website CA 1 7 4 3.200

Ogone payment 1 7 4 3.200

0

Output producten Simpel Medium Complex

rtf/pdf generation form 3 21 15 12.000

XML XETL generation form 3 21 15 12.000

0

Rapportages Simpel Medium Complex

users & involvements 1 7 2 1.600

Article 21 report 1 7 18 14.400

reports related to fuel 4 28 8 6.400

Excel export MP & EAR 2 14 4 3.200

Quality control reports 3 21 6 4.800

Kenniscomponenten FP MD

kerntaxonomie omvang kerntaxonomie

Tier table 40 7 17 13.200 in

Source stream 20 7 8 6.600 in

Trend analysis 20 7 8 6.600 in

Aviation Monitoring Type 10 7 4 3.300 in

0 0 in

0 0 in

0 0 in

14

size-based estimation for each component

Page 15: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Be Informed estimator sheet (model estimation based on TOM)

15

Page 16: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

• Be Informed estimation general

• Zooming in on fpa

Page 17: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

FPA is an implementation

independent measure of the

functional size. So: why

would you need a Be

Informed-specific guideline?

17

Page 18: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Model = Documentation = Application

• Counting or estimating fp’s must

indeed be performed implementation

independent;

• The system’s design should be used

as input;

• With model based development the

design artifacts can differ greatly

from what the standard NESMA

guideline expects;

• This is also the case with Be Informed

designs.

18

Page 19: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Traditional design elements versus model

Internal

data model

EIF

ILF

EI EO EQ

EIF

ILF

EI EO EQ

• Online functions

• Selection lists

• Reports

• Etc.

• Events, case

screens, case tabs

• Knowledge

instruments

• Selection lists

• Reports

• Etc.

External data

model

Internal data model, case definitions, core taxonomies

External data

model

Page 20: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

• Structure model

• Data model identifying

record types and

data element types

• Indication of the information

system maintaining the data

• Behavioral model of the system

• Detailed description of the flow of

data element types and controls

NESMA prescribed Rationale

• Identify data files

• Determine complexity of data files

• Distinguish between ILF and EIF

• Identify user transactions

• Determine complexity of user

transactions

Page 21: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

NESMA prescribed Be Informed provided

• Case model and case meta model

Knowledge model

Datastores

Service interfaces

• n/a

• Case (meta) model: ILF

Knowledge models and interfaces: EIF

Datastores: can be both (mostly ILF)

• Events: EI, EO or both

Selection lists, reports and documents:

extra EO

Case tabs and case screens are complex

meta functions: EO

• n/a

• Identify data files

• Determine complexity of

data files

• Distinguish between ILF and EIF

• Identify user transactions

• Determine complexity of user

transactions

Page 22: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Why count knowledge models

as data files?

22

Page 23: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

• The standard guideline assumes that

a system’s functionality can be

described entirely in the form of

functions and files;

• With Be Informed a system’s

functionality is described in the form

of functions, files and taxonomies;

• There is a parallel between the

structure of data and the structure of

Be Informed knowledge models;

• Data has a principal structure that is

expressed in entities;

• Be Informed knowledge models

have a principal structure that is

expressed in taxonomies.

23

Page 24: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Be Informed function point analysis

• Certified guideline

• Accepted method in Dutch

Government domain

• Good method to determine

size of application / solution

• Scope creep detected by

recalculation

24

Page 25: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Introduction

Sizing and estimation:

model based Business in control of..

Productivity!

Page 26: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

translate translate

Recap: the essential idea: don’t translate, but detail No clear distinction between design and build

business

process &

requirements

translate

architecture

technical

design code

translate

business

process

requirements model

define

detail design

develop

functional

design

Page 27: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Sizing related to productivity

Wide spread of productivity due to:

• Productivity is measured from ‘design to acceptance’

Be Informed is direct model driven: there is no real distinction

between design and build. The biggest effort however is in the

design and not in the build.

• Productivity strongly depends on the customer organization:

• Maturity of requirements management;

• Ability to take decisions.

• The experience of the team is also an important productivity factor

but this can more easily be taken into consideration

27

Page 28: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Function points for sizing Be Informed?

• Good results with estimating and justifying

functional size based on function points with

models as design input

but

• FP are less relevant for estimating effort in

early stages.

Causes:

1. Less design upfront;

2. High impact of design choices on productivity

and scope;

3. Design itself has the most predictive

value for productivity.

april 2009 28

Page 29: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012

Remedy: Be Structured approach

29

DTAPSet up

Be Info

rmed a

rchit

ectu

re

Busi

ness

desi

gn:

Targ

et

opera

ting m

odel

Busi

ness

Functi

on m

odel

Busi

ness

Onto

logy

Core

applicati

on

Structure

Continuous integrationand test

Detail

Detail

Detail

Develop

Grow live

Accept and integrate

Page 30: Begroten als het model = de applicatie = de documentatie - Gerard Ohm - NESMA najaarsbijeenkomst 2012