Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

157
Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway

Transcript of Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Page 1: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Do I still hate SOA?

JavaZone

Johannes Brodwall, Steria Organized Architect

Steria Norway

Page 2: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 3: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 4: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 5: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Crazy trucker coder is right

Page 6: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 7: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

What do I care about?

Page 8: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 9: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 10: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

People(def: Users and programmers)

Page 11: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

In large projects(def: 10-100 people)

Page 12: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

In complex orgs(def: Where integration is

paramount)

Page 13: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

(Frustration)

Page 14: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

(Joy)

Page 15: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

How we don’t want our projects to beArchitecture impacts people

Teams Produce Business-valueFeature oriented teams Simple technology

Reference architecture

ReuseCosts and benefits

Strategic and tactical

Page 16: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

Consider John Random Developer

Page 17: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

J Random

Page 18: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Jira

J Random

”User gets DataBindingException

when submitting payment (see attached SOAP msg)”

Page 19: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Test server

Payment svc

J Random

Reproduce…

Page 20: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Test server

Payment svc

J Random

Page 21: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

Payment Service

Payment XML

Payment DTO

Domain

Rules DTO

Rules XML

Rules

Which of the layers is the bug in…?

Page 22: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

J Random

You sent a new field: currency

Page 23: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

J Random

You sent a new field: currency

Didn’t you get the memo?

Page 24: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

Sigh!

Payment Service

Payment XML

Payment DTO

Domain

Rules DTO

Rules XML

Rules

Page 25: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

Test serverNew version

Page 26: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

Test server

New version

Page 27: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Test server

New version

J Random

Let’s test it out

Page 28: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Test server

J Random

Okay

Okay

OkayOkay

OkayOkay

Okay

Okay

Not okay

It look good. Waaait….

Page 29: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Test server

J Random

Okay

Okay

OkayOkay

OkayOkay

Okay

Okay

Not okay

Duh! Null pointer exception!

Page 30: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

Test serverNew version

Page 31: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

Test server

New version

How did it get to this?

Page 32: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

J Random

What does the program do?

I’m just a small cog in a big

machine

What’s up with all this data shuffling?

Page 33: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Bad architecture

Page 34: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

UI UI UI UI

Service Service Service Service

Data Data Data Data

Reused service Reused library

Page 35: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Bad architecture

Technol-orgy Reuse fixation

Team per component

Suffering

Page 36: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

Of course the Front End guys can deal with

an empty list

Page 37: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

I better check that field is

present

I better check that field is

presentI better check that field is

present

Page 38: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PMI wonder if anyone will

use this

Page 39: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

Done with A soon?

Page 40: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

Done with A soon?

I’m done, I just have to wait for

the rules engine!

Page 41: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

Done with A soon?

I’m done, I just have to wait for

the rules engine!… and then test it

Page 42: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

Done with A soon?

I’m done, I just have to wait for

the rules engine!… and then test it

… and then fix that tiny bug

Page 43: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

Done with A soon?

I’m done, I just have to wait for

the rules engine!

I better hurry with B, everyone’s

waiting

Page 44: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Bahamas!

Rules Engine Team

Overworked!

Proud dad!

Front End Team

Service Layer Team

PM

Baby

!

Page 45: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Bahamas!

Rules Engine Team

Overworked!

Proud dad!

Front End Team

Service Layer Team

PM

Can you guys help out?

Baby

Page 46: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Bahamas!

Rules Engine Team

Overworked!

Proud dad!

Front End Team

Service Layer Team

PM

Can you guys help out?

Baby

Would love to help, but I don’t

know rules engine

Overworked!

Page 47: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Rules Engine Team

Front End Team

Service Layer Team

PM

This iteration, Product Owner just wants to improve the UI

!

Page 48: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

There is an alternative!

Page 49: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

(There are many)

Page 50: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

(And this is mine)

Page 51: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Organization Architecture

Page 52: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

UI UI UI UI

Service Service Service Service

Data Data Data Data

Reused service Reused library

Page 53: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

UI UI UI UI

Service Service Service Service

Data Data Data Data

Reused service Reused library

Page 54: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

A feature teamIs connected to a user

Has a reference stack

Owns the whole stack

Page 55: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

User:Human or machine

Page 56: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

GUI

Logic

Data

Service

Page 57: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Machines are people, too!

Page 58: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Simplicity

Page 59: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

SimplicityAvoid technolorgy

(My reference architecture)

Page 60: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Fewer deployed artifacts

Page 61: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Executable jar file

App Server (Jetty jar)

Web application (war)

ClientClient Jar (Java

Web Start)

Page 62: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Fewer maven modules

Page 63: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Server WAR

Core classes

Client JAR

Page 64: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Fewer external dependencies

Page 65: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Control instansiation

Page 66: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

No DTO

Page 67: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Embedded app server

Page 68: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 69: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Boring choices

Page 70: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Messaging

MigrationsHibernate

Deployment

Packaging

FitNesse

Database

SOAP over httpEntitieshttp remoting

Monitoring

Unit tests

Commands

Page 71: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Scenarios

Page 72: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

UI overview

