New Posts New Posts RSS Feed: Devforce as SOA
  FAQ FAQ  Forum Search   Calendar   Register Register  Login Login

Devforce as SOA

 Post Reply Post Reply
Author
Vonzkie View Drop Down
Senior Member
Senior Member
Avatar

Joined: 01-Aug-2011
Location: PH
Posts: 133
Post Options Post Options   Quote Vonzkie Quote  Post ReplyReply Direct Link To This Post Topic: Devforce as SOA
    Posted: 27-Sep-2012 at 3:53am
Hi,

Our boss is asking us some questions concerning the architecture of this software:

He's asking us if how do we compare the architecture used by that software w/c is SOA and ours w/c is Devforce.

Can we still consider Devforce as a Service Oriented Architecture even though we actually didn't need some services in order to communicate to one end to another?

If not, what are the advantage and disadvantage of using Devforce over a native SOA or vice versa or what's their similarities?

Thanks,
Von
Back to Top
mgood View Drop Down
IdeaBlade
IdeaBlade
Avatar

Joined: 18-Nov-2010
Location: Emeryville, CA
Posts: 583
Post Options Post Options   Quote mgood Quote  Post ReplyReply Direct Link To This Post Posted: 27-Sep-2012 at 4:52am
DevForce could be part of a larger SOA and not replace a SOA. DevForce would take the role of data services or simply be the persistence layer in a SOA architecture.
 
Having said that, the sweet spot of DevForce are rich clients. The power of the EntityManager comes to fruits when directly used on the client. Traditionally SOA architectures have thin chatty clients, because everything is a service that lives remote. Performance is often a problem.
 
Rich clients on the other hand leverage the device, cache data on the client and execute logic on the client against the cached data and only incur roundtrips if additional data is needed or changes need to be persisted . This generally leads to better performing apps especially with mobile devices such as smartphones and tablets where the connection to the services can be brittle, or Internet connected devices in general where as the service provider you don't have control over the bandwith and the quality of the connection.
 
Back to Top
Vonzkie View Drop Down
Senior Member
Senior Member
Avatar

Joined: 01-Aug-2011
Location: PH
Posts: 133
Post Options Post Options   Quote Vonzkie Quote  Post ReplyReply Direct Link To This Post Posted: 27-Sep-2012 at 3:53pm
Hi,

When you say smartphones and tablets are we talking about breeze here? or perhaps a website that is rendered on the smartphones?
Another questions would be, since we're coding like a 2-tier app in Devforce by creating some business rules classes that validates or perform some rules, is there a way in Devforce that we can expose those business rules classes in the outside worlds (may or may not be .NET clients) aside from creating a bunch of WCF service that wraps those classes? 

Thanks,
Von
Back to Top
mgood View Drop Down
IdeaBlade
IdeaBlade
Avatar

Joined: 18-Nov-2010
Location: Emeryville, CA
Posts: 583
Post Options Post Options   Quote mgood Quote  Post ReplyReply Direct Link To This Post Posted: 27-Sep-2012 at 10:59pm
I'm talking about Breeze and DevForce. DevForce 2012 supports Windows 8 tablets for example, but yes for non-.NET clients we are talking Breeze. Both follow the same model. Mobile websites suffer from the same issues that they have to go back to the server for every page.

As far as exposing business logic to the outside world goes, if the client technology is different from the server technology you have no other option than implementing the logic twice. For example in case of Breeze with a .NET back-end. 

Where the client technology is the same as with DevForce you can architect things such that you can share the business logic. The way to accomplish this is by separating the loading/saving from the actual logic that operates on the data in cache.

Unfortunately, the answer to this question comes down to who you decide should suffer. The developers having to implement and test the logic multiple times or the end-user with slow application performance. I personally side with the end-user. The end-user should have the best user experience possible and the developers should pay the price to implement it. That's how Apple became successful with all their iDevices.
Back to Top
 Post Reply Post Reply

Forum Jump Forum Permissions View Drop Down