Notes accompany this presentation. Please select Notes Page view. These materials can be reproduced only with Gartner's official approval. Such approvals may be requested via e-mail — [email protected].
Portals: The Original SOA Framework
Ray ValdesResearch Director
Internet Platforms & Web Services
Conclusions
"Portal" used to be most misunderstood term in IT "Service-oriented architecture" (SOA) is now most misunderstood When understood, both have tremendous potential for positive impact Portals are about aggregation, integration and connecting systems
– Content, data, information
– Business process, applications, logic SOA is also about connecting systems
– Service-orientation is a pattern for distributed computing
– SOA is not the solution, but one aspect of a solution SOA-style connections are not the only ways to connect
– Monolithic, procedural, RPC — still needed in many scenarios
– Other ways to connect loosely coupled systems: WSRP, RSS
– Portals offer many different ways to connect systems
– Web 2.0 will introduce even other ways to connect: "SOA 2.0"
Bottom line: Portals can be "as SOA as you want them to be."
Etc…HR Customer ServiceFinance
Vision of the Service-Oriented Enterprise
LegacyLogic
& Data
Services
OrchestratedProcesses
HR Legacy App
Finance Legacy App
CSS Legacy App LOB App
Logic DataDataData
Logic LogicLogic
Data
Logic
Data
Service
Service
Service
Service
Process Model
HR
Process Model
Across HR andFinance
Process Model
Budgeting
Process Model
Customer Service #1
Process Model
CustomerService #2
Service Service
Service Orientation: An ArchitecturalPattern for Distributed Computing
Services are
– Autonomous units of business function
– Connected over distributed network
– Contracted with respect to interface
– Coupled loosely rather than tightly
– Independent of platform, toolset, methodology, geography
– Discoverable via registry
– Standards-based, in the modern incarnation of SOA
Services are not (just)
– Components – Services are a type of component• Loosely coupled, coarse-grain, standards-based
– Objects – Services are "less than" objects (and this is a good thing)• Objects have state, are designed for fine-grain interaction
• Services can be composed of objects
Why Bother With SOA?
Moving to SOA requires architects to – Rethink modularity
– Refactor and repartition systems
– Specify contracts, interfaces
– Wrap legacy systems
– Set up system monitoring and management
– Look at security in a new way
Service orientation has value because it:– Allows existing information systems to
better tolerate change (that is, evolution-friendly)
– Enables the organization to rapidly assemble new applications to support new processes and meet new requirements (greater agility)
– Fosters reuse of code and components (improves developer productivity)
– Reduces skill requirements for creating new applicationfunctionality (helps reduce the IT backlog)
Six Generations of Portal Technology:It Is Still About Aggregation and Integration
Gen 3 (Mid-2002-2003)Process integration Knowledge mgmt.Multiple portal spt. Web servicesAdv. personalization Federated search
Gen 1 (1998-2000)Content mgmt./aggregationSearch/categorizationPersonalizationLightweight application framework
Gen 2 (2000-Mid-2002)Application integration
CollaborationMobile and wireless Mgmt.
tools
ProcessIntegration
ProcessIntegration
Application/DataIntegration
Information Access/Content Aggregation
Gen 4 (2004-Mid-2005)Advanced Web services Multichannel interactionComposite applications Personal contentMicrosites JSR168 & WSRP
Generation 5 (Mid-2005-2007)SOBA/PIP/PCA support OrchestrationAdvanced collaboration User experience mgt.WSRP V2 & JSR286 Portal as services
Gen 6 (2008-2009)Portal ubiquityUser-managed portal
aggregation (client-based/server-based/hosted)
Peer portal federation
Portals Connect to Systems in Many WaysPortlets, RSS, Subsystem Services, Application Integration
ExternalSystems & Services
Portal
Portlet Container
ApplicationIntegration Layer
PersonalizationEngine
Portlets
User & SystemAdmin.
SearchEngine
Workflow/Process Orchestration
Access Control & Identity Mgt.
Portlets
Portlets
ExternalSystems & Services
ExternalSystems & Services
ExternalSystems & Services
ExternalSystems & Services
ExternalSystems & Services
ExternalSystems & Services
Multiple Portals Comprise a New LegacyThat Incoming Portals Must Deal With
Portal
Container
App. Integration
Personal-ization
Portlets
User/SysAdmin.
Search
Workflow/Process Orchestration
Identity Mgmt.
Portlets
Portlets
Portal
Container
App. Integration
Personalizatio
n
Portlets
User/Sys
Admin.
Search
Workflow/Process Orchestration
Identity Mgt.
Portlets
Portlets
Portal
Container
App. Integration
Personalizatio
n
Portlets
User/Sys
Admin.
Search
Workflow/Process Orchestration
Identity Mgt.
Portlets
Portlets
Portal
Container
App. Integration
Personal-ization
Portlets
User/Sys
Search
Workflow/Process
Identity Mgmt.
Portlets
Portlets
Apps
Apps
Apps
Apps
Apps
Apps
Shared Infrastructure
The Promise of WSRP Was External, but Value Thus Far Is Internally Facing Interoperability
External Service
Enterprise
Another J2EE Portal
WSRP Wrapper
J2EE Portal
JSR 168 Portlet
WSRP Portlet
Native Portlet
.NET Portal
WSRP Portlet
WSRP Portlet
Native Portlet
Remote Portlet Instances
JSR 168 Portlet
ProprietaryAPI
Native Portlet Generic WSRPProtocol
External Service
External Service
Generic WSRP
Protocol
Proprietary
API
Proprietary
API
JSR168: Long Awaited Standard,Now Evolving to JSR286
The Fragmented Past
– Almost all portals built on a common technology foundationof Java/J2EE, servlets, JSP, XML, and (increasingly) Web services
– Fragmentation above common layer due to diverse portlet APIs
– Market fragmentation: many vendors with similar market shares
The Stagnant Present
– JSR168 is cross-vendor standard but limited in scope
– All vendors support it but none is strategically committed
The Slow-Moving Future
– Efforts to address JSR168 limitations underway
– "Turning the crank" will eventually produce a result
Recommendation for Portal Customers
– JSR168 and its successor, JSR286, should be default choice(with appropriate exceptions)
Subsystems in Portal Can BeFirst-Class Services
Portlets are not the only pointsof contact between portalsand external systems
Subsystems (such as search engine) can also be exposed externally
External systems can be apps.or even other portals
These subsystems can have conventional APIs or alternatively service-oriented interfaces
Portal vendors are just starting to refactor their packages Similar to how business app vendors are refactoring applications
as services This unlocks what is a major source of hidden value in portals
Enterprise Enterprise
Orchestration in and Outside the Portal
HostEngines &
Middleware
ExecutableProcesses
& Workflows
AbstractProcessModels
BPM/Workflow
Engine
Process Model
.
Portal
Process Model
.
Process Model
.
Process Model
.
Process Model
.
Process Model
.
Process Model
.
Process Model
.
BPM/Workflow
Engine
Process Model
.
Portal
Process Model
.
The Vision of Portal-Based DevelopmentTactical Strategic Portal-Based
Code reuse low to medium low to medium highApproach tool-driven model-driven parameter-driven
Business driver opportunistic systematic eitherRequirements simple complex simple
Scope departmental enterprise eitherSkills junior developer senior developer business analyst
Team size 1 to 6 6 to 60+ 1 to 3Code longevity 6 months to 3 years 2 years to 10+ years indefinite
Budget small to medium large smallMethodology informal formal, systematic informal
Risk tolerance high low mediumProject duration 1 to 6 months 6 months to 6 years 1 to 6 weeksConnectedness low to medium medium high
Code refactoring low low mediumIntegration use low medium high
Portal Deployments Evolvein Parallel with Technology
1996 2000 2004 2008 2010
Access to content Access to content (via search & personalization)(via search & personalization)
Access to apps. Access to apps. (via single sign-on)(via single sign-on)
Platform for new apps.Platform for new apps.
Access to apps Access to apps (via app. integration)(via app. integration)
Composite apps.Composite apps.
Adaptive apps.Adaptive apps.
Le
vel o
f B
us
ine
ss
Tra
nsf
orm
ati
on
Web
S
ervi
ces
Web
S
ervi
ces
Enterprise Portals and the Open Internet
Enterprise
Portal
PortalPortal
Enterprise
Portal
PortalPortal
Enterprise Sector
SOAP / Web ServicesSOAP / Web Services
WSRPWSRP
Content Aggregation ServiceContent Aggregation Service
Shared Metadata ServiceShared Metadata Service
Distributed Identity ServiceDistributed Identity ServiceProprietary ProtocolsProprietary Protocols
Open Internet
BloggingService
GroupCalendar
HostedERP App
ContentService
VerticalService
SharedContent
RSS / AtomRSS / Atom
RESTREST
Web 2.0 Wave Washes Over the EnterpriseEnterprises Will Adopt the Least Important Aspects First
Degree of
EnterpriseAdoption
TechnologyTechnology
BusinessImpact
Moral: High adoption does not necessarily mean high impact .
Ajax
RSS
User-DerivedMetadata
UserContent
Decentralized
Non-Non-TechnologyTechnology
ParticipatoryOpenness
Simplicity
REST
Mashups
The Value Proposition of SOA is Kept or Enhanced:Increased Agility and Evolvability
Web 2.0/"SOA 2.0"Web 1.0/SOA 1.0
Web 2.0 Pushes SOA in New Directions
Platform: .NET or Java/J2EE
SOAP and WS-* Thin browser
or fat client Single server/farm Loosely coupled Application data Individual transaction Business development
Platform: LAMP Lightweight REST Ajax-enabled browser
or mobile phone Distributed servers Even more loosely
coupled User-contributed data
and metadata Social interaction Community development
Ajax Catches Fire at the Surface LevelEasy to Add Snippets, Hard to Re-Factor for Full Framework
What is Ajax? The latest fashion in Web design– Asynchronous transfers – page elements load in background– JavaScript/DHTML – client-side processing more responsive
Examples of Ajax-based sites– Google Gmail, Google Maps,
Flickr, Basecamp, TiddlyWiki– Pioneers: Outlook in 1998,
Desktop.com in 1999 Real effectiveness comes
when combined with– Innovations in usability– Server-side processing
The "Portal Paradox"– Portals viewed as app front-ends– But UI designers face complex inflexible frameworks if you stray – Ajax will have limited scope (snippets and widgets) in the near-term
Software Architecture as an Unintended Consequence of Social Architecture
Context The structure of a system reflects the structure of the organization that
built it. An organization with constrained lines of communication may build
systems that don't interoperate and are difficult to monitor. Attempts to change or improve the structure of the system are often
reversed by forces which snap the system back to its original shape (this can be good or bad).
In the case of dysfunctional organizations, it can mean a continual struggle against design defects (bugs and performance issues).
Solution To fix or refactor the software artifact, refactor or restructure the
organization that created it. Of course, this can be very difficult. Examine and cultivate process attributes: collaborative, community-based,
transparent, repeatable and efficient. Implications for SOA and Web 2.0: Will the "tail wag the dog"?
Recommendations
Keep in mind that portal technology is multi-faceted andcan support different kinds of architectural approaches,from tight (non-SOA) to loosely coupled (SOA and more).
Consider SOA as just one approach to modularityand connected systems.
When building connected systems, pick and chooseamong the different capabilities in portal: portlets usinghigh-performance custom APIs, standards-based portlets, RSS-based syndication, composite app capability, etc.
Prepare for the Web 2.0 wave, which introducesnew approaches to platforms and processes.
Be ready to re-evaluate and re-factor your process and organizational structure, not just technology and products.
Notes accompany this presentation. Please select Notes Page view. These materials can be reproduced only with Gartner's official approval. Such approvals may be requested via e-mail — [email protected].
Portals: The Original SOA Framework
Ray Valdes