+ All Categories
Home > Technology > Best Practices in OTM - Customizations & Extensions

Best Practices in OTM - Customizations & Extensions

Date post: 17-Jul-2015
Category:
Upload: prasad-chandane
View: 552 times
Download: 16 times
Share this document with a friend
Popular Tags:
28
© Mahindra Satyam 2009 OTM Customizations & Extensions Best Practices Presented By: Rajasekhar Chennapragada 14 th June 2010
Transcript
Page 1: Best Practices in OTM - Customizations & Extensions

© Mahindra Satyam 2009

OTM Customizations  & Extensions

Best Practices

Presented By:Rajasekhar Chennapragada14th June 2010

Page 2: Best Practices in OTM - Customizations & Extensions

2

© Mahindra Satyam 2009

Introduction

OTM customers use disparate solutions to address gaps.

•OTM user interface

•OTM’s default behavior

•External Application

E.g. Custom screens, Business Logic, Stored Procedures etc.

Context:

•Best Practices - Implementation

•Application - Functionality perspective

•Various experiences & challenges

•Managing such initiatives effectively.

•Doesn’t detail technical / code details.

•Experiences from working on OTM 5.5

Page 3: Best Practices in OTM - Customizations & Extensions

3

© Mahindra Satyam 2009

Recommendations

Challenges

Experiences

Customization Areas

Business Drivers

Page 4: Best Practices in OTM - Customizations & Extensions

4

© Mahindra Satyam 2009

Screen Navigation: Menus and screen navigation

Data Visibility & Security: Business functionality & data

Business Validation: Data entry or retrieval

Notification: Milestones in Supply Chain in a specific format

Custom Branding: Button images, logos, color schemes, font sizes etc.

Integration: Business data processing.

Custom Reporting: Data retrieval in specific format

OTM Performance: Simplify business process

Exception Handling: Critical and time-bound business

Business Drivers

Page 5: Best Practices in OTM - Customizations & Extensions

5

© Mahindra Satyam 2009

Recommendations

Challenges

Experiences

Customization Areas

Business Drivers

Page 6: Best Practices in OTM - Customizations & Extensions

6

© Mahindra Satyam 2009

Customization Areas

OTM Configuration

Inbuilt OTM configuration abilities (No code development)

Enhancements to OTM’s standard functionality (override shipped-in defaults)

Configurable from OTM User Interface & Property files

Minimum impact from OTM migration

Less complexity and effort – can be handled by OTM Power users

E.g. Creating custom screen sets, menus, workflows etc.

Page 7: Best Practices in OTM - Customizations & Extensions

7

© Mahindra Satyam 2009

OTM Code-changes (Presentation Layer):

Code changes affecting the look & feel

Visibility of data elements

Data Validations

May require OTM configuration and Application properties to take affect

More Complex - require resources with the necessary Technical knowledge

Higher risks from OTM Migration

Potential impact on OTM performance

More effort – Independent projects

E.g. Displaying or hiding a field, Custom branding etc.

Customization Areas

Page 8: Best Practices in OTM - Customizations & Extensions

8

© Mahindra Satyam 2009

OTM Extensions:

External Applications or programs

Functionality OTM cannot independently support

Capture/retrieve data in a simple format

Interface with OTM for data communication

Simplify user operations within OTM

More Complex - require resources with the necessary Technical knowledge

Higher risks from OTM Migration

E.g. Custom data entry screens, development of stored procedures etc.

Customization Areas

CONFIGURATIONSCONFIGURATIONS

EXTENSIONSEXTENSIONS

CODE CHANGES

CODE CHANGES

Page 9: Best Practices in OTM - Customizations & Extensions

9

© Mahindra Satyam 2009

Screen Sets Manager Layouts Label Manager Actions Manager

Menu Manager Work Spaces Manage User Access VPD Profiles/Contexts

Business Monitors Workflow Agents Milestone Monitors Style sheet Profiles

Saved Queries Out XML Profiles Report Configuration User Favorites

Function Groups Account Policy Action Checks User Preferences

User Preference - Style Sheet Location:

• Branding purposes

• Directory of client XSL

• If blank, standard OTM XSL is used

User Preference - Language Preference:

• In conjunction with Country setting

• Language of field names, buttons, icons etc.

• Does not translate text saved in entry fields

• Affects only certain elements of UI

Customization Areas - OTM Configuration

Page 10: Best Practices in OTM - Customizations & Extensions

10

© Mahindra Satyam 2009

Customization Areas - General

Page 11: Best Practices in OTM - Customizations & Extensions

11

© Mahindra Satyam 2009

Requirements:Data visibilityBranding

Adding/removing display of data in UI

Images and language of notifications

“Branding” - changing look and feel to reflect the client’s brand

Button images, logos, color schemes, font sizes and screen layout

No ability to add, rename, or delete fields or rearrange sections of OTM pages

