openbravo erp life cycle managementwiki.openbravo.com/wiki/images/7/7b/webinar-life... · overview:...

50
Overview: development, testing, production Effective life cycle management Summary Q&A Openbravo ERP life cycle management Juan Pablo Aroztegi Release Management Team Openbravo March 22, 2010 Release Management Team, Openbravo Openbravo ERP life cycle management 1/26

Upload: vothuy

Post on 21-Apr-2018

226 views

Category:

Documents


3 download

TRANSCRIPT

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

Openbravo ERPlife cycle management

Juan Pablo Aroztegi

Release Management TeamOpenbravo

March 22, 2010

Release Management Team, Openbravo Openbravo ERP life cycle management 1/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

Outline

1 Overview: development, testing, productionProblemDefinitionGoals

2 Effective life cycle managementDevelopmentTestingProductionTools

3 Summary

4 Q&A

Release Management Team, Openbravo Openbravo ERP life cycle management 2/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

Outline

1 Overview: development, testing, productionProblemDefinitionGoals

2 Effective life cycle managementDevelopmentTestingProductionTools

3 Summary

4 Q&A

Release Management Team, Openbravo Openbravo ERP life cycle management 3/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

Problem

1 project.3 developers.1 production system.

Release Management Team, Openbravo Openbravo ERP life cycle management 4/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

What is this all about?

Release Management Team, Openbravo Openbravo ERP life cycle management 5/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

What is this all about?

Release Management Team, Openbravo Openbravo ERP life cycle management 6/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

What is this all about?

Release Management Team, Openbravo Openbravo ERP life cycle management 7/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

What is this all about?

Life cycle managementHow do I glue these components effectively?

Release Management Team, Openbravo Openbravo ERP life cycle management 8/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

What is this all about?

Life cycle managementHow do I glue these components effectively?

Release Management Team, Openbravo Openbravo ERP life cycle management 8/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

Goals

Secure production: test anything before going intoproduction.Customize the ERP easily.Control and share changes among developers.Demos: show latest features to the customer before goingto production.

Release Management Team, Openbravo Openbravo ERP life cycle management 9/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

Goals

Secure production: test anything before going intoproduction.Customize the ERP easily.Control and share changes among developers.Demos: show latest features to the customer before goingto production.

Release Management Team, Openbravo Openbravo ERP life cycle management 9/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

Goals

Secure production: test anything before going intoproduction.Customize the ERP easily.Control and share changes among developers.Demos: show latest features to the customer before goingto production.

Release Management Team, Openbravo Openbravo ERP life cycle management 9/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

Goals

Secure production: test anything before going intoproduction.Customize the ERP easily.Control and share changes among developers.Demos: show latest features to the customer before goingto production.

Release Management Team, Openbravo Openbravo ERP life cycle management 9/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

ProblemDefinitionGoals

Goals

Secure production: test anything before going intoproduction.Customize the ERP easily.Control and share changes among developers.Demos: show latest features to the customer before goingto production.

Release Management Team, Openbravo Openbravo ERP life cycle management 9/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Outline

1 Overview: development, testing, productionProblemDefinitionGoals

2 Effective life cycle managementDevelopmentTestingProductionTools

3 Summary

4 Q&A

Release Management Team, Openbravo Openbravo ERP life cycle management 10/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: how?

What’s development?Any code change you do, at any point in time.

Options:1 I’ll change Core directly . . . DON’T!2 I’ll use modules.

Release Management Team, Openbravo Openbravo ERP life cycle management 11/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: how?

What’s development?Any code change you do, at any point in time.

Options:1 I’ll change Core directly . . . DON’T!2 I’ll use modules.

Release Management Team, Openbravo Openbravo ERP life cycle management 11/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: how?

What’s development?Any code change you do, at any point in time.

Options:1 I’ll change Core directly . . . DON’T!2 I’ll use modules.

Release Management Team, Openbravo Openbravo ERP life cycle management 11/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: SCM

Why does a SCM matter?Control my own changes: how did I solve that issue?Share changes easily. Comfortable distribution.Concurrent development.Revert and tweak changes.

