getting spammed for architecture arnon rotem-gal-oz biometrics line development manager rafael ltd....

54
Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel [email protected]

Upload: dina-spencer

Post on 28-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Getting SPAMMED for architecture

Arnon Rotem-Gal-Oz

Biometrics Line Development Manager

Rafael LTD.

Haifa, Israel

[email protected]

Page 2: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Famous Last Words…

“It is a very humbling experience to make a multimillion-dollar mistake, but it is also very memorable….”

(Fred Brooks - “Mythical Man-Month” p.47)

Page 3: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

We don’t want to get there

Page 4: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

So, What is Software Architecture exactly?

Page 5: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Software architecture is the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution

Page 6: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

The architect doesn't talk, he acts.When this is done,the team says, "Amazing:we did it, all by ourselves!" (17)

The architect observes the worldbut trusts his inner vision.He allows things to come and go.His heart is open as the sky. (12)

Philippe Kruchten - http://www.bredemeyer.com/tao_by_Kruchten.htm

Page 7: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Explorer

Designer

Advocate

The role of the architect

Ron Jacobs

Yeah – but a better analogy is

Page 9: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

At the end of the day it is the Architect who is ultimately

responsible for the quality of the system/product

Page 10: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

OK, so how do we do that?

Page 11: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

First, who are we working for?

Page 12: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

The Usual Suspects

Customer End-User Project Manager Management Developers Maintainers Security Analysts

Project New comers Testers Customer’s IT group

Page 13: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Mapping Stakeholders

low Highlow

High

ConcernImportance(or Power)

Interest

Monitor(Minimum Effort)

Keep Informed

Keep Satisfied

ManageClosely

Based on Schekkerman - IEAD

Page 14: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Architecture Principles

Set the direction for the solution

Initial guidelines to consider for the solution

Page 15: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com
Page 16: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

And there are always some constraints

Page 17: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Next, we have to think about the quality Attributes

Page 18: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Quality Attributes• Performance• Availability• Usability• Security

Maintainability Portability Reusability Testability

End User’s view

Developer’s view

Time To Market Cost and

Benefits Projected life

time Targeted Market Integration with

Legacy System Roll back

Schedule

BusinessCommunityview

A list of quality attributes exists inISO/IEC 9126-2001 Information Technology – Software Product Quality

Page 19: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Utility

Performance

Response

Under normal conditions - update of an entity in the persistent storage <0.5 Second

Latency

Under normal or stress conditions, critical alert generated by the system will be displayed in less than 1 seconds (for generation)

Data Loss

under all conditions, a message acknowledged by the system will not be lost

Availability

Hardware Issues

Under all conditions, when a server crash, the system will resume operation in less than 30 seconds

Usability

Compliance

The system should comply with maritime data standards (e.g. Mercator projection)

Operability

The system should handle user request without impeding the user's ability to continue controlling the system (e.g. initiate additional requests)

Security

Unauthorized users

under normal conditions and connectivity the system should alert an unauthorized login attempt (intrusion) within 1 minute

Adaptability

More Users

When additional users need access to the system, add new /more hardware (to support load) under 4 man weeks

Identify scenarios

and prioritize

them using Utility trees

Page 20: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Just remember that they actually look like this…

Page 21: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

The secret to quality attribute analysis is the scenarios

Page 22: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Anatomy of a scenario

– Under normal operation, perform a database transaction

in under 100 milliseconds.

Context Stimulus

Response

Page 23: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Oh yeah – there’s also modeling and design…

Page 24: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

RepositoryRepository

PCPC

UIEntityUIEntity

PCPC

PCPC

MapUIC+

MapUIC+

UICUIC

UICUIC

UIEntityUIEntity

UIEntityUIEntity

MAPMAP

BusIBUS

SomeService

IBUS

SomeService

MessageHandler

MessageHandler

Root U

ICR

oot U

IC

PCPC

MessageHandler

MessageHandler

MessageHandler

MessageHandler

UICUIC

CorrelatorCorrelator

Portal

Page 25: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

sd Portal - Send Message

Portal Corrolator

ServiceMsg1

IBus MessageHandler MessageMapper

UIC Repository

ServiceMsg2

opt Needs new entity

loop All message handlers

1.0

1.1 Register

1.2 Send(ServiceMessage,Service)

2.0 message:=

2.1 handle(message)

2.2 entity:= Build(message)

2.3 insertEntity(entity)

2.4 RepositoryChanged

2.5 CorrelatedMessageRecieved

2.6 callback(cookie,EntitiesAffected)

Page 26: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Metacase –www.metacase.com

Page 27: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Pattern can save you the trouble of

reinventing the wheel

Page 28: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

If you want the architecture to be effective it

has to be communicated

Page 29: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Two roads diverged in a yellow wood,And sorry I could not travel bothAnd be one traveler, long I stood

And looked down one as far as I couldTo where it bent in the undergrowth

(The road not taken, Robert Frost 1915)

