T
Toble Rone
Some tome ago, me and my team could carry out our first real distributed
project. It's a GIS application using a Remoting Host (currently a Windows
Service), with TCP formatter over HTTPS. There is a bunch of classes
published in that way, actually exposing methods from an ORM layer. The
client app (a Winform/C# app) is used by almost 100 users over the internet
(our customers), and the performance is great.
Now. I'm actually engaged in a quite big new project. The architecture is
quite simple now, with planned client apps (Winforms too) used inside a big
corporate LAN, with external access also, with ASP.NET "extranet" websites.
The point here is that in this new scenario we will have a lot of external
communication with other clients, interfaces with government financial
systems, and so on. and the "Service Oriented" idea came in. I have a lot of
technical knowledge about web service and SOA (mainly from reading not from
real experience). but I have some doubts about WHERE and WHEN to really
apply web services.
I'll probably have real "services" in this scenario (with all the know
tenets, isolation, explicit boundaries, etc). No problem with that.
The problem is with normal behaviors of a distributed application. Imagine a
complex Winform client app with a lot of CRUD operations on business
entities. there will be (logically) some BLL functionality to do that crud
operations. I.E. the normal form to update or insert new customers or
products in the system.
But, in a "correct architectural point of view", if I decide to implement
web services (to interface with other systems and services), I really need
to expose ALL those BLL functionalities with web services?, or its nice to
mix the technologies? (may be using COM+, Remoting, etc).
In real world scenarios using web services. they do ALL with web services?,
or just the points when interoperability between other systems are needed?.
Every answer here will be really appreciated.
Tnx in advance.
Jack.
project. It's a GIS application using a Remoting Host (currently a Windows
Service), with TCP formatter over HTTPS. There is a bunch of classes
published in that way, actually exposing methods from an ORM layer. The
client app (a Winform/C# app) is used by almost 100 users over the internet
(our customers), and the performance is great.
Now. I'm actually engaged in a quite big new project. The architecture is
quite simple now, with planned client apps (Winforms too) used inside a big
corporate LAN, with external access also, with ASP.NET "extranet" websites.
The point here is that in this new scenario we will have a lot of external
communication with other clients, interfaces with government financial
systems, and so on. and the "Service Oriented" idea came in. I have a lot of
technical knowledge about web service and SOA (mainly from reading not from
real experience). but I have some doubts about WHERE and WHEN to really
apply web services.
I'll probably have real "services" in this scenario (with all the know
tenets, isolation, explicit boundaries, etc). No problem with that.
The problem is with normal behaviors of a distributed application. Imagine a
complex Winform client app with a lot of CRUD operations on business
entities. there will be (logically) some BLL functionality to do that crud
operations. I.E. the normal form to update or insert new customers or
products in the system.
But, in a "correct architectural point of view", if I decide to implement
web services (to interface with other systems and services), I really need
to expose ALL those BLL functionalities with web services?, or its nice to
mix the technologies? (may be using COM+, Remoting, etc).
In real world scenarios using web services. they do ALL with web services?,
or just the points when interoperability between other systems are needed?.
Every answer here will be really appreciated.
Tnx in advance.
Jack.