473,386 Members | 1,720 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

Services and Interface

Hi All,
Q - Does it make sense to use web service as a facade to my
Application Server for integration with outside world while retaining
an alternate route for the clients written by me?

Context - We have a solution comprising of
1. Backend Database
2. Application Server (AS) that talks to the DB and offers services to
the client
3. Clients talking to the AS. There can be different kinds of client
viz. a rich win32 power client installed in LAN, a web client written
using asp.net and finally external components written to integrate
with our system.

Our (win32/web)clients communicate with the AS using XML document,
however this is a native construct understood by the AS and the
client. The code in the AS decomposes the xml to data structures and
the Business objects work with this datastructure.
Now in order to provide integration point to outside world I was
thinking of writing a web service. In the web method I would take well
defined parameters and construct the same data structure and delegate
the call to the business objects in the AS.

I am not sure if this is the right approach as it means maintaining
two interfaces. However, the reason I am keen on keeping the xml
document route is the flexibility that I get. I know that the document
is coming from one of our clients so its going to be well formed, the
tags can be as terse as possible. I can make certain assumptions from
security/validation perspective. I can batch calls and have my AS
iterate over each operation and provide response. I would keep my web
methods simple/granular while the document route could be more complex
and chunky.

Would appreciate any thoughts for/against what I am doing.
Thanks for your patience.
Pranav
Nov 21 '05 #1
3 1450
Well, as I understand, your web service clients would be sending a different
data that your local clients...., I think the best way is to have only one
business facade to your service, this would be the interface to your local
clients, then your web service facade would be only one thin facade with no
code to your business facade, with the same interface, so all your clients
will be sending to you the same kind of information and you have to program
only one time.
Regards,
Daniel Carbajal
MVP
"Pranav" <pr*****@hotmail.com> wrote in message
news:e2**************************@posting.google.c om...
Hi All,
Q - Does it make sense to use web service as a facade to my
Application Server for integration with outside world while retaining
an alternate route for the clients written by me?

Context - We have a solution comprising of
1. Backend Database
2. Application Server (AS) that talks to the DB and offers services to
the client
3. Clients talking to the AS. There can be different kinds of client
viz. a rich win32 power client installed in LAN, a web client written
using asp.net and finally external components written to integrate
with our system.

Our (win32/web)clients communicate with the AS using XML document,
however this is a native construct understood by the AS and the
client. The code in the AS decomposes the xml to data structures and
the Business objects work with this datastructure.
Now in order to provide integration point to outside world I was
thinking of writing a web service. In the web method I would take well
defined parameters and construct the same data structure and delegate
the call to the business objects in the AS.

I am not sure if this is the right approach as it means maintaining
two interfaces. However, the reason I am keen on keeping the xml
document route is the flexibility that I get. I know that the document
is coming from one of our clients so its going to be well formed, the
tags can be as terse as possible. I can make certain assumptions from
security/validation perspective. I can batch calls and have my AS
iterate over each operation and provide response. I would keep my web
methods simple/granular while the document route could be more complex
and chunky.

Would appreciate any thoughts for/against what I am doing.
Thanks for your patience.
Pranav

Nov 21 '05 #2
Hello Pranav,

I'm not sure to have the right answer for you but I'm going to try to
give you a good answer.

When you speak about Service Oriented Architecture (even if it's not
the case here) you normally admit that the Service interface will be
separated from the Service implementation. In fact, one of the reasons
to do this separation is that it gives the possibility to call the
implementation with several different interfaces.

As in your example, you will have an "outside interface" and an
"inside interface". So you could have Web Services for the outside
interface. With all WS advantages and disadvantages. And .NET remoting
for example for your inside interface.

Some usefull information about the guidelines to build services are on
the following page :
http://msdn.microsoft.com/architecture/soa/default.aspx

And if you're searching a framework to do so, keep an eye on the
Enterprise Development Reference Architecture at :
http://www.gotdotnet.com/Workspaces/...5-576198df8058

My 2 cents,

Matthieu
Nov 21 '05 #3
Thanks much for your inputs Daniel and Matthieu.
From what I understand so far its ok to have a thin web service facade
with no business code.
I had a related question wrt interfaces, If my method has to return a
non trivial data (say a tree), is it ok to return it as xml document.
What kind of support is present for defining complex data type that
has to be consumed by scripting language in a browser, the xml route
works easily but I was wondering if its the right way.

Thanks,
Pranav
Nov 21 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: IcedCrow | last post by:
#1) Burning question on my mind is ... what is the difference between a "web service" and a distributed COM component other then a distributed COM component had to be registered on a host server...
1
by: John Cortright | last post by:
Hello! I've got an application that uses web services to traverse between various tiers, and we're passing complex data types back and forth as both parameters and return types. Originally, I...
4
by: hellrazor | last post by:
Hi there, I'm trying to consume a web-service that is supposed to return a collection of a custom object. The web-service was not created with C# or VS.net. It was created with IBM VisualAge...
8
by: Rashmi | last post by:
Hi! I am new to web services. AFAIK, the advantages of using web services are : interoperable, easy integration and reuse, text based protocols and data formats - SOAP,WSDL,XML. Also, I read...
4
by: chakree.vsk | last post by:
Hi All, I want to invoke a Serviced Component (COM+) lying on a remote machine from my Web application without manually installing a proxy for the remote com+ component. Please suggest the...
3
by: DevilDog74 | last post by:
There is some debate on what an ideal web service interface would look like at my organization. The debate revolves around how to write our web service interface so that new methods do not break...
4
by: Joshua Moore | last post by:
Help. :) I have 4 large web services, in which in part of each contains the filling of the same class. I want to print all the information from this class, but it can't implicitly convert the...
1
by: oldVB3r | last post by:
I would like to create a set of web services that share a common set of types (classes, structures, enums). I know I can create a VS 2005 web service based on the Interface statement to contain...
4
by: =?Utf-8?B?U2NvdHQ=?= | last post by:
I have seen many articles describing why versioning web services are important. I have a scenario that I would like to propose to seek a solution. I have a publicly consumable web service. Two...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.