Three years bmw.com flash framework – review
Juten Tach,
last december, we switched off the full-flash-version of the bmw.com website. We replaced it with a sneak, lightweight, frameless html version, that of course uses flash modules here and there for showing the cool stuff you cannot show with simple HTML. The site has been heavily optimized for earch engines and we already see huge improvements in that field.
There were a lot of things involved in deciding to switch off the flash version. Some being very obvious, supporting only one version is easier than supporting two. Also i think, the zeitgeist has simply changed. Back in 2003/2004, when we began with the relaunch of the old bmw website, the idea about a full-flash website expressed the wish to let the web be more rich in terms of expressiveness as it was at that time and flash was – and still is – the tool for doing so.
Things change. Today i feel, expressiveness is taken for granted. Cool websites with kinky effects are everwhere, expectations are quite high. Instead, i think today it is more about connectivity, collaboration, combining data from different sources to build something new – semantic web, etc. Of course, all of that has to look good, feel smooth and be usable, but that’s not the focus. I like that shift, it feels like it is more about content and the “what” than about the “how”.
But of course, switching off the flash framework also made me sad – for a second or so. Building the flash framework for the bmw.com website was my first BIG project at Interone. I started with the technical concept at around may 2005 and finished it about one and a half months later. Together with other technical guys we wrote the complete IT concept, that had about 240 pages, 50 pages of these only for the architecture and the interface descriptions of the flash framework. Together with my colleague Lars, our fellow Wolfgang and about four further colleagues, we then built the framework with about 30 templates, 20 components and all in all about 50.000 lines of code, from about end of july to the 16th of february 2005 – when the new bmw.com launched.
It was an amazing project for us, working on a single project for over half a year is not very normal in an agency. We learned a heck of a lot during that time and if it was only about tiny bugs in the flash player, like scripts were not correctly run in a frame, where you where using a symbol from a runtime-shared-library. The biggest challeng was, that the website was not only the bmw.com, but we where to roll it out in dozens of countries. Everything had to be editable via the content management system. The architecture therefore put the central framework outside of the country folders, but the components – runtime shared libraries – within the country folder. That meant, we could have different font sets in different component rsls, but the templates and the central framework did not know about it, since we built the folder structure that way, that the path to component swf was allways the same, relative from the country folder. For making a new country rollout we only had to modify the country-specific component file, since the central framework and all templates where totally country- and language-independent.
At that time, we learned a lot about splitting up an application’s modules into different files for better rollout possibilities and easier maintenance. It took us some time to find the best workflow to generate intrinsics or _exclude.xmls – not sure if we found it yet.
From that february 2005 on, over 80 flash campaigns and dozens of new modules, templates and components have been developed based on that flash framework. We even developed a light version of the framework, that was able to run a single campaign in a simple html page without the rest of the bmw website. We built a complete form parser and layouter, that takes complex form definition xml files for building up the forms, we offered on the site.
Many flash developers inside of Interone and a lot of freelancers have worked with the framework – and cursed it from time to time, i know
)
Not all of this is deprecated now, we still can use a lot of code, the components, the utility classes and so on, even if we do not use the framework anymore. Also, not having to maintain a big framework anymore is a bit of a relieve actually, because having a persistent framework all the time meant, we had to be extremely carefull of what to change or to add, because most likely this affected some template or some campaign already running live.
Well, hope that didn’t sound too pathetic, but i feel, it’s not too bad to look back, sometimes.


Wow, this is a blast from the past. The very first flash projects i built way back in 2000/1 were the Z8 and X5 features for BMW. After that i pretty much worked on projects in a similar vain to how you describe above, in fact still doing it today. Its nice though to be reminded of were it all begin(for me at least).
I’m facing the same problem with http://www.rezopdr.com. I spend 6 month along to create a framework in AS2 with a MVC approach. But it’s me that will leave the company… and my framework.
My framework was good at the time for retreaving XML content from my Rails application and display it. I worked a lot to solve problem in AS2 for broadcasting event and manage latency in client/server connexion. But now, with AS3, a lot of my code is out of date and if I want to use it, I’ll have to create a new architecture…
I think that BMW have made a great choice by leaving the all Flash version of the website. Flash is good for MicroSite supporting Special Events, not for day to day browsing.
Great post! I like the “about what not how” part! There are too many nice looking websites but very few useful ones. I always wonder what users’ real need is. I’ve seen many ugly websites but has very high traffic and I know most of my projects don’t attract many visitors.
The flash video of the BMW 5 Series Sedan which was on the website in 2004 had a video clip of a BMW being driven through hills and had great background music. Any idea what the track was or where it is available?
hey turbocat,
. Also, a lot of tracks are individually produced only for that campaign and not freely available.
sorry, that was before my time