43

Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Embed Size (px)

Citation preview

Page 1: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8
Page 2: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

®

AD405 - Increase your IBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Craig Wolpert, Software Architect, Lotus ISV Technical Enablement

Jo Grant, Software Architect, Lotus ISV Technical Enablement

Page 3: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Legal Information

This information relates to IBM products that are not yet generally available, and therefore should be treated as confidential. This information is provided “as is” without warranty of any kind, express or implied, and is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this document. Nothing contained in this document is intended to, nor shall have the effect of, creating any warranties or representations from IBM (or its suppliers or licensors), or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

Page 4: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Agenda

Introduction

Improve your ROI

Classifying Components

Component Types

Composite Application

Summary

Page 5: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Evolving valuable capability delivered through disparate user experiences...

5

Page 6: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

…into a context-specific dynamic workspace

6

Page 7: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

What are Composite Applications?

Collection of user facing components brought together for a specific business purpose

front end of Service Oriented Architecture (SOA)

Programming model supported in Portal and Notessurface content from multiple systemsaggregate different component types

Support business flexibilitymix-n-match and loose couplinguser effectiveness

Page 8: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Composite Application Model - Definitions

Composite (application)collection of components brought together for a business purpose

Componentcontains UI, business logic and storage (e.g. NSF)

Component viewpresentation service/view into component (e.g. Notes view)

NSF NSF

Page 9: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Improve your ROI

Current Investment:traditional Notes development

Desired Return:benefits of composite applications

How to get there:build components from your Lotus Notes applicationsbuild composite applications from your components

Page 10: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Traditional Notes Development

Elements:Forms – display dataViews – display collections of dataFramesets – display groupings of elementsDatabase – collections of the above

Great but…application layout done at code construction timemodification requests from consumers are implemented by application ownernon-trivial to make different Notes database interactnon-trivial to build interaction with other non-Notes applications

Page 11: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Benefits of Composite Applications

Components are built by people with developer skills and knowledge

Applications can be assembled by people with Line of Business skills and knowledge

Trivial to relate components from different domainsany Notes database can be a source for componentsportlets and web pages can be usedEclipse components can easily front end many other applications

Result: focused applications with incorporated external contextno more flipping from application to applicationno more cutting and pasting

Page 12: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Leverage Composite Applications

How exactly do I leverage the composite application benefit frommy existing Notes application investment?

classifying componentschoosing Notes elements for componentsenabling loose coupling with properties and actions assembling composite application

Page 13: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Classifying Components

Domain Centriccomponent presentation: Wide Columnfocus: Center of Attention

Contextual Domaincomponent presentation: Narrow Columnfocus: Peripheral Vision

Page 14: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

How a component relates to its domainWhat is a domain?

a domain is the primary information space for an applicationdifferent domains might have formal or informal ties between them, such as customer IDs.example: a sales application may deal with sales leadsexample: a service agreement application may deal with contracts

Domain Centric Componenta component used to build functionality for managing a domainprimary job is operating in that domainunlikely to be of interest to other domainsexample: a component to edit a sales lead record

Contextual Domain Componenta component that displays information from a domainoften limited to a targeted subsetoften tied to a linking elementexample: a component that lists the estimated value of all open sales leads for a company

Page 15: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Component Presentation

Component layout is much like frameset layout

Comes down to columns and rows

Wide column componentsrequire a reasonable amount of real estate to display

lots of data (table)lots of detail (chart)

example: Inbox View

Narrow column componentshas tight, focused dataexample: today’s To Do view

Page 16: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Focus

Center of attention componentsestablishes contextprimary work area on a pageexample: Mail Memo Composition

Peripheral componentsadds to contextcontributes information that helps a user operate or composeexample: List of recent contacts or business card

Page 17: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Choosing Notes elements for components

Why can’t I just use my existing Notes elements?

You can, but 1-to-1 is not necessarily appropriate for all of themtraditional Notes application design takes over the whole client space, components share the space with other componentsmost of your existing Notes elements weren’t built to be used in other domainsnavigation is decoupled from information presentation in componentsa collection of Notes elements can make more sense as a single component than as several componentsa single Notes element can contain an area that makes sense as several components

