When TO SOA
In the last few years developer start to use
SOA
in many applications, because of that many new developers
are too much excited to use SOA and apply the architecture
of it to their applications. I found out that many
applications start to be more complicated (while the
application is too much simple without SOA). So, when to use
SOA.
First we must know what is the meaning of SOA (not
as Service-oriented architecture); it’s a kind of
architecture to be used over software and web applications
to increase the applications flexibility according to
business requirements. SOA gives the ability to software and
applications to exchange data and functionality by using xml
services over the network.
So let us see when to use SOA;
- If you have a business requirement that force you to develop an application that will be used on multiple platforms. (mobiles, desktops, laptops…)
- If you have to divide the application into parts (and the parts still communicate with each other) like ERP developments. ( you may divide an ERP application into parts like Financial, HR, Logistic and these part can still communicate with each other.
- If you need to open one of your services to another developer or company.
- If you want to exchange data over the network in a secured way.
………
There is many other ways and needs to
use SOA depending on your customer application needs.
We must keep on mind that SOA include N-tier
programing, but N-tier does not include or use SOA all the
time. I do believe that each software or application must be
build over tiers to achieve the OOP most important principle
“Encapsulate what varies”.
So use tiers in all
applications but use SOA according to your business
demends.