Date post: | 11-Jan-2016 |
Category: |
Documents |
Upload: | donna-lane |
View: | 213 times |
Download: | 1 times |
ALUI Features and Architecture Overview
Song Hu
Agenda
Product Introduction
Overview of User Experience Features
Overview of Web Service Features
Overview of Content Management Features
Overview of Administration Features
Overview of Architecture
Overview of Development
Overview of Advantage of ALUI
Q&A
BEA Corporate OverviewLeading Application Infrastructure Company
One of ten largest software companies in the world Over 16,000 blue-chip customers worldwide Majority of Fortune Global 500 companies rely on BEA
Demonstrated Strength and Stability $1B+ in Sales >$1.6B in cash 31 consecutive quarters of positive cash flow
Global presence 77 offices in 37 countries Over 4,000 employees
Strategic Industry Influence More than 2100 systems integrators, independent software vendors, and
application service providers Driving innovation into standards—J2EE, XML, Web Services, SIP
BEA Business Interaction Division (BID)Born from acquisition of Plumtree Software
Leading pure-play portal and collaboration vendor Over 750 customers Half of the Fortune 50 use our software
Open, Integrated Product Family Covers portals, composite applications, collaboration, search,
publishing and process management Native .Net, Java platforms Cross-platform programmability across all products
Our focus: user interaction and collaborative software for SOA
Deployment Experience
24M licensed users
Aqualogic User Interaction has largest deployed portals 141 deployments with over 10,000 users 72 deployments with over 50,000 users 47 deployments with over 100,000 users 9 deployments with over 1,000,000 users
City of Calgary: 2M users
Boeing: 1.5M users
Average TCO well-established $.78 services to $1 license
Industry’s Best-Integrated Platform
Portal, search, collaboration, content publishing, integration
Unified interface, security, administration and management, meta-directory
High ROI
Low TCO
Time to Value
ALUI Products Include…
AquaLogic Interaction (ALI): portal and user experience framework
AquaLogic Interaction Collaboration: collaborative tools and services for sharing documents, tasks, calendars
AquaLogic Interaction Publisher: Web content management and distributed Web publishing services
AquaLogic Interaction Process (ALIP): human-oriented BPM, pre-integrated with ALI and ALI Collaboration
AquaLogic Interaction Search: full-featured search engine, pre-integrated with all ALUI products
AquaLogic Interaction Studio: Web-based portlet builder for non-developers
AquaLogic Interaction Analytics: usage analytics and measurement engine for all ALUI products
BEA AquaLogic User InteractionTM
User Interaction and User Experience Framework for deploying broad range of solutions
Activity Servers incorporate collaboration, Web publishing, search, BPM services into portals and composite applications
Infrastructure services: gateway, assembly engine, automation server
Web Services engine integrates systems, content, users
AquaLogic Interaction
Portal Communities Applications
Collaboration Publisher
Process
Studio Search Analytics
Integration Services / IDK
Data Content Security
Plumtree Product Suite
Portal
Collaboration Server
Content Server
Studio ServerWeb Services Crawler, Authentication, Profile,
Search
Portlet Frameworks / Suites Documentum Portlet Suite
Lotus Notes Portlet Suite
Exchange Portlet Suite
Excel Portlet Framework
EDK Extensions SAP EDK Extension
Peoplesoft EDK Extension
Portal Framework
Studio Collaboration Search
Admin Content Server Directory
Web Services EnginePla
tform
an
d S
erv
ers
Crawler
Excel
Exchange
Authentication
Profile Search
SAP
Peoplesoft
Inte
gra
tion
Pro
duct
s
Port
let
Suit
es/
Fra
mew
ork
s
ED
K
Exte
nsi
ons
Notes
Web
Serv
ices
Three Configurations
Portal Suite
Community Suite
Composite Application
Suite
AquaLogic Interaction
Integration Services / IDK
Data Content Security
Search
AquaLogic Interaction
Studio Search
Integration Services / IDK
Data Content Security
Collaboration Publisher
AquaLogic Interaction
Collaboration Publisher
Process
Studio SearchAnalytic
sIntegration Services / IDK
Data Content Security
Agenda
Product Introduction
Overview of User Experience Features
Overview of Web Service Features
Overview of Content Management Features
Overview of Administration Features
Overview of Architecture
Overview of Development
Overview of Advantage of ALUI
Q&A
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
MyPages
MyPages: a portal to personal productivity
Pages configured by individual users
Pages based on profile templates
Everything are portlets Content Snapshots: contextu
alized content from KD Administrator can force man
datory portlets MyPage
Portal Components - Pages
Page is composed of many portlets
MyPages have multiple pages
Sales CommunityPage 3
Sales CommunityPage 2
Sales CommunityHome Page
Exec Community Page 3
Exec Community Page 2
Exec CommunityHome Page
MyPage
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
Community
Communities: a portal for user groups
Deploy services, content to groups
Departmental or workgroup applications, workspaces
Benefits Reduce training costs Reduce hardware, Intranet
sprawl Share information better HR Community
Solutions Products Why Plumtree
Community Pages
The content manager / contributor takes over after the community is created
The content manager determines which pages and portlets are appropriate for the community
Content and Application
PortletsPages
Community
Communities contain a collection of pages
Pages contain a collection of portlets
Navigating the CommunitiesTo to go to a Community, click the My Communities tab, then click on the Community name.
Users can “Join” Communities that they have access to.
Portal Components – Communities
Communities are sites within the portal designed for a specific audience or task.
Each Community will be populated with Pages that display content relevant to the Community or that allow members of the Community to work together.
Each Community can have multiple pages, applications, and sub-communities.
Some communities will be mandatory.
Users can join additional communities they are interested in.
Portal Components – Sub-CommunitiesA Community can have Sub-Communities that contain content and functionality that is specific to subsets of that community
Like communities, each Sub-Community has a home page and one or more pages
A Sub-Community can have its own Sub-Communities
Sub-Communities allow different business users to manage sections of Communities
ITHome Page
TelecomHome Page
System EngineeringHome Page
Service DeskHome Page
Content OverviewCommunity pages are filled with portlets
Content
Applications
Snap shot query
Knowledge Directory is filled with documents Crawlers to import documents
Manually submitted documents
Folders that contain links, web pages and experts
Community Knowledge Directory
Each community is responsible for managing documents and folders that represent their business or functional area
Global Knowledge Directory
CorpComm
HRIT
Telcom Sys Eng
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
CollaborationCollaborative workspaces
Document sharing, check-in/check-out
Project management
Tasks, calendaring
Moderated threaded discussion
Web services APIs
Common Customer Use Cases Workspaces for online document sharing
Extranet sites provide premium customer support
Information sharing with partners and suppliers
Portal Components – Collaboration Projects
Allow portal users to create an online Collaboration environment for sharing project information:
Project Calendar
Task Lists
Documents
Online Threaded Discussions
Roles within the Collaboration space
Project Lead, Project Member and Project Guest
Feature Overview: Project Management
Project Management: extend the individual to the enterprise Dependencies: supports dependent tasks and date shifting
MS Project integration: import and export Project files as task lists
Import task lists with multiple dependencies and task owners.
Feature Overview: Document Approve/Reject
Moderated discussions: route discussions through approvals New discussion messages require moderator approval
Moderators may edit messages before publishing the information
Approve or reject new messages directly from e-mail
Approve or reject new discussion messages from the Web UI or directly from a notification e-mail
Feature Overview: MS Office
Microsoft Office Integration: use familiar office tools Edit documents in Office applications without downloading locally
Create new documents in projects directly from Office applications
Create new documents from Office templates
Edit document directly from Microsoft Office without downloading a local copy
Feature Overview: WebDAV
Web Folders: manage documents with Windows Explorer View, access, share project documents through Windows Explorer
Create new projects with a simple drag and click
Documents opened via Windows Explorer check out automatically
Manage project documents and create entirely new project all from Windows Explorer without ever moving to the Web UI
Feature Overview: Bulk upload & Crawl
Bulk upload: upload many folders and files at once
Collaboration Server Crawler: crawl and index documents Crawl specific folders within a Collaboration project and automatically
publish to the Knowledge Directory
Upload directory structures and multiple files at once to a Collaboration Server project
Feature Overview: IM support
Appends presence awareness on every user in the system
Send instant messages to document authors, task owners, etc.
Logs conversations as searchable files for future use
Collaboration Server 4.0 is IM-enabled to leverage the IM system of choice.
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
Content Publishing
Templated Web content publishing
Workflow, content approval Library services: version-con
trol Publishing: intranet, extranet,
knowledge directory, applications
Portlet creation wizards Web services APIs
Solutions Products Why Plumtree
Common Customer Use Cases Portal Content Development Content Management including
workflow Branding for the portal
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
Web Services API
A sales support application integrates the latest sales opportunities from a CRM system.
Web Services API
To expedite the sales process, a sales manager can generate a close plan for each opportunity…
Web Services API
…which populates the application with tasks, documents and discussions required to close the sales opportunity.
Web Services API
A customer support application allows users to file new incidents that are tracked in a CRM system.
Web Services API
For each new incident, customer support engineers may append an online workspace to improve resolution time.
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
User Experience: Knowledge Directory
Knowledge Directory: a portal to corporate content
Crawlers assemble links to documents, email, Web
Categorize in rule-based taxonomy
Taxonomy created through the Web by distributed content managers
Content managers can:
Create/schedule crawlers
Create taxonomy folders
Create folder rules
Control security
Knowledge Directory
Knowledge Directory
Your portal Knowledge Directory displays links to documents
External or internal Web pages
Office documents
Any files on your file server
The Knowledge Directory gives structure for these links with folders and subfolders, much like a file system. This structure makes it easy for employees to browse or search the Intranet for information available on a given subject.
Knowledge Directory
Divisions( 6)
Functional (HR, Payroll, PBS)
East Region
Divisions (6)
Functional (HR, Payroll, PBS)
Operations (20)
Northwest Plains
Operations (20)
Divisions (6)
Functional (HR, Payroll, PBS)
Southwest Region
Operations (20)
NRC
HR
Payroll
IS
PBS
ISSO
CommunicationsPBS
Finance
Safety
Browsing the Knowledge Directory
Browsing the Knowledge Directory is similar to locating a document using Windows Explorer
Using browse, you can click deeper into the Directory and see the contents of individual folders
Users will only see the documents and folders if they have the correct access
Knowledge Directory Organizing a Taxonomy
Competitive
East
West
Win/Losses
East
West
Sales Sales
East
Competitive
Win/Loss
West
Competitive
Win/Loss
?
Knowledge Directory Fill with Content
Crawlers Crawler Web Service
Large number of documents
Manual submission Simple
Remote Document
Web Document
One document at a time
Knowledge Directory fill with Content - Manual Submission
Community Member/User submits a document
Content Manager approves document
Users can now view document in the
Knowledge Directory
START
FINISH
Knowledge Directory Fill with Content - Crawlers
START
Examine sources of information
Create folders
Apply security to folders
Develop text and property filters
Apply filters to folders
Create file data sources
Add portal properties from metadata
Develop and train crawlers
Create and run crawler jobs
Approve content and publish
FINISH
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
Portal Experiences: One Into Many
Company has many products
Wants to give each product line its own branded site
URL
UI
Login page
Home page
The same user can access all products
Central IT wants to consolidate infrastructure
Portal Experiences: One Into Many
SOXA HiPER
Multiple Products
Multiple Portal-Based Applications
Portal Experiences: One Into Many
1. IT sets multiple URLs to point to single portal deployment• 1 URL for each product
2. Create Guest user for each product• Edit profile so MyPage looks like a login page
3. Create Experience Defintion (XD) for each product• Set home, navigation, and branding for each product
• Specify each XD to use the respective guest user as login page
4. Set Experience Rules• Each URL is associated with respective XD
Portal Experiences: To Each His/Her Own
Parent company has many subsidiaries Each subsidiary operates independently
Each subsidiary wants separate user experiences
URL
UI
Login page
Home page
…but shared content and services
Central IT wants to consolidate infrastructure
Portal Experiences: To Each His/Her Own
portal.Plumtree.com one.bea.com
Portal Experiences: To Each His/Her Own
1. IT sets multiple URLs to point to single portal deployment• 1 URL for each subsidiary (portal.plumtree.com; one.bea.com; support.plumtr
ee.com)
• This happens outside of the portal
2. Create Guest user for each subsidiary
3. Create Experience Definition (XD) for each subsidiary• Set home, navigation, and branding for each subsidiary
4. Set Experience Rules• Each subsidiary parent group associated with XD
• Each URL is associated with respective XD
5. Set ACLs on top level admin and directory folders so only users from respective subsidiaries can access contents
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
Integrated SearchSearch Server
Multi-language, scaleable search
Extensible Web services scan existing content
Search across multiple sources of content, communities, portal pages at the same time
“Snapshot” contextual content into portal pages, applications
Benefits Increase productivity
Increase accuracy of search
Reduce redundancy
Solutions Products Why Plumtree
Search and Results
Searching the Portal
Global search is built in to the portal and located in the top banner
Searches all documents and content within the portal
It can perform complex text searching:
<AND>
<OR>
<PHRASE>
<SENTENCE>
<NEAR/3>
<WORD>
<TYPO>
Searching the Portal
Advanced search lets you include multiple object types, plus additional search criteria
You can restrict searches to particular folders in the Knowledge Directory
Knowledge Directory Share Portal Content
Snapshot Queries Saved searches that the Portal runs in the background and caches for use on
Community pages
Knowledge Directory
AdministrativeHierarchy
Communities
ContentServer
CollaborationServer
Top Best Bets -> Marketing URLsTBB = navigation feature based on search best bets
TBB is the top result for any best bet phrase
Directly opens the top result instead of just returning search result
Accesible by “>” prefix in search Search for “<KEYWORD>” equals regular search
Search for “><KEYWORD>” equals top best bet
Portal URL changes “<BASE URL>/portal/server.pt?...” goes to “<BASE URL>/tbb=<KEYWORD>”
Use URL mapping to make Marketing URLs Map “keyword.portal.com/” to “portal.bea.com/portal/server.pt?tbb=“ in DNS
Then “keyword.portal.com/<KEYWORD>” will equal “portal.bea.com/portal/server.pt?tbb=<KEYWORD>”
Will run TBB search
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
Studio Wizard
WYSIWYG data element builder, no-coding
Surveys, polls, simple database applications
Data import utility, supports existing CSV, XML, Excel files
Common Use Cases Internal Surveys Capture and report shared
data
Solutions Products Why Plumtree
Overview of User Experience Features
MyPage
Community
Collaboration Collaboration
Content publishing
Extend Collaboration using Web Service API
Knowledge Directory
Portal Experience: One-in-Many
Search
Studio
Analytics
Analytics Application
Community Traffic
Audience Correlation
Portlet Usage
Web ServicesCrawler Web Services
Scans file systems or existing document repositories for new content, categorizing links to content in the organized, searchable structure of the Plumtree Knowledge Directory.
Out-of-the-box for NT, Documentum, Exchange, Lotus Notes
Authentication Web Services Scans remote user directories to create and synchronize users in the portal.
Can be used for authentication.
Automates population of groups and security.
Out-of-the-box for NT, LDAP, Active Directory
Profile Web Services Scans remote repositories of user information/attributes to associate with portal
users.
Used to customize and personalize the portal experience.
Search Web Services Provide personalized or customized search of secure external information
sources.
Portlet Suites & Frameworks
Portlet Suites provide out-of-the-box Portlets that can be configured to work with your existing systems
Documentum Portlet Suite
Lotus Notes Portlet Suite
Exchange Portlet Suite
Portlet Frameworks provide a way for users to create and customize their own Web Services and Portlets
Excel Portlet Framework
EDK Extensions
Previously we customized portlet suites for integration with back-end systems like SAP and Peoplesoft
To provide customers with more flexibility, now moving to provide API support to let users do their own integration
EDK extensions provide product-specific additions to our Plumtree EDK
Currently offer SAP and Peoplesoft
Agenda
Product Introduction
Overview of User Experience Features
Overview of Web Service Features
Overview of Content Management Features
Overview of Administration Features
Overview of Architecture
Overview of Development
Overview of Advantage of ALUI
Q&A
Community and Page Templating
Predefines community pages
Community and page templates secured
Changes in templates pushed to associated communities
Communities: Portlet Frameworks
Activity Servers provide portlet frameworks for Communities
Analytics: create portlets for measuring usage and performance
Publisher: announcements, news articles, Web publishing portlets
Studio: polls, surveys, MSFT Access-like record applications
Other frameworks: Excel Framework: create portlets from
Excel workbook content Snapshots: saved search portlets, with
configurable metadata and temporal parameters
RSS framework: RSS portlets
Portlet frameworks are extensible
Example: Excel Framework
Select Portlet Template
Configure Portlet
Layout, specify for Community or Personal pages
Select file by uploading, choosing previously uploaded file, or link to file on Network share
Framework introspects Excel Workbook for Chart objects or named ranges. Select type of portlet
Set data display options. Unique options for both tables and charting types
Set portlet display options: header/footer, images, time-stamping. Save as portlet object
Agenda
Product Introduction
Overview of User Experience Features
Overview of Web Service Features
Overview of Content Management Features
Overview of Administration Features
Overview of Architecture
Overview of Development
Overview of Advantage of ALUI
Q&A
Overview of Administration Features
Unified Administration Console
Security Security Role and Security Inheritance
Integrated AdministrationAdministration
Single, unified, integrated console Flexible security allows delegated administration Hierarchical structure mirrors file folder structure,
allows for inheritance
Solutions Products Why Plumtree
AdministrationBenefits
Reduction in both time and cost of training
Delegated administration
Delegated Administration
Delegated AdministrationFolders secured via ACLs
Multiple object types in any folder
Hierarchical “application space” for community or user development
Sub-FolderCommunity
Sub-Portal
Object Types
Topics
Restricted AdministrationAccess to utilities is governed by activity rights and can be accessed from anywhere within the console
Users can only create objects in folders where they have the proper permissions
Object creation drop down
Administrative utilities
Actions on current folder
Portal Rights / Privileges
Community Creator(create communities)
Portlet Creator(create Portlets)
Sales Group
User A User B User C
Departments FolderSales Group – ReadR&D Group - Read
Sales FolderSales Group – EditR&D Group - Read
R&D FolderR&D Group - Edit
Users A and B can create communities and Portlets only in the Sales Folder. User C can see sales objects.
R&D Group
User C can create only Portlets only in the R&D Folder. Users A and B cannot see any R&D objects.
Activity Control Access Control+ = Portal Rights
Access Control – Who can access whatActivity Control – Who can make or do what
Group Specific Global Activity Rights
Precisely Delegate Rights
Critical Community Roles
Community Owner / Manager Identified by Company
Content Managers Identified by Community Managers
Content Contributors Identified by Community Managers &
Content Managers
System Admin Portal administration
Community Pages Content Management
Build Portlets
Add Pages to Community
Set security
Add Portlets to Pages
Knowledge Directory Content Management
Organize the taxonomy
Fill with content
Share Portal content
Set security
Knowledge Directory Security
Set security on each folder Sub folders inherit parent folder’s security settings
Additional settings can be made at the sub folder level
Set security at a document level if needed
Security types: No access
Read
Edit
Admin
Ability to specify whether the user can submit the documents manually
Global Knowledge Directory
IT
Telcom Sys Eng
Agenda
Product Introduction
Overview of User Experience Features
Overview of Web Service Features
Overview of Content Management Features
Overview of Administration Features
Overview of Architecture
Overview of Development
Overview of Advantage of ALUI
Q&A
Overview of ALUI Architecture
Overall Architecture
How Does it works
Content Server Architecture
Analytics Server Architecture
Technical Architecture
RemoteServer(s)
Intranet Search Engine
Internet Search Engine
Authentication Server
ContentRepository
User Attributes
AquaLogic Interaction
Integration Services
Database Automation Service
Collaboration Publisher
Process Analytics
Studio Search
DataService
DataService
DataService
Content
Service
Content
Service
DataService
Content
Service
IdentityService
IdentityService
IdentityService
ODBC/ XML
ODBC/ XML
TCP XML
HTTP(S) / SOAP
HTTP(S)HTML /
XML
HTTP(S) / SOAP
Application Application Application
How It Works: Importing Users
Portal Server
An authentication Web service imports users into the AquaLogic Interaction database. This import is scheduled by the Automation Server.
Automation Server
AuthenticationWeb service
(AWS)
ActiveDirectory
RDBMS
How It Works: Logging into the Portal
User
Portal Server
SSO (optional)
1. AquaLogic Interaction can accept SSO tokens from a log-in form.
1
Automation Server
2. AWS authenticates the user against Active Directory
AuthenticationWeb service
(AWS)
ActiveDirectory
2
RDBMS
3. After initial log-in, the portal server retrieves user information from the AquaLogic Interaction database. Information such as community, memberships and Portlet preferences.3
Components Integration Services
CRM
ProfileWeb service
(PWS)
How It Works: User Personalization
A profile Web service provides additional attributes about the users from other systems. The portal incorporates these attributes as part of a user’s profile, and can send these attributes to portlets for advanced personalization. The service is scheduled by the Automation Server.
Portal Server
Automation Server
ActiveDirectory
RDBMS
CRM
ProfileWeb service
(PWS)
AuthenticationWeb service
(AWS)
Remote Server Machine: Windows or Solaris
How It Works: Crawling
Remote Server: Base URL
Crawler Web service
• Server Settings
• Help Pages
• Admin, User, Community Prefs
• Authentication
Data Source
• Repository access info
• WWW
• Remote
Crawler
• Target
• Security Settings
Knowledge Directory
Crawler
• Target
• Security Settings
Folder
Excel File
Word File
PowerPointE-Mail
Job Filter
Adding Content to the Directory
Portal Server
RDBMS
KnowledgeDirectory
SearchCrawler Web
Services
1. Scheduled by the Automation Server, Crawler Web services scan repositories for new content to index in AquaLogic Interaction Search. Document metadata is stored in the portal database, and organized in the portal’s Knowledge Directory.
ExternalRepository
Automation ServerHTTP
2. The portal communicates directly with the CWS via HTTP whenever a user needs to open a document. HTTP communications occur via the parallel engine & the gateway
Parallel Engine
Gateway
3. AquaLogic Interaction Publisher publishes Web pages & content Portlets through a workflow to a standard Web server; AquaLogic Interaction Collaboration manages project documents & discussions; all content as well as portal objects are indexed in AquaLogic Interaction Search and can be published to the Knowledge Directory.
Collaboration
Publisher
DocumentRepository
1
2
3
Entries in the portal’s Knowledge Directory consist of links to the original repository plus metadata about the original documents, not copies of the documents themselves.
Searching for & Opening Documents
Portal Server
RDBMS
KnowledgeDirectory
Search
Crawler WebServices
ExternalRepository
Automation ServerHTTP
Parallel Engine
Gateway
3. When processing a search, the portal may use Search Web services to federate searches to other systems while also issuing the search to its own index. Results are combined in one set.
Search WebServices Other systems
HTTP
2a. When a document is gatewayed, the user's Web browser retrieves the document via the portal. This prevents the user's Web browser from having to connect to the server where the document is stored.
1. Entries in the portal’s Knowledge Directory consist of links to the original repository plus metadata about the original documents, not copies of the documents themselves.
2b. A Datasource defines how to reach the repository in which a document resides
1
2a
3
2b Datasource
How It Works: Assembling a Page
6. All communications between user and Portlets are processed through the Gateway; HTML, XML and documents hosted behind the firewall are rendered by the Gateway.
Gateway
Portlet
1. The IDK is a set of design-time tools for coding Portlets and other integration Web services with Java and .NET.
IDK
2. To process a page request, the portal server retrieves the definition and the preferences for each Portlet in the page from the AquaLogic Interaction database.
RDBMS
2
Application/Data Store
4. The Portlet assembles data either communicating through APIs or database connections.
4
5. Based on the preferences, the Portlet returns HTML or XML to the portal. XML is transformed into HTML by XML transformation Portlet service
PortalPage
5
6
Parallel Engine
3. The portal sends Portlet’s preferences back to the Portlet via HTTP headers, issuing requests to Portlets via a parallel engine.
3
7. Each Portlet features a page for users to configure the Portlet to their needs. This page gathers preferences from a user and sends the preferences to the portal for storage in the RDBMS.
PortletConfig.Page
7a
7b
How It Works: Gateway
Portal Server
Gateway
PortalPage
Client (Web Browser)
Portal Database
3. The portal receives an HTML from a client portlet and parses the HTML. If an URL is in the gateway space, then the portal transforms that URL so that it refers to the portal server.
4. The portal allows the gatewayed remote service to access preferences and portal objects.
2. The portal administrator specifies gateway URLs for a Web Service object to provide client access to otherwise unreachable files (inside the firewall).
3
4
Firewall
1. A secure gateway acts as a reverse proxy between remote servers and end-users, allowing customers to safely expose sensitive applications to the extranet
Portlet Web service
2
Remote Server
1
Creating User Experiences: Administrative Hierarchy
AquaLogic Interaction
AdministrativeHierarchy
An administrative hierarchy houses all of an application’s objects & defines the application’s security. When creating a new application, an administrator typically creates a new folder in the hierarchy, such that all the objects within that folder inherit the security of the folder. This eases migration, security changes and delegated administration.
Creating User Experiences: Experience Definition
AquaLogic Interaction
BrandingEngine
AdministrativeHierarchy
NavigationScheme
Experiences
UserExperience
A experience definition defines each user’s experience, which can include one or more applications. Each subportal can feature a different navigation scheme and branding. A Publisher component that installs with the AquaLogic Interaction, the branding engine, controls the appearance of each subportal. AquaLogic Interaction also offers an adaptive styles mill that propagates font and color changes across every page hosted by every component of the suite, so the user experience is seamless across products.
Adaptive CSS Mill
AquaLogic Interaction
PageTemplate
CommunityTemplate
BrandingEngine
AdministrativeHierarchy
Pages
NavigationScheme
Experiences
UserExperience
Each application within the portal is created as a community, from a community template. A community template dictates which pages are in the application, and a page template determines the Portlets for each page. Administrators can update many communities at once by editing these templates. Each community can be separately branded, overriding the subportal brand.
Adaptive CSS Mill
Creating User Experiences: Communities
Creating User Experiences: Portlets
AquaLogic Interaction
PageTemplate
CommunityTemplate
BrandingEngine
Web ServicesObject
IntegrationWeb Services
AdministrativeHierarchy
Pages Portlets
Adaptive PortletsFramework
NavigationScheme
Experiences
PEI
UserExperience
The Portlets within a page can be generated from a Portlet template known as a Web services object, with each Portlet differentiated by administrator-level preferences. Portlets interact with one another within the application using Adaptive Portlets technology, based on JavaScript in the user interface. Programmable Event Interfaces (PEI) allow developers to embed new functionality into the application at key junctures, such as on log-in, without changing core UI.
Adaptive CSS Mill
Creating User Experiences: Projects
AquaLogic Interaction
Collaboration
ProjectTemplate
PageTemplate
CommunityTemplate
BrandingEngine
Web ServicesObject
IntegrationWeb Services
AdministrativeHierarchy
Pages Portlets Projects, Documents
Adaptive PortletsFramework
NavigationScheme
Experiences
PEI
UserExperience
Collaboration projects, with shared documents, discussions & tasks, work hand in hand with communities, based on a complementary templating system known as project templates, which seed new projects with a starting set of documents & tasks.
Adaptive CSS Mill
Creating User Experiences: Content
AquaLogic Interaction
Collaboration
ProjectTemplate
Publisher
Data EntryTemplate
PresentationTemplate
PageTemplate
CommunityTemplate
BrandingEngine
Web ServicesObject
IntegrationWeb Services
AdministrativeHierarchy
Pages Portlets Projects, Documents
Web Content
Adaptive PortletsFramework
NavigationScheme
Experiences
PEI
UserExperience
A Web publishing system captures content in self-service forms known as data entry templates, and publishes the content as Portlets or Web pages via a presentation template.
Adaptive CSS Mill
Creating User Experiences: Knowledge Directory
Collaboration
ProjectTemplate
Publisher
Data EntryTemplate
PresentationTemplate
PageTemplate
CommunityTemplate
BrandingEngine
Web ServicesObject
IntegrationWeb Services
AdministrativeHierarchy
KnowledgeDirectory
Pages Portlets Projects, Documents
Web Content
Adaptive PortletsFramework
NavigationScheme
Experiences
PEI
UserExperience
The portal’s knowledge directory organizes all the content created for each application, in an enterprise-wide taxonomy
Adaptive CSS Mill
AquaLogic Interaction
Content Server architecture
WebDAV
Content Server Portlets• Content Management Tasks• Most Recently User Content• Content Submission• Content Search• Workflow Activities• Workflow Administration• Content Administration
JDO
Content Server Features• Auto-upgrade (rdbms.schema.xml)• Templating language (Tcl)• Clustering
Portal Database
(Portlets, Portlet Templates, Web
Services, Users & Groups)
Content Database
(Folders, Content Items, DET, PT, Users &
Groups, Activity Rights)
Web Analytics: Inaccurate, Hard to Configure, Information Out-of-Date
Application Server
LogFiles
AnalyticsServer
Easy to Install, No Complicated Configuration
Portal Server
PlumtreeAnalyticsServer
Plug-in
PlumtreeAnalytics
DBPMB
JDBC
HTTP
3 Easy-to-Install Components (can run on same server)
Deliver information through analytics application in portal
Deliver community analytics using portlet templates
Agenda
Product Introduction
Overview of User Experience Features
Overview of Web Service Features
Overview of Content Management Features
Overview of Administration Features
Overview of Architecture
Overview of Development
Overview of Advantage of ALUI
Q&A
Overview of Development
Openness and Standards
Layered API
Radical Openness for Developers
Radical openness Every IDK API is in Java and .NET
Use any IDE for development
Host code on any application server
Combine .NET, Java components on a single deployment
Responsiveness Prototype quickly
Plug-in services from existing systems
Develop incrementally: add portlets, add features
Portlet StandardsWeb Services for Remote Portlets (WSRP) Consumer
Supports 1.0 WSRP Specification
Typically used with other tools to hide underlying complexity
WSRP4J
BEA Workshop
NetUnity
JSR 168 Consumer Supports JSR 168; passing 100% of TCK test cases
Runs remotely on Weblogic, WebSphere, Tomcat
Update with G6 to support shared sessions
Tracking future JSR support
JSR 168 Details
Standard is modeled on Java servlet specification Define API via interface classes
Defines JSP tag library
Defines CSS
Requires servlet 2.3
Spec defines a Java Container API for portlet development Developers create portlets by subclassing GenericPortlet class
Spec assumes local execution of portlets
Model allows easy access to IDK portlet APIs, e.g. IDK’s IPortletContext
JSR 168 Strengths and Weakness
Strengths Simplicity: if you can write a servlet,
you can write a portlet
Tools: existing IDEs can be extended to make portlets even simpler to write
Weaknesses Quality of service: when written loc
ally, possible to write portlets that damage the portal
Scalability: when written locally, too many portlets may bog down portal
Platform: Java orientation limits aftermarket
Limited functionality: Support for one type of preferences, limited notion of a user
WSRP Details
WSRP defines interactions between “producer” and “consumer” Defines interface (WSDL) for all portlets
Consumer can be any application
Producer can run on any SOAP-supporting platform
WSRP provides flexible, rich interaction model Loosely coupled relationship between consumer and producer
No additional software install
Supports different flavors of markup: HTML, wireless standards
Different portlet modes and states
Caching model for performance
WSRP Strengths and Weakness
Strengths Radical openness: can develop We
b services in any language, run them on any platform, mix and match them in one deployment
Flexible deployment: can have hosted services, business unit-level services
Extensibility: easy to extend specification for vendor-specific needs
Weaknesses Complexity: knowledge of SOAP stac
k required to implement portlets
Complexity: more focused on protocol for communication, not API usability
Lack of tools: SOAP tools not as well developed, WSRP producer tools non-existent
Extensibility: ease of extension means exaggerated claims for interoperability
Overview of Development
Openness and Standards
Layered API
Developer Tools Architecture
CWS AWS PWS SWS Portlets
CollabRemote APIs
Integration Services
Search Portal Publisher Security
Adaptive Portlet Toolkit UI Customization ToolkitUI Tools
Applications
JAR
Workshop/Eclipse
IDE
DLL
Visual Studio IDE
User Interface Tools
Adaptive Portlet Toolkit UI Customization ToolkitUI Tools
Applications
JARJAR
Workshop/Workshop/Eclipse Eclipse
IDEIDE
DLLDLL
Visual Visual Studio IDEStudio IDE
Remote APIsRemote APIs CollabCollab SearchSearch PortalPortal PublisherPublisher SecuritySecurity
Integration ServicesIntegration Services CWSCWS AWSAWS PWSPWS SWSSWS PortletsPortlets
UI Tools: Portlets
Available as… IDK Portlet API
JSR 168
WSRP
IDK Portlet API Features Rich preference types (superset of JSR 168, WSRP, and WLP)
scoped by portlet & user/community, community page, user, and session
Remote
JSF Components through Java Portlet Tools and .NET Web Controls through .NET Web Control Consumer
UI Tools: Tags
Many out of the box tags or create custom tags
Tags for Populating menus
Displaying lists of users or other objects
Displaying data about a single user or other object
UI Tools: AJAX
Scripting Framework is JavaScript library
AJAX functions
Adaptive Portlet patterns (in place portlet refresh, broadcast listener similar to WSRP events)
Adaptive Portlets
Features Portlet-to-portlet event communication
Portlet-to-server communication: in-place refresh
Adaptive Portlet Patterns
Portlet Development Tools EDK.dll + .NET Web Controls v2.2
EDK.jar + Java Portlet Toolkit
AJAX Architecture Used by Google Maps, Google’s gmail
Portlets embed JavaScript
User action uses HTTP to fetch XML/HTML
UI Tools: Portal Customization
PEIs (Programmable Event Interfaces) for password enforcement or EULAs
CSS Mill for rich style sheet attributes
Experience definitions to apply custom style sheets, navigation, and layouts based on domain or user/group
Support for .NET Web Controls
Microsoft’s Drag-and-Drop GUI for building Web forms Microsoft’s recommended way to do .NET web development
Common UI controls: Calendar, Table, Text Box, Graphing, etc…
Web Controls Framework for 3rd party development
IDK .NET Web Controls Consumer Support Microsoft .NET Web Controls out-of-the-box into the portal
Supports 3rd party controls
Invisible to the developer
Build Adaptive Portlets using the .NET Web Controls in-page portlet refresh for pages built with .NET Controls
Enables Portlet intercommunication with in-page browser refresh
Support for Java Portlet Development
Develop using best-of-breed technologies, IDEs Leverage tools for building any web page
Utilize multiple frameworks: JavaServer Faces, Struts, JSP, …
JSR 168, WSRP portlet standards support
Java Portlet Toolkit Support Java development out-of-the-box into the portal
Supports 3rd party controls: MVCs
Invisible to the developer
Built Adaptive Portlets using the Java Portlet Toolkit In-page portlet refresh for pages built with Java
Enables Portlet intercommunication with in-page browser refresh
Remote APIs
CollabRemote APIs Search Portal Publisher Security
Adaptive Portlet Toolkit UI Customization ToolkitUI Tools
Applications
JARJAR
Workshop/Workshop/Eclipse Eclipse
IDEIDE
DLLDLL
Visual Visual Studio IDEStudio IDEIntegration ServicesIntegration Services CWSCWS AWSAWS PWSPWS SWSSWS PortletsPortlets
UI ToolsUI Tools Adaptive Portlet ToolkitAdaptive Portlet Toolkit UI Customization ToolkitUI Customization Toolkit
Goal of Remote APIs
Provide API services for building applications Speed development by providing building blocks
Code natively, call remotely
Leverage systems proven to scale
Development in Java and .NET, independent of service implementation
Provide API services to manipulate ALUI products Speed deployment, integration to your environment
Secure to your user context
Implement simplified view of existing ALUI features, e.g. discussions
Pull back the covers, give developers access to underlying APIs
Integration Services
Adaptive Portlet Toolkit UI Customization ToolkitUI Tools
Applications
JARJAR
Workshop/Workshop/Eclipse Eclipse
IDEIDE
DLLDLL
Visual Visual Studio IDEStudio IDE
Remote APIsRemote APIs CollabCollab SearchSearch PortalPortal PublisherPublisher SecuritySecurity
UI ToolsUI Tools Adaptive Portlet ToolkitAdaptive Portlet Toolkit UI Customization ToolkitUI Customization Toolkit
CWS AWS PWS SWS PortletsIntegration Services
Services: Remote APIs
SOAP-based web services
APIs for… Portal – Query data about users, documents, etc.
Search – Custom advanced searches based on filters
Collab – Document management, discussion boards, task lists
Content – Form-based structured documents
Integration Services: Identity
Authentication Services Import users from a repository
Similar to WLP’s SPI
Examples: AD (Active Directory) and LDAP
Profile Services Import user data from repositories
Similar to WLP’s user properties
Examples: PeopleSoft HR data
Integration Services: Content
Crawler Services Import document information into our Knowledge Directory
Knowledge Directory only links to repository
Examples: File Crawler, Web Crawler, Documentum Crawler
Search Services Third-party search federation
Examples: Google
Agenda
Product Introduction
Overview of User Experience Features
Overview of Web Service Features
Overview of Content Management Features
Overview of Administration Features
Overview of Architecture
Overview of Development
Overview of Advantage of ALUI
Q&A
Advantage of Using ALUI : Business
Investment Safeguard (Legacy, Present and Future Invest.)
Short “Plan to Production” lifecycle
Low risk
No interference with current project management
Low TCO (Total cost of ownership)
Low training cost
Advantage of Using ALUI: Management
Separated Development Cycles
Quick POC
Short Implementation Cycle
Advantage of Using ALUI: Technical
Pure SOA
Top-down Design (Directly map to business requirement)
Fully Distributed Architecture
Unlimited Scalable Architecture
Unlimited Extensible Architecture
Reusable Components
90% Configuration + 7% Reusable Components + 3% Coding
Supporting all mixed platform
Supporting any HTTP-based connectivity
No firewall nightmare
Gateway technology access internal/external resources
Few bugs
Advantage of Using ALUI: User Experience
High usability
Business people directly involvement
Search capability Crawler Functionality
Content, Discussion, Email search
File system (PDF, MS Office etc etc).
Security boundary
Many in one
ALUI wins 99.9% of the time when…
The customer’s infrastructure is mixed: .NET, Java, PHP, you name it
The customer is interested in freeing IT and developers from building everything, and want configurability over the Web for business users to participate
The customer is interested in leveraging out-of-the-box capabilities, faster time-to-value
The customer is interested in deploying a portal or portal applications that are collaborative or involve intense search, publishing and knowledge management
We do a proof-of-concept against IBM, Oracle or MSFT
ALUI consistently competes strongly against
IBM: WebSphere Portal + WorkPlace strategy and technologies Similar collection of technology, dramatically different configuration
Poorly integrated, massive services bill
Few successful references
Microsoft: SharePoint + WSS + Office 2007 + VS.NET Fine for inside the firewall, but what about your customers, partners
Limited infrastructure choice, flexibility
We consume and extend WSS
Oracle: Portal + Collaboration + Fusion Limited feature set
Poorly integrated products
Single-stack orientation
Q&A