Useful even if you work alone!

Release Management Team, Openbravo Openbravo ERP life cycle management 12/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: SCM

Why does a SCM matter?Control my own changes: how did I solve that issue?Share changes easily. Comfortable distribution.Concurrent development.Revert and tweak changes.

Useful even if you work alone!

Release Management Team, Openbravo Openbravo ERP life cycle management 12/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: SCM

1 repository pre module vs 1 repository for all the modules

Mercurial.Git.Bazaar.Subversion.

Release Management Team, Openbravo Openbravo ERP life cycle management 13/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: SCM

1 repository pre module vs 1 repository for all the modules

Mercurial.Git.Bazaar.Subversion.

Release Management Team, Openbravo Openbravo ERP life cycle management 13/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: SCM

1 repository pre module vs 1 repository for all the modules

Mercurial.Git.Bazaar.Subversion.

Release Management Team, Openbravo Openbravo ERP life cycle management 13/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: SCM

Release Management Team, Openbravo Openbravo ERP life cycle management 14/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: issue tracker

Why does an issue tracker matter?Traceability of bugs and their resolutions.Increase visibility of the development process.And why not, involve your customer.

Useful even for a single module!

Release Management Team, Openbravo Openbravo ERP life cycle management 15/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: issue tracker

Why does an issue tracker matter?Traceability of bugs and their resolutions.Increase visibility of the development process.And why not, involve your customer.

Useful even for a single module!

Release Management Team, Openbravo Openbravo ERP life cycle management 15/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: issue tracker + SCM

A SCM and an issue tracker; I don’t have time to set up that

Use a Forge! Even for private projects.

Plenty of options:Openbravo Forge.Bitbucket.Github.Launchpad.

Release Management Team, Openbravo Openbravo ERP life cycle management 16/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: issue tracker + SCM

A SCM and an issue tracker; I don’t have time to set up that

Use a Forge! Even for private projects.

Plenty of options:Openbravo Forge.Bitbucket.Github.Launchpad.

Release Management Team, Openbravo Openbravo ERP life cycle management 16/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: issue tracker + SCM

A SCM and an issue tracker; I don’t have time to set up that

Use a Forge! Even for private projects.

Plenty of options:Openbravo Forge.Bitbucket.Github.Launchpad.

Release Management Team, Openbravo Openbravo ERP life cycle management 16/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: issue tracker + SCM

A SCM and an issue tracker; I don’t have time to set up that

Use a Forge! Even for private projects.

Plenty of options:Openbravo Forge.Bitbucket.Github.Launchpad.

Release Management Team, Openbravo Openbravo ERP life cycle management 16/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Customize the ERP: issue tracker

Release Management Team, Openbravo Openbravo ERP life cycle management 17/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Testing: why it matters

Test your developers in a real environment.Let the customer test it.Test your upgrades: modules, Core.

Production and Testing: 1 machine vs 2 machines

Testing must be a clone of production. Specially in software.Recommendations:

2 x Cloud Appliance2 x Ubuntu

Release Management Team, Openbravo Openbravo ERP life cycle management 18/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Testing: why it matters

Test your developers in a real environment.Let the customer test it.Test your upgrades: modules, Core.

Production and Testing: 1 machine vs 2 machines

Testing must be a clone of production. Specially in software.Recommendations:

2 x Cloud Appliance2 x Ubuntu

Release Management Team, Openbravo Openbravo ERP life cycle management 18/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Testing: why it matters

Test your developers in a real environment.Let the customer test it.Test your upgrades: modules, Core.

Production and Testing: 1 machine vs 2 machines

Testing must be a clone of production. Specially in software.Recommendations:

2 x Cloud Appliance2 x Ubuntu

Release Management Team, Openbravo Openbravo ERP life cycle management 18/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Testing: why it matters

Test your developers in a real environment.Let the customer test it.Test your upgrades: modules, Core.

Production and Testing: 1 machine vs 2 machines

