Professional Documents
Culture Documents
Jump to: navigation, search The external links in this article or section may require cleanup to comply with Wikipedia's content policies.
Please improve this article by removing excessive or inappropriate external links. Please remove this tag when this is done. talk!
"he introduction to this article provides insufficient context for those unfamiliar with the sub#ect matter.
Please help improve the introduction to meet Wikipedia$s layout standards. %ou can discuss the issue on the talk page.
Service Oriented Architecture &'(! is an evolution of distributed computing and modular programming. &'( provides a modularity of logic that can be presented as a service for a client client as in client)server architecture! and at the same time function as a client for other services. *elative to earlier attempts to promote software reuse via modularity of functions or classes, &'($s atomic level ob#ects are +,, to +,,,, times larger, and are associated by an application designer or engineer using orchestration. -n the process of orchestration, relatively large chunks of software functionality services! are associated in a non)hierarchical arrangement in contrast to a class$s hierarchies! by a software engineer or process engineer using a special software tool which contains an exhaustive list of all of the services and their characteristics currently available. .nderlying and enabling all of this is metadata which is sufficient to describe not only the characteristics of these services, but the data that drives them. /01 has been used extensively in &'( to create data which is wrapped in a nearly exhaustive description container. (nalogously, the services themselves are typically described by W&21, and communications protocols by &'(P. Whether these description languages are the best possible for the #ob, and whether they will remain the favorites going forward, is at present an open 3uestion. What is certain is that &'( is utterly dependent on data and services that are described using some implementation of metadata which meets two criteria. "he metadata must be in a form which software systems can consume to dynamically configure to maintain coherence and integrity, and in a form which system designers can understand and use to manage that metadata. "he goal of &'( then is to allow fairly large chunks of functionality to be strung together to form ad)hoc applications which are built almost entirely from existing software services. "he larger the chunks the fewer the interface points re3uired to implement any given set of functionality. "his is at odds with very large chunks of functionality which are not granular enough to be easily reused. &ince each interface brings with it some amount of processing overhead, there is a performance consideration in choosing the granularity of services. "he great promise of &'( though, is that in this world, the marginal cost of creating the nth application is 4ero, as all of the software re3uired
already exists to satisfy the re3uirements of other applications. 'nly orchestration is re3uired to produce a new application. &'( services are loosely coupled, in contrast, for example, to the functions a linker binds together to form an executable, a 211, or an assembly. &'( services also run in 5safe5 wrappers such as the .67" environment, which manages memory allocation and reclamation, allows ad)hoc and late binding, and some degree of indeterminate data typing. -t is important to note that increasingly there are third party software companies which offer software services for a fee. 8oing forward, many &'( systems may be composed of services, only some of which were created in)house. "his has the potential to spread costs over many customers, and customer uses, and promotes standardi4ation both in and across industries. "he travel industry in particular now has a well)defined and documented set of services, and the data they consume sufficient to allow any reasonably competent software engineer to create travel agency software using entirely off the shelf software services. 'ther industries, such as the finance industry, are also making significant progress in this direction. "here is no widely agreed upon definition of &'( other than its literal translation. -t is an architecture that relies on service)orientation as its fundamental design principle.9+: -n an &'( environment independent services can be accessed without knowledge of their underlying platform implementation.9;: "hese concepts can be applied to business, software and other types of producer<consumer systems.
ontents
9hide:
+ &ervice)oriented architecture ; *e3uirements for a &'( = Web services approach to a service)oriented architecture > 'ther &'( ?oncepts @ &'( definitions A Why &'(B C &'( principles D &ervice)oriented design and development o D.+ &ervice contract E &'( and web service protocols +, &'(, Web ;.,, and mashups ++ &'( ;., or (dvanced &'( +; What are the challenges faced in &'( adoptionB += ?riticisms of &'( +> &'( and Fusiness (rchitecture +@ &'( and network management architecture +A Jargon
+C 1iterature o +C.+ Fooks, non)technical o +C.; Fooks, technical o +C.= (rticles<Papers, non)technical o +C.> (rticles<Papers, technical o +C.@ &tandards +D *eferences +E &ee also ;, 7xternal links
-nteroperability between different systems and programming languages "he most important basis for a simple integration between applications on different platforms is a communication protocol, which is available for most systems and programming languages. ?lear and unambiguous description language "o use a service offered by a provider, it is not only necessary to be able to access the provider system, but the syntax of the service interface must also be clearly defined in a platform)independent fashion.
*etrieval of the service "o allow a convenient integration at design time or even system run time, a search mechanism is re3uired to retrieve suitable services. "he services should be classified as computer)accessible, hierarchical or taxonomies based on what the services in each category do and how they can be invoked.
&ervice provider "he service provider creates a Web service and possibly publishes its interface and access information to the service registry. 7ach provider must decide which services to expose, how to make trade)offs between security and easy availability, how to price the services, or, if they are free, how to exploit them for other value. "he provider also has to decide what category the service should be listed in for a given broker service and what sort of trading partner agreements are re3uired to use the service. &ervice broker "he service broker, also known as service registry, is responsible for making the Web service interface and implementation access information available to any potential service re3uestor. "he implementer of the broker decides about the scope of the broker. Public brokers are available through the -nternet, while private brokers are only accessible to a limited audience, for example, users of a company intranet. Furthermore, the amount of the offered information has to be decided. &ome brokers speciali4e in many listings. 'thers offer high levels of trust in the listed services. &ome cover a broad landscape of services and others focus within an industry. "here are also brokers that catalog other brokers. 2epending on the business model, brokers can attempt to maximi4e look)up re3uests, number of listings or accuracy of the listings. "he .niversal 2escription 2iscovery and -ntegration .22-! specification defines a way to publish and discover information about Web services. &ervice re3uestor "he service re3uestor or Web service client locates entries in the broker registry using various find operations and then binds to the service provider in order to invoke one of its Web services.
(rchitecture is not tied to a specific technology. -t may be implemented using a wide range of technologies, including &'(P, *P?, 2?'0, ?'*F(, Web &ervices or W?F. &'( can be implemented using one or more of these protocols and, for example, might use a file system mechanism to communicate data conforming to a defined interface specification between processes conforming to the &'( concept. "he key is independent services with defined interfaces that can be called to perform their tasks in a standard way, without the service having foreknowledge of the calling application, and without the application having or needing knowledge of how the service actually performs its tasks.
7lements of &'(, by 2irk Graf4ig, Garl Fanke, and 2irk &lama. 7nterprise &'(. Prentice Hall, ;,,@
&'( 0eta 0odel, "he 1inthicum 8roup, ;,,C &'( can also be regarded as a style of information systems architecture that enables the creation of applications that are built by combining loosely coupled and interoperable services9citation needed:. "hese services inter)operate based on a formal definition or contract, e.g., W&21! that is independent of the underlying platform and programming language. "he interface definition hides the implementation of the language)specific service. &'() based systems can therefore be independent of development technologies and platforms such as Java, .67" etc!. &ervices written in ?I running on .67" platforms and services written in Java running on Java 77 platforms, for example, can both be consumed by a common composite application or client!. (pplications running on either platform can also consume services running on the other as Web services, which facilitates reuse. 0any ?'F'1 legacy systems can also be wrapped by a managed environment and presented as a software service. "his has allowed the useful life of many core legacy systems to be extended indefinitely no matter what language they were originally written in. &'( can support integration and consolidation activities within complex enterprise systems, but &'( does not specify or provide a methodology or framework for documenting capabilities or services.
High)level languages such as FP71 and specifications such as W&)?21 and W&) ?oordination extend the service concept by providing a method of defining and supporting orchestration of fine grained services into more coarse)grained business services, which in turn can be incorporated into workflows and business processes implemented in composite applications or portals9citation needed:. "he use of &ervice component architecture &?(! to implement &'( is a current area of research.
'pen 8roup &'( 2efinition &'()2efinition!9=: '(&-& &'( *eference 0odel &'()*0!9>: What -s &ervice)'riented (rchitectureB /01.com! What is &ervice)'riented (rchitectureB Javaworld.com! Webopedia definition "ech7ncyclopedia definition 'b#ect 0anagement 8roup '08 ! &'( &pecial -nterest 8roup definition What-s.com definition &earchWeb&ervices.com 6umerous &'( definitions by industry experts
"hough many definitions of &'( limit themselves to technology or #ust web services, this is predominantly pushed by technology vendorsJ in ;,,= they talked #ust of web services, while in ;,,A the talk is of events and process engines.9citation needed:
architecture promotes reuse at the macro service! level rather than micro ob#ects! level. -t can also simplify interconnection to ) and usage of ) existing -" legacy! assets. &'( Practitioners 8uide: Why &ervices)'riented (rchitectureB provides a high)level summary on &'(. -n some respects, &'( can be considered an architectural evolution rather than a revolution and captures many of the best practices of previous software architectures. -n communications systems, for example, there has been little development of solutions that use truly static bindings to talk to other e3uipment in the network. Fy formally embracing a &'( approach, such systems are better positioned to stress the importance of well) defined, highly inter)operable interfaces.9citation needed: &ome have 3uestioned whether &'( is #ust a revival of modular programming +EC,s!, event)oriented design +ED,s! or interface<component)based design +EE,s!9citation needed:. &'( promotes the goal of separating users consumers! from the service implementations. &ervices can therefore be run on various distributed platforms and be accessed across networks. "his can also maximi4e reuse of services9citation needed:.
*euse, granularity, modularity, composability, componenti4ation, and interoperability ?ompliance to standards both common and industry)specific! &ervices identification and categori4ation, provisioning and delivery, and monitoring and tracking
"he following specific architectural principles for design and service definition focus on specific themes that influence the intrinsic behaviour of a system and the style of its design:
Service 'ncapsulation ) ( lot of existing web)services are consolidated to be used under the &'( (rchitecture. 0any a times, such services have not been planned to be under &'(. Service (oose couplin& ) &ervices maintain a relationship that minimi4es dependencies and only re3uires that they maintain an awareness of each other Service contract ) &ervices adhere to a communications agreement, as defined collectively by one or more service description documents Service a$straction ) Feyond what is described in the service contract, services hide logic from the outside world Service reusa$ility ) 1ogic is divided into services with the intention of promoting reuse
Service composa$ility ) ?ollections of services can be coordinated and assembled to form composite services Service autonomy K &ervices have control over the logic they encapsulate Service optimi)ation K (ll else e3ual, high)3uality services are generally considered preferable to low)3uality ones Service discovera$ility K &ervices are designed to be outwardly descriptive so that they can be found and assessed via available discovery mechanisms9C:
-n addition, the following factors should also be taken into account when defining a &'( implementation:
&'( *eference (rchitecture &'( Practitioners 8uide Part ;: &'( *eference (rchitecture covers the &'( *eference (rchitecture, which provides a worked design of an enterprise)wide &'( implementation with detailed architecture diagrams, component descriptions, detailed re3uirements, design patterns, opinions about standards, patterns on regulation compliance, standards templates etc. 1ife cycle management &'( Practitioners 8uide Part =: -ntroduction to &ervices 1ifecycle introduces the &ervices 1ifecycle and provides a detailed process for services management though the service lifecycle, from inception through to retirement or repurposing of the services. -t also contains an appendix that includes organi4ation and governance best practices, templates, comments on key &'( standards, and recommended links for more information. 7fficient use of system resources &ervice maturity and performance 7(- 7nterprise (pplication -ntegration
"he modelling and design methodology for &'( applications has become known by the terms service)oriented analysis and design and &'(2 9D:. &'(2 is a design methodology for developing highly)agile systems in a consumer<producer model that abstracts implementation from process, such that a service)provider can be modified or changed without affecting the consumer.
Header
6ame ) 6ame of the service. &hould indicate in general terms what it does, but not be the only definition o Mersion ) "he version of this service contract o 'wner ) "he person<team in charge of the service o *(? *esponsible ) "he role the person<team is responsible for the deliverables of this contract<service. (ll versions of the contract (ccountable ) .ltimate 2ecision 0aker in terms of this contract<service ?onsulted ) Who must be consulted before action is taken on this contract<service. "his is ;)way communication. "hese people have an impact on the decision and<or the execution of that decision. -nformed ) Who must be informed that a decision or action is being taken. "his is a +)way communication. "hese people are impacted by the decision or execution of that decision, but have no control over the action. o "ype ) "his is the type of the service to help distinguish the layer in which it resides. 2ifferent implementations will have different service types. 7xamples of service types include: Presentation Process Fusiness 2ata -ntegration Functional o Functional *e3uirement From *e3uirements 2ocument! ) -ndicates the functionality in specific bulleted items what exactly this service accomplishes. "he language should be such that it allows test cases to prove the functionality is accomplished. o &ervice 'perations ) 0ethods, actions etc. 0ust be defined in terms of what part of the Functionality it provides. o -nvocation ) -ndicates the invocation means of the service. "his includes the .*1, interface, etc. "here may be multiple -nvocation paths for the same service. We may have the same functionality for an internal and external clients each with a different invocation means and interface. 7xamples: &'(P *7&" 7vents "riggers 6on)Functional o &ecurity ?onstraints ) 2efines who can execute this service in terms of roles or individual partners, etc. and which invocation mechanism they can invoke. o Nuality of &ervice ) 2etermines the allowable failure rate o "ransactional ) -s this capable of acting as part of a larger transaction and if so, how do we control thatB
o
o o o
&ervice 1evel (greement ) 2etermines the amount of latency the service is allowed to have to perform its actions &emantics ) 2ictates or defines the meaning of terms used in the description and interfaces of the service Process ) 2escribes the process, if any, of the contracted service
&'( may be built on Web services standards e.g., using &'(P! that have gained broad industry acceptance. "hese standards also referred to as web service specifications! also provide greater interoperability and some protection from lock)in to proprietary vendor software. 'ne can, however, implement &'( using any service)based technology, such as Jini. Service-oriented architecture is often defined as services exposed using the Web &ervices Protocol &tack9citation needed: . "he base level of web services standards relevant to &'( includes the following:
/01 ) a markup language for describing data in message payloads in a document format H""P or H""P&! ) re3uest<response protocol between clients and servers used to transfer or convey information &'(P ) a protocol for exchanging /01)based messages over a computer network, normally using H""P /(?01 ) a markup language for expressing access control rules and policies. Web &ervices 2escription 1anguage W&21! ) /01)based service description that describes the public interface, protocol bindings and message formats re3uired to interact with a web service .niversal 2escription, 2iscovery, and -ntegration .22-! ) (n /01)based registry to publish service descriptions W&21! and allow their discovery
6ote, however, that a system does not necessarily need to use any or all of these standards to be 5service)oriented.5 For example, some service oriented systems have been implemented using ?orba, Jini and *7&".
applications use Web services and may include (#ax, Flash, &ilverlight or JavaF/ user interfaces, Web syndication, blogs, and wikis. While there are no set standards for Web ;.,, it is characterised by building on the existing web server architecture and using services. Web ;., can therefore be regarded as displaying some &'( characteristics9E:. 0ashups are also regarded by some as Web ;., applications. "he term 5enterprise mashup5 has been coined to describe Web applications that combine content from more than one source into an integrated experience, which share many of the characteristics of service)oriented business applications &'F(s!, which are applications composed of services in a declarative manner. "here is ongoing debate about 5the collision of Web ;.,, mashups, and &'(5, with some stating that Web ;., applications are a realisation of &'( composite and business applications. 9+,:
'ne obvious and common challenge faced is managing services metadata9citation needed:. &'()based environments can include many services which exchange messages to perform tasks. 2epending on the design, a single application may generate millions of messages. 0anaging and providing information on how services interact is a complicated task. (nother challenge is providing appropriate levels of security. &ecurity model built into an application may no longer be appropriate when the capabilities of the application are
exposed as services that can be used by other applications. "hat is, application)managed security is not the right model for securing services. ( number of new technologies and standards are emerging to provide more appropriate models for security in &'(. &ee &'( &ecurity entry for more info. (s &'( and the W&)O specifications are constantly being expanded, updated and refined, there is a shortage of skilled people to work on &'( based systems, including the integration of services and construction of services infrastructure. /nteropera$ility is another important aspect in the &'( implementations. "he W&)organi4ation has developed Fasic Profile FP! and Fasic &ecurity Profile F&P! to enforce compatibility. "esting tools have been designed by W&)- to help assess whether web services are conformant with W&)- profile guidelines. (dditionally, another ?harter has been established to work on the *eliable &ecure Profile. "here is significant vendor hype concerning &'( that can create expectations that may not be fulfilled. Product stacks are still evolving as early adopters test the development and runtime products with real world problems. &'( does not guarantee reduced -" costs, improved systems agility or faster time to market. &uccessful &'( implementations may realise some or all of these benefits depending on the 3uality and relevance of the system architecture and design9+@: . See also: W&)0etadata7xchange 'W1)& (brobit *oy
and estimated with additional budget and contingency for additional Proof of ?oncept work. (n informal survey by 6etwork ?omputing placed &'( as the most despised bu44word 6ovember ;,,A!. &ome critics feel &'( is merely an obvious evolution of currently well)deployed architectures open interfaces, etc!. ( &'( being an architecture is the first stage of representing the system components that interconnect for the benefit of the business. (t this level a &'( is #ust an evolution of an existing architecture and business functions. &'(s are normally associated with interconnecting back end transactional systems that are accessed via web services. "he real issue with any -" 5architecture5 is how one defines the information management model and operations around it that deal with information privacy, reflect the business$s products and services, enable services to be delivered to the customers, allow for self care, preferences and entitlements and at the same time embrace identity management and agility. 'n this last point, system modification agility! is a critical issue which is normally omitted from -" system design. 0any systems, including &'(s, hard code the operations, goods and services of the organisation thus restricting their online service and business agility in the global market place. (dopting &'(s is therefore #ust the first diagrammatic! step in defining a real business system. "he next step in the design process is the definition of a &ervice 2elivery Platform &2P! and its implementation. -t is in the &2P design phase where one defines the business information models, identity management, products, content, devices, and the end user service characteristics, as well as how agile the system is so that it can deal with the evolution of the business and its customers.
Within this area, &'0( &ervice)'riented 0odelling and (rchitecture! was announced by -F0 as the first &'()related methodology in ;,,>. &ince then, efforts have been made to move towards greater standardi4ation and the involvement of business ob#ectives, particularly within the '(&-& standards group and specifically the &'( (doption Flueprints group. (ll of these approaches take a fundamentally structured approach to &'(, focusing on the &ervices and (rchitecture elements and leaving implementation to the more technically focused standards.
&ymantec (P0 HyPerformix -P& Performance 'ptimi4er HP 0anagement &oftware < 0ercury &'( 0anager -F0 "ivoli Framework "idal &oftware -ntersperse
!edit" *ar&on
This section does not cite any references or sources.
Please help improve this section by adding citations to reliable sources. help, get involvedL! .nverifiable material may be challenged and removed. "his section has been tagged since *une +,,-.
&'( is an architectural style rather than a product. &everal vendors offer products which can form the basis of, or enable, &'())particularly 7nterprise &ervice Fus 7&F! products. 7&Fs provide infrastructure that can be purchased, implemented and leveraged for &'()based systems9citation needed:. &'( relies heavily on metadata design and management. 0etadata design and management products are also critical to implementing &'( architectures. &ee the list of &'( related products for an overview and ideas.
1istri$uted computin&
From Wikipedia, the free encyclopedia
1istri$uted computin& is a method of computer processing in which different parts of a program run simultaneously on two or more computers that are communicating with each other over a networ%. 2istributed computing is a type of se&mented or parallel computing. Fut the latter term is most commonly used to refer to processing in which different parts of a program run simultaneously on two or more processors that are part of the same computer. While both types of processing re3uire that a program be segmented Pdivided into sections that can run simultaneously, distributed computing also re3uires that the division of the program take into account the different environments on which the different sections of the program will be running. For example, two computers are likely to have different file systems and different hardware components. (n example of distributed computing is F'-6?, a framework in which large problems can be divided into many small problems which are distributed to many computers. 1ater, the small results are reassembled into a larger solution. 2istributed computing is a natural result of the use of networks to allow computers to efficiently communicate. Fut distributed computing is distinct from computer networking or fra&mented computing. "he latter refers to two or more computers interacting with each other, but not, typically, sharing the processing of a single program. "he World Wide Web is an example of a network, but not an example of distributed computing. "here are numerous technologies and standards used to construct distributed computations, including some which are specially designed and optimi4ed for that purpose, such as *emote Procedure ?alls *P?! or *emote 0ethod -nvocation *0-! or .67" *emoting.
ontents
9hide:
+ 'rgani4ation ; 8oals and advantages o ;.+ 'penness = 2rawbacks and disadvantages > (rchitecture @ ?oncurrency o @.+ 0ultiprocessor systems o @.; 0ulticore systems o @.= 0ulticomputer systems o @.> ?omputing taxonomies o @.@ ?omputer clusters o @.A 8rid computing A 1anguages C 7xamples o C.+ Pro#ects D &ee also
!edit" Or&ani)ation
'rgani4ing the interaction between each computer is of prime importance. -n order to be able to use the widest possible range and types of computers, the protocol or communication channel should not contain or use any information that may not be understood by certain machines. &pecial care must also be taken that messages are indeed delivered correctly and that invalid messages are re#ected which would otherwise bring down the system and perhaps the rest of the network. (nother important factor is the ability to send software to another computer in a portable way so that it may execute and interact with the existing network. "his may not always be possible or practical when using differing hardware and resources, in which case other methods must be used such as cross)compiling or manually porting this software.
!edit" Openness
'penness is the property of distributed systems such that each subsystem is continually open to interaction with other systems see references!. Web &ervices protocols are standards which enable distributed systems to be extended and scaled. -n general, an open system that scales has an advantage over a perfectly closed and self)contained system. ?onse3uently, open distributed systems are re3uired to meet the following challenges: 0onotonicity 'nce something is published in an open system, it cannot be taken back. Pluralism 2ifferent subsystems of an open distributed system include heterogeneous, overlapping and possibly conflicting information. "here is no central arbiter of truth in open distributed systems. .nbounded nondeterminism (synchronously, different subsystems can come up and go down and communication links can come in and go out between subsystems of an open
distributed system. "herefore the time that it will take to complete an operation cannot be bounded in advance see unbounded nondeterminism!.
such pro#ects there is the risk that the model may not be designed well enough to efficiently generate concrete solutions. "he effectiveness of a distributed computing pro#ect is therefore determined largely by the sophistication of the pro#ect creators.
!edit" Architecture
Marious hardware and software architectures are used for distributed computing. (t a lower level, it is necessary to interconnect multiple ?P.s with some sort of network, regardless of whether that network is printed onto a circuit board or made up of loosely) coupled devices and cables. (t a higher level, it is necessary to interconnect processes running on those ?P.s with some sort of communication system. 2istributed programming typically falls into one of several basic architectures or categories: ?lient)server, =)tier architecture, 6)tier architecture, 2istributed ob#ects, loose coupling, or tight coupling.
?lient)server P &mart client code contacts the server for data, then formats and displays it to the user. -nput at the client is committed back to the server when it represents a permanent change. =)tier architecture P "hree tier systems move the client intelligence to a middle tier so that stateless clients can be used. "his simplifies application deployment. 0ost web applications are =)"ier. 6)tier architecture P 6)"ier refers typically to web applications which further forward their re3uests to other enterprise services. "his type of application is the one most responsible for the success of application servers. "ightly coupled clustered! P refers typically to a set of highly integrated machines that run the same process in parallel, subdividing the task in parts that are made individually by each one, and then put back together to make the final result. Peer)to)peer P an architecture where there is no special machine or machines that provide a service or manage the network resources. -nstead all responsibilities are uniformly divided among all machines, known as peers. Peers can serve both as clients and servers.
!edit" oncurrency
2istributed computing implements a kind of concurrency. -t interrelates tightly with concurrent programming so much that they are sometimes not taught as distinct sub#ects 9;: .
!edit" (an&ua&es
6early any programming language that has access to the full hardware of the system could handle distributed programming given enough time and code. *emote procedure calls distribute operating system commands over a network connection. &ystems like ?'*F(, 0icrosoft 2?'0, Java *0- and others, try to map ob#ect oriented design to the network. 1oosely coupled systems communicate through intermediate documents that are typically human readable e.g. /01, H"01, &801, /.@,,, and 72-!. 1anguages specifically tailored for distributed programming are:
(da programming language 9=: (lef programming language 7 programming language 7rlang programming language 1imbo programming language '4 programming language QP1 programming language!
!edit" 'xamples
!edit" 7ro8ects
"ain article: )ist of distributed computing pro*ects ( variety of distributed computing pro#ects have grown up in recent years. 0any are run on a volunteer basis, and involve users donating their unused computational power to work on interesting computational problems. 7xamples of such pro#ects include the &tanford .niversity ?hemistry 2epartment FoldingRhome pro#ect, which is focused on simulations of protein folding to find disease curesJ World ?ommunity 8rid, an effort to create the world$s largest public computing grid to tackle scientific research pro#ects that benefit humanity, run and funded by -F0J &7"-Rhome, which is focused on analy4ing radio)telescope data to find evidence of intelligent signals from space, hosted by the &pace &ciences 1aboratory at the .niversity of ?alifornia, FerkeleyJ and distributed.net, which is focused on breaking various cryptographic ciphers.9>: 2istributed computing pro#ects also often involve competition with other distributed systems. "his competition may be for prestige, or it may be a matter of enticing users to donate processing power to a specific pro#ect. For example, stat races are a measure of the work a distributed computing pro#ect has been able to compute over the past day or week. "his has been found to be so important in practice that virtually all distributed computing pro#ects offer online statistical analyses of their performances, updated at least daily if not in real)time.
Jump to: navigation, search 9niversal 1escription. 1iscovery and /nte&ration 911/! is a platform)independent, /01)based registry for businesses worldwide to list themselves on the -nternet. .22- is an open industry initiative, sponsored by '(&-&, enabling businesses to publish service listings and discover each other and define how the services or software applications interact over the -nternet. ( .22- business registration consists of three components:
White Pages P address, contact, and known identifiersJ %ellow Pages P industrial categori4ations based on standard taxonomiesJ 8reen Pages P technical information about services exposed by the business.
.22- is one of the core Web services standards9+:. -t is designed to be interrogated by &'(P messages and to provide access to Web &ervices 2escription 1anguage documents describing the protocol bindings and message formats re3uired to interact with the web services listed in its directory. .22- was written in (ugust, ;,,,, at a time when the authors had a vision of a world in which consumers of Web &ervices would be linked up with providers through a public or private dynamic brokerage system. -n this vision, anyone needing a service such as credit card authentication, would go to their service broker and select one supporting the desired &'(P or other service interface and meeting other criteria. -n such a world, the publicly operated .22- node or broker would be critical for everyone. For the consumer, public or open brokers would only return services listed for public discovery by others, while for a service producer, getting a good placement, by relying on metadata of authoritative index categories, in the brokerage would be critical for effective placement. "he .22- was integrated into the Web &ervices -nteroperability W&)-! standard as a central pillar of web services infrastructure. Fy the end of ;,,@, it was on the agenda for use by more than seventy percent of the Fortune @,, companies in either a public or private implementation, and particularly among those enterprises that seek to optimi4e software or service reuse. 0any of these enterprises subscribe to some form of service) oriented architecture &'(!, server programs or database software licensed by some of the professed founders of the .22-.org and '(&-&. "he .22- specifications supported a publicly accessible .niversal Fusiness *egistry in which a naming system was built around the .22-)driven service broker. -F0, 0icrosoft and &(P announced they were closing their public .22- nodes in January ;,,A.9;:
&ome assert that the most common place that a 911/ system can be found is inside a company where it is used to dynamically bind client systems to implementations. "hey would say that much of the search metadata permitted in .22- is not used for this relatively simple role. However, the core of the trade infrastructure under .22-, when deployed in the .niversal Fusiness *egistries now being disabled!, has made all the information available to any client application, regardless of heterogeneous computing domains.
ontents
9hide:
+ .22- 2ata 0odel o +.+ .22- 2ata "ypes ; .22- 6odes S *egistry o ;.+ .22- 6odes o ;.; .22- *egistry = -mplementations o =.+ .22- clients o =.; .22- servers > &ee also @ 7xternal links A *eferences
$usiness'ntity: "he top level structure, describing a business or other entity for which information is being registered $usinessService: 2escription of a set of services which may contain one or more binding"emplates. $indin&Template: -nformation necessary to invoke specific services which may encompass bindings to one or more protocols, such as H""P or &0"P. t3odel: "echnical Tfinger printU for a given service which may also function as namespace to identify other entities, including other t0odels.
Jump to: navigation, search Service omponent Architecture <S A= is a relatively new initiative advocated by ma#or vendors of Java 77 technology. -ts proponents claim it is more natively suited for the delivery of applications that conform with the principles of service)oriented architecture. (s such, &?( components are supposedly more technologically agnostic.
ontents
9hide:
+ Partners ; &upporters = 2efinition > Further (nalysis @ &?( artifacts A "ransition to a &tandards Fody C Footnotes D &ee also E 7xternal links
!edit" 7artners
Partner vendors include:
the original members: F7( &ystems, -F0, -'6( "echnologies, 'racle ?orporation, &(P (8, &ybase, /calia and Qend "echnologies the additional members announced on July ;A, ;,,A: ?ape ?lear, -nterface;+, Primeton "echnologies, Progress &oftware, *ed Hat, *ogue Wave &oftware, &oftware (8, &un 0icrosystems and "-F?' &oftware.9+: &iemens (8, who #oined the collaboration of companies working on the technology on &eptember +D, ;,,A.
!edit" Supporters
-n addition to the partners above, the &?( community has a significant set of formal supporters. 9;: "he &upporters Program remains open for any interested vendor, -&M, customer or user of the &?( technology to contribute to its evolution.
!edit" 1efinition
'n 0arch ;+, ;,,C the '&'( ?ollaboration released the M+., level of specification 9=:. "he specifications specify that an application designed with &?( should have the following advantages:
2ecoupling of application business logic from the details of its invoked service calls including . "arget services in a multitude of languages including ?VV, Java, ?'F'1, and PHP as well as /01, FP71, and /&1". "he ability to seamlessly work with various communications constructs including 'ne)Way, (synchronous, ?all)*eturn, and 6otification. "he ability to 5bind5 to legacy components or services, accessed normally by technologies such as Web &ervices, 7JF, J0&, J?(, *0- and others. "he ability to declare outside of business logic! the Nuality of &ervice re3uirements, such as &ecurity, "ransactions and the use of *eliable 0essaging. 2ata could be represented in &ervice 2ata 'b#ects.
"he value proposition of &?(, therefore, is to offer the flexibility for true composite applications, flexibly incorporating reusable components in an &'( programming style. "he overhead of business logic programmer concerns regarding platforms, infrastructure, plumbing, policies and protocols are removed, enabling a high degree of programmer productivity.
caters for all existing Java platform technologies and ?VV less technology dependence ) does not have to rely on the Java programming language, nor /01 uses &2', which is the only industry standard for data access in &'( lack of support by 0icrosoft encourages potential users to broaden their spectrum of &'( solutions to an increasing number of vendors.
2isadvantages:
lack of support by 0icrosoft reduces the relevancy of &?( for a large number of potential users. &pecification does not address performance of &'( applications, which continues to be a detractor of adoption.
&?( is said to provide interoperability through an approach called 5(ctivation5. -t is the method that provides the highest degree of component autonomy, compared to older 5mediation5 e.g. JF-! or 5-nvocation5 method used in J?(, as explained by an architect at &(P 9+:.
!edit" S A artifacts
"he S A Assem$ly 3odel consists of a series of artifacts, which are defined by elements contained in /01 files. ( &?( runtime may have other non)standard representations of the artifacts represented by these /01 files, and may allow for the configuration of systems to be modified dynamically. However, the /01 files define the portable representation of the &?( artifacts. "he basic artifact is the omposite, which is the unit of deployment for &?( and which holds Services which can be accessed remotely. ( composite contains one or more omponents, which contain the business function provided by the module. ?omponents offer their function as services, which can either be used by other components within the same module or which can be made available for use outside the module through 'ntry 7oints. ?omponents may also depend on services provided by other components P these dependencies are called #eferences. *eferences can either be linked to services provided by other components in the same module, or references can be linked to services provided outside the module, which can be provided by other modules. *eferences to services provided outside the module, including services provided by other modules, are defined by 7xternal &ervices in the module. (lso contained in the module are the linkages between references and services, represented by Wires. ( ?omponent consists of a configured /mplementation, where an implementation is the piece of program code implementing business functions. "he component configures the implementation with specific values for settable 7roperties declared by the implementation. "he component can also configure the implementation with wiring of references declared by the implementation to specific target services. ?omposites are deployed within a S A System. ( &?( &ystem represents a set of services providing an area of business functionality that is controlled by a single organi4ation. (s an example, for the accounts department in a business, the &?( &ystem might cover all financial related function, and it might contain a series of modules dealing with specific areas of accounting, with one for customer accounts, another dealing with accounts payable. "o help build and configure the &?( &ystem, ?omposites can be used as component implementations, in the same way as a Java classes or a FP71 processes. -n other words, &?( allows a hierarchy of composites that is arbitrarily deep ) such a nested model is termed recursive.
"he capture and expression of non)functional re3uirements such as security is an important aspect of service definition, and has impact on &?( throughout the lifecycle of components and compositions. &?( provides the 7olicy >ramework to support specification of constraints, capabilities and Nuality of &ervice No&! expectations, from component design through to concrete deployment.
OAS/S <or&ani)ation=
From Wikipedia, the free encyclopedia
Jump to: navigation, search +his article is about standards organisation. &or other uses, see #asis ,disambiguation-. "he Or&ani)ation for the Advancement of Structured /nformation Standards OAS/S! is a global consortium that drives the development, convergence and adoption of e)business and web service standards. 0embers of the consortium decide how and what work is undertaken through an open, democratic process. "echnical work is happening in the following categories: Web &ervices, e)?ommerce, &ecurity, 1aw S 8overnment, &upply ?hain, ?omputing 0anagement, (pplication Focus, 2ocument)?entric, /01 Processing, ?onformance<-nterop, and -ndustry 2omains.
ontents
9hide:
+ History
; &pecific standards under development by '(&-& technical committees = Patent disclosure controversy > 7vents o >.+ '(&-& (doption Forum @ &ee also A 7xternal links
!edit" ?istory
'(&-& was first formed as S63( Open in +EE= as a trade association of &801 tool vendors to cooperatively promote the adoption of &801 through mainly educational activities, though some amount of technical activity was also pursued including an update of the ?(1& "able 0odel specification and specifications for fragment interchange and entity management. -n +EED, with the movement of the high tech industry to /01, &801 'pen changed its emphasis from &801 to /01, and changed its name to '(&-& 'pen to be inclusive of /01 and any future structured information standards. "he focus of the consortium$s activities also moved from promoting adoption as /01 was getting lots of attention on its own! to developing technical specifications. -n July ;,,, a new technical committee process was approved. With the adoption of the process the manner in which technical committees were created, operated, and progressed their work was regulari4ed. (t the adoption of the process there were five technical committeesJ by ;,,> there were nearly C,. 2uring +EEE '(&-& was approached by .6<?7F(?", the committee of the .nited 6ations dealing with standards for business, to #ointly develop a new set of specifications for electronic business. "he #oint initiative, called 5eb/015 and which first met in 6ovember +EEE, was chartered for a three year period. (t the final meeting under the original charter, in Mienna, .6<?7F(?" and '(&-& agreed to divide the remaining work between the two organi4ations and to coordinate the completion of the work through a coordinating committee. -n ;,,> '(&-& submitted its completed eb/01 specifications to -&' "?+@> where they were approved as IS# ./000.
?(P ) ommon Alertin& 7rotocol, is an /01)based data format for exchanging public warnings and emergencies between alerting technologies. ?-N ) ustomer /nformation @uality, is an /01 &pecifications for defining, representing, interoperating and managing party information e.g. name, address!.
2ocFook 1oc5ook! is a markup language for technical documentation. -t was originally intended for authoring technical documents related to computer hardware and software but it can be used for any other sort of documentation. 2-"( 1arwin /nformation Typin& Architecture! is a modular and extensible /01)based language for topic)based information, such as for online help, documentation, and training. 'pen2ocument OAS/S Open 1ocument >ormat for Office Applications! is an open document file format for saving office documents such as spreadsheets, memos, charts, and presentations. &(01 ) Security Assertion 3arkup (an&ua&e, a standard /01)based framework for the secure exchange of authentication and authori4ation information. &P01 ) Service 7rovisionin& 3arkup (an&ua&e, a standard /01)based protocol for the integration and interoperation of service provisioning re3uests. .F1 ) 9niversal 5usiness (an&ua&e, 6ational effort to define a royalty)free library of standard electronic /01 business documents. (ll invoices to the 2anish government have to be in .F1 electronic format since February ;,,@. W&20 ) We$ Services 1istri$uted 3ana&ement /*- ) e2tensi$le #esource /dentifier, a .*-)compatible scheme and resolution protocol for abstract identifiers used to identify and share resources across domains and applications. /2- ) 2#/ 1ata /nterchan&e, a standard for sharing, linking, and synchroni4ing data 5dataweb5! across multiple domains and applications using /01 documents, e/tensible *esource -dentifiers /*-s!, and a new method of distributed data control called a link contract.
could initially offer royalty)free use of their patent, later imposing per)unit fees, after the standard becomes accepted. &upporters of '(&-& point out this could occur anyway since an agreement would not be binding on non)participants, discouraging contributions from potential participants. &upporters further argue that -F0 and 0icrosoft shifting standardi4ation efforts from the W=? to '(&-& is evidence this is already occurring.