writing docs and developing system tdd