• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Using Web Services To Integrate a .NET Solution with EMC Documentum
 

Using Web Services To Integrate a .NET Solution with EMC Documentum

on

  • 10,171 views

Momentum 2006 Presentation

Momentum 2006 Presentation

Statistics

Views

Total Views
10,171
Views on SlideShare
10,137
Embed Views
34

Actions

Likes
6
Downloads
0
Comments
2

2 Embeds 34

http://www.bluefishgroup.com 21
http://www.slideshare.net 13

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

12 of 2 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • Stylish presentation. I like this one.

    Roy Jan
    http://be.freepolyphonicringtones.org/ http://dk.freepolyphonicringtones.org/
    Are you sure you want to
    Your message goes here
    Processing…
  • Excellent slideshow about the need to innovate business models; how you can represent them succinctly; together with the need to make invention initiatives actionable. Superb use of photos together with clear to see illustrative samples.
    Teisha
    http://dashinghealth.com http://healthimplants.com
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Using Web Services To Integrate a .NET Solution with EMC Documentum Using Web Services To Integrate a .NET Solution with EMC Documentum Presentation Transcript

  • Using Web Services to Integrate a .NET solution with EMC Documentum Tim Harmon SVP of Corporate Development Planview Joshua Toub Practice Manager Blue Fish Development Group
  • About Planview
    • Recognized Industry Leader
      • Pioneered in 1989 what is now Portfolio Management
      • Recognized leader by major analyst firms
    • Customer Base of Market Leaders
      • 400+ customers across all industries
      • Global enterprises as well as mid-market customers
    • Global Presence and Financially Strong
      • Headquartered in Austin, TX
      • Presence in 30+ countries
      • 30% year-over-year growth since 2002
      • Profitable since 1993
  • Planview Enterprise
  • Drivers
    • Leverage the industry’s premium content and collaboration management for content-intensive Planview Enterprise projects and initiatives
    • Provide EMC Documentum users with a portfolio management solution for New Product Development and IT Project Management
    • Enable users to consolidate Planview Enterprise content and related content in a single repository
    • Enforce regulatory compliance on Planview-related content
  • Planview Enterprise + EMC Documentum ECM
    • Manage portfolio metrics (Targets and Progress) in Planview
    • Store, access, and manage Planview-related content in Documentum
    • Apply Planview Lifecycle processes to content in Documentum
    • Apply Planview Access Control rules to content in Documentum
    Planview Enterprise + EMC Documentum ECM
    • Unified ECM Platform
    • Advanced Content Features
    • Regulatory Compliance
    • Portfolio Management
    • Structured Processes
    • Best Practices
  • Use Case: Adding a Project
  • Use Case: Adding a Project
  • Use Case: Adding a Project
  • Use Case: Browse Content
  • Use Case: Browse Content
  • Design Challenges
    • Integration approach
      • Application level integration (WDK)
      • Model layer integration (data synchronization)
    • Disparate security models
    • .NET and Java intercommunication
    • Handling Planview’s distributed modification architecture
    • Externalizing Planview’s content management functionality
  • Implementation Challenges
    • Data synchronization
    • Object naming problems
    • Cross-platform Cryptography
    • Web Services
    • Creating and maintaining user mappings
    • Testing across multiple platforms and isolated development teams
  • Integration Approach
    • Initial plan: Webtop customizations fetch folder hierarchies from Planview
      • Disadvantages with this approach:
        • Pervasiveness of folders in Webtop—many independent customization points
        • Webtop customization required for basic integration features—prevents other Documentum tools from leveraging the integration
    • Revised plan: Web services perform background data synchronization
      • Few integration points
      • Planview data available to all Documentum-based tools and applications
  • Why Web Services?
    • Loosely coupled integration
      • Enabled separate development teams to build the .NET and Java integration components in relative isolation from one another
      • Avoided the prerequisite of having full end-to-end environments setup for both development teams
        • The Documentum (Java) side of the integration tested against stubs
    • Forward compatibility
      • WSF
    • Simple to create and deploy
      • Good tools for both .NET and Java
  • Architecture
  • Implementation Overview
    • Web Services
    • SBOs
    • Binding Documentum and Planview users
    • Single Sign-On
    • Data synchronization
    • Security
    • Webtop customizations
  • Web Services
  • Web Services
  • Web Services
  • Web Services
  • Web Services: WSF and Basic Integration WS
    • WSF:
      • Could not use WSF because of 5.2.5 compatibility requirements
      • Comparison to WSF:
        • Both use Axis
        • Similar authentication procedures
        • WSF deploys web services via the global BOF registry; we deploy independent of the Content Server
    • Basic Integration Web Services
      • Was not available yet
      • Planview web services used as inspiration for BIWS
  • SBOs
    • Integration extensively leverages SBOs
      • Requirement to support Content Server 5.2.5 precluded the use of the global registry
    • SBO listing:
      • IBindUserService: maps Planview users to Documentum users
      • IContentService: retrieves content-related information
      • ICreateUserService: creates Documentum users
      • IDQLPassthroughService: transparent DQL passthrough
        • ResultSet translated into XML return value
        • Supports both read and modify queries
      • IFolderSynchronizationService: structure synchronization
      • IRecycleBinService: methods for soft deletion and cleanup of recycle bin
      • ISnapshotService: generates DOM snapshots of structure and security
      • ISyncService: interleaved structure and security synchronization
  • User Binding & Single Sign-On
    • Authenticating Planview users in Documentum
      • How do we associate Documentum users with Planview Enterprise users?
      • How do we streamline authentication?
    • User binding
      • “ Just in Time” binding
        • Binding persisted in Planview
    • Single Sign-On
      • Custom SSO implementation
        • No dependencies on third party SSO libraries
        • Uses Documentum principal authentication
        • Integrated into binding operation
  • Data Synchronization
    • Data synchronization: a classic enterprise integration challenge
      • How can we ensure the integrity and “freshness” of mutable data across multiple systems?
    • Our approach:
      • Planview is the master
      • Use multiple synchronization services to maximize integrity while maintaining performance
        • Full Sync: A complete graph of all Planview data stored in Documentum
          • Used initially for population and then periodically to ensure consistency
        • Incremental Sync: Individual per-element modifications performed within the scope of a Planview transaction
      • Lots of unit testing
  • Synchronization Example
  • Synchronization Example
  • Synchronization Example
  • Synchronization Example
  • Synchronization Example
  • Security Challenges
    • How to reconcile different security models?
      • Planview: implied rules-based security
      • Documentum: explicit ACL-based security
    • Initial solution: Planview precomputes security for each node and sends explicit security for each and every node
      • Complications:
        • Creates extremely verbose messages
        • Certain security scenarios would have been difficult/prohibitively expensive to precompute
        • Planview ‘portfolios’ widen security access
  • Security: Modified Solution
    • Compress synchronization message with ‘hints’
      • Hints specify how security settings are propagated to children
        • Recursive mode and direct mode
    • Apply some rules within Documentum
      • Expand security to every node in the hierarchy
      • Logically merge security settings for multiply-linked objects
        • Merges permissions from multiple ACLs into a new ACL
        • Interesting semantics that sometimes dictate a ‘maxi-merge’ and sometimes dictate a ‘mini-merge’
  • Webtop Customizations
    • Auto-navigation to a specific folder
      • Subclassed the Main component to override onInit()
    • Recycle bin
      • DeleteFolder and DeleteDocument component extensions intercept deletion requests
        • Soft deletes are performed for content within the Planview folder hierarchy
          • Handled by the RecycleBin SBO
        • Hard deletes for all other objects
          • Handled by the stock DeleteFolder and DeleteDocument components
      • RecycleBinCleaner
        • Asynchronous thread that removes empty folders from the recycle bin
    • Show Locked component
      • Retrieves locked documents
      • URL interface for direct invocation from Planview
      • Subclasses the Search component
  • Use Case: Show Locked Documents
  • Use Case: Show Locked Documents
  • Present and Future…
    • Current Status
      • DfD certified
    • Future Directions
      • Performance enhancements
        • Better use of groups
        • Clamp down on ACL proliferation