Scheduling: Percentage assignment

I've had the following request from a producer:

"More often than not on a VFX show we'll assign multiple shots to an artist and they will work on each shot at the same time, bringing them all up to the same level in unison.

ie. If they have 3 tasks with 10 days each and are working on all tasks at the same time, you could say they are spending 33% of their time on each task, meaning the duration for each is 30 days, not 10.

Currently Shotgun appears to limit you to a set duration, which isn't very favourable as it looks like the artist is behind schedule.

In project you can specify the % that resource is assigned to a task and it will adjust the duration accordingly."


I guess basically what they'd like is to be able to set the start date and duration of a task, plus a new "% Assigned" field, and it would divide the duration by the % when calculating the end date.

10 条评论

  • 0
    Don Parker

    Hi Andy, can you ask that producer something for me?  Do they want Shotgun to try to do automatic date adjustments when they adjust the % allocation?  For example, say you are on a 5 day task at 100% with a start date of Monday and an end date of Friday.  Then you adjust the % allocation to 50%, should Shotgun automatically push the end date out 7 days to the following Friday?  (that's 10 work days at 50%) Or do we just leave the Monday and Friday and update the duration to 2.5 days?  Then, you could edit the 2.5 to 5, which would push out the end date to the following Friday?



  • 0
    Andy Geers

    This is apparently how our old FileMaker setup worked (notice the extra field "Assigned Days" that Shotgun lacks) - each task has the following fields:

    Bid Days - reflects the original bid (usually hidden from artists)
    Assigned Days - the assigned number of days for that task.
    % Assigned - The percentage of time that artist will spend on that task over the given period.
    Duration - The length of time the task will take - based on the assigned days and the percentage. ie. 10 days at 50% would show a duration of 20 days.
    Start Date - The date the work is scheduled to commence.
    End Date - The date the work is scheduled to end. Calculated end based on the start date + duration.
    Actual Start - We keep a separate record of the actual start date of a task. Somewhat redundant most of the time as it's usually the same as the task start date.
    Actual End - This is really useful as it's a sure-way of keeping accurate information about the length of a task and helps with querying.
    % Complete - Optional to allow us to enter how far along a task is.



    The thing is that ultimately you don't want the task cost to change - if we bid 2 days, then we jolly well want this task to stay as a 2 day task unless we explicitly decide otherwise. But that's quite different from the period of time that the task will drag on for - if the artist can only work on it for an hour a day then what is formally a 2 day task might span several weeks of the schedule.


    The other thing that I've finally cottoned on to in terms of why they like Microsoft Project so much for scheduling is that in that you can explicitly set a lot of formal relationships between tasks, e.g. you can say that this one can only start once this other one has finished, and then shifting one automatically shifts the other. You can also split a task and say we'll do half now and half later, but it still maintains this relationship between the two tasks so moving one half moves the other half as well. Having these explicit links makes all the logic of how to update the schedule a lot easier (in one sense).

  • 0
    Gavin Greenwalt

    It would be great if this could be calculated automatically as well.


    Example:  An artist is assigned a (2) day task which starts on Monday and a second (2) day task which starts on Tuesday.


    Task One would be assigned 100% on Monday and 50% on Tuesday.   But since it's a 2 day task that means it would extend to wednesday as well.


    Task Two would start on Tuesday but only be able to put in a half day on Tuesday -> Wednesday. So it would actually end thursday taking up 3 days.


    Now throw task deadlines into the mix and the function changes.  Let's say you add a deadline to Task One that it must be finished on tuesday.


    The software "solves" for this direction by setting the work done on Task Two to 0% for tuesday.  This is simple enough to figure out for a producer with two tasks but by entering the information that can't be adjusted (Deadlines, length of task) and allowing Shotgun to offer a "solution" it allows for one producer to handle a lot more themselves. It also makes balancing a huge number of tasks (say maybe 40 render tasks) as well as notifying the producer of necessary overtime, extra human or technological assets, redistribution of tasks or simply the need to renegotiate the deadline.  There would need to be priorities as well so that perhaps an artist is scheduled to work on a job whose deadlines are more negotiable.   Maybe the one deadline isn't as important as another.


    This would be great for me as an artist too because then I can get a report telling me how much time I need to spent over what time frame.  "If your put 3 hours into Task A, 4 hours into Task B and 8 hours into Task C over the next 2 days you'll meet your deadlines for the week."   Even if the artist ignores the advice of Shotgun for what time needs to be spent where it still offers a good starting point of "Successful outcome" or helps an artist know they might need to come in early one day.


    Tied into a rendermanagement program such as Frantic Film's Deadline this would allow Shotgun to schedule the start times of render tasks based on when the job is due.   And similarly update shotgun through the API when a rendertask is complete.  Maybe you don't need to rent 300 hours of render time after all and the schedule will work now that one of the tasks is marked as complete (needing 0% of resources).   

  • 0
    Gavin Greenwalt

    One thing that would be necessary in addition I just thought of: it would need an Allocation Type:

    Auto, Manual, None.

    Manual would do just that, be a user defined fixed amount.
    None would mean tasks which for automatic calculation would be defined as 0%.  (The default setting)
    Auto.  Auto would (assuming none = 0%) work around the manual allocations.

  • 0
    Don Parker

    Cool ideas Gavin!

    We've heard some of our clients say that one reason they abandon MS Project is that it can start to be "too smart" for them, when all they want is for things to stay put.  So we'd have to move forward carefully here.  Sounds like a super clear way to switch between "auto pilot" and explicit mode woudl do the trick (maybe with suggested updates made by the system as alerts).

    I was also thinking that it woudl be great to have a visual on % allocation.  The width of the gantt bar could match the % allocation, for example.

    We'll be sure to think through this when we get into % allocation.  Thanks for your thoughts!

  • 0
    Joe Frayne

    A related feature that has been requested here is to show scheduled resource conflicts. So if an artist is assigned to two different tasks and the task dates overlap each other, then the tasks would somehow indicate that there's a conflict.

  • 0
    Jennifer Brola

    Did this ever find its way onto a roadmap for a future release?

  • 0
    Sunil Kapoor

    This feature would be very helpful to have, though do you think the Calculated Fields feature would cover this?

  • 0
    Ben Hadden

    @Jennifer, this feature is not on the roadmap, but some similar functionality is being considered for future iterations of the Crew Planning app. There seems to be some overlap with the way people want to book people to projects and schedule them to tasks, so we're investigating this and will report back what we find.

    @Sunil, it's unlikely that Calculated Fields would cover this. It's more likely we'll build this in natively so you don't have to build it yourself.

  • 1
    Lisa Kapitsas (Hangar 13 Games)

    +1 for Allocation %

    Also, a very similar request has been made by a colleague of mine where we'd like to calculate the days for a task by inputting the % of total time estimated against the asset. Is this currently supported? 

    For example: 

    • An Apple asset is estimated to take 8 days total (all steps included)
    • That asset is broken out into 3 tasks:
    • Task A = 10% of 8 days
    • Task B = 60% of 8 days
    • Task C = 20% of 8 days

    Expected results are SG would calculate the number of days for each of those tasks based on the percentage I enter.