To estimate the project scale and so-called bottlenecks, you need good planning. With large industrial projects scheduled for many months ahead, a lot of unknowns always come. The better the planning, the more it should allow us to avoid some unpleasant situations that we can not anticipate.
Such an approach to planning takes into account various disciplines, in many cases, it would be designing software, firmware, and hardware. Each of them has its demands. Like hardware, which is strongly dependent on the availability of parts and whether everything will arrive on time.
The crucial thing is to define dependencies - what results depend on what actions are performed. That is because all things happen in parallel, they rely on one another, and it is challenging to embrace everything in such a way that no one ever waits for anything.
So, it is crucial to approach planning in a thorough and detailed way. It can be done by drawing up a timeline for each person or team representing different competencies. Developers need their own timeline, engineers another one. The business also requires separate tracking.
To ensure everything goes smoothly, we regularly compare the timelines and status of milestones on SCRUM events, updating and adjusting the scope and deadlines. Simply put, flexibility is key. If you want to learn more about it, go to the article: Why Is Flexibility Such a Valuable Trait in Software Development?