SOA & Web 2.0 MVC — Part 1
I’ve been picking at the Web 2.0 buffet for a while so now that I’m getting into Service Oriented Architectures (SOA) I’m really starting to see the connections. Web 2.0 really lends itself nicely to services in the online application world. I’ve started to put together a presentation for exactly how and why this works, but for now I thought I’d share some of my preliminary ideas with the world. As always, your feedback is welcome.
For those of you not familiar with SOA, SOA separates functions into distinct units of functionality, or services. The goal of SOA is to allow services to be strung together to form applications. That sounds a lot like a mash-up to me. No one said mash-ups have to use other people software. In the “real world” where production websites are pounded out by code monkeys mash-ups, or services, make a lot of sense. Think of the benefits:
- The marginal cost of the n-th application approaches zero
- Shortened product development life-cycle
- Increasingly less development time
- Increasingly less QA time
- Increasingly better applications
- Cloud computing and the ability to offload high-impact services
- Architecture for reuse
- Lower level engineers can accomplish higher level tasks
- Higher level engineers can concentrate on business level problems
- Business Logic
- Java, Perl, .Net, backend stuff….
Here’s a graphical representation of the SOA & Web 2.0 MVC: