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

Upload: aaliyah-crock

Post on 01-Apr-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

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