Build a Phased Project Including Introspection and Baselining Activities
As a part of the project plan the stakeholders will produce the actual specifications of the product, my question then becomes how do I create an accurate work breakdown structure or project schedule for the implementation of the specifications and the project overall without knowing what the specifications are?
You don't. If you can't get sufficient planning details ahead of time, then you can put together a phased project with time and budget allocated to tasks such as:
Phase 1
- Gathering specifications.
- Analyzing specifications and decomposing them into WBS packages for a subsequent phase.
- Build out the plan for Phase 2 based on the information you've gathered and analyzed.
- Some form of project introspection to determine if the project should proceed to Phase 2 based on the information you then have.
A phased project is extremely common in situations where you know generally what is supposed to come out of the very end of the project (e.g. "build a new website" or "move to a new data center") but no one knows exactly what that will actually entail. So identify both the known-unknowns and unknown-unknowns, you have to build in information-gathering, analysis (including development or realignment of budget, scope, schedule, and resource baselines), inspect-and-adapt, and go or no-go inflection points within the initial project plan.
Why This is a Common (Anti-)Pattern and How to Communicate to Stakeholders
If you are asking about specifications, that means you aren't doing factory work where you're churning out additional widgets you already know how to make. That means you have a cone of uncertainty anyway, so even if you had some initial hand-wavey specifications you'd want to build in phases and add sufficient slack to do periodic re-evaluation anyway.
All projects require slack and fine-tuning to be successful. Poorly defined projects simply require a lot more of both. Make that clear as part of the plan, add the risks of having so many unknowns and a lack of defined specifications to the risk register you create during project initiation, and move on with your life.
As long as you have pointed out that a project with no specifications can't be planned with exactitude, all you can do is include gathering and refining those things explicitly within the project itself. It's a common issue in project management, and the project's sponsors fundamentally own that risk so long as you've done your due diligence in pointing that out during project initiation.
Consider Emergent Design, or Pad for Replanning
No large project can be fully specified up front. This is a myth, and the source of much pain for project managers who don't already know that and who fail to effectively communication that to stakeholders.
If you can use an iterative methodology where the how of the project deliverables are an emergent property, then do that instead. Otherwise, the lack of initial detail around scope, functional, and non-functional requirements will require continuous re-planning. That's why change requests, scope control, and rebaselining are relied on so heavily in traditional project management.
Experienced project managers build these activities into their projects even when doing waterfall-type projects, whether explicitly or implicitly, for exactly the reasons given above. You just have to plan for all the replanning, and set everyone's expectations—including your own!—accordingly.