Помогите гуманитарию с экономикой

Какая задачка:


Поверхностное погружение:

Существует портфель проектов. По данным проектам продаются затраченные часы специалистов (у специалистов есть ставка в час). Причем цикл расчетов между заказчиком и исполнителями не един, зависит от самих проектов.


Список циклов:

1) каждую неделю

2) каждые 2 недели

3) каждые 3 недели

4) каждый месяц с 1 числа по 30-31 (в зависимости от месяца)

5) каждый месяц с N числа по N-1 числа следующего месяца.


Но иногда по тем или иным причинам не получается продать всю сумму часов специалистов заказчику. В подобном случае непроданные часы попадают, так сказать, в "корзину" по данному конкретному проекту, где они и "копятся". То есть у каждого проекта есть подобная отдельная "корзина". Задача исполнителя в подобной ситуации - допродать в последующих циклах часы из данной "корзины", чтобы в итоге "корзина" оказалась пустой.

Далее. Неважно, какой из вышеуказанных циклов использует тот или иной проект - происходит учет данных по каждому проекту, который проходит фиксированно в начале каждого месяца. То есть, идет учет того, сколько специалисты затратили часов в конкретный месяц, а также сколько из затраченных часов было продано. Из затраченных часов вычитаются проданные. Если есть остаток - он идет в "корзину".


C чем не справился:

Нужно как-то вывести математической формулой (но тут думаю, что составными формулами с коэффициентами) отслеживание ситуации в "корзине" по каждому проекту по истечению своего цикла (на что нужно обратить пристальное внимание, на что меньше. Где часы в "корзине" слишком большие по итогу учета, а где в пределах нормы или даже меньше (проданы часы из предыдущего цикла)). В общем, если крыто - отслеживание показателей корзины, исходя из цикла проекта.


Задача усугубляется, как мне гуманитарию кажется, следующим:

1. Из-за не однотипности циклов (слишком разные промежутки) и одновременно фиксированной датой учета - по каким-то проектам в "корзину" часы попадут обязательно в виду того, что сам цикл по какому-то проекту в начале месяца либо еще в процессе, либо только подходит к концу. А если цикл еще не окончен - значит данные часы еще даже не продаются заказчику и идут в "корзину", так как время еще не пришло . И в подобной ситуации часы в "корзине" - это нормальная ситуация, так как они будут учтены при проведении учета в следующем месяце. Но тут вопрос - как понять, сколько часов в "корзине" по данному циклу является нормальным, исходя из вышеуказанных циклов проекта?

2. Также, для тех, кто плюнул только что в монитор гуманитарию из-за, возможно, простого первого пункта:

И кол-во, и время самих специалистов на проекте может сильно варьироваться из месяца в месяц.

Например:

1) в цикле P на проекте работало 3 исполнителя по 8 часов.

2) в цикле P+1 - уже 2 исполнителя по 4 ч, 1 всё также по 8 ч.

3) в цикле P+2 - 1 специалист по 6 часов, 1 специалист по 2 часа, а третий суммарно за цикл потратил всего 2 часа.



Что в итоге есть:

1. Ставки специалистов в час (например, 1000, 1500, 2000)

2. Макс часов на проекте в рабочий день - 8. Минимальный - отсутствует

3. Общая сумма для заказчика = ставка специалиста * общие затраченные часы специалиста в цикле (+ возможные часы из корзины за предыдущие циклы)

4. У каждого проекта разные циклы (вышеуказанные)

5. Учет происходит всегда в конкретную дату в начале каждого месяца.


Прошу умных людей постараться помочь, потому что я уже попробовал все что мог, но, как вы понимаете, не выходит. Если будут вопросы - постараюсь оперативно ответить.