How to begin a sofware developement project