All the gantt tools I have tried make all tasks concurrent, until I specify start date or dependencies. I do not yet know the start date, and not all tasks have dependencies (well not enough to fully define the sequence). I specify the recourses but if just overloads them to n hundred percent (where n is number of tasks).

Am I missing something? How can I say do one thing (per recourse) at a time?

Additional notes: Currently trying Kplato, openproj and ganttproj (previously seen problem in MS-project)

Imagine this project: Make a sandwich.

Cut bread -> Butter bread ->
        Cut cheese        -> put cheese on bread ->
        Cut tomato        -> put tomato on bread ->
                                                    Put second slice of bread on top

Now this as a dependency graph is ok, there is no care as to weather you do cheese, tomato or bread buttering first, or whether the tomato is ready when you put the cheese on the bread, or weather you do tomato before cheese. So we don't want to specify any of this.

But when we add time, we can not (with one resource) do two things at once. We need it to be sequential, not to dictate the order (the dependency graph does that ), but to predict the end date.

  • 2
    You're using MS Project, I'd guess?
    – Tiago Cardoso
    Mar 9, 2012 at 14:16

5 Answers 5


All tasks have dependencies. Remember, there are both hard and soft dependencies. Hard dependencies are those that the successor task cannot start until the predecessor finishes. A soft dependency exists simply because you CHOOSE to put them in a certain sequence.

So, create your network diagram with both of those types of logic and sequence away. Put leads and lags if they make sense. Get used to linking every package to each other no matter if it is counter-intuitive.

You have only one start date to worry about; everything else will be established based on the network diagram you create and the estimated duration you are targeting. If you start late, the entire network diagram will go out. If early, it will come in.

In fact, when you have hard coded dates in your schedule, it will mask any finish variances you are accruing, because the constraint will override the slip. Therefore, it is best to leave all of your work packages constraint free!

  • All tasks have predecessors, but not all have dependencies ( at least not stated ones, and there may not depend on each other). E.g. “Project Tea and Toast” had tasks “Make Tea” and “Make Toast”. Nether depends on the other but one must happen before the other. Mar 13, 2012 at 15:38
  • No, once you schedule it, you are making the sucessor dependent upon the completion of its predecessor. Read chapter 6 of the PMBOK, in which it describes both mandatory and discretionary dependencies. You are getting stuck on hard logic of a dependency. I am talking about soft logic. Mar 13, 2012 at 17:29
  • This is the dependency of only doing one thing at a time. And a system that is forcing us to specify something early that is not impotent i.e. the order of (independent) work. This should be decided as late as possible. i.e. I have just finished some work, what is the most valuable work item that has no unresolved dependencies. (The order can be kept arbitrary when calculating the time to the next mile stone, as long as what is before each mile stone is defined). Is PMBOK available on public internet? Also remember that just because it is written does not make it (100%)correct. Mar 14, 2012 at 11:45
  • 1
    No, no, no. When you plan and schedule your work, you have to make these decisions and create your baseline. A baseline schedule is firm and only changes with approval through a change process. Therefore, it is perfectly acceptable to establish this soft logic sequence in order to plan and create a baseline against which to measure performance. This does NOT negate you from starting things early or late when you can as you are executing your plan. That is a PM choice, but it does not change your baseline. Mar 14, 2012 at 12:21
  • Also, there is no such thing as 100% correct, but there are supporting arguments and I cited the PMBoK as a supporting argument. Mar 14, 2012 at 12:22

Keep in mind that the tools you are using can't make any assumptions about what the activities are or are not. So, if you create a list of tasks, say Task1 to Task24, then the tool will all have them start on the project start date because it doesn't know what else to do. If you start to assign dependencies, then it knows to put those task in relative order. If all the tasks aren't dependent, but you assign them to people to work on, then ask the tool to level the assignments, it will space the tasks out based on people's availability.

One question to ask yourself: Why are you using the tool? Do you just want to create a picture of the plan based on when the tasks will start/finish? If so, you really don't need a Gantt tool (a drawing tool, or Excel will do fine!). If, instead, you are looking for the tool to help you manage the tasks, then it makes more sense to spend the (significant!) amount of time to really understand the tasks and activities on the project, look at who is going to do the work, and create a plan that reflects how the work will be done. Then, each week (I strongly recommend each week!) open the plan and readjust based on what was done that week. For example, you planned to finish Task7 in Week 4, but it is taking longer than planned, you need to adjust the project schedule to reflect how you are going to handle this. Are you going to re-arrange tasks, move people around, slip the delivery date?

Using a tool can be a big help in managing a project, but it can't work magic. Scheduling tools don't know anything other than what you enter in.

  • When data is incomplete, a tool will have to make an assumption. If it knows the resource it should level it. If there are too many constraints it should flag an error. Mar 13, 2012 at 11:02
  • Yup. Is this not what is happening? Which Gantt tool are you using? MS Project works exactly this way from my experience.
    – Al Biglan
    Mar 13, 2012 at 13:37

You are correct in your example. The Gantt tool will schedule concurrent tasks, if dependencies state so.

Adding resources in this case will cause overallocation, so you will need to do resource leveling. Note that this is not automatic. In MS Project, you will need to use the "Level resources" commands found in the "Resource" tab. If the schedule changes, or if you add more resources, then you'll need to level resources again.

As far as I know, neither Openproj nor Ganttproj have resource leveling features (MS Project does).


  • Is resource levelling automatic, once you press the button?, and does it warn that you need to do it? If so then it is most of the way there, and a point to Microsoft, they can put it with there other point. Mar 29, 2019 at 7:53
  • No, resource leveling is not automatic by default. When you click the button, MS Project levels the workloads and solves over allocations, but if the schedule is modified later, it could be over allocated again. You will need to click the button again. MS Project shows over allocations with a red person icon in the leftmost column in a task view. In addition, the Resource Sheet view shows over allocated resources in bold red font. Apr 4, 2019 at 18:16
  • You can turn automatic leveling on. If you click the “Leveling options” button, a dialog appears; there you can change resource leveling to automatic (as well as some other options). With automatic leveling, every time you change the schedule, MS Project levels workloads, so the schedule is never over allocated. There are good reasons to left leveling in manual mode, however: leveling is a calculation intensive process, such that in a big project (thousands of tasks, hundreds of resources), any change in the schedule could take 3-5 seconds of leveling, making MS Project unbearably slow. Apr 4, 2019 at 18:17

If you don't know dependencies, can you create some milestones and use those in your dependencies to serialize things? Or just make dependencies out of the tasks themselves which need to be serialized.


Use the start and end dates as placeholders and make the tasks sequential. Or, depending on the tool, fix the durations and make the end dates sequential.

The Gantt tool is trying to map a network diagram so it needs more information than a task name. It needs to somehow put those tasks in an order either by time or their relationship in a production/development process.

  • If I set the start or end dates will this make it fragile to change. I.E. A task finishes early so the duration is revised, the gantt tells us to wait before starting another task with a fixed start date. The project end date does not change. Mar 9, 2012 at 16:16
  • Depends on the tool and the dependencies between and among tasks (if those exist in the tool). Mar 9, 2012 at 21:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.