I have some problems figuring out how I should design an application.
On a production line there multiple stations. The products will move from one station to the next. Each station will execute some task on the product. The tasks should be executed in parallell, so all stations that have a product should execute it's task simultaneously.
I.e. Product1 will enter Station1 and Task1 is executed. Then the production line is forward one station. Product 2 enters Station1 and Product1 enters station2 and corresponding tasks are executed. Each product will be removed from the line in the last/Exit Station. New product will arrive "forever"...
This feels like it's been solved before and maybe there is some design pattern that will help me achieve this?
At the moment there is 5 stations but it may be more later.
(The program will be an Desktop Application using WPF)