Donate241Patreon125


Diagramme de Gantt

Le Gantt doit être décrit en anglais, à l'aide de phrase très simple (sujet-verbe-complément).

Définir des tâches (avec les verbes : last, start, end)

Les tâches sont définies à l'aide des crochets.

Durée

Leur durée est définie à l'aide du verbe last.

@startuml
[Design du prototype] lasts 15 days
[Test du prototype] lasts 10 days
@enduml

Début

Leur début est définie à l'aide du verbe start.

@startuml
[Design du prototype] lasts 15 days
[Test du prototype] lasts 10 days

Project starts 2020-07-01
[Design du prototype] starts 2020-07-01
[Test du prototype] starts 2020-07-16

@enduml

Fin

Leur fin est définie à l'aide du verbe end.

@startuml
[Design du prototype] lasts 15 days
[Test du prototype] lasts 10 days

Project starts 2020-07-01
[Design du prototype] ends 2020-07-15
[Test du prototype] ends 2020-07-25

@enduml

Début/Fin

Il est possible de définir les deux de façon absolu, en précisant des dates.

@startuml

Project starts 2020-07-01
[Design du prototype] starts 2020-07-01
[Test du prototype] starts 2020-07-16
[Design du prototype] ends 2020-07-15
[Test du prototype] ends 2020-07-25

@enduml

Déclaration sur une ligne (avec la conjonction 'and')

Il est possible de combiner les déclarations sur une ligne en utilisant la conjonction and.

@startuml
Project starts 2020-07-01
[Design du prototype] starts 2020-07-01 and ends 2020-07-15
[Test du prototype] starts 2020-07-16 and lasts 10 days
@enduml

Ajout de contraintes

Il est possible de rajouter des contraintes entre les tâches.

@startuml
[Design du prototype] lasts 15 days
[Test du prototype] lasts 10 days
[Test du prototype] starts at [Design du prototype]'s end
@enduml

@startuml
[Design du prototype] lasts 10 days
[Codage du prototype] lasts 10 days
[Ecriture des tests] lasts 5 days
[Codage du prototype] starts at [Design du prototype]'s end
[Ecriture des tests] starts at [Codage du prototype]'s start
@enduml

Noms courts (avec : as)

Un nom court peut être utilisé pour les tâches à l'aide de l'instruction as.

@startuml
[Design du prototype] as [D] lasts 15 days
[Test du prototype] as [T] lasts 10 days
[T] starts at [D]'s end
@enduml

Choix des couleurs

Il est possible de changer les couleurs des tâches avec les mots clés is colored in.

@startuml
[Design du prototype] lasts 13 days
[Test du prototype] lasts 4 days
[Test du prototype] starts at [Design du prototype]'s end
[Design du prototype] is colored in Fuchsia/FireBrick
[Test du prototype] is colored in GreenYellow/Green
@enduml

Complétion d'une tâche

Il est possible d'attribuer un pourcentage d'avancement à une tâche avec les mots clés is xx% completed.

@startgantt
[foo] lasts 21 days
[foo] is 40% completed
[bar] lasts 30 days and is 10% complete
@endgantt

Jalon (avec le verbe : happen)

Vous pouvez définir des jalons à l'aide du verbe happen.

Jalon relatif (avec utilisation de contraintes sur des tâches)

@startuml
[Test du prototype] lasts 10 days
[Prototype terminé] happens at [Test du prototype]'s end
[Mise en place production] lasts 12 days
[Mise en place production] starts at [Test du prototype]'s end
@enduml