Testing must be a clone of production. Specially in software.Recommendations:

2 x Cloud Appliance2 x Ubuntu

Release Management Team, Openbravo Openbravo ERP life cycle management 18/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Development to testing

Developers send customizations to Testing through OBX files

1 Replicate production to testing. How?2 Apply your OBX files, upgrade Core, etc. using the Module

Management Console.3 Check that everything is correct. Let the customer test it.

Release Management Team, Openbravo Openbravo ERP life cycle management 19/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Development to testing

Developers send customizations to Testing through OBX files

1 Replicate production to testing. How?2 Apply your OBX files, upgrade Core, etc. using the Module

Management Console.3 Check that everything is correct. Let the customer test it.

Release Management Team, Openbravo Openbravo ERP life cycle management 19/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Development to testing

Developers send customizations to Testing through OBX files

1 Replicate production to testing. How?2 Apply your OBX files, upgrade Core, etc. using the Module

Management Console.3 Check that everything is correct. Let the customer test it.

Release Management Team, Openbravo Openbravo ERP life cycle management 19/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Development to testing

Developers send customizations to Testing through OBX files

1 Replicate production to testing. How?2 Apply your OBX files, upgrade Core, etc. using the Module

Management Console.3 Check that everything is correct. Let the customer test it.

Release Management Team, Openbravo Openbravo ERP life cycle management 19/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Development to testing

Developers send customizations to Testing through OBX files

1 Replicate production to testing. How?2 Apply your OBX files, upgrade Core, etc. using the Module

Management Console.3 Check that everything is correct. Let the customer test it.

Release Management Team, Openbravo Openbravo ERP life cycle management 19/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Development to testing

Release Management Team, Openbravo Openbravo ERP life cycle management 20/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Applying changes

Possible kind of changes:1 Core update.2 External module updates.3 Self developed module updates.

Howto:1 Do it in testing first.

Replicate production to testing.. . .

2 Rerun those steps in the production system.

Release Management Team, Openbravo Openbravo ERP life cycle management 21/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Applying changes

Possible kind of changes:1 Core update.2 External module updates.3 Self developed module updates.

Howto:1 Do it in testing first.

Replicate production to testing.. . .

2 Rerun those steps in the production system.

Release Management Team, Openbravo Openbravo ERP life cycle management 21/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Applying changes

Possible kind of changes:1 Core update.2 External module updates.3 Self developed module updates.

Howto:1 Do it in testing first.

Replicate production to testing.. . .

2 Rerun those steps in the production system.

Release Management Team, Openbravo Openbravo ERP life cycle management 21/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Replicating production to testing

Manual, repetitive, tedious.We’ve developed a command line tool that does exactlythis in an easy manner.

Demo!

Release Management Team, Openbravo Openbravo ERP life cycle management 22/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

DevelopmentTestingProductionTools

Replicating production to testing

Manual, repetitive, tedious.We’ve developed a command line tool that does exactlythis in an easy manner.

Demo!

Release Management Team, Openbravo Openbravo ERP life cycle management 22/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

Outline

1 Overview: development, testing, productionProblemDefinitionGoals

2 Effective life cycle managementDevelopmentTestingProductionTools

3 Summary

4 Q&A

Release Management Team, Openbravo Openbravo ERP life cycle management 23/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

Summary

Development collaboration: modules + SCM + issuetrackerTesting: use OBX files and the MMC. Replicate Productionto Testing first.Production: do it in testing first. Repeat the steps inproduction later.

Release Management Team, Openbravo Openbravo ERP life cycle management 24/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

Outline

1 Overview: development, testing, productionProblemDefinitionGoals

2 Effective life cycle managementDevelopmentTestingProductionTools

3 Summary

4 Q&A

Release Management Team, Openbravo Openbravo ERP life cycle management 25/26

Overview: development, testing, productionEffective life cycle management

SummaryQ&A

Thank you.Questions?

[email protected]://jpabloae.wordpress.com

IRC:iarwain(Freenode)

Release Management Team, Openbravo Openbravo ERP life cycle management 26/26