When planning a new feature or improvement, one should break it down to the very tasks and jobs that are to be performed by the feature. In other words, one should ask:
- Why will I need this feature?
- What would I like to achieve with this feature?
An example of such an analysis is made on self-driving cars: Exactly what jobs will self-driving cars satisfy?