Olá a todos! Queria a ajuda de vocês para um projeto que considero complexo, vou tentar explicar a minha demanda:
Tenho que definir um grupo de projetos que entrarão em esteiras que estarão rodando e tem capacidade dinâmica.
Esses projetos podem ser de serviços diferentes. Eu tenho 7 serviços diferentes, e 10 esteiras de produção.
Esses 7 serviços acionam um conjunto de esteiras diferentes, em fluxos de esteiras que podem rodar em paralelo ou não.
Por exemplo:
O serviço 1 aciona a esteira 1 primeiro como pre-requisito de todas as outras, e pode acionar as esteiras 2, 3 e 4 em paralelo, depois aciona a esteira 5 quando a finalizar a esteira 2 e 4, etc.
Meu input é um projeto que seria classificado como um dos 7 serviços, ou seja, ele teria um fluxo de esteiras próprias.
Lembrando que a demanda do projeto para cada esteira não é fixa. Exemplo, Temos 2 projetos que são do mesmo serviço, seguem o mesmo fluxo mas tem diferentes demandas de horas em cada uma das esteiras do fluxo.
O que eu quero:
- A capacidade de cada uma das esteiras ao longo do tempo é atualizada sempre.
Por exemplo: Tenho 2 projetos na esteira 1 em um tempo t1, um com demanda de 100h na esteira 1, e outro com demanda de 200h na esteira 1. Considerando que essa esteira tem capacidade total de 500h. No tempo t1 eu tenho disponível na esteira 1 200h (500h-200h-100h=200h).
No tempo t2 (supondo que passem-se 100h), o primeiro projeto com demanda de 100h iria sair dessa esteira, liberando 100h, e a nova capacidade da esteira seria de 400h.
Deve ser possível modificar manualmente as capacidades das esteiras caso aconteçam imprevistos
- Dado um conjunto de projetos com serviços definidos, com o fluxo de esteiras que ele percorreria e qual a demanda que ele requisita de cada uma dessas esteiras é definido. Quero ser capaz de verificar se observando minhas esteiras e a sua capacidade ao longo
do tempo se é possível esse conjunto de projetos percorrerem as esteiras sem gargalos (se as capacidades ao longo do tempo conseguem suportar as demandas do grupo de projetos que vai entrar)
É possível fazer isso no project? Alguém conhece algum projeto ou recurso pra me ajudar?