A company has contracted a developer to create their new accounting system. The system the developer will replace runs a monolithic web application using one web server and one database server. Technical requirements state the developer must write the business logic in Java, deploy to the application server and push the presentation logic onto the web servers. What are three characteristics that services in the proposed Service Oriented Architecture should honor? (Choose three.)
A.
Services are coarse grained.
B.
Services are finely grained.
C.
Services are loosely coupled.
D.
Services are tightly coupled.
E.
Clients must be implemented in the Java technology.
F.
Services are platform agnostic, network-addressable web APIs.
SOA services are coarse grained or fine grained?
http://www.techrepublic.com/article/coarse-grained-interfaces-enable-service-composition-in-soa/
One of the primary benefits of service-oriented architecture (SOA) is the ability to compose applications, processes, or more complex services from other less complex services. This activity, sometimes called service composition, allows developers to compose applications and processes using services from heterogeneous environments without regard to the details and differences of those environments. This SOA feature depends greatly on the services being constructed and exposed with coarse-grained interfaces.
“a SOA service must be coarse grained”. “How large grained?”, many would ask. “Very coarse grained”, I would answer. Then I would say; “definitely not fine grained”.
All SOA implementations must be at least loosely coupled at the implementation level
http://searchsoa.techtarget.com/tip/The-seven-levels-of-loose-coupling
Much has been written about SOA, but little of it has included in-depth guidance on deploying those services. The platform-agnostic nature of SOA-development technologies has led many pundits who watch the SOA space to follow the path of least resistance and take up a matching platform-agnostic view of SOA deployment. Deployment does indeed matter, and it matters a lot. So much so that it requires as much – if not more – attention than development.
http://ibmsystemsmag.com/mainframe/trends/soa/The-Service-Oriented-IT/
Coarse-grained: A few ojects hold a lot of related data that’s why services have broader scope in functionality. Example: A single “Account” object holds the customer name, address, account balance, opening date, last change date, etc. Thus: Increased design complexity, smaller number of cells to various operations
Fine-grained: More objects each holding less data that’s why services have more narrow scope in functionality. Example: An Account object holds balance, a Customer object holds name and address, a AccountOpenings object holds opening date, etc. Thus: Decreased design complexity , higher number of cells to various service operations. These are relationships defined between these objects.
SOA is a loosely coupled arrangement of services and service consumers. At design time, loose coupling means that services are designed with no affinity to any particular service consumer. … Thus, a service is fully decoupled from a service consumer.
platform agnostic. You’re in technology heaven when your software is “platform agnostic.” It means it’ll run on any computer operating system such as Linux, Unix, Windows, Mac, etc.
Device agnosticism is the capacity of a computing component to work with various systems without requiring any special adaptations. The term can apply to either hardware or software. In an IT context, agnosticism refers to anything that is designed to be compatible across most common systems.