<<< Previous speaker Next speaker >>>

Track host: Erik Dörnenburg, ThoughtWorks

 Track host: Erik  Dörnenburg

Erik Dörnenburg is an application architect and developer at ThoughtWorks Inc., where he is helping clients with the design and implementation of large-scale enterprise solutions. Building on his experience with J2EE, Microsoft .NET and other environments, Erik is continually exploring new patterns of enterprise software.

Before joining ThoughtWorks Erik was Technical Director at Pixelpark UK, a new media company, where he integrated enterprise systems with web-based solutions and a variety of digital delivery channels. His career in enterprise software began in the early nineties on the NeXTSTEP platform and Erik has been an advocate of agile, test-driven, object-oriented development and Open Source software for many years. He holds a degree in Informatics from the University of Dortmund and has studied Computer Science and Linguistics at the University College Dublin.

Presentation: "CruiseControl"

Time: Tuesday 15:40 - 16:40

Location: To be announced

Abstract: Continuous integration has become a popular practice on many software development projects, agile or not. With CruiseControl ThoughtWorks created one of the first solutions in the field, and in this session we discuss typical patterns, best practices, and advanced techniques for continuous integration and the deployment of CruiseControl. We will also provide an overview of the planned development of CruiseControl

Presentation: "Introduction: Enterprise Application Frameworks (day 2)"

Time: Wednesday 09:00 - 09:15

Location: SAS Nortvegia

Abstract: TBA

Password protected Download slides

Presentation: "Case Study: The New Guardian.co.uk"

Time: Wednesday 14:30 - 15:30

Location: SAS Nortvegia

Abstract:

The Guardian newspaper has embarked on the next stage in its digital content strategy with the launch of its new travel site: The New Guardian.co.uk

From a technical perspective the development team faced several challenges when building the new platform for one of the UK's largest websites. Substantially increased capabilities to organise and relate content require more complex logic. This in turn means maintaining highest levels of performance when creating dynamic pages. The brief also called for a complete separation of page design and content logic, integration with user generated content, and a strategy for the migration of over a million URLs.

In this case study Matt and Erik present the overall solution, which uses practices and technologies such as Domain-Driven Design, the Spring framework, AJAX, AOP, syndication and automated web testing. They also discuss in detail some of more innovative approaches to the challenges.

Password protected Download slides

Presentation: "Panel: Enterprise Application Frameworks"

Time: Wednesday 16:00 - 17:00

Location: SAS Nortvegia

Abstract:

During the track we have seen all those technologies and frameworks - probably a lot of questions are left open and almost certainly new have arisen.

In this panel we will take the input from the audience and discuss Enterprise Frameworks in general. So this is your change to actively participate!

Tutorial: "TDD tutorial"

Track:   Tutorial

Time: Friday 09:00 - 12:00

Location: SAS Room 13/14

Abstract:

This tutorial demonstrates the development of a small example application using test-driven development and related technologies. The system will comprise a handful of Java classes that exemplify typical components found in enterprise applications, including domain objects and a service layer. The tutorial is structured into three 'iterations' which cover

  1. state-based testing with JUnit
  2. interaction-based testing with JUnit and jMock
  3. deployment in lightweight containers such as PicoContainer and Spring.

The iterations not only introduce the concepts but also provide room for the discussion of trade-offs and edge cases, e.g. how to deal with testing private methods and when not to use dynamic mocks but fake objects.

Attendees gain an understanding of how proper use of test-driven development fosters good design; through decoupling and interface discovery for example. Attendees will also gather a nice catalogue of the most commonly used patterns used in conjunction with test-driven development.