But I find that I take a similar approach to Chen. Maybe not quite so rigorous.
- Start with a console app (actually I always keep a console app in the solution for isolating bits of code I want to debug)
- Scaffold the part where said code needs to go
- Once the code from step 1 is ready, stick it in the scaffold and debug until it looks good
- Work on further tests (load test, code coverage, variety of inputs)