SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Ralf Klappert
WDK Do’s and Don'ts
ELCA Informatique SA
Senior Manager
Agenda
• WDK 4.2 – an overview
• A real life example
• WDK 5.0 – the road ahead
• Conclusions
• Q & A
Presentation Goals
• Allow you to understand the WDK
• Provide you with a real life project
experience
• Highlight the advantages / challenges
of WDK 4.2
• Show you a sneak preview of WDK5
WDK 4.2 Conceptual View
J2EE
Configurable Framework
Documentum Java API
Presentation Components
D
F
C
W
D
K
WDK = Web Development Kit
WDK 4.2 Architecture
Web-ServerTier
JSP
DFC interface
WDK
Web-
server
Layer
JSP
Java
code
DFC layer
DMCL layer
Servlet
Java code
ThinClient
Tier
E-content
Server
Tier
E-Content
Server Database
JavaScript
JavaScript
WDK Browser
Layer
XML
config
XML
config
Generated
HTML
+
DHTML
DMCL interface
Business Logic
J2EE
Configurable Framework
W
D
K
D
F
C
WDK 4.2 Features
• WDK is J2EE compliant
Servlets, JSP
• Provides ready-to-use components
• Extensible through WDK classes
• Rapid development cycles
• Multiple levels of customisation
XML – JSP – Java
Business Logic
J2EE
Configurable Framework
W
D
K
D
F
C
Real life example
Re-engineering a DTC application
• Goals
Optimise for WAN operation
Reduce deployment cost
• Opportunities
Align with Documentum web strategy
Future integration with web-based business
applications
From DTC …
Optimise for WAN operation
Desktop Client
• Network intense
• Synchronous operation
• Client-side logic
LAN/WAN Performance comparison
40
200
280
25
130
80
0
50
100
150
200
250
300
Login Scan & Import Complete Indexing
Timeinseconds
DTC LAN DTC WAN
Functional Scope
DTC WDK
Custom attributes;
validation rules
Rewrite from scratch
Lifecycles No change required
Smartlists Not Supported
Customised search Limited supported
Configurable result display Not supported
Annotations Not supported
Scanning integration Rewrite from scratch
Project Challenges
• User expectations
DTC Look & feel
DTC functionality
• Time to production
Staffing & skillset
• WDK 4.2
Maturity
Functional coverage
Design Decisions
• Use WDKspace
• Limit Browser support to IE
Use advanced DHTML
• Limit client – server communication
Improve response time
• Create re-usable component library
GUI components
Project Configuration
• MS IE 5.5
• WDKspace 4.2
• WDK 4.2
• DFC 4.2
• Project
customisations
• eContent Server 4.1
Wep App Server
Business Logic
J2EE
Configurable Framework
W
D
K
D
F
C
• Windows NT
• Oracle 8
• Sun Solaris
• Tomcat 3.2
• Sun Solaris
WDK 4.2 Customisations
Web-ServerTier
JSP
DFC interface
WDK
Web-
server
Layer
JSP
Java
code
DFC layer
DMCL layer
Servlet
Java code
ThinClient
Tier
E-content
Server
Tier
E-Content
Server Database
JavaScript
JavaScript
WDK Browser
Layer
XML
config
XML
config
Generated
HTML
+
DHTML
DMCL interface
… To WDK
Functional Scope Revisited
DTC WDK
Custom attributes;
validation rules
Implemented: Customised
code using JavaScipt / DHTML
Lifecycles No change required
Smartlists Implemented: Execution &
result display only
Customised search WDK configuration ; some
limitations remain
Configurable result display Implemented: customised
code
Annotations Not implemented
Scanning integration Implemented
Optimise for WAN operation
WDK client
• Limit network traffic
• Operations executed asynchronously
• Server-side logic
LAN/WAN Performance comparison
40
200
280
35
150
190
130
25
80
0
50
100
150
200
250
300
Login Scan & Import Complete Indexing
Timeinseconds
DTC LAN DTC WAN WDK WAN
Lessons Learned (I)
• Project management
Plan for technology related showstoppers
Include users to soften paradigm shift
• Staffing
WDK training by itself is not sufficient
Required skillset
– Administrator: Documentum + J2EE app server
– Web developer: Experience with JSP, DHTML,
Servlet, HTML and XML
– Enterprise Java Developer: JSP, Servlet, EJB and
other J2EE Services
Lessons Learned (II)
• WDK 4.2 Technology Limitations
Modification of WDK components
needed to cover project requirements
JavaScript handles user events
– Difficult to test
JSP is not extensible
– Redundant JSP code
Lessons Learned (III)
• Infrastructure
Anticipate side-effects due to WDK
required infrastructure updates
WDK product cycle may require updates
during the project
• Deployment
Configuration management to
accommodate multiple WDK-based
applications
WDK 5.0 Architecture
Web-ServerTier
Thin
Client
Tier
JavaScript
WDK Browser
Layer
Generated
HTML
Controller
XML contract
WDK Component
JSP
Java
Server-side
event
Taglib file
Java tag
implementation
WDK
services:
- application
server (EJB),
-data access
(JDBC),
- session
pooling,
etc.
E-content
Server
Tier
E-Content
Server DBMS
DFC
Conclusion: Do’s
• Consider migrating from DTC to
WDK if performance / deployment is
an issue
• Plan to use WDK5
• Staff your project with DCTM / Web /
J2EE developers
• Include key users to soften the
paradigm shift
Conclusion: Don’ts
• Stay clear of core WDK code
Avoid maintenance and update issues
• Avoid implementing business logic
on the client-side
• Do not underestimate the human and
technological impact of the paradigm
shift from Windows to Web
• Do not try to achieve 100%
Settle for 80/20
For further information
ralf.klappert@elca.ch
http://www.elca.ch
Thank you for your attention
WDK 4.2 vs 5.0
WDK 4.2
• Client-side
event
handling
(JavaScript)
• XML configuration of
properties and advanced
search only
• JSP use JavaBeans and
mainly scriptlet
WDK 5.0
• Server-side
event
handling
• XML contracts for
components, that are
extensible
• JSP rely on taglibs
Web-ServerTierThinClientTier
JavaScript
WDK
Browser
Layer
Gen
erate
d
HTM
L
Controller
XML contract
WDK
Component
JSP
(no
scriptle
t)
Java
Server
-side
event
Taglib
file
Java tag
impleme
ntation
WDK
services
:
-
applicati
on
server
(EJB),
-data
access
(JDBC),
- session
pooling,
etc.
E-contentServer
Tier
E-Content
Server
DBMS
DFC & API
Web-ServerTier
J
S
P
DFC interface
WDK
Web-
server
Layer
JSP
J
a
v
a
c
o
d
e
DFC layer
DMCL layer
S
e
r
v
l
e
t
Java code
ThinClientTierE-contentServerTier
E-Content Server
Database
JavaSc
ript
JavaSc
ript
WDK Browser
Layer
X
M
L
c
o
n
f
i
g
X
M
L
c
o
n
f
i
g
Generat
ed
HTML
+
DHTML
DMCL interface

