1. Users Stories: From subject matter experts (SME), either write it down or get it from business analysts (BA). Don't keep stories too big. if they happened to be then split them into small. Take help from BAs to split it into small.
2. User Cases: Extract the use-cases and list them out.
3. Identify the happy path which completes the story/use-case and start with one at a time.
4. Extracting the Business Logic and Rules from the above.
5. Create a solution structure, and a project under source control system.Store everything under source control. No documents or test cases or supporting documents & software libraries and tools should be outside the source control. Even if you keep micro-notes of your workflow in attacking the story should also be in the source control.
6. Transform above into corresponding Acceptance and Unit Tests. Automate them using automation tools and frameworks. Need not to write all of them at once but acceptance criteria tests can be completed story-by-story, case-by-case.
7. Reading a set of acceptance and unit tests should tell the same Story and be traceable back to the original story/use-cases.
8. Make unit tests pass one-by-one. If needed add more tests to complete the corners cases. No single line of production code (either feature or bug-fix) should be written without a corresponding failing test.
9. Keep all the assets always checked-in. Check-in your code frequently. Don't check-in incomplete, non-compilable code. If you want then use shelving feature to store incomplete works.
10. Every step/changes (feature, bug-fix) should be checked-in separately. Don't work on more than one thing at a time and check-in all at once. It would be very difficult to write check-in comments when multiple items are checked-in. Write good check-in comments.
11. Don't check-in without passing all the units tests in your machine. Always get latest version, rebuild the solution, make sure it compiles, and all the units tests are passed. Repeat this until you get all the tests are passing.
12. Refactor the code frequently. Follow... Red...Green-Refactor path.
Develop with pleasure! :)