Saturday, September 09, 2006

PUA

SOA is old news, what you need to be talking about is PUA - Pragmatic Unified Architecture.

So what is PUA ?

PUA is all about selecting the most pragmatic architecture style to solve the problem in hand, challenging the silver bullet ideas that one super architecture can solve all the problems that it faces...this doesn't work in real life (not even in Life 2.0).

PUA considers:-

- How long will the solution be used ?
- Does it have any chance to be re-used ?
- How much will designing re-use cost ?
- What non-functional requirements exist (performance, scale, security) ?
- What other components does it need to interact with ?
- Will the process supported change during the life of the solution ?

The answers to these questions will drive you to different styles of architecture, including Monolythic, Components, Event Driven and SOA and I believe you shouldn't just assume SOA is the answer...without asking some of these questions.

Now the other approach is to start using terms like SOA 2.0 or Advanced SOA or second/third/fourth generation SOA to include the above concepts under the umbrella of SOA....but personally I think this is b*******ks, call a spade a spade.

One other reason why you will need a PUA and not just an SOA is all the stuff you already have is already built and most of it didn't know about SOA when it was built...

At the end of the day any good architecture has just one acid test....can you point to a part of the architecture and explain to the business how it helps them achieve their goals (or why you are busy replacing it becasue it doesn't).

1 comment:

Vilas said...

Well said. Fitness for purpose is very very important. There is always next best thing, available in market place. Question is whether you need it or you want it?