Jalon absolu (avec utilisation d'un date fixe)

@startgantt
Project starts 2020-07-01
[Test prototype] lasts 10 days
[Prototype completed] happens 2020-07-10
[Setup assembly line] lasts 12 days
[Setup assembly line] starts at [Test prototype]'s end
@endgantt

Jalon de fin maximale de tâches

@startgantt
[Task1] lasts 4 days
then [Task1.1] lasts 4 days
[Task1.2] starts at [Task1]'s end and lasts 7 days

[Task2] lasts 5 days
then [Task2.1] lasts 4 days

[MaxTaskEnd] happens at [Task1.1]'s end
[MaxTaskEnd] happens at [Task1.2]'s end
[MaxTaskEnd] happens at [Task2.1]'s end

@endgantt

[Ref. QA-10764]

Lien hypertexte

On peut rajouter des liens aux tâches avec le mot clé links to.

@startgantt
[task1] lasts 10 days
[task1] links to [[http://plantuml.com]]
@endgantt

Calendrier

Vous pouvez définir une date de début pour l'ensemble du projet. Par défault, la première tâche commence à cette date.

@startuml
Project starts the 20th of september 2017
[Design du prototype] as [TASK1] lasts 13 days
[TASK1] is colored in Lavender/LightBlue
@enduml

Colorer des jours

Il est possible d'ajouter des couleurs sur certains jours.

@startgantt
Project starts the 2020/09/01 

2020/09/07 is colored in salmon
2020/09/13 to 2020/09/16 are colored in lightblue

[Prototype design] as [TASK1] lasts 22 days
[TASK1] is colored in Lavender/LightBlue
[Prototype completed] happens at [TASK1]'s end
@endgantt

Zoom

Il est possible de changer l'échelle d'affichage pour les projets qui sont très longs, avec l'un des paramètres suivant : et une des valeurs suivantes :

(See QA-11272, QA-9041 and QA-10948)

@startgantt
printscale weekly
Project starts the 20th of september 2020
[Prototype design] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 20 days
[TASK1]->[Testing]
@endgantt

@startgantt
projectscale monthly
Project starts the 20th of september 2020
[Prototype design] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 20 days
[TASK1]->[Testing]
@endgantt

Jours non travaillés

Il est possible de déclarer certains jours comme non travaillés.

@startuml
project starts the 2018/04/09
saturday are closed
sunday are closed
2018/05/01 is closed
2018/04/17 to 2018/04/19 is closed
[Prototype design] lasts 14 days
[Test prototype] lasts 4 days
[Test prototype] starts at [Prototype design]'s end
[Prototype design] is colored in Fuchsia/FireBrick
[Test prototype] is colored in GreenYellow/Green
@enduml

Puis il est possible de déclarer certains jours non travaillés, comme finalement, travaillés.

@startgantt
2020-07-07 to 2020-07-17 is closed
2020-07-13 is open

Project starts the 2020-07-01
[Prototype design] lasts 10 days
Then [Test prototype] lasts 10 days
@endgantt

Succession des tâches simplifiée et dépendances

Il est possible d'utiliser le mot-clés then pour définir des tâches consécutives.

@startuml
[Prototype design] lasts 14 days
then [Test prototype] lasts 4 days
then [Deploy prototype] lasts 6 days
@enduml

Vous pouvez aussi utiliser une flèche ->.

@startuml
[Prototype design] lasts 14 days
[Build prototype] lasts 4 days
[Prepare test] lasts 6 days
[Prototype design] -> [Build prototype]
[Prototype design] -> [Prepare test]
@enduml

Séparateur

Il est possible d'utiliser -- pour séparer ou grouper des tâches ensemble.

@startuml
[Task1] lasts 10 days
then [Task2] lasts 4 days
-- Phase Two --
then [Task3] lasts 5 days
then [Task4] lasts 6 days
@enduml

Travailler avec des ressources

Vous pouvez affecter des ressources aux tâches à l'aide du mot-clé on et en mettant le nom de la ressource entre accolades. Vous pouvez aussi rajouter un taux de charge en pourcentage.

@startgantt
[Task1] on {Alice} lasts 10 days
[Task2] on {Bob:50%} lasts 2 days
then [Task3] on {Alice:25%} lasts 1 days
@endgantt

Plusieurs ressources peuvent être affectées à une tâche :

@startgantt
[Task1] on {Alice} {Bob} lasts 20 days
@endgantt

Les ressources peuvent être marquées comme inopérantes certains jours:

@startgantt
project starts on 2020-06-19
[Task1] on {Alice} lasts 10 days
{Alice} is off on 2020-06-24 to 2020-06-26
@endgantt

Exemple plus complexe

On peut se servir de la conjonction de coordination and.

Il est aussi possible de spécifier un délai (avec before ou after) dans les contraintes.

@startuml
[Design du prototype] lasts 13 days and is colored in Lavender/LightBlue
[Test du prototype] lasts 9 days and is colored in Coral/Green and starts 3 days after [Design du prototype]'s end
[Écriture des tests] lasts 5 days and ends at [Design du prototype]'s end
[Embauche rédacteurs] lasts 6 days and ends at [Écriture des tests]'s start
[Ecriture des rapports] is colored in Coral/Green
[Ecriture des rapports] starts 1 day before [Test du prototype]'s start and ends at [Test du prototype]'s end
@enduml

Comments

As is mentioned on Common Commands page:
Everything that starts with simple quote ' is a comment.

You can also put comments on several lines using /' to start and '/ to end.
(i.e.: the first character (except space character) of a comment line must be a simple quote ')

@startgantt
' This is a comment

[T1] lasts 3 days

/' this comment
is on several lines '/

[T2] starts at [T1]'s end and lasts 1 day
@endgantt

Using style

@startuml
<style>
ganttDiagram {
	task {
		FontName Helvetica
		FontColor red
		FontSize 18
		FontStyle bold
		BackGroundColor GreenYellow
		LineColor blue
	}
	milestone {
		FontColor blue
		FontSize 25
		FontStyle italic
		BackGroundColor yellow
		LineColor red
	}
	note {
		FontColor DarkGreen
		FontSize 10
		LineColor OrangeRed
	}
}
</style>
[Task1] lasts 20 days
note bottom
  memo1 ...
  memo2 ...
  explanations1 ...
  explanations2 ...
end note
[Task2] lasts 4 days
[Task1] -> [Task2]
-- Separator title --
[M1] happens on 5 days after [Task1]'s end
-- end --
@enduml

Add notes

@startgantt
[task01] lasts 15 days
note bottom
  memo1 ...
  memo2 ...
  explanations1 ...
  explanations2 ...
end note

[task01] -> [task02]

@endgantt

Example with overlap.

@startgantt
[task01] lasts 15 days
note bottom
  memo1 ...
  memo2 ...
  explanations1 ...
  explanations2 ...
end note

[task01] -> [task02]
[task03] lasts 5 days

@endgantt

FIXME
Waiting for correction when overlapping
FIXME

@startgantt

-- test01 --

[task01] lasts 4 days
note bottom
'note left
memo1 ...
memo2 ...
explanations1 ...
explanations2 ...
end note

[task02] lasts 8 days
[task01] -> [task02]
note bottom
'note left
memo1 ...
memo2 ...
explanations1 ...
explanations2 ...
end note
-- test02 --

[<back:red>task03] as [t3] lasts 7 days
[t3] -> [<back:red>t4]
@endgantt

Pause tasks

@startgantt
Project starts the 5th of december 2018
saturday are closed
sunday are closed
2018/12/29 is opened
[Prototype design] lasts 17 days
[Prototype design] pauses on 2018/12/13
[Prototype design] pauses on 2018/12/14
[Prototype design] pauses on monday
[Test prototype] starts at [Prototype design]'s end and lasts 2 weeks
@endgantt

Change link colors

@startgantt
[T1] lasts 4 days
[T2] lasts 4 days and starts 3 days after [T1]'s end with blue dotted link
[T3] lasts 4 days and starts 3 days after [T2]'s end with green bold link
[T4] lasts 4 days and starts 3 days after [T3]'s end with green dashed link
@endgantt

@startuml
Links are colored in blue
[Prototype design] lasts 14 days
[Build prototype] lasts 4 days
[Prepare test] lasts 6 days
[Prototype design] -[#FF00FF]-> [Build prototype]
[Prototype design] -[dotted]-> [Prepare test]
@enduml

Tasks or Milestones on the same line

@startgantt
[Prototype design] lasts 13 days
[Test prototype] lasts 4 days and 1 week
[Test prototype] starts 1 week and 2 days after [Prototype design]'s end
[Test prototype] displays on same row as [Prototype design]
[r1] happens on 5 days after [Prototype design]'s end
[r2] happens on 5 days after [r1]'s end
[r3] happens on 5 days after [r2]'s end
[r2] displays on same row as [r1]
[r3] displays on same row as [r1]
@endgantt

Highlight today

@startgantt
Project starts the 20th of september 2018
sunday are close
2018/09/21 to 2018/09/23 are colored in salmon
2018/09/21 to 2018/09/30 are named [Vacation in the Bahamas] 

today is 30 days after start and is colored in #AAF
[Foo] happens 40 days after start
[Dummy] lasts 10 days and starts 10 days after start

@endgantt

Task between two milestones

@startgantt
project starts on 2020-07-01
[P_start] happens 2020-07-03
[P_end]   happens 2020-07-13
[Prototype design] occurs from [P_start] to [P_end]
@endgantt

Grammar and verbal form

Verbal form Example
[T] starts
[M] happens

Add title, (header, footer), caption or legend on gantt diagram

@startuml

'header some header

'footer some footer

title My title

[Prototype design] lasts 13 days

legend
The legend
end legend

caption This is caption

@enduml

(See also: Common commands)