Weitere ähnliche Inhalte

Was ist angesagt?

Windows Server 2012 R2 Jump Start - WEB
Windows Server 2012 R2 Jump Start - WEBWindows Server 2012 R2 Jump Start - WEB
Windows Server 2012 R2 Jump Start - WEB
Paulo Freitas
 
WebLogic Administration course outline
WebLogic Administration course outlineWebLogic Administration course outline
WebLogic Administration course outline
Vybhava Technologies
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administration
Muhammad Mansoor
 
Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9
Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9
Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9
Bhaskar Naik
 

Was ist angesagt? (20)

AMIS Oracle OpenWorld 2013 Review Part 1 - Intro Overview Innovation, Hardwar...
AMIS Oracle OpenWorld 2013 Review Part 1 - Intro Overview Innovation, Hardwar...AMIS Oracle OpenWorld 2013 Review Part 1 - Intro Overview Innovation, Hardwar...
AMIS Oracle OpenWorld 2013 Review Part 1 - Intro Overview Innovation, Hardwar...
 
Windows Server 2012 R2 Jump Start - WEB
Windows Server 2012 R2 Jump Start - WEBWindows Server 2012 R2 Jump Start - WEB
Windows Server 2012 R2 Jump Start - WEB
 
Extreme Replication - RMOUG Presentation
Extreme Replication - RMOUG PresentationExtreme Replication - RMOUG Presentation
Extreme Replication - RMOUG Presentation
 
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
 
SOA Suite 12c Customer implementation
SOA Suite 12c Customer implementationSOA Suite 12c Customer implementation
SOA Suite 12c Customer implementation
 
WebLogic Administration course outline
WebLogic Administration course outlineWebLogic Administration course outline
WebLogic Administration course outline
 
