Hi Bruno,

It depends on budget, priorities and the type of application you're trying to 
build. I often work with ad agencies on reasonably simple cms and e-commerce 
sites. For those, we just agree high level features, they work with the client 
on an approved look and feel and then we turn the provided psd files into 
HTML/CSS and drop them into the system.

For the 20% of the projects we do that are more functionally interesting, we'll 
often do a short fixed-effort discovery phase to clarify business intent, 
audiences and the key tasks each role needs to be able to perform (user 
stories). We'll also do spikes around any large areas of tech risk like new 
third party API integrations and will then provide an estimate and a suggested 
dev plan (usually scrum with 2 week iteration for greenfields, sometimes 
kanban). We don't schedule all the sprints - just the first sprint or enough 
stories to fill our kanban WIP limits.

In parallel with the dev, the designers will work with the client on look and 
feel, but I often like to get most of the way there functionally before getting 
locked into designs that may not be consistent with the UI requirements from a 
usability perspective. I also try for much more simple and flexible markup on 
such projects so if we have to iterate over the designs, we can do so fairly 
inexpensively.

In terms of testing, we discuss business objectives and how they could be 
tracked before we start the project so the client can measure some kind of ROI. 
We use cucumber for acceptance testing (as part of agreeing story specs so 
usually as part of sprint planning) and either rspec (for ruby) or a similar 
BDD influenced framework (e.g. spock for Groovy) for unit tests. 

Most coding is 1 up, although we pair on anything interesting and I pair 
whenever I meet someone at a conference I'd like to learn from. We use git for 
source control and projects with more than 2 devs we always use Hudson for 
Continuous integration.

Best Wishes,
Peter

On Nov 1, 2010, at 11:21 AM, Bruno Thooma wrote:

> Greetings,
> I have a fairly simple [I hope] high level question:
> 
> What is the best approach for developing a rails application?
> 
> For example:
> 1. Requirement analysis with client
> 2. Design of web site [layout, css-slicing]
> 3. Coding
> 4. Testing
> 
> I know this sounds very simple, but I have really come to enjoy
> scripting RoR applications for my work and office, but I cannot figure
> out how professional application designers approach this very basic
> need. Do you professional guys usually have a design and layout that
> the customer likes before you code, or do you code an barebones
> prototype first and make sure the customer is happy with functionality
> before you do any design?
> 
> When you do decide to focus on design, do you do it yourself
> [e.g.Photoshop images sent off for CSS slicing] or do you farm that
> out to a professional web designer?
> 
> Thanks in advance.
> Bruno
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Ruby on Rails: Talk" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/rubyonrails-talk?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to