30
Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions [email protected]

Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions [email protected]

Embed Size (px)

Citation preview

Page 1: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

Change Management on the Cheap:Tortoise SVN and Ant

Two Tools for your Applications Implementation Toolkit

Joe Tseng

North Slope Solutions

[email protected]

Page 2: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

2

Agenda

• What is Change Management?

• Change Management and Oracle Applications

• Jakarta ANT

• Tortoise SVN

• ANT, SVN, and Oracle Applications

• Q&A

Page 3: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

3

What is Change Management?

From Wikipedia:

Change Management is an IT Service Management discipline. The objective of Change Management in this context is to ensure that standardized methods and procedures are used for efficient and prompt handling of all changes to controlled IT infrastructure, in order to minimize the number and impact of any related incidents upon service.

Changes in the IT infrastructure may arise reactively in response to problems or externally imposed requirements, e.g. legislative changes, or proactively from seeking imposed efficiency and effectiveness or to enable or reflect business initiatives, or from programs, projects or service improvement initiatives.

John Peets
Formatting tweaks
Page 4: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

4

What is Change Management?From Wikipedia (con’t)….

Change Management can ensure standardized methods, processes and procedures are used for all changes, facilitate efficient and prompt handling of all changes, and maintain the proper balance between the need for change and the potential detrimental impact of changes.

The goal of the Change Management process is to ensure that standardized methods and procedures are used for efficient and prompt handling of all changes, in order to minimize the impact of change-related incidents upon service quality, and consequently improve the day-to-day operations of the organization.

John Peets
Formatting tweak - also if this is a continuation from the prior slide - use what I suggested
Page 5: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

5

What is Change Management?Goals of Change Management

• Standardized processes and procedures

• Prompt and efficient handling of changes

• Minimal impact on service quality

John Peets
This looks like a another listing, but it isn;t going to be spelled out on the next slides. You may want to state the merits of doing each briefly like:Standardize processes and procedures ::: to reduce maintenace costs associated with downtown or troubleshooting or whatever
Page 6: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

6

Oracle Applications and Change Management

Common Existing Challenges

• Very often overlooked or neglected aspect of owning an ERP system, especially among small to mid-sized organizations

• In larger organizations, handled with very expensive tools such as Mercury Object Migrator

• The lack of a standardized methodology for the management of change is a source of significant pain for many organizations

• Code Promotion Errors – Code may be lost in the move from development to production, or the wrong code may be promoted into production.

• Documentation Costs – Properly documenting change can be time consuming and tedious

Page 7: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

7

Oracle Applications and Change Management

Change Management Scenario #1

Page 8: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

8

Oracle Applications and Change Management

Change Management Scenario #2

Page 9: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

9

Oracle Applications and Change Management

Change Management Scenario #3

Page 10: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

10

Oracle Applications and Change Management• During an Oracle Applications implementation, a large number of artifacts

can be accumulated

‒ Map/Gap documentation

‒ Functional and Technical Design documentation

‒ Functional Setup Documentation

‒ Patch Lists

‒ Custom Extension Code

SQL Build Scripts

PLSQL Packages

Custom Oracle Forms

Custom Oracle Reports

XML files for OAF substitutions

Page 11: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

11

Oracle Applications and Change Management• On any Oracle Applications implementation, the building of environments is a

necessary task that may be conducted numerous times over the life of the project. Each environment build may involve the following:

‒ Entering functional setups

‒ Setting up custom application file folders and environments

‒ Building custom database objects

‒ Moving and compiling custom Oracle Forms and Reports

‒ Moving and compiling OAF substitutions and personalizations

‒ Performing data migrations and conversions

• For larger projects, performing all of these tasks can be time consuming and prone to errors

Page 12: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

12

Oracle Applications and Change ManagementManual change management procedures or standards can be costly

• Change management procedures and policies that are dependent upon manual user action are prone to error.

• Manual procedures are dependent upon users to follow steps that in and of themselves must then again be audited

• Many of the difficulties that are encountered when managing change can either be eliminated or reduced through use of tools to manage source code and automate deployment.

Page 13: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

