A project plan is a map.
And your project is the vehicle that helps you get from point A to point B on the map.
A project must have everything you need to carry you to your destination: waypoints, detours, and the people and resources you need to make it safely (and on time). And here's the thing, if you get in the car and drive without a plan, you have zero clue as to where you will end up.
Here are 3 questions every project manager can ask to help set their project up for success before hopping in the car:
Question #1: Where are we?
Directions are impossible if you don't know where you are starting from.
The same is true for a project.
You have to know what you have at your disposal and the context of the environment you are in right now.
What's happening in the business? the market?
What's the emotional state of your team?
Do you even have a team?!
What other projects are happening around you?
Take stock of the situation you find yourself in before you get started.
Question #2: Where do we want to go?
Now that you know where you are, you need to know where you are going.
Yes, but I can't tell you how many projects have started with "go build this thing" and no one knows why. You don't need a rocket ship if you are just trying to get to the local convenience story. Maybe it's easier to walk!
If someone give you a directive to build "something", keep asking why until you truly understand where it leads.
Question #3: How are we going to get there?
Once you know where you are starting and where you are going, you can plan how to get there.
Most people skip right over the first two questions. Why? Because this is the fun part. This is where you get to map out all the fun things you are going to do along the way to your destination—Route 66 through with a brief stop to see the giant plastic dinosaurs in the middle of the desert.
In software, you can build literally anything you want. You are only limited by your imagination. Just do yourself a favor and give your imagination the constraint of the start and finish line so you don't accidentally build the wrong thing.