Customizable images and Web interface themes

Standard OTM theme can be over written

Custom themes (XSL) copied to the directory set by the user preference

Customization area - OTM Code Changes (Presentation Layer)

Page 12: Best Practices in OTM - Customizations & Extensions

12

© Mahindra Satyam 2009

Certain attributes based on locale (language and country).

CSS files can be created for each locale

Font styles and sizes, as well as color preferences

OTM Code Changes (Presentation Layer) - Branding based on Locale

The standard OTM theme can also be over-written by specifying the style sheet location using glog property.

The custom XSLs are copied into the specified location

Page 13: Best Practices in OTM - Customizations & Extensions

13

© Mahindra Satyam 2009

Translation ID “css.root_dir” is updated with Language, Country, Domain name and Text

Directory is created under /css/themes/

Customized CSS files are copied to the directory

OTM Code Changes (Presentation Layer) - Branding based on Locale

User preference Language & Country - Assigned to user (role)

Page 14: Best Practices in OTM - Customizations & Extensions

14

© Mahindra Satyam 2009

A few example of extensions are below:

Custom screens

Business logic

Integration translation

Technologies used:

Java/J2EE, Java Script

Python, XML/XSLT

Oracle – PL/SQL, Stored Procedures, Database Triggers, PL/SQL packages , Oracle reports etc.

Oracle Reports, BI Publisher

WSDL, Web Services, BPEL

Oracle Fusion Middle-ware

EAI (Enterprise Application Integration) Platforms

Customization Areas - OTM Extensions

Page 15: Best Practices in OTM - Customizations & Extensions

15

© Mahindra Satyam 2009

Recommendations

Challenges

Experiences

Customization Areas

Business Drivers

Page 16: Best Practices in OTM - Customizations & Extensions

16

© Mahindra Satyam 2009

A few Case studies

GC3 core code modifications & Integration extensions

Custom Search result screen - Simultaneous update of Location Address for multiple Order Releases

Custom Job accounting Requirement – Invoice Matching based on Charge Code identifier

Custom Tool for Sending / receiving data via RIQ

Custom logic to update exchange rate Refnums

Bespoke process to modify Locations with ACI zones

Report Parameter triggers & Oracle Packages - Service Provider Qualification

Customized Order Entry screens

Implemented Localized Branding with Chinese menu characters.

Customized style sheets to send email notifications in Spanish

Custom Validations for Invoice data entry process

Migrated XSL to JSPX as part of OTM Migration from 4.5 to 5.5

Experiences

Page 17: Best Practices in OTM - Customizations & Extensions

17

© Mahindra Satyam 2009

Case studies (continued)

Custom Style sheet translation for translating the Planned shipment XML to Shipment Status XML

Python scripts to translate customer Flat files into TransOrder Xml files

Customized XSL files from 5.5 were migrated to 6.X

Migrated reports - Oracle Reports to BI Publisher in OTM 6.x

Fiscal reports to report Profit margins based on business calendar

Custom VPD & Workflow configuration to handle specific user requirements

Developing an integrated robust framework for managing TAX & Statutory regulations for LATAM operations.

Implementing an OTM extension - Custom Shipment event entry screen

Experiences

Page 18: Best Practices in OTM - Customizations & Extensions

18

© Mahindra Satyam 2009

Recommendations

Challenges

Experiences

Customization Areas

Business Drivers

Page 19: Best Practices in OTM - Customizations & Extensions

19

© Mahindra Satyam 2009

1. Scalability and Performance• Technical Architecture

• Infrastructure &Network• Software & Applications• Failover & High Availability• Load balancing, storage, backup etc.

• Integration Volumes• Database Transaction Volumes• User Concurrency• Performance Fine-tuning

2. Application and Data Security• Retrieving data from OTM session• Implementation of VPD for custom extensions

3. Maintenance and Support• Compatibility with OTM migration• Branding Synchronization• Re-work after OTM migration• Regression Testing efforts• OTM Support from Oracle

4. Exception Reporting• Maintaining & Reporting Exceptions• Additional effort in Development

Challenges

Page 20: Best Practices in OTM - Customizations & Extensions

20

© Mahindra Satyam 2009

Recommendations

Challenges

Experiences

Customization Areas

Business Drivers

Page 21: Best Practices in OTM - Customizations & Extensions

21

© Mahindra Satyam 2009

Avoid customizing core code components like OTM servlets and EJBs.

Review existing Configuration

Analyze OTM functionalities available

Maintainability, Performance and Impact to existing Ops

JDK version compatibility

Use of Web Services - OTM to a BPEL server

Similar same look & feel as OTM

Documentation and Configuration Management

Follow OTM configuration standardsRefresh cache – use for SQL updates

Ensure that the appropriate version of Glog XSD is used for development.

Functional Acknowledgements and Exception reporting

Enable dynamic XSL changes glog.webserver.xsl.debug=true

