repositories in web, soa, woa, and enterprise architectures dan
TRANSCRIPT
RepositoriesinWeb,SOA,WOA,andEnterpriseArchitectures
DanDavisAdvancedCamp
June19,2007
Agenda
• Goals• DealingwithComplexity• RepositoryfitwiththeWebArchitecture(asExample)
• KeyTrends• WebandEnterpriseParadigms
• ServiceOrientedandWebOrientedArchitectures
• TheFedoraDilemma• FedoraDesignGoalsasExample
• RepositoryforIntegraQon
ChallengestoAddress
HowcanIlinkallmyexisQngassets,createnewbusinesslogic,andQeitalltogetherinawaythatautomatesmymission?
…anddriveflexibilityandefficiencyatthesameQme?
…despitethehighlydecentralizednatureofhighereducaQon
Systems Partners Institutions
People Partners Institutions Employees
Existing Applications Existing Databases
David Clark's Internet Hourglass
DavidClark’sInternetHourglass
Examples
Identifier Address
Reference Name
Format Document Message Container
Protocol Method
Operation Process
IP IP Address IP Packet IP Protocol
E-Mail @ Address RFC 2822 SMTP (Simple Mail Transfer Protocol)
Web URI (Uniform Resource Identifier)
HTML (Hypertext Markup Language)
HTTP (Hypertext Transfer Protocol)
WS-* URI SOAP Envelope
SOAP Protocol
Simple Interface = IFaP Specs
HourglassModelofMiddle‐OutArchitecture
• GenericSystems:Underlayawiderangeofunexpecteduses
• SimpleInterface:MinimalspecificaQonofeasilyappliedidenQfiers,formatsandprotocols
• FederatedComponents:OverlayawiderangeofunexpectedimplementaQons
• Extensible:EasyanddynamicforwardandbackwardcompaQbility
Federated Components
Simple Interface
Generic Systems
E x
t e n
s i
b l e
Middle-out is an architectural style that enables decentralized change through the following minimal constraints:
Complexity
Complexity
Source: Gartner
IntegratedInformaQonSpaces
• Made up of inter-related, content-neutral digital objects • Separates content, view, and cross-references • Enables typed relations for all content formats • Enables third-party annotation and remote resource access • Persists the content AND the relations (the graph)
RelevantTechnologyTrends
• Service‐orientedarchitecture
• Web2.0
• SemanQcWeb(Web3.0)
SOA
Web 2.0
RDF
OWL-S
OWL
ImplicaQonsofWeb2.0 &Web3.0• Keythemes
– Services(notpackagedapps)– ArchitectureofparQcipaQon– Remix/transformdatasources
– HarnesscollecQveintelligence
• EmergentBehavior
– UpcominggeneraQonsofscholarswillhaveacompletelydifferentparadigmandexpectaQonsregardingtechnology
– CollaboraQveclassificaQon(e.g.,flickr)– PowerofcollecQveintelligence(amazon)– AlternaQvetrustmodels(reputaQon–ebay;open‐source)
So how do we handle people using resources outside the institution?
ARepositoryisNotJustStorage
• Arepositoryisabletodelivervalueaddedservicesoverstorage(mediaQon)
• ContentcanbestoredanddeliveredusingmulQpleinterfacesincludingtheWeb,intranetservices,Webservices,ESB,Internetprotocols,…
• VirtuallyeverymethodofdeliveringstaQccontentismuchfasterthanusingarepositorybutwithlessagility
• ButrepositoriesareabletodelivercomplexcontentandintegraQonlooselycoupledservices(silo,stovepipekillerfor85%ofyourdata)
• Document,disconnected,andeventbusinessintegraQonpajerns
• AndtheWebisaboutHTMLperiod,endofsentence
• TheWeboperateslargelywithalowtrustmodel;Whatisyourtrustmodel?
• TheWebuseshumans(orveryadaptablesolware)toovercomeitsunreliablearchitecture
• ButtheWebisaubiquitous,infinitelyscalablesystem
• UponwhichanenormousnumberofapplicaQonsaredeveloped
So how do repositories best fit into the SOA? Web?
OverlapbetweenWebandEnterpriseParadigms
• BoththeWebandEnterpriseContentManagementarecontent‐drivensystemswithoverlappingneeds– ContentCreaQonandCapture,CollaboraQon– ContentStoragediffersonQmescaleopQmizaQons
• Contentmanagers–CreaQonandCollaboraQon
• Trustedrepositories(archives)–Longtermstorage,integrity,andpreservaQon
– BothrequireinformaQonlifecyclemanagementcapabiliQes
– SupportforotherservicesandapplicaQons• Bothneedawell‐definedtrustandsecuritymodel
TheRepositoryDilemma• MustimplementanEnterpriseparadigmcorebecause:
– TrustModel
• Allrepositorieshaveasignificanttrustrequirement• Lowfaulttoleranceforrepositorycontentcustodianship• SpecifiablefaulttoleranceformediaQoncapabiliQes
• Create(Ingest),Read,Update,andDeletemustbetransacQonal
• NearACIDsemanQcs– ArchitecturalFit
• FitasacomponentinaSOA
• Abilitytocreatecontextualized,durabledatapersistence• Clustering,High‐Availability,TransacQons,Messaging,Workflow
• FederaQon• ButmustalsosupporttheWebparadigm
CharacterisQcsoftheEnterpriseParadigm
• EnablesdistributedsystemssoluQons:– FormissioncriQcalapplicaQonsandbusinessprocesses– WithbothtechnologicalandorganizaQonalcomplexity– Needingsupportforahightrustandsecuritymodel– NeedingsupportfortransacQons(2‐phase)andmessaging(asynchronicity)
• Anenterprisesystem:– Requireswell‐definedintegraQonpoints&standardstosucceed– UsesenterpriseprogrammingpracQceshavingahighlearningcurve– Shouldbeaugmentedwithawell‐definedEnterpriseArchitecturedefiningbusinesssemanQcs,formats,processes,policies,andstandards(a.k.agovernance)
• UseofaService‐OrientedArchitectureisthepreferredapproach
So how do we handle people using resources outside the institution?
NoQonalSolwareArchitecture
Users
Search Services
Search App
Security Services
Search Engine
Services
System Admin
Services
Logging Services
System Mgmt App
System Admin
App
Web & App
Servers
Digital Asset
Services
System Mgmt
Services
Workflow Services
Legacy System
Interface L1
Workflow App
App Servers
App Servers
Service Registry
Repo
Domain App A1
Domain Service
S1
Domain App A2
Legacy System
Interface L2
Domain Service
S2
Legacy System
L1
Legacy System
L2
Select Support
Components
Select Content Mgmt Components
Develop Customer
Specific Apps and Workflows
Develop Customer Specific Services
Integrate Customer
Legacy Systems
Middleware M1, M2
Standard Middleware Elements: Web Services, JMS, HTTP, EJB, ESB, others
Connect To Middleware
Standard Middleware Elements: Web Services, JMS, HTTP, EJB, ESB, others
NoQonalComponentView
System Services
Layer
Presentation Layer
Web Browser SIP
Builder
Ingest Manager
HTML over HTTP
Search Engine Services
Storage Management Services Format
Translation Services
Forms Editor
Content Model Editor
Forms Wizard
User Workbenches
Collaboration Apps
Records Management Application
File System
Archives Browser
Preservation Manager
Submission Information
Package
Content Services
Layer
Search Services
Repository Services
Ingest Services
Preservation Services SOAP
SOAP HTML over HTTP
JDBC
FTP / Media
File System
HTML over HTTP
SOAP HTML over HTTP
Workflow Apps
Email System
System Admin Apps
Workflow Services
Workflow Engine
JMS EJB
System Admin Services
Database Management Services
SOAMeetsWOA
• SOAis:+ modular
+ distributable+ shareable+ looselycoupled
• WOAis:
+ SOA+ WWW
+ REST
hjp://serviceorientaQon.org
What will the average developer use?
WOA Web-Oriented Architecture
HTTP(S)
SOAP
POX JSON
SOA Service-Oriented Architecture
complexity
richness
WSDL
JMS
REST
RMI/IIOP
BPEL
UDDI
WS-Policy WS-Reliable Messaging
WS-Coordination WS-Atomic Transaction WS-Trust WS-Security
WS-* 65+ STDs
SOAandWOADescribed
• WOAisasubsetofSOA
• SOA:– moretrustworthy
• transacQons(2‐phase)• messaging
• asynchronicity– hardertouse
• WOA:– fairlytrustworthy– mucheasiertouse
– morerobustovertheWeb
– LightweightESB?
http://blogs.zdnet.com/Hinchcliffe/?p=27
WOA Web-Oriented Architecture
HTTP(S)
SOAP
POX JSON
SOA Service-Oriented Architecture
complexity
richness
WSDL
JMS
REST
RMI/IIOP
BPEL
UDDI
WS-Policy WS-Reliable Messaging
WS-Coordination WS-Atomic Transaction WS-Trust WS-Security
WS-* 65+ STDs
TheRESTofWOA:RepresentaQonalStateTransfer
• ThesecrettotheWeb'sdramaQcinteroperability("mashability")isitsnarrowwaist:asmallnumberofuniformoperaQons.
• FundamentalPrinciples:– UniversalidenQficaQonofresources:URI– ManipulaQonofresourcesthroughrepresentaQons
– Self‐descripQvemessagesanduniformintermediaryprocessingmodel
– HypermediaastheengineofapplicaQonstate
The Key to a Successful Spanning Layer:
The Hourglass Model
Federated
Generic
E x
t e n
s i
b l e
Simple IFaPs
Complexity is the killer?
FedoraDesignGoals• FedoracanpotenQallybridgeparadigms
– SQllmaintainsWebinterfaces
– AddsareliableWOAinterface– CanbeincorporatedintoanEnterpriseSOAwithtransacQonaland
asynchronousmessagingfuncQonalityplusworkflow
• FedoraispotenQallythemodelforthenewcontentserver
– Storeanything– ActasaWebserver
– ActasaDisseminaQonServerthroughWOA
– ActasaserviceinanenterpriseSOA– AddnewfuncQonalitytobeconceived– Format,Person,Service,Anythingregistry
• Storeeverythingneededtorunthesystem
Agility with Managed Trust is Required!
GlobalandEnterpriseClassRepositories
Repository for Integration
Next Gen. of Enterprise Class
Standards-based (WS-*,JMS,…)
Normalized Transactions
Inward-Facing Somewhat Loosely
Coupled Security:
"Lockdown"
Next Gen. of Global Class (Web 2.0 & WOA)
WOA and basic WS Consumer Culture Outward-Facing Very Loosely
Coupled Security: Assume
Everything Is a Threat
Conclusions• WhileWeb2.0isamajorimplementa@ontrendamongemergingWeb‐basedapplica@ons
• WecancombinetheWeb,Web2.0,WOA,andSOAintoanintegratedsystemthatleveragesthebestquali@esofeach
• AndWeb3.0usesseman@cstohelpslaycomplexity(wehope).
• MovevolaQlityintodataandtechnologystabilityintocodeandcontent.
• Empowerstakeholderswiththefreedomtoresponsiblyuse,study,copyandchangethesystem.
• EmbraceconsumersasanintegralpartoftheapplicaQonandcontentdevelopmentprocess.
• EmbraceWebmashupsasimportantmodeltocreatecompositeenterpriseapplicaQonsandopportunisQcuserapplicaQons.Mostuptakewillbeinlightweightservices.
• UseSOAtocreatecompositeserviceswherehighreliabilityandsecurityisneeded.
• Strongmoveexpectedtoinfrastructuresystemsduetoeconomyofscale