Defining the data model
For this chapter, we will consider a tech company to be our organization with organizational goals as the top-level north star that is served via multiple epics or themes. Each of the epics will have one or more features that need to be built for delivering the parent epic towards achieving the mapped organizational goals.
Our app, therefore, has four distinct entities requiring tables for each of the following:
- Organization goals or OKRs
- Epics
- Features
- Teams
Then, we need to be able to show the state (such as not started, in progress, and done), and the status (such as on schedule and behind schedule) for each of the deliverables as well as those on the aggregate level and, thereby, require a table for listing the state and status values.
Often, we may come across the scenario where a single epic will deliver against more than one OKR and we would like to capture that in our app. The most scalable and automated way of achieving...