Page 73: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Application Frame [http://server:8088/service]

Menu

Work area

Toolbar

PersonWindowPersonWindowWindow 2Window 2Etc.

Page 74: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

UI calls server

Page 75: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

TODO: Code action listener calls server

Page 76: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

UI server

Page 77: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

TODO: Command calls repo

Page 78: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

TODO: Repository interface

Page 79: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

RepositoryHibernateThe real deal

Very slow startup

HashMapIn memory fake

Quick startup

Used for unit tests

Page 80: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

TODO: Repository interface

Page 81: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 82: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

private Specification<Person> getSpecification() { return new FilterSpecification<Person>() { @Override public void populate(EntityFilter filter) { filter.propertyEqualsOrNull( "country", country); filter.propertyMatchesOrNull( "name", namePattern); } };}

Page 83: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 84: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

@RunWith(RepositoryTestRunner.class)public class PersonWindowTest { private Repository repository; private PersonWindow personWindow; public PersonWindowTest(Repository repo) { this.repository = repo; this.personWindow = new PersonWindow(repo); }

Page 85: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

@Testpublic void should_find_people() { Person person = new Person(“John Random"); repository.insert(person); personWindow.getSearchButton().doClick(); assertEquals(personWindow.getTableCell(0,1), person.getName());}

Page 86: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 87: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 88: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Integration

Page 89: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Transactional

File SystemFile

ScannerFile Writer

Message Responder

Repository

Scan

Move to tmp

Next message

CommitDelete file

Find data

Write response

Transactional

Next responseWrite to tmp

Commit

Move to targetTransactional

Page 90: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Hexagonal architecture

Page 91: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Application

UI

FileSystmAdapter

HttpSoapAdapter

Hibernate

Repository

Entities

Command

Page 92: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Dissent

Page 93: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Poll vs pushProgrammer provides proof

Page 94: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

SQLBest requirement fit

Page 95: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Server abstractionDevelopers show the way

Page 96: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

SpecificationDevelopers required better

abstractions

Page 97: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

HibernateGo to Christin’s lightning talk

(T -24hrs)

Page 98: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Key points

Page 99: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Ubiquitious entities

Generic repository

Command oriented

Page 100: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

A feature teamIs connected to a user

Has a reference stack

Owns the whole stack

Page 101: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Reuse

Page 102: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Don’t make

Strategic decisionbased on

Tactical reasons

Page 103: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Value of reuse

Page 104: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Value of reuse =

Cost of new dev – cost of reuse

Page 105: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Value of reuse =

Cost of new dev-cost of reusability

- cost of reusing

- cost of governance

Page 106: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Relative cost of writing for reuse:

125%-300%

Page 107: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Relative cost of writing for reuse:

125%-300%

Publishing

Input validation

Wider usage

Documentation

Testing

Page 108: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Relative cost of reuse:

10%-40%

Page 109: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Relative cost of reuse:

10%-40%

Learning

Not finding

Bugs

Finding

Adapting

Page 110: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Surface to volume ratio

Page 111: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Reuse governance

Page 112: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 1.0 Client B 1.0

Enterprise Payment

Page 113: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 1.0 Client B 1.0

Enterprise Payment

Page 114: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 2.0 Client B 1.0

Enterprise Payment 2.0

Page 115: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 2.0 Client B 1.0

Enterprise Payment 2.0

Page 116: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 1.0 Client B 1.0

Service 1.0

Stable (AKA dead) service

Page 117: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 2.0 Client B 1.0

Service 2.0

Service1.0

Library reuse

Page 118: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 2.0 Client B 1.0

Service 2.0

Adapter

Multi version service

Page 119: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Client A 2.0 Client B 1.0

Magic box!! !

Service 2.0

Service bus

Page 120: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Value of reuse =

Cost of new dev – cost of reuse

Page 121: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

High value

Page 122: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 123: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

https://www.paypal.com/cgi-bin/webscr?business=paypal

%40smidig.no&cmd=_cart&upload=1&currency_code=NOK&notify_url=http%3A%2F

%2Fstagingsmidig.heroku.com%2Fpayment_notifications&return=http%3A%2F

%2Fstagingsmidig.heroku.com%2Fusers%2F485&invoice=2011t-

486&amount_1=10.0&item_name_1=Earlybird-billett+til+Smidig+2011&item_number_1=1&quantity_1=1

Page 124: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

EDIFACT

Page 125: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

EDIFACT(The UN punishes those

who speak ill of XML)

Page 126: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 127: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

High value

Page 128: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Medium value

Page 129: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

java.util.Collection

Page 130: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Hibernate, Spring

Page 131: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.
Page 132: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Medium value

Page 133: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Low value

Page 134: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Apache commons

Page 135: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

java.net.HttpURLConnection

Page 136: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Low value

Page 137: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Negativ value

Page 138: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Dozer

Page 139: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

The library the other team made because

they didn’t like Dozer

Page 140: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

The ”Save Customer” service

Page 141: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Negativ value

Page 142: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Strategic reuse

Page 143: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Strategic reuseHigh value

Often services

New functionality

Page 144: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Tactical reuse

Page 145: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Tactical reuseLow value

Often component

Reduce cost

Opportunistic

Page 146: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Don’t make

Strategic decisionbased on

Tactical reasons

Page 147: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Conclusion

Page 148: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

What does this have to do with SOA?

Page 149: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

What does this have to do with SOA?

(Very little)

Page 150: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Architectural choicesAffect people

Conway’s law

Page 151: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

ReuseTactical vs strategic

Page 152: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Feature oriented team

Page 153: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

As a programmer1. Meet the user

2. Own the whole stack

3. Speak your mind

Page 154: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

As an architect1. Organize teams per feature

2. Simple reference architecture

3. Welcome dissent

Page 155: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Do you agree?

Page 156: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

You haven’t learned a thing!

Page 157: Do I still hate SOA? JavaZone Johannes Brodwall, Steria Organized Architect Steria Norway.

Please [email protected]

http://johannesbrodwall.com

http://sterkblanding.no

http://twitter.com/jhannes