ToolsDomino Designer

So how do I best leverage what I have?

Page 18: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Suggested Component Types

In our own work, we have come up with five general components types:

Detailed Information componentEdit Mode componentSummary Information componentList componentConstrained List component

Take the following as a starting point!caveat: your mileage may vary

Page 19: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Detailed Information Component

Gives full details on one data element type from your data model

TypicallyDomain Centric componentWide Column componentCenter of Attention component

Based on your existing Notes form for the data element

Implementation:a frameset has a minimal frame with a form that listens for an actionwhen the action triggers the document is loaded into the main framevalues of the document are broadcast

Page 20: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Detailed Information Component – Discussion Detail

Action:

• OpenByUNID

Properties:

• Subject

• Category

• Author

• Date

Page 21: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Edit Mode Component

Presents data element type from your data model in edit mode

TypicallyDomain Centric componentWide Column componentCenter of Attention component

Based on your existing Notes form for the data element

May be the same as the Detailed Information Component

Implementationa frameset has a minimal frame with a form that listens for an actionwhen the action triggers the document is loaded into the main frame in edit modevalues of the document are broadcast as they are changedactions can be triggered to set the edit fields

Page 22: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Edit Mode Component – Discussion Edit

Actions:

• OpenByUNID

• SetSubject

• SetCategory

Properties:

• Subject

• Category

• Author

• SetDate

• AppendToBody

•Date

Page 23: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Summary Information Component

Gives targeted details on one data element type from your data model

TypicallyContextual Domain componentNarrow Column componentPeripheral component

Notes form which contains a subset of the data elementa subform if you have onelikely to have several of them when data element is complicated

Implementationa customized form listens for an actionwhen the action triggers the document is loaded and copies needed fields for displayvalues of the document are broadcast

Page 24: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Summary Info Component – Discussion Summary

Action:

• OpenByUNID

Properties:

• Subject

• Category

• Author

• Date

Page 25: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

List Component

Lists collective information on data element type

TypicallyDomain Centric componentWide Column componentCenter of Attention component

Based on one or more existing Notes views

Implementation:a single view is used as-ismultiple views are co-located in a frame set. Navigation may be

internal: e.g. button bar, navigatorexternal: Action trigger

current selection and relevant properties are broadcasteither through column broadcastor through LotusScript onSelect hook

current selection may be set via action trigger

Page 26: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

List Component – Discussion List

Action:

• SelectByUNID

• SelectByName

Properties:

• CurrentUNID

• CurrentName

Page 27: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Constrained List Component

List collective information on a subset of one data element type

TypicallyContextual Domain componentNarrow Column componentPeripheral component

Can be based on an existing categorized Notes view

Implementation:a form is created that embeds the viewembedded view marked to display a single categorywhen the action triggers it sets the categorycurrent selection is broadcast and consumed

Page 28: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Constrained List Component – DiscussionListByCategory

Action:

• SelectByUNID

• SelectByName

• ShowCategory

Properties:

• CurrentUNID

• CurrentName

• CurrentCategory

Page 29: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Composite Application

LayoutDomain Centric and Contextual Domain componentspagestabbed components

Navigation between pages

Loose couplingwires connect properties to actions

ToolsComposite Application Editor

Page 30: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

List Component Scenario

Property Action

Action

Wire

Domain Centric

Contextual Domain

Navigation Wire

Page 31: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Detailed Information Component Scenario

Page 32: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Edit Mode Component Scenario

Page 33: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Making it all work together

Traditional Notes behavior is supportedviewing or editing elements occurs in a separate tabdialog boxes

Additional composite application behaviorseveral pages in the same window (tab)switch automatically or programmatically between pagespages can be hidden from navigator

Page 34: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Extending with Non Notes Components

Create componentsEclipseLotus ExpeditorWeb [via the embedded browser]

Notes platform includes other optionsLive NamesBusiness CardContextual Buddy ListFeed ReaderActivities

Page 35: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Notes out of the box Components