Exclude queries from being cached for UI drop-down listsglog.droplistcache.exclude=glog.server.query.powerdata.ShipmentRefnumQualQuery

Recommendations - General

Page 22: Best Practices in OTM - Customizations & Extensions

22

© Mahindra Satyam 2009

Impact to OTM environment - Availability & Performance of OTMconcurrent user transactionsIntegration through putFunctional acknowledgementsError notifications

ArchitectureLoad balancing, Failover and High availability - Concurrent Load & Ops criticalitySeamless integration with OTMScalability with OTMEase of maintenanceEliminate Network latency

TuningConnection PoolingExecution ThreadsJVM heap sizeCost-Analysis and Fine-tuning of SQLsOTM thread Optimization etc.

Recommendations - Scalability & Performance…

Page 23: Best Practices in OTM - Customizations & Extensions

23

© Mahindra Satyam 2009

Re-use/Integrate – Mitigate Risk and EffortLeverage OTM interfacesPL/SQL packagesStored procedures

TestingOTM RegressionEnd to EndPerformanceFailover

Avoid JDBC calls for direct data modification

Avoid multiple Direct SQL updates in Agents

Follow best practices - Custom code development & OTM configurationDecode and Case – Lesser readsRefresh Cache – Don’t use for SQL Inserts

Recommendations - Scalability & Performance

Page 24: Best Practices in OTM - Customizations & Extensions

24

© Mahindra Satyam 2009

Impact to existing data security model

Avoid JDBC calls for direct data modification

Custom Extensions shall be integration via SSOAuthentication by Central applicationSSO provider passes the login information to OTMBypasses the normal OTM login processSSO glog.properties - Admin guideThe invoking code needs to pass in the following parameter as part of the HTTP request: appuid=/GUEST.ADMIN/

If the custom application is accessed via an OTM menu link, consider the following:

Secure http and URL masking Restrict standalone URL accessibilitySend $CURRENT_USER in the http header for VPD enforcementLeverage standard XML interfacesRe-use available Security routines /VPD PackagesSynchronize session timeouts

Recommendations - Application & Data Security

Page 25: Best Practices in OTM - Customizations & Extensions

25

© Mahindra Satyam 2009

Maintain changes to XSL in client specific directoryPrevents them being overwritten with each service release.

Save Login.xsl and logout.xslneed to be reapplied after each service release

Deployment - off-peak business hours.

Test deployment process

Test back out process

Maintain Deployment Guide with information below:

Backup Process: Files or data to be backed up in OTM environment before deployment.Deployment Checklist: List of configuration items with dependenciesInstallation process: Steps needed to deploy and install files.Test Plan: Capture Test plan and test cases. Back out procedure: Steps to uninstall or back out the changePost Go-Live Testing: Smoke test scenarios to be run after deployment.OTM Migration changes: Steps to re-install or copy the necessary files after OTM migration.Change History: Changes to deployment process due to Change Requests.Configuration Management: SCM process including version control processes.OTM documentation: Update and maintain OTM design and configuration specifications

Recommendations – Deployment

Page 26: Best Practices in OTM - Customizations & Extensions

26

© Mahindra Satyam 2009

Migration:

Review OTM release notes:Impact to existing XSL, CSS, Java scriptBug FixesEnhancements to FunctionalityIntegration ChangesDatabase changes

Regression testing – Migrated environmentPromote & test changes – As documentedPortability and Scalability with migrated OTM environment

Documentation regarding OTM Migration.Impact AnalysisRisk Analysis – Update Risk registerEffort Estimates – Changes / Regression testingTest resultsModified Configuration ItemsUpdated Deployment guide

Maintenance:Impact AnalysisChange managementConfiguration ManagementVersion ControlEnd to End/ Integration TestingDocumentationAdherence to Deployment Process

Recommendations - OTM Migration and Maintenance

Page 27: Best Practices in OTM - Customizations & Extensions

27

© Mahindra Satyam 2009

OTM Customizations and Extensions

Q & A

Page 28: Best Practices in OTM - Customizations & Extensions

28

© Mahindra Satyam 2009

mahindrasatyam.net

Safe Harbor

This document contains forward-looking statements within the meaning of section 27A of Securities Act of 1933, as amended, and section 21E of the Securities Exchange Act of 1934, as amended. The forward-looking statements contained herein are subject to certain risks and uncertainties that could cause actual results to differ materially from those reflected in the forward-looking statements. Satyam undertakes no duty to update any forward-looking statements. For a discussion of the risks associated with our business, please see the discussions under the heading “Risk Factors” in our report on Form 6-K concerning the quarter ended September 30, 2008, furnished to the Securities and Exchange Commission on 07 November, 2008, and the other reports filed with the Securities and Exchange Commission from time to time. These filings are available at http://www.sec.gov

Thank you

mahindrasatyam.com


Recommended