Seminar - JBoss Migration
Seminar - JBoss MigrationSeminar - JBoss Migration
Seminar - JBoss Migration
 
2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud
 
Jelastic DevOps Platform Product Overview for Service Providers
Jelastic DevOps Platform Product Overview for Service ProvidersJelastic DevOps Platform Product Overview for Service Providers
Jelastic DevOps Platform Product Overview for Service Providers
 
Project oriented online realtime training on sql
Project oriented online realtime training on sqlProject oriented online realtime training on sql
Project oriented online realtime training on sql
 
Database Provisioning in EM12c: Provision me a Database Now!
Database Provisioning in EM12c: Provision me a Database Now!Database Provisioning in EM12c: Provision me a Database Now!
Database Provisioning in EM12c: Provision me a Database Now!
 
Oracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
Oracle GoldenGate and Baseball - 5 Keys for Moving to the CloudOracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
Oracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
 
XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...
XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...
XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...
 
What's New and Noteworthy on Oracle CAF 12.1.3
What's New and Noteworthy on Oracle CAF 12.1.3What's New and Noteworthy on Oracle CAF 12.1.3
What's New and Noteworthy on Oracle CAF 12.1.3
 
V cloud director 5.1 what's new overview technical presentation
V cloud director 5.1 what's new overview   technical presentationV cloud director 5.1 what's new overview   technical presentation
V cloud director 5.1 what's new overview technical presentation
 
Oem12c db12c and You
Oem12c db12c and YouOem12c db12c and You
Oem12c db12c and You
 
