software group composite applications landscape web 2.0, mashups and situational apps...
Post on 23-Dec-2015
213 Views
Preview:
TRANSCRIPT
Software Group
Composite Applications LandscapeWeb 2.0, Mashups and Situational Apps
Bill.Hahn@us.ibm.comSr. Consulting Developer/Architect (IBM Certified SW IT Specialist)
Go to http://SOAWeb20.com for presentations, demos, tutorials and other resources
2
AgendaAgenda
IBM Strategy Web Based Composites with Web 2.0 Portal Based Composites
Portlet Template Editor Component Designer
Desktop/Device Composites Expeditor 6.1 Sametime 7.5 Notes 8.0
3
Empowering people to be more effective, responsive and innovative…
3
4
... in the context of the work they do
Composite Applications
DominoData
PeopleSoft
SAP and Siebel
Relational Data
Web Service
5
…in the context of the work they do
Tools
Business
Application
Business Unit
Messages
6
Composite Applications – The Face of SOA
DominoData
PeopleSoft
SAP and Siebel
Relational Data
Web Service
Desktop Client(Connected/Disconne
cted)
Web Browser Client(Connected Portal,
etc.)
Portlet (JSR168)Web Content
(html)
Notes/Domino *.nsf
7
Composite Applications - Building Blocks
Web 2.0 Elevates user expectations of collaboration and business applications
SOA has a business process sweet spot “Business Processes” and “Collaboration” are nearly inseparable. Many business processes are “ad-hoc” or “informal” and many are not easily automatedHumans provide the “choreography” and composite applications (i.e. portlets) surface the service-based “Operations”
Meeting users where they workBrings the applications to the users as opposed to making users find the applicationsComposite Applications bring collaboration into the context of existing applications, as opposed to forcing a new place for collaboration
Rich clients are the ‘best of both worlds’, web and desktop content!Even though Web 2.0 establishes new and improved UI’s for the web browser, there is a continued need for richer capabilities at the client, management of local/disconnected datasets and composite applications that blend server-side and client-side content/apps.
8
• User-driven adoption
• Value on demand
• Low cost of entry
• Public infrastructure
• Tight feedback loop between providers and consumers
Software as aSERVICE
Service, not software
COMMUNITYmechanisms
• Recommendations
• Social networking features
• Tagging
• User comments
• Community rights management
Users add value
SIMPLEuser interface
and dataservices
• Responsive UIs (AJAX)
• Feeds (Atom, RSS)
• Simple extensions
• Mashups (REST APIs)
Easy to use, easy to remix
Web 2.0
Web 2.0, History, and IBMThree patterns driving Web 2.0
9
• Web 2.0 consists of social and technical aspects• The social aspects are fundamental • Web 2.0 Sites can derive huge value from their
user community if they achieve critical mass• Sites often only provides the infrastructure and
guidelines for user participation• Communities adds value to the site, e.g. by writing
articles, posting videos, sharing bookmarks, etc.• Typically, sites have APIs used by mashup
developers acting as multipliers• Web 2.0 user interfaces typically have more
responsive UIs (Web – i.e. AJAX) (Rich Client – i.e. Expeditor)
Web 2.0, History, and IBMObservations
10
SOA and The “People” On Ramp
People conduct MOST of these
business processes
11
Integrated collaboration E-mail, calendar and applications Offline support
Portal Personalization Aggregation
Mobile/Desktop Device-side
components Offline applications Desktop
Real time Chat Web conference VoIP
Web Ajax Mashups
Flexibility of client technology
12
Information
Composite application framework
Unified communications and collaboration services
Composite application and integration services
MobileBrowserRich client Portal
Social Software for Business
Rich Client Platform based on Eclipse RCP
SametimeDomino
Mail, calendaring and collaborative applications
Business process
Interaction and client services (online or offline)
IBM Client Strategy
Expeditor Connections
13
Technical StrategyTechnical Strategy
14
Users and Solutions have different requirements
The gap between the user and an SOA can be complex
IBM is focused on making this simple with a clear strategy
RSSRSS
ATOMATOMJSONJSON
RESTREST
AJAXAJAX
XMLXMLPHPPHP
EnterpriseEnterpriseMASHUPSMASHUPSEnterpriseEnterpriseMASHUPSMASHUPS
JavaJava
EclipseEclipse
OSGiOSGiSWTSWT
JFaceJFaceSametimeSametime
NotesNotes
ExpeditorExpeditorJavaJava
JSR 168JSR 168JSR 286JSR 286
JSR 291JSR 291
CSSCSS
DOMDOM
HTMLHTML
JavaScriptJavaScript
J2EEJ2EE
MOMMOM
JPAJPA
JMSJMS
JDBCJDBC
DOJODOJO
WS-*WS-*
JSFJSF
Demo
15
IBM Client Strategy
To help clients build solutions that allow people to interact with an SOA using IBM Software, based on Open Standards
Desktop Composites
Portal Composites
Collaborative Composites
Web Composites
Demo
16
Single Story
Financial
Retail
Health
Telecoms
Public Sector
• IBM Strategy is to support solutions across different industries and across different industry channels• Built by multiple IBM Software Brands, led by Lotus and WebSphere• Supporting the enhancement of open technologies and standards• Working across different Technology boundaries JEE (J2EE) , Web 2.0, Eclipse RCP, Sametime, Notes, Expeditor, etc.
17
WebSphere FocusBridging Web SOA and Enterprise SOA
Enterprise SOAWeb SOA
RSS
Web SOABridge
ATOMJSON
REST
AJAX
XMLPHP
EnterpriseEnterpriseMASHUPSMASHUPS
.NET
J2EEWSDL
CICS
WS-*
MOMSOAP
Ruby
J2SE
JDBC
JMS
FeedsFeeds
FeedsFeeds
Feeds
Feeds
Feeds
Feeds
1818
Lotus Focus – Desktop Composites, etc.
Integrated client middleware spanning Win2K, WinXP, WinMobile and Linux
“Seamlessly integrate with Web 2.0 content and data but using the power of the desktop operating system”
WEB
DISCONNECTED MANAGED
RICH
COMPOSITION
Expeditor
Web – when needed
– Browse any existing web application Rich – when needed
– Optimized user experience exploiting native platform look and feel
Composition – when needed
– Seamless integration enabling “Composite Applications”
Disconnected – when needed
– Full application support – at the client Managed – when needed
– Install, configure, and maintain both the platform and the applications
19
• Focused on next Generation Internet/Intranet applications
• Rich Internet Applications
WebSphere
Web 2.0
Ajax
Portal,
Web 2.0 focused Solutions WebSphere
SOA• Strong integration
skills into SOA required, JMS, WS, JDBC, etc,
Traditional WebSphere Skills
Web 2.0 Product, Technology and Capabilities
Lotus
Expeditor 6.1
Sametime 7.5
Notes 8.0
• Focused on solutions that extend the Lotus Client family
Desktop / Device Composites
Composite
Skills
Integration
Skills
Industry
Solutions
Integration
Skills
20
Composite Applications LandscapeBuild Components Assemble and Deploy Presentation
Pre-built components
New Applications
Enterprise data (e.g. SAP, Siebel, PeopleSoft, etc.)
Component Assembly and Customization
“Situational Apps”& “Mashups”
Domino, Relational
Weather 1 Demo 2 Demo 3 Database 4 Demo 6Demo 5 ProjMgmt 7 Demo 8 CustComp 9
Notes 8 / Expeditor Rich Clients
Browser / Portal
Devices
21
High Level Programming Model for Composite Applications
Comprehensive Java IDEs
Expeditor toolkitRational toolsPortlet Factory
No programmingPortlets, Builders,
Lists
Script-style development
Domino DesignerComponent DesignerNotes 8 Built-in Tools
Build/Deploy Components
Assemble and Wire Application
UseApplication
Clients
Assembly
Composite Application Editor
Portal Application Template Editor
Devices
Notes 8 / Expeditor Rich Clients
Browser / Portal
22
How do you Create Components for Composite Apps
Leverage tools according to requirements and skill level
Notes applications built with Domino Designer
SOA-based component built
with Portlet Factory
Collaborative components built with
Lotus Component Designer
J2EE/SOA components built with
RAD
23
Multi-channel Access Customers require multiple channels of access/interaction. IBM provides comprehensive support for all channels, composable from core services.
24
Web Mashups Web Mashups and and
Situational ApplicationsSituational Applications
24
25
Web 2.0: Situational ApplicationsWeb 2.0: Situational Applications
Assemble, Wire, Share web applications & services in minutes
Harness Web 2.0 power:
Empower the Knowledge worker to assemble their own web situational applications
Enable non-programmers to wire software components together with behavior and data relationships
Embrace the community spirit of Web 2.0 - Share personal web applications for quick and simple collaborative decision making activities
Rich Internet Applications Mashboards Mashup Makers Portals
Social Networking DogEar Instant Messaging Activities/communities
Content Syndication: Atom RSS
Industry XML Standards.Web Services
Business process & event customization
Reliable messaging
26
What is a Situational Application?What is a Situational Application?
A Situational Application is
rapidly created (<10mins) to address an immediate need of an individual or communitytypically but not necessarily short-lived (a just-in-time solution)informal (lacks product quality look and feel)just good enough
A Mashup can be a form of a Situation Application that
is comprised of 2 or more disparate components that are bound together through contentyields a new utility by seamlessly combining content from more than one data source with behavior to form a new integrated experience
A Mashboard can be a form of a Mashup that
is typically personalized and unique for an individual yet configurablecontains a collection of indicators that signal change when the status of content items of personal interest change
27
““Do-it-yourself” programming is not new, so what is new that is contributing to Do-it-yourself” programming is not new, so what is new that is contributing to the Situational Application adoption trend?the Situational Application adoption trend?
Proliferation of APIs and Mashups that are just a URL away
Unparalleled Content/data/services available
Larger population of people who can develop – “anyone can program, well…” Approachable programming models
New “tools” and Web 2.0 technology enable rapid application development with lower skills
Service-orientation and SOA adoption contribute to the consumer/provider model of development (REST & WSDL)
Collaborative, “social” model of programming is even taught in schools
Proliferation of APIs and Mashups that are just a URL away
Unparalleled Content/data/services available
Larger population of people who can develop – “anyone can program, well…” Approachable programming models
New “tools” and Web 2.0 technology enable rapid application development with lower skills
Service-orientation and SOA adoption contribute to the consumer/provider model of development (REST & WSDL)
Collaborative, “social” model of programming is even taught in schools
28
Web 2.0 Situational App CharacteristicsWeb 2.0 Situational App Characteristics
Software getting out of the way of information so that information can attain its optimal value
Consuming and remixing data from multiple sources, including individual users, while providing their own data and services in a form that allows remixing by others
Delivering software as a continually-updated service that gets better the more people use it
Going beyond the page metaphor of Web 1.0 to deliver rich user experiences
A collection of approaches including Web based APIs, Feeds, “Folksonomies”, and Social Networking which combine to give application developers a new way to approach hard problems with surprisingly effective results
29 29
IBM Web 2.0 Technologies Current Focus AreasIBM Web 2.0 Technologies Current Focus Areas
Web 2.0 Technologies converging on a few key value proposition
Broad Collaboration “It’s About Participation”
Simplicity & rich(er) internet experiences
RemixabilityEnabling “applications” that can be created by non-professional programmersAPIs based on open (defacto) standards
On Forefront of Opportunities
It’s about instant resultsIt’s about empowering line-of-business professionals
30 30
IBM Mashup Maker - QEDwiki Architecture Overview
Mashup Assemblers
Mashup Enablers
QEDWiki 1 QEDWiki 1 QEDWiki 1
3131
Supports the key tasks required to build a business driven mashup
(1) Create composite service
(2) Create presentation services by binding data and services to existing UI components, e.g. Widgets, Google Map, etc.
(3) Compose and wire the presentation services into an application.
Mashups In Context – Tasks and RolesMashups In Context – Tasks and Roles
ATOM / RSS, REST services
Web Services IT Developer Zero Runtime
IT Developer Java.0 / PHP.0 / SOA.0
Widgets Web Developer AJAX.0
(2) Mash-able PresentationComponent (Web Component) Web Developer
Mashup.0
(3) Composite Application Business Analyst
(1) CompositeBiz Service Skill
&
Time
More
Less
32
Mashup Anatomy
Content ProvidersContent Providers
WidgetsWidgets
Mashup MakerMashup MakerConsume
Mashup
Assemble,Wire, Share
Contains
33 33
Web 2.0 Mashup SummaryWeb 2.0 Mashup Summary
Web 2.0 Technologies enable Enterprise Mashups
Situational Applications and Mashups Are not a new category of applicationsDescribe a new area of focus for web application developmentTypically ignored ort under radar of IT departmentsIBM seeks to empower knowledge workers to assembler their own mashups
AssembleSubject Matter experts who may not be programmers can
create web applications to address just-in-time ad-hoc situational needsIntegrate data and markup using widgets to create new utilities
WireBind rich content from disparate sources to create new ways to view informationAdd behavior and relationships to disparate widgets to create a rich interactive application experience
ShareLeverage QEDWiki to
Quickly promote your mashup for use by othersEnable multi-user collaboration on the development of a mashup
34
Portal CompositesPortal Composites
35
Openness
Portals are a way to provide governed mashups combining public information, enterprise apps and data
Critical enabler: Standards based access to integration and innovation
Thin Clients
Mobile Clients
Rich Clients
role-based
composite applications
in context
process-
driven
Security-Rich Composite application or view, that assembles and delivers
services in the form of portlets in the context of a business process
36
WebSphere Portal at IBM
w3 portal for all IBM employees
> 300,000 users
Portlets provide essential information
Highly personalized - displays the right info to the right users at the right time
End-user customizable - users can create custom pages
Has become a key tool for every IBMer
Major productivity gain
Targeted info delivery to usersUsers can easily find the apps they need
37
Portal Composite Applications
DominoData
SAPSiebel
Relational Data
Web Service
Portal Web2.0 Portal Web2.0 Portal Web2.0
38
Desktop and DeviceDesktop and DeviceCompositesComposites
3939
IBM Client Technologies addresses “People, Places, and Things”
Extend/Enhance platform programmability to enable
human and machine integration to/from business
processes
Extend/Enhance human and machine integration to/from
business processes
Extend/Enhance collaboration between
humans involved in business processes
Expeditor 6.1 for Devices
Expeditor 6.1 for Desktop
Sametime 7.5Notes 8.0
Embedded
Line Of Business
Collaboration
4040
What is involved in Desktop Composites ?Integrated client middleware spanning Win2K, WinXP, WinMobile and Linux
“Seamlessly integrate with Web 2.0 content and data but using the power of the desktop operating system”
WEBWEB
DISCONNECTEDDISCONNECTED MANAGEDMANAGED
RICHRICH
COMPOSITIONCOMPOSITION
Expeditor
Web – when needed
– Browse any existing web application Rich – when needed
– Optimized user experience exploiting native platform look and feel
Composition – when needed
– Seamless integration enabling “Composite Applications”
Disconnected – when needed
– Full application support – at the client Managed – when needed
– Install, configure, and maintain both the platform and the applications
4141
Web Composite ? – when needed
Support all full featured web content
HTML + CSS + DHTML + JavaScriptAjax (JWL, DoJo, Custom, Etc. )Local Web Container for Offline
Support Extensions
“Common” Browser Plugins (e.g. Flash, PDF, etc.)AppletsActiveX Controls (Win2K, WinXP only)
Provide Lockdown Browser
URL managementAccess Control
Browse any existing Web 1.0, Web 2.0 & Ajax application
WEBWEB
DISCONNECTEDDISCONNECTED MANAGEDMANAGED
RICHRICH
COMPOSITIONCOMPOSITION
Expeditor
Desktop client middleware spanning
Win2K, WinXP, WinMobile, and Linux
“Extending SOAbeyond the data center to
People, Places, and Things”
WebWeb
4242
When do I use the “Web” capability?
“Headless”(ie, Browser as the shell)
“Headless”(ie, Browser as the shell)
“Integrated”Container
“Integrated”Container
Example: Render “Classic” Web App (i.e.: Remote) either “Headless” or “Integrated”
4343
What is Rich – when needed
Enable Platform native look and feel …
Enable Drag and Drop
Enable Keyboard integration
Enable 2D/3D and Vector Graphics
Enable Hardware Device Integration
Enable protection from OS Level Changes
Optimized user experience exploiting native platform look and feel
WEBWEB
DISCONNECTEDDISCONNECTED MANAGEDMANAGED
RICHRICH
COMPOSITIONCOMPOSITION
Expeditor
Desktop client middleware spanning
Win2K, WinXP,WinMobile, and Linux
“Extending SOAbeyond the data center to
People, Places, and Things”
RichRich
4444
Composition – when needed
Enable “Mashups” across pre-existing and new application types
Swing, AWT, Native, .NET, Web, Portlet, Forms, RCP, Flash/FLEX, Text Terminal, Etc.Local data integration between applicationsLocal event integration between applicationsCreate new views on existing applications
Enable complete Desktop management
Optimize real estateControl overall look and feelCustom brandingConfigurable access
Seamless integration enabling “composite applications”
WEBWEB
DISCONNECTEDDISCONNECTED MANAGEDMANAGED
RICHRICH
COMPOSITIONCOMPOSITION
Expeditor
Desktop client middleware spanning
Win2K, WinXP, WinMobile, and Linux
“Extending SOAbeyond the data center to
People, Places, and Things”
CompositionComposition
4545
Disconnected – when needed
Enable better responsiveness
Minimal round trip to server(s)Improve end to end scalability
Locally hosted business logicEnable transparent server interaction when server becomes available
Outgoing - Complete transactions when connectedIncoming - Refresh/Update local content when connected
Enable mobility
“Full” disconnected for long periods of time (i.e.: on an airplane)
Full application support – at the client
WEBWEB
DISCONNECTEDDISCONNECTED MANAGEDMANAGED
RICHRICH
COMPOSITIONCOMPOSITION
Expeditor
Desktop client middleware spanning
Win2K, WinXP, WinMobile, and Linux
“Extending SOAbeyond the data center to
People, Places, and Things”
DisconnectedDisconnected
4646
Managed – when needed
Enable flexible points of control
One time setup; subsequent lockdown desktopLockdown browser (URL, Access Control, etc.)Lockdown composite applications
Dynamic, self managed by end userDynamic centrally managed via server
Continue to maintain a lockdown user view of the systemCombinations of end user and central server managed
Enable central visibility
ApplicationsConfigurationsHistory, Inventory and Status
Enable remote access
Administrator scheduled jobs on the client
Install, configure and maintain both the platform & the applications
WEBWEB
DISCONNECTEDDISCONNECTED MANAGEDMANAGED
RICHRICH
COMPOSITIONCOMPOSITION
Expeditor
Desktop client middleware spanning
Win2K, WinXP, WinMobile, and Linux
“Extending SOAbeyond the data center to
People, Places, and Things”
ManagedManaged
47
ExpeditorExpeditor
48
Workbench
Composite Application Communication
Rich Client PlatformRich Client Platform
Equinox (OSGi)Equinox (OSGi)
NativeNative
WebWebEclipseEclipse
PortletsPortlets
PropertyBroker
PropertyBroker
In a nutshell you have to provide the functionality to send data and you have to provide an entry point for the property broker to call your component to let it know new data has arrived!
WSDL File = WIRE
WIRE
4949
Expeditor 6.1Create easy to use Composite applications
5050
Expeditor 6.1Example: Create easy to use applications
5151
Expeditor 6.1 for Devices
52
Collaboration CompositesCollaboration CompositesSametime and NotesSametime and Notes
5353
IBM Lotus Sametime 7.5
Instant Messaging
New chat user experience New IM client with comprehensive integration and features
Web Conferencing
New Web conference user experienceEasy, fast and reliable entry to Web conferences
Beyond IM and Web Conferencing
Communities, broadcast applications, and other innovations around Web 2.0
Enabling the second generation of real-time collaboration
5454
Sametime + Expeditor3rd party application accessing real time business data based on buddy list
5555
For each user, we have information about their current location
For each user, we have information about their current location
We can overlay this info onto a map to see where colleagues are
We can overlay this info onto a map to see where colleagues are
3rd party web / presence mashup
Sametime + Expeditor
5656
Sametime + Expeditor
3rd party Dialog extensions for Keyword Types and User Defined Keywords
This example delivers sales information from a local spreadsheet to the chat partner
Other examples: search, retrieve data from an application, post information to a log, check status
3rd party extension of chat with real-time business process integration
57
Notes 8Notes 8
5858
The next generation of Notes built on Expeditor
Expansion of capabilities and integration
Adapting technologies to new uses
Converging current Notes, Sametime andPortal applications into “composite apps”
Dramatically enhanced GUI
Powerful ODF compliant productivity editors
Document management
Team Workspaces
Activity Management
Virtualization of clientServer managed & provisionedExpeditor servicesWindows, Linux, Mac
What is Notes 8?
59
Don’t forget Lotus Expeditor, ST and Notes 8.0 are Rich Composite ClientsDon’t forget Lotus Expeditor, ST and Notes 8.0 are Rich Composite Clients
60
Demo
61
SummarySummary
Web Based Composites with Web 2.0Portal Based CompositesDesktop/Device Composites
Expeditor 6.1 Sametime 7.5 Notes 8.0
62
Resourceshttp://ibm.com/developer (IBM developerWorks for technologies and/or products)
Java, J2EE, Web Services and other technology zones are on the left hand sideWebSphere Zone: http://ibm.com/developer/websphere Rational Zone: http://ibm.com/developer/rational Free Education Portal: http://ibm.com/developer/training
http://www.redbooks.ibm.com (How-To Step-by-step Practical Implementation Books)
http://JavaSOA.com (a.k.a. JavaDevTools.com, RationalCentral.com, WebSphereCentral.com)
(Tutorials, Links, Presentations, White Papers, Articles, etc.)
top related