Main content

Music Events Platform: a domain driven approach

Chris Thorne

Senior Experience Architect

Tagged with:

My name is Chris Thorne and I am a Senior Information Architect in User Experience and Design. I work on the ΒιΆΉΤΌΕΔs music events platform, named (after the Glastonbury Founder, Michael) Eavis.

Eavis is the platform that controls and publishes our music events experiences on the web, tablet, mobile and interactive TV. Its purpose is β€œto present unforgettable ΒιΆΉΤΌΕΔ performances online in a meaningful, compelling way”.

It is built on the ΒιΆΉΤΌΕΔ's which is service orientated in its architecture, and uses Java at the service layer, PHP at the rendering layer, and relational and object databases for storage.

Eavis delivers the and last year it delivered . It powers Μύ and many other festival sites. It also powers sessions like .

As of today Eavis also powers Μύwhich showcase the ΒιΆΉΤΌΕΔ's orchestras and other singers.

The ΒιΆΉΤΌΕΔ Orchestras and Singers website (otherwise known as the Performing Groups)

Agile development

For Eavis we take a relatively approach. Every few months we set a new goal for the platform, which helps focus our development effort. Our goals so far have been:

1. May 2012 – Deliver Hackney Weekend

2. Nov 2012 – Deliver Speech and Sessions Events

3. May 2013 – Deliver Glastonbury

4. Jan 2014 – Deliver Performing Groups

As you can see, our most recent goal was to replace the old performing groups sites with new, multiplatform Eavis-powered sites.

Each time we set a goal, we make sure it is focused, and achievable in roughly 3 months of development. Each goal is delivered to benefit all events, and gradually expands the capabilities of the platform; as of today the Eavis platform delivers 45 different event brands.

The 45 ΒιΆΉΤΌΕΔ Music brands powered by Eavis

TheΜύMusic Events Domain.

In Eavis, we have also taken a domain driven approach, allowing us to:

- Reduce communication errors, since the team shares a common β€˜domain’ language – we use the same terms throughout requirements, specifications, code and in the content management system.

- Increase sustainability and reduce maintenance costs of the product. A good domain model should change infrequently, and therefore the shape of the database underpinning the product should change infrequently. This should reduce maintenance costs.

- Create and manage content in a multiplatform way. The content is structured, and aligned to a domain, not a method of presentation. For example, updating information about a performance will update all parts of the experience where that performance information is used.

Michael Smethurst has written about before. Past and present colleagues like and have presentations you can read about Domain Driven Design (DDD).

Applying the DDD craft to Eavis, we first defined the nouns for the domain, and the relationships between those nouns. The Eavis domain we might call a β€˜music events domain’. The nouns (aka things we want to talk about) include Events, Acts and Stages and Performances.

This Domain Driven approach really helps our multiplatform content strategy, in that it doesn’t matter what device you experience a music event on, we still want to create experiences for the entities in the model – events, acts, stages, performances. In the longer term, the content we create should be easy to migrate to a new technology or platform, since the nouns in the domain haven’t changed.

With each new phase of development, once we have a defined goal, we review the model and usually add a small number of new entities or entity attributes.

Most recently, with the addition of classical music events, we needed to be able to promote tickets, and to be able to talk about classical music, and composers and performers of that music.

In the future, we will be improving the way we present our live event coverage, using technologies and user experience patterns developed as part of the ΒιΆΉΤΌΕΔ's which has launched this month for ΒιΆΉΤΌΕΔ Sport's Winter Olympics coverage.

I'd be happy to respond to any questions you might have about Eavis and the approach we have taken here.

Chris Thorne is a Senior User Experience Architect, ΒιΆΉΤΌΕΔ Future Media

Tagged with:

More Posts

Previous

ΒιΆΉΤΌΕΔ Weather app hits 5m mark