(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administration
 
Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9
Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9
Weblogic server-overview-weblogic-scripting-tool0-1228252752844434-9
 
VMworld Europe 2014: Built to be Extended - vCloud Automation Center
VMworld Europe 2014: Built to be Extended - vCloud Automation CenterVMworld Europe 2014: Built to be Extended - vCloud Automation Center
VMworld Europe 2014: Built to be Extended - vCloud Automation Center
 

Andere mochten auch (8)

Great Sand Dunes Geo 111
Great Sand Dunes Geo 111Great Sand Dunes Geo 111
Great Sand Dunes Geo 111
 
Adpr 3400 final project
Adpr 3400 final projectAdpr 3400 final project
Adpr 3400 final project
 
Mahayoga Global Meet 2012 stage-presentation-1-may-2012
Mahayoga Global Meet 2012 stage-presentation-1-may-2012Mahayoga Global Meet 2012 stage-presentation-1-may-2012
Mahayoga Global Meet 2012 stage-presentation-1-may-2012
 
"'Becoming Someone': Learning from Our Mistakes"
"'Becoming Someone': Learning from Our Mistakes""'Becoming Someone': Learning from Our Mistakes"
"'Becoming Someone': Learning from Our Mistakes"
 
Learning day.
Learning day.Learning day.
Learning day.
 
Mahayoga for peace prosperity and spiritual evolution 2 12-2012
Mahayoga for peace prosperity and spiritual evolution 2 12-2012Mahayoga for peace prosperity and spiritual evolution 2 12-2012
Mahayoga for peace prosperity and spiritual evolution 2 12-2012
 
Figuras
FigurasFiguras
Figuras
 
Штурм-прорыв
Штурм-прорывШтурм-прорыв
Штурм-прорыв
 

Ähnlich wie Porting DTC applications to WDK - Dos and Don'ts

WebLogic JMX for DevOps
WebLogic JMX for DevOpsWebLogic JMX for DevOps
WebLogic JMX for DevOps
Frank Munz
 
NA Developer Day - Taking your COBOL apps to Net & JVM
NA Developer Day - Taking your COBOL apps to Net & JVM NA Developer Day - Taking your COBOL apps to Net & JVM
NA Developer Day - Taking your COBOL apps to Net & JVM
Micro Focus
 
Fayaz-Systems Engineer
Fayaz-Systems EngineerFayaz-Systems Engineer
Fayaz-Systems Engineer
Fayaz Syed
 

Ähnlich wie Porting DTC applications to WDK - Dos and Don'ts (20)

Documentum: where do we go from here
Documentum: where do we go from hereDocumentum: where do we go from here
Documentum: where do we go from here
 
Practical lessons from customers performing digital transformation with Azure
Practical lessons from customers performing digital transformation with AzurePractical lessons from customers performing digital transformation with Azure
Practical lessons from customers performing digital transformation with Azure
 
WebLogic JMX for DevOps
WebLogic JMX for DevOpsWebLogic JMX for DevOps
WebLogic JMX for DevOps
 
JavaOne 2010 Keynote
JavaOne 2010 Keynote JavaOne 2010 Keynote
JavaOne 2010 Keynote
 
NA Developer Day - Taking your COBOL apps to Net & JVM
NA Developer Day - Taking your COBOL apps to Net & JVM NA Developer Day - Taking your COBOL apps to Net & JVM
NA Developer Day - Taking your COBOL apps to Net & JVM
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
 
Keynote Oracle Fusion Middleware Summit_2020
Keynote Oracle Fusion Middleware Summit_2020Keynote Oracle Fusion Middleware Summit_2020
Keynote Oracle Fusion Middleware Summit_2020
 
Getting Started with Docker
Getting Started with DockerGetting Started with Docker
Getting Started with Docker
 
wls-azure-devnexus-2022.pdf
wls-azure-devnexus-2022.pdfwls-azure-devnexus-2022.pdf
wls-azure-devnexus-2022.pdf
 
Citrix Synergy 2014: Going the CloudPlatform Way
Citrix Synergy 2014: Going the CloudPlatform WayCitrix Synergy 2014: Going the CloudPlatform Way
Citrix Synergy 2014: Going the CloudPlatform Way
 
10 Tips for Successful 12.2 Upgrade
10 Tips for Successful 12.2 Upgrade10 Tips for Successful 12.2 Upgrade
10 Tips for Successful 12.2 Upgrade
 
Best practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on CloudBest practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on Cloud
 
WebLogic and GraalVM
WebLogic and GraalVMWebLogic and GraalVM
WebLogic and GraalVM
 
Plantilla oracle
Plantilla oraclePlantilla oracle
Plantilla oracle
 
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
 
Getting started with MariaDB with Docker
Getting started with MariaDB with DockerGetting started with MariaDB with Docker
Getting started with MariaDB with Docker
 
Continuous Integration - Mobile Practice
Continuous Integration - Mobile PracticeContinuous Integration - Mobile Practice
Continuous Integration - Mobile Practice
 
Fayaz-Systems Engineer
Fayaz-Systems EngineerFayaz-Systems Engineer
Fayaz-Systems Engineer
 
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
 
Cloud Conference Day - Revolutionize Java Database App Development with React...
Cloud Conference Day - Revolutionize Java Database App Development with React...Cloud Conference Day - Revolutionize Java Database App Development with React...
Cloud Conference Day - Revolutionize Java Database App Development with React...
 

KĂźrzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

KĂźrzlich hochgeladen (20)

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 

Porting DTC applications to WDK - Dos and Don'ts

  • 1.
  • 2. Ralf Klappert WDK Do’s and Don'ts ELCA Informatique SA Senior Manager
  • 3. Agenda • WDK 4.2 – an overview • A real life example • WDK 5.0 – the road ahead • Conclusions • Q & A
  • 4. Presentation Goals • Allow you to understand the WDK • Provide you with a real life project experience • Highlight the advantages / challenges of WDK 4.2 • Show you a sneak preview of WDK5
  • 5. WDK 4.2 Conceptual View J2EE Configurable Framework Documentum Java API Presentation Components D F C W D K WDK = Web Development Kit
  • 6. WDK 4.2 Architecture Web-ServerTier JSP DFC interface WDK Web- server Layer JSP Java code DFC layer DMCL layer Servlet Java code ThinClient Tier E-content Server Tier E-Content Server Database JavaScript JavaScript WDK Browser Layer XML config XML config Generated HTML + DHTML DMCL interface Business Logic J2EE Configurable Framework W D K D F C
  • 7. WDK 4.2 Features • WDK is J2EE compliant Servlets, JSP • Provides ready-to-use components • Extensible through WDK classes • Rapid development cycles • Multiple levels of customisation XML – JSP – Java Business Logic J2EE Configurable Framework W D K D F C
  • 8. Real life example Re-engineering a DTC application • Goals Optimise for WAN operation Reduce deployment cost • Opportunities Align with Documentum web strategy Future integration with web-based business applications
  • 10. Optimise for WAN operation Desktop Client • Network intense • Synchronous operation • Client-side logic LAN/WAN Performance comparison 40 200 280 25 130 80 0 50 100 150 200 250 300 Login Scan & Import Complete Indexing Timeinseconds DTC LAN DTC WAN
  • 11. Functional Scope DTC WDK Custom attributes; validation rules Rewrite from scratch Lifecycles No change required Smartlists Not Supported Customised search Limited supported Configurable result display Not supported Annotations Not supported Scanning integration Rewrite from scratch
  • 12. Project Challenges • User expectations DTC Look & feel DTC functionality • Time to production Staffing & skillset • WDK 4.2 Maturity Functional coverage
  • 13. Design Decisions • Use WDKspace • Limit Browser support to IE Use advanced DHTML • Limit client – server communication Improve response time • Create re-usable component library GUI components
  • 14. Project Configuration • MS IE 5.5 • WDKspace 4.2 • WDK 4.2 • DFC 4.2 • Project customisations • eContent Server 4.1 Wep App Server Business Logic J2EE Configurable Framework W D K D F C • Windows NT • Oracle 8 • Sun Solaris • Tomcat 3.2 • Sun Solaris
  • 15. WDK 4.2 Customisations Web-ServerTier JSP DFC interface WDK Web- server Layer JSP Java code DFC layer DMCL layer Servlet Java code ThinClient Tier E-content Server Tier E-Content Server Database JavaScript JavaScript WDK Browser Layer XML config XML config Generated HTML + DHTML DMCL interface
  • 17. Functional Scope Revisited DTC WDK Custom attributes; validation rules Implemented: Customised code using JavaScipt / DHTML Lifecycles No change required Smartlists Implemented: Execution & result display only Customised search WDK configuration ; some limitations remain Configurable result display Implemented: customised code Annotations Not implemented Scanning integration Implemented
  • 18. Optimise for WAN operation WDK client • Limit network traffic • Operations executed asynchronously • Server-side logic LAN/WAN Performance comparison 40 200 280 35 150 190 130 25 80 0 50 100 150 200 250 300 Login Scan & Import Complete Indexing Timeinseconds DTC LAN DTC WAN WDK WAN
  • 19. Lessons Learned (I) • Project management Plan for technology related showstoppers Include users to soften paradigm shift • Staffing WDK training by itself is not sufficient Required skillset – Administrator: Documentum + J2EE app server – Web developer: Experience with JSP, DHTML, Servlet, HTML and XML – Enterprise Java Developer: JSP, Servlet, EJB and other J2EE Services
  • 20. Lessons Learned (II) • WDK 4.2 Technology Limitations Modification of WDK components needed to cover project requirements JavaScript handles user events – Difficult to test JSP is not extensible – Redundant JSP code
  • 21. Lessons Learned (III) • Infrastructure Anticipate side-effects due to WDK required infrastructure updates WDK product cycle may require updates during the project • Deployment Configuration management to accommodate multiple WDK-based applications
  • 22. WDK 5.0 Architecture Web-ServerTier Thin Client Tier JavaScript WDK Browser Layer Generated HTML Controller XML contract WDK Component JSP Java Server-side event Taglib file Java tag implementation WDK services: - application server (EJB), -data access (JDBC), - session pooling, etc. E-content Server Tier E-Content Server DBMS DFC
  • 23. Conclusion: Do’s • Consider migrating from DTC to WDK if performance / deployment is an issue • Plan to use WDK5 • Staff your project with DCTM / Web / J2EE developers • Include key users to soften the paradigm shift
  • 24. Conclusion: Don’ts • Stay clear of core WDK code Avoid maintenance and update issues • Avoid implementing business logic on the client-side • Do not underestimate the human and technological impact of the paradigm shift from Windows to Web • Do not try to achieve 100% Settle for 80/20
  • 26. WDK 4.2 vs 5.0 WDK 4.2 • Client-side event handling (JavaScript) • XML configuration of properties and advanced search only • JSP use JavaBeans and mainly scriptlet WDK 5.0 • Server-side event handling • XML contracts for components, that are extensible • JSP rely on taglibs Web-ServerTierThinClientTier JavaScript WDK Browser Layer Gen erate d HTM L Controller XML contract WDK Component JSP (no scriptle t) Java Server -side event Taglib file Java tag impleme ntation WDK services : - applicati on server (EJB), -data access (JDBC), - session pooling, etc. E-contentServer Tier E-Content Server DBMS DFC & API Web-ServerTier J S P DFC interface WDK Web- server Layer JSP J a v a c o d e DFC layer DMCL layer S e r v l e t Java code ThinClientTierE-contentServerTier E-Content Server Database JavaSc ript JavaSc ript WDK Browser Layer X M L c o n f i g X M L c o n f i g Generat ed HTML + DHTML DMCL interface