Presentation on theme: "CLI315 Solution Architectures with Microsoft Office Professional Edition 2003: FabriKam and GeneriCo Chris J.T. Auld Managing Director- Kognition Microsoft."— Presentation transcript:
CLI315 Solution Architectures with Microsoft Office Professional Edition 2003: FabriKam and GeneriCo Chris J.T. Auld Managing Director- Kognition Microsoft Regional Director & MVP
Agenda Talk about Microsoft Office technologies in the context of Office solutions! Solution Scenarios Office technologies Examples
Solution Scenarios Document Creation Reporting Line of Business ERPCRMCustom You name it!
Solution Scenarios Document creation Client-Side User directed/initiated Done in the context of the document Context specific actions/information Assisted authoring e.g. Fabrikam Project Document Requires flexibility Examples: contracts, financial documents Server-Side Done in bulk Must be fast and scalable Usually template-based Examples: reports, etc.
Solution Scenarios Document creation solutions Client-SideISmartDocument Microsoft Visual Studio Tools for Office (VSTO) 2003 Server-SideWordprocessingML/SpreadsheetMLBoth VSTO 2005 (Data Islands w/o App running) ASPOSE Components (incl Powerpoint) ActiveDocs (High end document gen)
Solution Scenarios Reporting Data browsing Connect to back-end systems Slice & dice data Leads to actions Data viewing Server-generated Rich formatting Can lead to data browsing Mail Merges
Solution Scenarios Reporting solutions Microsoft Office Excel XML Import/Export Pivot Tables, etc Microsoft Office SharePoint Portal Server BI Portal Microsoft Office Word WordprocessingML Custom schema support!
Solution Scenarios Line of business Connecting to a single application Connect directly? Database, Web Service,.NET Remoting, etc. Multiple Apps Connect to each independently – or Use a Service-Oriented Architecture Single interface Much easier for client development
Solution Scenarios Line of business solutions Share work across multiple Office apps Connect to systems with managed code Web Services.NET Remoting Enterprise Services Some office apps interop better than others Build your own (GeneriCo)
Technologies XML (Namespaces, XSLT, XML Schema, XPath) Managed Code Support Task Pane Collaboration and Workflow PAG Application Blocks
Technologies XML Native File Format Document generation made easy Using XPath can query the document for data Custom Schema Support Documents now aware of data XML Import/Export Data detached from document! Extended Object Model Custom solutions target the data, not the document
Technologies XML – what it means Document format doesnt matter Logic not tied to structure Information not tied to document Less brittle – automated grannyware Document format or even type can change on context Microsoft Office InfoPath for gathering Word for documentation Excel for reporting Same Schema
Technologies Managed code Many new managed code solutions Word and Excel ISmartDocument, VSTO 2003 VSTO 2005 InfoPath SP1 Native & VSTO (limited) Outloook Managed Com Add-In VSTO 2005 Powerpoint ASPOSE Powerpoint Always got COM Interop…
Technologies Task pane Context-specific information Can be used to manipulate the document ISmartDocument, VSTO 2005 Show contextual info from other sources IBF, Research Services, Smart Tags Document-specific ISmartDocument, VSTO 2003, VSTO 2005 App-specific IBF (multi-app), Research Services, Smart Tags
Technologies Collaboration and workflow Microsoft SharePoint BizTalk Server 2004 Web Services SQL Server, SQL XML, SQL Notification Services Live Communications Server Etc. Come to PDC!
Technologies PAG application blocks Remember, were coding.NET here!!! App blocks apply to us Office devs as well Smart Client Offline Application Block See BlogCast with AriB Updater Application Block* *Many Office solutions have very good updating scenarios all of their own
Examples Available Now DVDs swapped for Evals Examples for partners, customers and you! FabriKam 6 Office System Solutions and 4 Infrastructure Components GeneriCo Office System Smart Client connected to SOA
FabriKam Introduction Solution Platform Best Practices, Code Samples Team, Department, Enterprise Business Processes DVD – Code, Documentation, Infrastructure, and Resources Delivery Format DVD, Fully configured and expandable (order from msdn.microsoft.com/fabrikam) Swap for evals at end of session. Documentation on MSDN
FabriKam Solution overview ComponentsSolutions Active Directory Integration SharePoint Library Aggregator SharePoint Routing Service SQL Server SQL XML service Expense Report Technical Manual Creation Project Site Manager Budget Planning Status Report Sales Order Capture/Processing
FabriKam Solution Details Expense report requirements Stored in database Tamper resistant Identity confirmation Automated workflow Must not be persisted on client disk
FabriKam Solution Details Expense report solutions Stored in database SQLXML - shreds Form XML on submit SQLXML - recreates Form XML on request Tamper resistant Digitally sign form on server when it is generated Identity confirmation InfoPath digital signatures and windows security context Automated workflow BizTalk 2004 Orchestration Must not be persisted on client disk Disable save Custom SharePoint Web Part Displays form status in workflow Generates new/requested forms using SQLXML Adapter
FabriKam Solution Details Expense report architecture SQL InfoPath Form BTS04 Orchestration (Receipt) SQLXML FPC SharePoint Web Part
Demo Fabrikam Expense Application
FabriKam Solution Details Technical manual creation requirements Gather project kickoff information Project contributors and roles Document meta-data Chapter headings, descriptions, etc Launch Project Generate SharePoint site Generate initial document Make doc generation easy Provide Routing and Workflow
FabriKam Solution Details Technical manual creation solutions Gather project kickoff information Single InfoPath form walks user through process Launch Project InfoPath form submits XML to web service which Generates SharePoint site Adds users Generates WordprocessingML & saves to site Make doc generation easy ISmartDocument solution aids authors while writing Provide Routing and Workflow Custom SharePoint Routing Service
FabriKam Stats 20k+ lines of managed code solutions 600 pages of documentation Strong Office managed code story Word, Excel, InfoPath Strong Back Office story SharePoint customization BTS04 Orchestrations SQL 2k w/SQLXML
GeneriCo Introduction Service Oriented Architecture 3rd Party Spec The Middleware Company IMHO Not as SOA as it should be Thin Client Mobility Client Office System Smart Client
GeneriCo Smart client requirements Must use Office System wherever appropriate Must work offline Must mimic thin-client application Main portal window Expense reports Employee Reviews Tasks Product Catalog Employee Search Must not break thin-client
GeneriCo Smart Client Challenges Share data across apps Effectively call SOA Translate between thin client calls and smart client calls Offline detection Data synchronization
GeneriCo Smart client solution Offline Smart Client Offline Application Block Portal site Outlook Managed Code Add-In similar to Today Page Expense Report InfoPath – Gather information Excel – Analyze, approve or deny for managers Employee Review InfoPath – Gather information Word – Final format of review Tasks Outlook tasks Employee Search Information Bridge Framework
GeneriCo Smart Client Service agent Between Office applications and SOA Resources shared across client CachingCommunications Offline Detection Enterprise Services De-coupled logic App Pool Events Handles all SOA communication
GeneriCo Overview Service Agent
Legend GeneriCo Service Agent Service Agent Client Proxy Queue Processor ProxyAgent ProxyAgent SOA SOA Service Agent Events server proxy Client App (VSTO/IPath/etc) Service Agent Client Proxy Agent Cache Thread Office App Enterprise Services App Blocks Proxy Cache Entry
GeneriCo Service Agent Application blocks Queue Processor ProxyAgent ProxyAgent Cache SOA SOA Agent Entry Cache Thread Proxy Legend Office App Enterprise Services App Blocks
Client Client Client App (VSTO/IPath/etc) GeneriCo Service Agent Enterprise services Service Agent Events server proxy Service Agent Client Proxy Service Agent Legend Office App Enterprise Services App Blocks
Client GeneriCo Service Agent Service Agent Client Proxy Queue Processor ProxyAgent ProxyAgent Cache SOA SOA Service Agent Events server proxy Client Client App (VSTO/IPath/etc) Service Agent Client Proxy Agent Entry Cache Thread Proxy Legend Office App Enterprise Services App Blocks
Conclusion Combine the power of Office System 2003 with the power of.Net programming to generate enterprise class solutions! There are examples out there to look at!
More Info Presentation files will be up today All links mentioned here will be included FabriKam DVD order form FabriKam Documentation GeneriCo update coming soon! Whitepapers, presentations, sample code, etc. overview/benefits/cstrial.mspx overview/benefits/cstrial.mspx Other Questions?