tamhas
ProgressTalk.com Sponsor
I am branching this off of another thread on validating input because it doesn't really have anything to do with that thread.
joey.jeremiah said:
I still have lots of catching up to do on architectures and I'd like to ask a couple more questions on OERA if I can -
1. Assuming it is desirable to conserve AppServer calls as much as possible, ideally satisfy a request with a single call. Should services be built so they can satisfy every request in a single call or as close as possible to that idea?
2. Continuing the first question, are Business Entities the foundation services, sort of speak, that on top of them larger composite services can be built, like, Business Tasks and Business Work flows?
For the first question, you need to think about both the AppServer and the message bus in terms of services ( see http://www.oehive.org/ESBAsAnApplicationArchitecture for my whitepaper on the use of a message bus ). Design of an SOA depends critically on the right breakdown of what is within a service and what is communicated between services. Within a service the connections between components can be fine-grained, but between services they are necessarily coarse-grained. There are a number of strategies for making this more efficient, e.g., caching frequently used data locally in a facade object. Unfortunately, we don't have quite the facility for service design that I think we should have because of the lack of a multi-threaded client ( see http://www.oehive.org/MultiThread ).
For the second question, a business entity is not a service, it is a component. An order service might request a customer object from the accounts receivable service, for example.
For a very interesting view of how to look at OERA, I recommend downloading the new AutoEdge reference application from PSDN. It and the associated whitepapers should give you a start, even if I don't agree with a lot of the specific details ... especially since I want to do it using objects!
joey.jeremiah said:
I still have lots of catching up to do on architectures and I'd like to ask a couple more questions on OERA if I can -
1. Assuming it is desirable to conserve AppServer calls as much as possible, ideally satisfy a request with a single call. Should services be built so they can satisfy every request in a single call or as close as possible to that idea?
2. Continuing the first question, are Business Entities the foundation services, sort of speak, that on top of them larger composite services can be built, like, Business Tasks and Business Work flows?
For the first question, you need to think about both the AppServer and the message bus in terms of services ( see http://www.oehive.org/ESBAsAnApplicationArchitecture for my whitepaper on the use of a message bus ). Design of an SOA depends critically on the right breakdown of what is within a service and what is communicated between services. Within a service the connections between components can be fine-grained, but between services they are necessarily coarse-grained. There are a number of strategies for making this more efficient, e.g., caching frequently used data locally in a facade object. Unfortunately, we don't have quite the facility for service design that I think we should have because of the lack of a multi-threaded client ( see http://www.oehive.org/MultiThread ).
For the second question, a business entity is not a service, it is a component. An order service might request a customer object from the accounts receivable service, for example.
For a very interesting view of how to look at OERA, I recommend downloading the new AutoEdge reference application from PSDN. It and the associated whitepapers should give you a start, even if I don't agree with a lot of the specific details ... especially since I want to do it using objects!