Indications in green = Live content Indications in white = Edit in master Template release: Oct 02 For the latest, go to http://w3.ibm.com/ibm/presentations Indications in blue = Locked elements Indications in black = Optional elements • IBM logo must not be moved, added to, or altered in any way. • Group name: 17pt Arial Regular, white IBM Software Group Maximum length: 1 line • Presentation title: 28pt Arial Regular, white Recommended maximum length: 2 lines For client presentations, client’s logo may go in this area Composing Multi-tenant User Interfaces using WebSphere Portlet Factory • Presentation subtitle: 20pt Arial Regular, green R223 | G255 | B102 Recommended maximum length: 2 lines IBM Developer Skills © 2007 IBM Corporation • Confidentiality/date line: 13pt Arial Regular, white • Copyright: 10pt Arial Maximum length: 1 line Regular, white Building a Software as a Service solution requires addressing a few key technical • Information separated by vertical strokes, with two spaces on either side Indications green = Live content challenges. In a set of recorded demonstrations, weinwill show how to address a • Disclaimer information may also be appear in this area. Place = Edit in master flush left, aligned at bottom, 8-10pt Arial Regular, white Indications number of these technical challenges through a set inofwhite architectural patterns Indications in blue = Locked elements Template release: Oct 02 exploiting key features in IBM middleware. Indications in black = Optional elements For the latest, go to http://w3.ibm.com/ibm/presentations • Group name: 14pt Arial Regular, white • IBM logo must not be moved, added to, or altered in any way. IBM Software Group Maximum length: 1 line SaaS Demo Series – The Banking Application • Slide heading: 28pt Arial Regular, light blue R204 | G204 | B255 Maximum length: 2 lines Enterprise Scenarios • Slide body: 18pt Arial Regular, white Square bullet color: green R223 | G255 | B102 Recommended maximum text length: 5 principal points Building Multi-Tenant Applications using WebSphere Portal Server Composing Multi-tenant User Interfaces using WebSphere Portlet Factory Designing a Multi-tenant Data architecture using DB2 V9 Enforcing Security in a multi-tenant application Building a multi-tenant user registry using WebSphere Portal Server & Tivoli Directory Server Enforcing Role Based Access Control using WebSphere Portal Server & Tivoli Directory Server Securing Workflows using WebSphere Process Server & Tivoli Directory Server developerWorks Optional slide number: 10pt Arial Bold, white © 2007 IBM Corporation • Title/subtitle/confidentiality line: 10pt Arial Regular, white Maximum length: 1 line Information separated by vertical strokes, with two spaces on either side Software as a Service • Copyright: 10pt Arial Regular, white • Background should not be modified, except for quotes, which use gray background. In this series, there are 7 demonstrations using “The Banking Application” that show how IBM middleware and configuration techniques can be used to solve key technical challenges for SaaS developers. Hosting multiple tenants from a shared environment requires a high degree of configurability in order to provide each tenant with the branding and customization that they require. In this demo we will look at the dynamic profiling Indications in green Live contentin conjunction with capability of WebSphere Portlet Factory and how that is= used Indications in white = Edit in master virtual portals to provide tenant customization through configuration rather than Indications in blue = Locked elements Template release: Oct 02 custom coding. Indications in black = Optional elements For the latest, go to http://w3.ibm.com/ibm/presentations • Group name: 14pt Arial Regular, white Maximum length: 1 line • IBM logo must not be moved, added to, or altered in any way. IBM Software Group Technical Challenge Addressed in this Demo • Slide heading: 28pt Arial Regular, light blue R204 | G204 | B255 Maximum length: 2 lines How can you support customization of the User Interface layer for different tenants using configuration? • Background should not be modified, except for quotes, which use gray background. How can you support unique branding for different tenants? • Slide body: 18pt Arial Regular, white Square bullet color: green R223 | G255 | B102 Recommended maximum text length: 5 principal points developerWorks Optional slide number: © 2007 IBM Corporation • Title/subtitle/confidentiality line: 10pt Arial Regular, white Software as a Service • Copyright: 10pt Arial Maximum length: 1 line 10pt Arial Bold,two white technical Regular, white There are challenges addressed in this demo: Information separated by vertical strokes, 1. How can the user layer in the multi-tenant application be customized with interface two spaces on either side for different tenants through configuration, as opposed to writing new application code? And 2. How do you enable unique branding for different tenants? Indications in green = Live content Indications in white = Edit in master Indications in blue Template release: Oct 02 For the latest, go to http://w3.ibm.com/ibm/presentations • Group name: 14pt Arial Regular, white = Locked elements Indications in black = Optional elements • IBM logo must not be moved, added to, or altered in any way. IBM Software Group Maximum length: 1 line Implementing a Configurable User Interface using WPF Dynamic Profiles • Slide heading: 28pt Arial Regular, light blue R204 | G204 | B255 Using Dynamic Profiles, you can simplify administration of configuration parameters for multiple tenants using a single Administrator portlet • Background should not be modified, except for quotes, which use gray background. Maximum length: 2 lines Provider Administrator configures the profiles for banks • Slide body: 18pt Arial Regular, white Show / Hide Configurability Users and admins of bank2 see a UI generated using “Profile for bank2” Editing Square bullet color: green R223 | G255 | B102 Portal Server Recommended maximum text length: 5 principal points Using Profile for Bank1 Profile for Bank2 Using WPF Runtime Configuration of Optional Value List developerWorks Optional slide number: 10pt Arial Bold, white © 2007 IBM Corporation • Title/subtitle/confidentiality line: 10pt Arial Regular, white Maximum length: 1 line Software as a Service • Copyright: 10pt Arial Regular, white Information separated by vertical strokes, By using the WebSphere with two spacesPortlet on either side Factory dynamic profiles feature in conjunction with virtual portals, a developer can create multiple highly customized applications from one code base. Through dynamic profiles, an application developer can define variables in a common ‘profile set’ that can be configured by each tenant’s administrator at runtime. Tenant specific customizations are created by applying those configured profiles to their portlets at runtime to change the appearance, content and behavior of the portlet. This demo focuses on the role of the provider administrator. This role is responsible for customizing the tenant user interfaces. In support of this scenario we created a Configuration portlet for the provider administrator role that allows them to configure each tenant’s portlets using a single portlet. The configuration portlet code snippet created for this feature is available for download off of the demo page. Within the configuration portlet, we show how the provider administrator role configures the portlet fields ‘account name’ and ‘account description’ to show in bank1’s 'add account for customer' portlet while suppressing the account description from the same portlet for bank2. We also show how the Account Type selections are tailored for each each bank by modifying the allowed values. In this demo we will describe how to implement, manage and specify profiles for multiple tenant banks. We log in as the provider administrator to view the configurability options that the bank supports. This is the configuration page. Currently there are three profiles defined: default profile, bank1 profile, and bank2 profile. Let’s open bank 1’s profile. In a profile you can configure the basic attributes for a bank. For example, the bank id, bank name and endpoints for web services. You can also configure custom attributes for the bank. This is one of the configuration pages for the Customer Management portlet. You can specify the query conditions you would like to provide to search for the customer management data. You can also configure whether custom attributes are necessary on the Customer Management portlet. You can hide unnecessary attributes. On the next page you can rename attributes and set up list box selection values. Later in this demo you will be shown Bank 1’s Account type selections as ‘Savings’ and ‘Checking’, while Bank 2’s selections include a third account type of ‘External’. Lets log in as the administrator for bank 1 Here we can see the four query condition that we set up on the configuration page. Since we didn’t hide any of the custom attributes for Bank 1, we see all of the attributes when we add, update or view the customer data. Now lets configure the profile for bank 2. Here we set the bank id and bank name for bank 2 We will disable search capability by userid and last name. We’ll assume the email and zipcode are not applicable to bank 2 and we’ll set them to ‘Hide’ to prevent them from appearing in the user interface. We save the profile. Now lets log in as the administrator for bank 2 As you can see in the Customer Management portlet, because we disabled the search by ‘userid’ and ‘last name’, they do not appear here. Since we set ‘email’ and ‘zipcode’ to ‘hidden’, they do not appear in the portlet. Let’s take another look at bank 1’s profile. Here we set the ‘account type’ values to ‘savings’ and ‘checking’ When we log in to bank 1 as administrator, we have an ‘Account View’ portlet where we can manage customers’ account information. When adding account information, a drop down list is used to identify the ‘account type’. Here we can see the optional values of ‘Savings’ and ‘Checking’that we set in the configuration page. We log back into bank 2 as the service provider administrator. We hide the attribute ‘Account name’ and rename the attribute ‘Description’ to ‘Branch’. We change the optional values for ‘Account Type’ to include a third value of ‘External’. We log back into bank 2 as the administrator We access the Account Management Portlet. Here we can see that the attribute ‘Branch’ is visible instead of ‘Description’, and the ‘Account Name’ is no longer visible in the portlet. When we ‘Add’ an account, we can see the value ‘External’ in the Account Type drop down list. When new tenants are added, you need to add an additional profile. To do this you specify the name of the new profile in the input field and press the ‘Create a Profile’ button. This profile will inherit the values in the default profile. Profiles can also be deleted using this interface. Indications in green = Live content Indications in white = Edit in master Template release: Oct 02 For the latest, go to http://w3.ibm.com/ibm/presentations • Group name: 14pt Arial Regular, white Maximum length: 1 line Indications in blue = Locked elements Indications in black = Optional elements • IBM logo must not be moved, added to, or altered in any way. IBM Software Group Conclusion • Slide heading: 28pt Arial Regular, light blue R204 | G204 | B255 Maximum length: 2 lines Use WebSphere Portlet Factory dynamic profile capability to enable tenant customization of the user interface. • Background should not be modified, except for quotes, which use gray background. DeveloperWorks article: • Slide body: 18pt Arial Regular, white Building Multi-Tenant portlets using WebSphere Portlet Factory Dynamic Profiles Square bullet color: green R223 | G255 | B102 Recommended maximum text length: 5 principal points developerWorks Optional slide number: © 2007 IBM Corporation • Title/subtitle/confidentiality line: 10pt Arial Regular, white Software as a Service • Copyright: 10pt Arial 1 line Arial Bold, white Regular, white Portlet Factory In 10pt conclusion, we Maximum havelength: demonstrated how to use WebSphere Information separated by vertical strokes, dynamic profiles towithsupport Dynamic profiles can be used to feed two spaces on multi-tenancy. either side different attributes and different configuration parameters to multiple tenants. Please take the time to read the developerWorks article on this topic by clicking on the link here. Indications in green = Live content Indications in white = Edit in master Template release: Oct 02 For the latest, go to http://w3.ibm.com/ibm/presentations • Group name: 14pt Arial Regular, white Maximum length: 1 line • Slide heading: 28pt Arial Regular, light blue R204 | G204 | B255 Maximum length: 2 lines = Locked elements Indications in black = Optional elements • IBM logo must not be moved, added to, or altered in any way. IBM Software Group Ready to Go Further With IBM? Join the SaaS Community Learn • Background should not be modified, except for quotes, which use gray background. Register for PartnerWorld http://www.ibm.com/partnerworld/join Select Software as a Service as an interest area Network with other SaaS business partners at SaaSpace.com more. Deploy Visit the Virtual Innovation Center (VIC) faster. Take the SaaS Education Courses Fill out the VIC Project Profile for a no-charge technical assessment and custom enablement road-map • Slide body: 18pt Arial Regular, white Square bullet color: green R223 | G255 | B102 Indications in blue Market your SaaS Solution Qualify for the SaaS Specialty Receive additional marketing resources and benefits Recommended maximum text length: 5 principal points www.ibm.com/partnerworld/saas developerWorks Optional slide number: © 2007 IBM Corporation • Title/subtitle/confidentiality line: 10pt Arial Regular, white Software as a Service • Copyright: 10pt Arial Maximum length: 1 line Arial Bold,innovative white Regular,manage white IBM10pthas resources and programs to help you change & Information separated by vertical strokes, become relevant in Software with the two spaces on either side as a Service market. Whether you’re an ISV, System Integrator or Reseller, we can provide education, support and benefits to help you grow revenue and differentiate yourself. The first step will be to join the SaaS community. You will automatically be kept aware of new SaaS technical benefits and workshops and get the enablement help that you need to transform your application for delivery in the IBM Software as a Service model. Then, as a member of IBM SaaS community, you can register at the Virtual Innovation Center (VIC) where you will get personalized access to product support and education to help build your Software as a Service knowledge and skills. As an Advanced level member of PartnerWorld, you have the opportunity to gain access to additional marketing and sales support by qualifying for the Software as a Service (SaaS) specialty. For more information, Visit our main site at www.ibm.com/partnerworld/saas.