I have recently read a book (Responsive Design Workflow) and a blog (Stop doing upfront design, it’s a waste of time) talking about how designers can work in agile and the benefit of doing so. I agree with pretty much all they suggest and highly recommend you read both. (If you're interested in how designers can work in agile team, here is my previous post: Agile Survival Guide for Designers.) But I found the phrase 'no upfront design' a bit troublesome. I felt this was a bit like headline writing - correct in some respects but sensational and ultimately misleading. A better definition is needed of what exactly constitutes 'upfront design'.
'No upfront design' only when there has been upfront design
If you read carefully, the process these articles recommend DOES include some upfront design. They assume you already have something - brand guidelines, interaction language, visual assets - to work from. So while 'no upfront work' is needed for detailed designs, the branding and general look & feel work need to be in place... upfront.
Other things you need to have upfront include: the creative concept and the questions you are trying to answer (you'll also need to know which is the most important question). And to me, these are some of, if not the most important tasks to do during the 'upfront' design phase.
'No upfront design' for designers but upfront design for the team
When they say 'no upfront design', it seems to mean 'no upfront design as designers know it'. Probably because these articles were written for designers, the important part of the message is omitted. But I think it's more beneficial to look at the role designer plays within the team rather than within the limit of the design discipline.
What we found works best at Red Badger is to bring developers into upfront design process. All disciplines work together. What designers no longer do is to do upfront design in isolation.
You still need upfront thinking and designing in one form or another.
We work on the concept together (okay, maybe not all developers, but definitely a technical architect and any available team members). It's essential that we all know and have an input into the why, what and how of the project.
It definitely makes sense to start coding early too. You can experiment and play around with movements and structures - not just flat designs (a must for responsive design), pushing technologies. It will give you a creative solution that can be realised as you have envisioned it, and that can be taken seamlessly to the development phase - blurring the upfront and development phases of the project.
When designers code
I think it's great that visual designers are encouraged to code and experiment and I'm sure it will be the norm in the future. I like doing a bit of coding myself. But I think you should have one simple ground rule.
"Don't design in browsers" - Jenn Lukas at Ampersand 2013
I have just attended the Ampersand Conference in Brighton where the very entertaining Jenn Lukas introduced many ways that designers and developers can work closer together, and a lot of cat based GIF animations. She spoke about letting designers create a type set, using Typecast, creating icon fonts using IcoMoon and making CSS valuables (colour values, font sizes etc) directly editable by designers. She also suggested adding a screen size in the corner of the development page so that designers can make design decisions on break points for a responsive website in the live environment.
Then she made the point - "I don't recommend you to design in the browser. It limits your design". It was interesting to hear that from a developer's point of view. It's a good idea to test the design early in code and then improve - but don't limit your design by confining yourself to a browser window from the beginning.
If you find yourself constrained by the browser, stop coding and go back to the paper. Coding should help expand your creativity rather than limit it.
Mix it up
What does this all mean? It means things are mixing up. Boundaries between disciplines are overlapping. (Have you tried to find 'UX designer' recently? There are UI developers, visual designers and UX consultants who would all call themselves 'UX designer') The development phase is creeping into upfront design phase, and upfront design phase is creeping into development phase.
Orders and processes are changing and I guess the easiest way to describe this is by pointing out what it's not. But saying 'no upfront design' suggests what's left is still intact - when in fact, the rest of the process also has to change.
So it's definitely not 'no upfront design' for me. It's more like 'design and develop from start to finish'*. Doesn't it sound more fun?
*It needs to be catchier... Any suggestions?