Continuous Integration

Presented to

UniForum Chicago

Quinn McCallum & Scott Wheeler

Open Foundation, LLC

May 10th, 2005

Overview

What is Continous Integration?

Benefits

Continous Integration Cycle

Continous Integration Components

Demo

Resources

Questions

What is Continous Integration?

Automated Build and Test as Changes Occur

Martin Fowler (www.martinfowler.com/articles/continuousIntegration.html)

Utilizes the XP Testing Concept

Can Include Code Metrics

Puts Focus on the Team

Benefits

Continuous Sanity Check

Early Detection of Errors

Miscomunication Between Developers

Automation Reduces Human Error

Provides Regression Testing

Facilitates Full Testing Coverage

Code Analysis

Continous Integration Cycle

Continuous Integration Cycle

Continous Integration Components

Build Framework – CruiseControl (cruisecontrol.sourceforge.net)

Build Tool – ANT (ant.apache.org)

Test Frameworks

JUnit (www.junit.org)

DbUnit (dbunit.sourceforge.net)

EasyMock (www.easymock.org)

MockObjects (www.mockobjects.com)

StrutsTestCase (strutstestcase.sourceforge.net)

Cactus (jakarta.apache.org/cactus)

HttpUnit (httpunit.sourceforge.net)

Performance Test Tools

JaMon (www.javaperformancetuning.com/tools/jamon/index.shtml)

JMeter (jakarta.apache.org/jmeter)

Continous Integration Components
(continued)

Code Analysis

JxRef (www.jxref.org)

JDepend (www.clarkware.com/software/JDepend.html)

PMD (pmd.sourceforge.net)

JDiff (www.jdiff.org)

Standards Enforcement

CheckStyle (checkstyle.sourceforge.net)

Documentation

JavaDoc (java.sun.com/j2se/javadoc)

JxRef (www.jxref.org)

Database Doc

XML Schema Doc

Demo

Questions

REDUCED COST - The most obvious benefit to using open source is the lack of licensing fees.

STANDARDS - Since open source software is based on industry standards, migrating from open source software is usually much easier and less costly than migrating from proprietary software.

W3C – Tim Berner-Lee – invented WWW while at CERN.

HTML – Hypertext Markup Language

HTTP – Hypertext Trasfer Protocol

XML, XSL, Xpath – Extensible Markup language, stylesheet XML Path laguage

SOAP – Simple Object Access Protocol

DEFACTO STANDARD - Open source software has established itself as the leading solution in many software categories. Many times this has eliminated all commercial competition.

Apache Webserver - is the most widely used web server on the internet. It can run on all widely used operating systems and has features that match or exceed those of any commercial offering.

Apache Tomcat - is the reference implementation of SUN’s Java JSP/Servlet specification. Many vendors use it as their JSP/Servlet engine.

ANT - (Another Neat Tool) is a Java based scripting tool used to automate software development processes like change management & testing. There is no viable commercial alternative for a J2EE environment.

Xerces/Xalan - are the defacto standards for XML parsing and XSL transformations. Most commercial software vendors use Xerces and Xalan.

COMMERCIAL SOFTWARE VENDORS use open source software in combination with their proprietary offerings.

BEA - uses ANT for all their internal development. Xerces and Xalan are packaged with their application server.

IBM - makes extensive use of the Apache webserver, Xerces and Xalan in their application server product. They also have based their entire software development suite (Websphere studio) on Eclipse, which IBM donated to the open source community.

Oracle - uses the Apache webserver in their application server product.

SUN - uses open source as the basis of their new Mad Hatter desktop.

REDUCED COST - The most obvious benefit to using open source is the lack of licensing fees.

STANDARDS - Since open source software is based on industry standards, migrating from open source software is usually much easier and less costly than migrating from proprietary software.

W3C – Tim Berner-Lee – invented WWW while at CERN.

HTML – Hypertext Markup Language

HTTP – Hypertext Trasfer Protocol

XML, XSL, Xpath – Extensible Markup language, stylesheet XML Path laguage

SOAP – Simple Object Access Protocol

DEFACTO STANDARD - Open source software has established itself as the leading solution in many software categories. Many times this has eliminated all commercial competition.

Apache Webserver - is the most widely used web server on the internet. It can run on all widely used operating systems and has features that match or exceed those of any commercial offering.

Apache Tomcat - is the reference implementation of SUN’s Java JSP/Servlet specification. Many vendors use it as their JSP/Servlet engine.

ANT - (Another Neat Tool) is a Java based scripting tool used to automate software development processes like change management & testing. There is no viable commercial alternative for a J2EE environment.

Xerces/Xalan - are the defacto standards for XML parsing and XSL transformations. Most commercial software vendors use Xerces and Xalan.

COMMERCIAL SOFTWARE VENDORS use open source software in combination with their proprietary offerings.

BEA - uses ANT for all their internal development. Xerces and Xalan are packaged with their application server.

IBM - makes extensive use of the Apache webserver, Xerces and Xalan in their application server product. They also have based their entire software development suite (Websphere studio) on Eclipse, which IBM donated to the open source community.

Oracle - uses the Apache webserver in their application server product.

SUN - uses open source as the basis of their new Mad Hatter desktop.

Strategy and Use

76 percent of respondents to TheOpenEnterprise.com's recent survey of 260 companies said they don't have formal policies

Among the small 24 percent that do have such policies, the popular areas those policies cover include security (77%), intellectual property (66%) and whether developers can in fact contribute code (48%)

Strategy and Use

76 percent of respondents to TheOpenEnterprise.com's recent survey of 260 companies said they don't have formal policies

Among the small 24 percent that do have such policies, the popular areas those policies cover include security (77%), intellectual property (66%) and whether developers can in fact contribute code (48%)

Office Productivity

Open Office

+ Equal if not better functionality than MS Office

+Full Suite – Word Processing, Spreadsheet, Presentation, Math , HTML Editing

+ Fully compatible with MS Office

+ Free or Supported (SUN Star Office)

- Not widely used

- Not well known, no marketing

- Minor translation issues with MS Office – not perfect

Open Foundation

Scott wheeler

2004-01-09T08:46:20