PIM (Personal Information Management) databases are NSF based composite applications

Notes MailNotes CalendarNotes Contacts

Component interaction and property broker supportproperties and actions defined in shipped templatesadd custom properties and actions via Domino Designer

Use as Notes components in your custom composite applications

Page 36: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Portal based Composite Applications add Value

NSF based Composite Applications are a proper subset of Portal Composite Applications

NSF does not support the life cycle and template model of portal

Role based: page is created based on user access rights – used to restrict pages and/or components from pages

Web based experience with a unified application model with client

ToolsPortal Application Template EditorIBM Lotus Components Designer XML document store is hosted on Portal

Page 37: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Get Started Now

Create Domain Contextual components

Integrate with Notes out of the box Components

Make your Notes application a composite application and begin adding components

See you in the Solution Developer's Sanctuary in Asia 4!

Page 38: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Summary

Evolution not revolutionoriginal Application still works exactly the samemodifications gracefully degrade in previous versions of Notesnew application can be used by focus groups without impacting majority usersDomain Contextual components can be used in other composite applications with no impact to core usersloose coupling for component interaction

Components can be used to build focused applicationsapplications can be assembled differently to reflect different rolesdifferent groups can reconfigure components without altering primary notes applicationapplication may be easily extended to include components from other domains

Integration and collaboration tools in the context of everyday applications

Page 39: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Related Sessions

JMP401 Introduction to Composite Applications for IBM Lotus Notes and Domino and IBM WebSphere Portal

AD406 Building Composite Applications for IBM Lotus Notes 8

AD407 How to build IBM Lotus Notes Components for Composite Applications

HND102 Building Composite Applications for IBM Lotus Notes 8

Solution Developer's Sanctuary in Asia 4

AD202 Developing with the IBM Lotus Expeditor Toolkit for IBM Lotus Expeditor and IBM Lotus Notes 8

BOF 102 Composite Application and SOA

BOF 212 IBM Lotus Notes and Domino Application Development

Page 40: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

References

Blog http://www.ibm.com/developerworks/blogs/page/CompApps

Expeditor toolkithttp://publib.boulder.ibm.com/infocenter/ledoc/v6r1/index.jsp

Developerworks articlehttp://www-128.ibm.com/developerworks/websphere/library/techarticles/0608_stober/0608_stober.html

Redbook/redpiece on Expeditor Composite Applicationscoming out in early 2007, keep checking the web

Page 41: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Q & A

Page 42: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

Let the experts walk you through several scenarios where traditional Lotus Notes applications are enhanced by promoting them to a Composite Application environment. We will explore howbest to develop reusable components, leverage existing solutions as components, and assemble these into Composite Applications for use with Lotus Notes 8. We will use components developed for Lotus Notes 8 and Lotus Expeditor as well as assemble Composite Applications using Lotus Notes 8 or WebSphere Portal. Benefit your organization with this powerful technology - learn best practices from this session to get a head start now and begin deploying REAL Composite Applications for use by Lotus Notes 8!

Abstract

Page 43: Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through Composite Applications with Lotus Notes and Domino 8

© IBM Corporation 2007. All Rights Reserved.

The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.

All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer.

IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Domino.Doc, Domino Designer, Lotus Enterprise Integrator, Lotus Workflow, Lotusphere, QuickPlace, Sametime, WebSphere, Workplace, Workplace Forms, Workplace Managed Client, Workplace Web Content Management, AIX, AS/400, DB2, DB2 Universal Database, developerWorks, eServer, EasySync, i5/OS, IBM Virtual Innovation Center, iSeries, OS/400, Passport Advantage, PartnerWorld, Rational, Redbooks, Software as Services, System z, Tivoli, xSeries, z/OS and zSeries are trademarks of International Business Machines Corporation in the United States, other countries, or both.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.

Intel and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Linux is a registered trademark of Linus Torbvalds in the United States, other countries, or both.

Other company, product, or service names may be trademarks or service marks of others.

All references to Acme, Renovations and Zeta Bank refer to a fictitious company and are used for illustration purposes only.