13

Oracle Applications and Change ManagementIn any Oracle environment, Ant and SVN are two open source tools that can

provide the basis for standardizing change management procedures

• Apache Ant is an Java-based XML scripting tool that can be used to automate code deployment.

• Subversion (SVN) is a free version control system that maintains versions of files.

Tortoise SVN is a free open-source client for SVN.

Page 14: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

14

Apache AntApache Ant is a Java-based build tool

• Utilizes XML scripting

• Removes dependency upon shell scripting

• Available for free at http://ant.apache.org

Page 15: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

15

Apache Ant

An Ant script uses XML to script a series of tasks. There are a large number of tasks available within the Ant scripting language. In addition, Ant is able to interact with the Operating System command line to issue external commands

Page 16: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

16

Apache Ant

Example of an Ant target calling SQL*Plus to execute SQL scripts

Page 17: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

17

Apache Ant

Example of an Ant target deploying Oracle reports

Page 18: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

18

Apache Ant

Ant is run from the command line

Page 19: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

19

Tortoise SVNA subversion (SVN) client

• Implemented as a Windows extension

• Runs direct from Windows Explorer on client machines

• Available at http://tortoisesvn.tigris.org

Subversion (SVN) is a version control system meant to become the successor to the widely used Concurrent Versioning System (CVS). SVN was started in 2000 and is a well-known tool in the open source community.

Page 20: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

20

Tortoise SVN

Page 21: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

21

Ant, SVN, and Oracle ApplicationsWhen used together in an Oracle Applications environment, Apache Ant and

Tortoise SVN provide the basis for a sound change management methodology.

• Ant scripting insures that deployment activities are conducted in a standard, consistent manner with every deployment or build iteration.

• Tortoise SVN maintains code and revision history for all implementation artifacts. These may include:

– Setup documents

– DataLoad files

– PLSQL object scripts

– SQL scripts

– Oracle Forms or Reports

– OAF XML files

– Setup or conversion data

Page 22: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

22

Ant, SVN, and Oracle ApplicationsIn order to automate deployments using these tools, the following is needed:

• SVN source code repository maintained with Tortoise clients

• Installation of Apache Ant and SVN on the client machine used for deployment.

• One or more Ant scripts written to automate the deployment of the various pieces of the Oracle Applications technology stack

• Proper structuring of the SVN repository to differentiate between types of code objects to be deployed

• The tagging or “labeling” of actual artifacts to be deployed within the source code repository

• Frequent and fast cloning of production environment to testing environments

• Proper access to server resources

By repeating deployments frequently, a high degree of confidence can gained as to what will actually occur when code is deployed to production.

Page 23: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

23

Ant, SVN, and Oracle Applications

Page 24: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

24

Ant, SVN, and Oracle Applications• A typical deployment script for Oracle Applications might do the following:

– Create a time stamped build folder

– Extract Source Code using Command Line

– Execute SQL scripts via client-side SQL*Plus

– Build PLSQL Packages via client-side SQL*Plus

– Transfer Oracle Forms .fmb files to Oracle Applications middle-tier via FTP

– Login to middle-tier via SSH

– Set Oracle environment

– Compile forms

– Copy forms to appropriate application top

The actions taken may vary depending upon which pieces of the technology stack are being deployed.

Page 25: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

25

Ant, SVN, and Oracle Applications

Page 26: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

26

Ant, SVN, and Oracle Applications

Page 27: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

27

Ant, SVN, and Oracle ApplicationsGoals of Change Management

• Standardized processes and procedures

• Prompt and efficient handling of changes

• Minimal impact on service quality

Ant and SVN provide the means to meet each of these goals

Page 28: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

28

Useful Sources and Links

http://ant.apache.org

http://tortoisesvn.tigris.org

http://subversion.tigris.org

Page 29: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

29

Questions?

Page 30: Change Management on the Cheap: Tortoise SVN and Ant Two Tools for your Applications Implementation Toolkit Joe Tseng North Slope Solutions jtseng@nslope.com

30

Thank You!

Joe Tseng

North Slope Solutions

[email protected]