Page 30: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

When you present an architecture you should consider your

target audience

Page 31: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Compare this:id Serv ice View

UI

«Service»

COP

«Service»

Nav igation

«Service»

OwnSiteESB

«Service»

Alerts

Page 32: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

With this

COP

Alerts

UI OwnSite

NavigationESB

Page 33: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Technology Mapping

Page 34: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

v

Human Workflow

ECM DW OLTP

DALService Agents

Business RulesActivity

WorkflowAu

thor

izat

ion

Monitorin

gFaçade

Log &

Trace

Exception

Man

agement

Configuration

Au

then

tica

tion

Sign

ing

Rich UI Web UI

Logistics E-PublishFinance

Page 35: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

K2

SQL 2005 SQL 2005

Generated C#

ILOG RulesC#

BizTalk 2004Tam

uz +

Win

200

3C

A U

nicenter

WCF

En

terprise Library

En

terprise Library

En

terprise Library

AzM

an

Sign

ing

Outlook + C# ASP.NET 2.0 on IIS 6.0

Documentum

WCF

SAP Logistics

Adobe Elements

SAP 4.6DFI

BizTalk 2004

Page 36: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Where are we at?

Architecture

Quality Attributes

Technology

Patterns & Anti-patterns

Principles

Community experience

Stakeholders

Architect

people

A “deliverable”

Produce

Key

Is an input

Constraints

Page 37: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

OK then, so we are all set

Page 38: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

The architecture has to be

Evaluated to make sure it is any good

Page 39: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Test Early

Total Risk ExposureRisk Exposure Reduction

TimeTime

Ris

kR

isk

Risk Reduction Period

Controlled risk management period

Total Risk Exposure

Page 40: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Sometimes we need to do more formal evaluations

ATAM flow – SEI - http://www.sei.cmu.edu/architecture/ata_method.html

Page 41: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Formal Evaluation Example LAAAM

• Assessment Matrix– Evaluate suitability of strategies against

scenariosValueCost

Strategies

Scenarios

Based on Jeromy Carriere

Page 42: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

LAAAM – Example (1/2)

Strategy

Scenario Analysis Weight

A. Perform no rearchitecting. Maintain with minimal effort the existing ABC application architecture. Introduce no new dependencies on ABC components.

B. Incrementally wrap existing ABC application components in the model provided with .NET.

C. Completely port existing ABC applications to .NET.

D. Completely port existing ABC applications to J2EE, using existing enterprise frameworks.

1. A new application leverages the XYZ data store.

Value 1 Moderate Moderate-High

Moderate Moderate

Development Cost

1.5 High Low High High

Operations Cost

1 Low Low-Moderate

Low Low-Moderate

Assessment 3 6 3 2.5

Based on Jeromy Carriere

Page 43: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

LAAAM – Example (2/2)

 Scenario Analysis Weight  A B C D

2. The XYZ application's presentation is customized by the user to determine layout and content.

Value 1 Low Moderate-High

High High

Development Cost

1.5 N/A Moderate Moderate-High

Moderate-High

Operations Cost

1 N/A Low-Moderate

Low Low-Moderate

Assessment 0 4.5 4.75 4.25

3. The peak transaction rate for the XYZ application increases by 10x (after scenario 2).

Value 1 Low Moderate-High

High High

Development Cost

1.5 High Low-Moderate

Moderate-High

High

Operations Cost

1 High Moderate Low Moderate

Assessment 0 4.75 4.75 3

Based on Jeromy Carriere

Page 44: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

All we have to do now is to deploy the

architecture

Page 45: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

StakeholdersPrinciplesAttributesModelingMappingEvaluationDeployment

Page 46: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

It is “easy” in waterfall& incremental

Page 47: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Requirements

Architecture

Design

Code

Integration

Test

Requirements &

planning game

R,A,D,C,I,T (Time boxed)

R,A,D,C,I,T (Time boxed)

R,A,D,C,I,T (Time boxed)

R,A,D,C,I,T (Time boxed)

Final Test

Requirements

Architecture

Design, Code, Integrate, Tes

t

Design, Code, Integrate, Tes

t

Final

Integration

Final Test

Moving from Waterfall to Agilewaterfall

Incremental

Agile

based on Johanna Rothman

Page 48: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Building in small iterationscan be dangerous

Page 49: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Winchester Mystery House

Page 50: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Can you do Agile Architecture?

Page 51: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

JEDUF vs. BDUF

Component A

Component B

Component C

Component D

Component F

Component H

Component I

Page 52: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Evolve the architecture

http://www.flickr.com/photos/hyperclouds/459716791/

Page 53: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

Architect must implement?

Page 54: Getting SPAMMED for architecture Arnon Rotem-Gal-Oz Biometrics Line Development Manager Rafael LTD. Haifa, Israel arnon@rgoarchitects.com

StakeholdersPrinciplesAttributesModelingMappingEvaluationDeployment