The factory model is another name for waterfall software development or the software development liufecycle which I am an expert in. This approach only works when there you can get the requirements, architecture, design and technical solution at least 90% right upfront. History has shown that this has never been the case in software development. Generally only between 50% and 70% of the requirements, architecure and design are still relevant and correct by the end of project. The problem is that the factory model is a very poor approach for learning and change. History has shown that this waterfall factory model consistently produces bad products, bad quality, miserable developers and massive amounts of wasted time and effort. It is extremely inefficient for software development . Please read my article on uncertainty in product and software development. https://ev0lve.medium.com/managing-uncertainty-9b4a1227dec3