Documentation and specifications Writing source code Debugging Release version and public testing