3 Agenda DDRK Architecture Working with Parts Dashboard Schema DeploymentPart DistributionFreedom2Questions
4 What’s New Standardized nuggets – Web Parts Share Web PartsXML and WebDAV architectureOpen, extensible, internet readyDesigned as a ServiceHosted on the ServerRuns in IE Stand-aloneXSL skins can support many platforms
5 Resource KitDesigned to help you understand the new Digital Dashboard FrameworkSQL Server Sample Digital DashboardFile System Sample Digital DashboardDigital Dashboard Service ComponentWeb Part SDK DocumentsWeb Part BuilderWeb Part GalleryThe Web Store is Coming!
6 Choosing A Sample Store Advantage File System SQL Server Exchange SimpleWeb Part BuildingSmall DeploymentsSQL ServerRelational user and part managementBetter Personalization securityScalable Application ServerExchangeWeb StoreActive Directory IntegrationOffice IntegrationOffline supportStreaming MediaNative WebDAV/XML
7 Installing The Samples RequirementsWindows IIS + (SQL 7)Must have IP resolutionWhat is installedDashboard FactoryAdmin Dashboard & Sample Web PartsSQL WebDAV IIS ExtensionUpdates
8 Administration Admin dashboard One stop admin of all dashboardsAlso manage partsThe only way to create a root dashboardGreat use of Digital Dashboard Service ComponentPermissions (SQL)File system managed in file system
11 Digital Dashboard Services Component ArchitectureOffice, Outlook, and IEDigital DashboardWebPartWebPartWebPartWebPartContext, notification,and messagesDigital Dashboard Services ComponentIISAssembly of parts,dashboard and stylesDashboard FactoryDashboard.aspXSL..Edit.aspXSLDashboard APIs for read and writesStore.vbsWebDAVWebDAVExchange2000SQLServerFileSystemStorage of dashboard and part metadata
12 What Is A Web PartReusable component for rendering web content and services inside a digital dashboardIt is a document – HTML, XML, JS, VBSWrapped in rendering propertiesDefined XML Interchange formatStored in two partsDocument – HTTP Put, GetProperties – WebDAV PropPatchA Dashboard is a Folder of Parts
13 The Dynamic Dashboard User Requests a Dashboard with a URL Combination Factory + DashboardDashboard makes webDAV call to folderSecurity token is passedXML stream is returnedFiltered for permissionsDashboard XSL Transforms into dashboardHTML is returned to client
16 Deploy With File System Only for small deploymentsEveryone sees same dashboardSave Dashboard in a folder called TemplateUse wwwroot_default.aspSave as default.htm in rootCreates an instance of template for each userRedirects user fromParts updated through MasterPartLink
17 Deploy On SQL Every dashboard has 2 states Global – “template”User – everyone sees a different viewStored in a join tableCreate a dashboard for each groupDeploy URL by departmentMake default.asp a redirectAssign url to AD OU - home dashboardScript default.asp to AD
18 Outlook And Offline Further Reading: July MSDN Mag In Internet ExplorerSet as Offline Favorite2 Levels offlineDeploying in OutlookHosted as Folder Home Page – 2 levelsTo Host in Outlook Today, use special registry switch[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\9.0\Outlook\Webview\mailbox]"url"=http://digidash/home.htm"navigation"="yes"
19 Types Of Digital Dashboards Personal Digital DashboardPersonal SettingsVisible only to meTeam/Dept. Digital DashboardEveryone sees the same dashboardAdmin manages the look and feelCorporate PortalHybridParts and Dashboards
20 Customization Tied directly to NT Security Applies to Dashboards and PartsLevels of AccessNo Access – Can’t SeeNo NT accessRead Only – Can see, but notRead access in NTPersonalize – Change General PropsAvailable only in SQLModifyRead & Write
22 Dashboard Catalog Corporate Catalog of Web Parts Updates Users can add parts to dashboardAccepts .DWPs and WebDAV partsUpdatesIN SQL, everyone shares the same partIn File System us MasterPartLinkExtended Schema for CategorizationSearching PartsPersonalization
23 Enterprise Decision Portal Deployment And Interoperability Jason Welch freedom Architecture Group InfoImage, IncThanks Howard.This talk is about deployment and interoperability of enterprise decision portals. We will talk specifically about freedom 2, its relationship with DDRK 2.0 and issues we are faced with in deploying enterprise scaling decision portals.Introduce self
24 Agenda Real-world issues in deploying enterprise portals freedom 2 Architecture Overviewfreedom 2 + Web Parts = InteroperabilityDemofreedom 2 vs. DDRK 2.0Things that we have learned through experience, things our customers have told us, etc..How our achitecture addresses these real world issuesHow web parts fit into the freedom architecture and why we chose to use themDemo (quick look at webparts in action) to show benefits, power of, etc….
25 About InfoImage, Inc. A Leading Enterprise Portal Software Company A Microsoft Global Alliance PartnerFounded in 1992Offices nationwide300 employeesEmphasize that we have been around for awhile and know what we are doing
26 About The freedom 2 Decision Portal A platform for developing, deploying, and maintaining enterprise portals that offer high degrees of scalability and interoperabilityA platform for developing, deploying, and maintaining enterprise portalsPlatform, not a solution – solutions are built on top.
27 Real-World Issues In Deploying Enterprise Portals Directory managementObject managementIntegration with back-end systemsOLTPOLAPReportingIntegration with collaborative systemsScalabilityTalk to each of these. Explain why it’s something that needs to be thought about, and that each of these is something that our customers have ACTUALLY ASKED FOR.They know that a distributed architecture gives problems.Directory Integration ManagementCustomers want enterprise solutions to work with their existing enterprise directories – they don’t want us to come in with our ownflexibility is critical.portals are meant to bring resources (people) together, people live in directories, hence the importance.Don’t want to have to learn new toolsObject Managementobject proliferation – how do you manage that.propagation – how do you do it?IntegrationSame thing as directory management.Make data available internally and externally,scalabilitywrap security around itheterogeneous data sources on variousoltp – order entryolap – drill down analysisreporting – anythingIntegration with collaborative systemsthey want to do all their in the portalInteroperabilitywith their exisiting systemswith customer and their systemswith their partnersScalabilityThey a solution that will scale and grow with the needs of the organizationexamples ( users)ties back to directory and object managementTalk about the things we do to ensure successful deployments, which basically comes down to the names of our methodologies:Solution PlanSolution ArchitectureSolution DevelopmentSolution DeploymentEngagement Management
28 Real-World Issues In Deploying Enterprise Portals FlexibilityReuseMultiple Browser SupportBoth Extranet and IntranetQuick DeploymentsDisconnected UsersWirelessFlexibilityCustomizable solution (UI, business logic)customization for the different user communites and devices that they have within the orgReuseBuilt-in to the designinvestment vs. purchasereuse at the metadata level ties back to managabilityJust skim the rest
30 Architecture Overview Federated Portal ArchitectureDistributedMetadata-drivenBased on Windows DNANot based on the DDRKOur GoalsScalabilityInteroperabilityCentralized managementFlexible framework with a rich programmability modelEase of integrationNow lets take a closer look at what we did to address these types of customer needs starting with the very core of the product architecture….First lets define the freedom federated architecture. The fundamental philosophy of the federated architecture is “Massive distribution with central management” for extremely high levels of scalability. By effectively leveraging the WinDNA model we are able to provide a platform that can be partitioned, distributed, sliced and diced any which way you want. By describing the distributed components that make up the platform in terms of their metadata and centralizing that metadata we are able to centrally manage an entire federation of portal systems working together as a single unified resource.Point #1Distributed, metadata-driven architectureEvery component of the system is described in terms of…What it talks toWhat it depends on and what depends on itattributesBehaviorsUI characteristicsCode elements it made ofSecurityIts admin inferfaceIts deployment/interchange interfacephysical location…All this constitutes metadata about a componentPoint #2Flexible Framework for integrating with search engines, collaborative systems and back-end systemsIntegration points:searchcollaborationdirecttory svcs.content management;
31 Architecture Model Freedom Center Presentation Services USERFreedom Center Presentation ServicesDigital Business Identity/PersonalizationFreedom Federated ServicesPortal LayoutObject RelsSecurityQueries & ReportsIntegration RulesPortal ContentDiscoveryData IntegrationTaxonomiesMetadata RepositoryWe talked about scalability and management. Now lets take a look at how the some of the other architectural goals were met.Key points to make:illustrates the flow of information within a freedom systemThe freedom federated services (or freedom server) depends completely on the metadata repository forEverything on the arrowsIn order to customize the server, all you have to do is manipulate the metadataEverything is funneled through the personalization engine before being presented to the user. Every API is routed through the personalization engineThe architecture supports a highly adaptive and flexible platform for developers and administrators that provides a very personalized experience to the end user.Central administration of the metadata results in control over the distributed components – highly distributed system with central management!Enterprise directory system (AD) and robust and scalable repository architecture (MS SQL Repository) are integral to the design of portal systems.InstallationDeploymentVersioningManagementConfiguationRegistrationInterchangeToolsAdministratorDeveloper
32 Physical Architecture Client supportMS IE 4 and 5MS Outlook 2000Other HTML 3.2 compliant browsersDirectory services based on Active DirectoryFederated services engine based on COM+ and XML
34 freedom 2 + Web Parts = Interoperability Allows us to provide a high level of interoperability for our customersThere are many portal vendors, and other product and service vendors.We’ve gadgets, nuggets, decision objects, and so on…We need a standard specification allowing us to exchange informationWe’re talking about the fundamental building blocks of every portal system.
35 Why Are Web Parts Important ? Standard specificationInteroperabilityWe encourage our competitors to also adopt Web PartsExtensibilityEveryone has a proprietary architecture for portal parts.It will serve us better to standardize on part definitions in order to have a high level of re-use and interoperability.Solidifies “Dashboard/portal” as a long-term application market in its own right because now there is standard mechanism for deployment.Sharing content between portals from different vendors. Customers can purchase content from more vendors than the one that sold them the portal.The webpart architecture has the added advantage of being extensible allowing ISVs to extend it to fit their own implementations. It allows us to be interoperable and continue to provide freedom value-add to our customers, both at the same time.We can be like everyone – but still have our own value-add.
36 freedom 2 And Web Parts freedom support for Web Parts Store produces extended Web Part XMLViewer consumes extended Web Part XMLTools to import Web Part definitions (.DWP)Tools to create/register new Web Parts within freedomTools to export Web Part definitionsSupport for DDSC functionality
37 freedom 2 And Web Parts Proprietary extensions to Web Part definitions Added on importStripped-out during exportOnce imported, freedom specific lifecycle, propagation, and personalization rules applyGive examples of the extensionsPropogationties to object managementbuilt-in object hierarchy class->instances(templates) ->user instancespropogation of system-owned metadata properties from the class to the user instances
38 Web Parts/freedom Architecture Center(viewer)HTMLClientPortal Definition +Decision Object XMLFCD (Store Module)Import FacilityADOWe did not have to rearchitect to fit in the webpart solution – this was natural fitfreedomStoreApply freedom Extensionsto form Decisions Objects.DWP fileExport FacilityRemove freedom Extension
39 Demo… Start out showing freedom center UI Portal page showing cool stuffPortal page showing DDRK webpartsTalk about dashboard vs portal pages and differencesUI features like add new DOs, persist, add pages, etc.Show DDSC functionality in Russell-like DOsImport 2 partsAdd necessary properties to both and talk about the mapping of propertiesAdd roles and talk about how security is enforcedTalk about how being a DO is not so much about the definition (Since WP and DO def is almost alike) as it is about the services that freedom offers to a DOAdd one DO to container, PP, portal application and portal definition and talk about the lifecycle management and reusabilityLeave the other DO in class metadata stateSwitch over and show that one DO appeared on the portal pageBrowse and add the other DO
40 freedom 2 Versus DDRK 2.0InfoImage Federated Portal Architecture gives Enterprise AbilitiesScalabilityManageabilityAnd now… InteroperabilityAdvanced Personalization ServicesAdvanced, Heterogeneous Data IntegrationYou’ve seen what is similar, now let’s look at what is different.Our solution is aboutscalability:early pilots show capabilites of supporting tens of thousandswe have current customers with potential user audiences of thousand usersmanageability:central manage, deploy portals that all work as a single unified systemsinteroperability:webparts = interoperability at the core of what a portal is