What do we need? Why do we need it?
How will we design it?
How will we build it?
Can we use previous work? How do we build reusable components or services?
How will we code it?
How will we run it?