Could be a TL;DR topic but I've been meaning to streamline my process somewhat so I've invested a little time over the past few projects tidying up the phases of work and how I integrate design into front-end and front-end into CMS.
I'd be interested to know what I need to improve on, and how others are targeting time traps/phases that cost time or can be reduced.
Here's a rough breakdown of an 'average' build (I know there's no such thing).
- Set up of project: contract, invoicing, sitemaps/UI flowcharts, spreadsheet, contacts, assets and brief/spec - all organised in consistent directory structure.
- Concept Design (iterative and version controlled) - Client sees PNG scamps shown at 100% in the browser - I think this is an important step - they will have a better idea of what to expect in the finished article when presented this way (As opposed to emailed JPEGS or whatever).
- Sign off concepts
- Design Development - same as above with all major page layouts covered/considered + a catch all for common in-page elements like form controls, maps, lists, tables etc. Should also consider the squeeze and push of responsive here so smart phone and tablet views (don't leave this till the build)
- Sign off all Design work
- Front-end set-up including copy of base files/framework, SFTP, GIT repo and SASS
- Creation of all the major content 'groups' as basic HTML includes considering ALL templates designed at this time so that there's not as much scurrying to and from the design to code up.
- Basic CSS styling using SASS and site tested as I go in the lowest common denominators/standards (Mobile Safari IOS6, Current Firefox/Chrome and whatever version of IE I'm going back to, basically covers the most common bugs I find)
- Core includes fleshed out and refined (masthead, footer) + adding in scripts to get a feel for interactivity
- Retina sprites created and a 100% version saved out for IE7/8 - everyone else gets 200%
- Key pages fleshed - focus on progressive enhancement and responsive
- Sign Off
- All other pages built ready for CMS and remaining scripts/styles sorted
- Sign off
- CMS installed from a set of developer files that includes a directory for commonly used Extensions, Modules and Plug-ins.
- Template integration both locally with MAMP and remotely (synced through Mountee in my case - brilliant Expression Engine dev module)
- I've got nothing here for client to monitor progress really - they just have to be patient while we work.
- Closed testing by key stakeholders only
- Sign off
- Soft release and debugging with wider group of testers / environments
- Sign off
- General release (holds breath)
- Inevitable amendments
- Sign off
- Evaluation, final invoicing and closing of project including client testimonial and packshots.
- Tell client we did it wrong and we need to upgrade a load of shit (joke, sort of).
With regard to the front-end side of things, here's my dev environment set up as it is now:
- Win 7 with IE9/10 and XP with IE7/8 as virtual machines on second Screen (set for windows gamma).
- MAMP running locally so I can use includes etc and useful for testing devices over IP
- GITHub monitors changes locally so I can reverse a commit if I really fuck something up (useful for teams working on same file set too).
- LiveReload monitoring site development folder also means I don't have to fuss with terminal for SASS
- Using localhost with MAMP and pointing at local IP for iPad, iPhone and Samsung Android (4) + Livereload running so all environments are updated as we go (no refreshing is a fucking godsend!)
- A remote site set up under a test domain (often password protection) for testing on weird kit on larger projects, and for clients to monitor progress. I generally just push builds up over SFTP but this part I'd like to improve. Perhaps a nice modal CMS that can cushion the content with user functionality without imposing any kind of impact on the development environment...
- live site with real time DB linked to local templates
--- would love to know how folks are deploying a site and keeping backups of databases locally etc. Just don't feel I've got the measure of this at all.
So is some of this dumb? Got any ideas for the PERFECT set up given the multifaceted sides to the industry?