A concrete5 Technical Outline of Work is a requirements document for a website which contains some implementation details but is largely absent of specific technical instruction. It’s not the place to describe how to build a theme or a block type -- that’s up to you and your development process. For example, in our development process, we use a combination of our developer documentation, personal experience and the project management tool Jira to actually manage our projects, and break our tasks up into specific Jira tickets.
No, the technical outline of work exists in order to explain to anyone interested in the details of the website how that website will be organized in terms of concrete5 concepts. It should be readable by any of your project stakeholders. It may contain images, possibly with annotations, but it doesn’t have to. It’s a complete, thoughtful guide to what you’re building, and possible why you’re building it this way.
When you’re done with a technical outline of work, you should have a firm grasp on exactly what you need to build for your website, including the necessary page types, page templates, any custom layout presets, custom block view templates and/or custom block types. Additionally, any packages required from the marketplace or other sources should be readily apparent upon completion of the technical outline of work.
Don’t skip this step: even on a site as simple as this Dreamrs demonstration site, it took us a little while to put together the technical outline of work, but it’s going to save us from wasting time and help keep us from throwing away code in the long run.