projet-genie-logiciel-systeme/docs/uml.plantuml
2021-11-21 18:26:05 +01:00

139 lines
2.1 KiB
Plaintext
Executable file

@startuml jeu
abstract class Objet
{
- taille : int
- consomable : Condition
- transmissible : Condition
}
class Connaissance
{
- transmissible : Condition
}
class Lieu
{
- exploré : bool
- déposable : Condition
}
class Jeu{}
class Territoire{}
class Chemin
{
- ouvert : Condition
- visible : Condition
- obligatoire : Condition
}
class Explorateur{}
class Personne
{
- obligatoire : Condition
}
class Depart{}
class Fin{}
interface Cachable
{
- caché : Condition
}
class Interraction
{
- disponible : Condition
}
class Choix{}
class Action
{
- proposable : Condition
- finInterraction : Condition
}
class Description
{
- textes : String
- conditions : Condition
}
class Condition{}
class ConditionOU{}
class ConditionET{}
class Test{}
class TestObjet
{
- nombre : int
- supérieurEgale : bool
}
class TestConnaissance{}
' Links
Condition "1" -down- "0..*" ConditionOU
ConditionOU "1" -down- "1..*" ConditionET
ConditionET "1" -down- "1..*" Test
Test <|-down- TestConnaissance
Test <|-down- TestObjet
TestConnaissance "0..1" -up- "1" Connaissance
TestObjet "0..1" -up- "1" Objet
Cachable <|-down- Connaissance
Cachable <|-down- Objet
Cachable <|-down- Personne
Depart -up-|> Lieu
Fin -up-|> Lieu
Jeu "1" *-- "1" Explorateur
Jeu "1" *-- "1" Territoire
Territoire "1" *-- "1" Depart
Territoire "1" *-- "1" Fin
Territoire "1" *-- "1..*" Lieu
Territoire "1" *-- "0..*" Chemin
Lieu "1" -- "0..*" Chemin
Lieu "1" -- "0..*" Chemin
Lieu "1" -- "0..*" Connaissance
Lieu "0..1" -- "0..*" Objet
Lieu "1" -- "0..*" Personne
Lieu "1" -- "1" Description
Chemin "0..1" -left- "0..*" Connaissance : transmettre
Chemin "0..1" -- "0..*" Objet : transmettre
Chemin "0..1" -- "0..*" Objet : consommer
Chemin "1" -- "1" Description
Explorateur "0..1" -- "0..*" Connaissance
Explorateur "0..1" -- "0..*" Objet
Explorateur "0..1" -- "1" Lieu
Personne "1" -- "1.." Interraction
Objet "1" -- "1" Description
Connaissance "1" -- "1" Description
Interraction "0..1" -- "0..*" Objet
Interraction "0..1" -- "0..*" Connaissance
Interraction "1" -- "1" Choix
Choix "1" -- "1..*" Action
@enduml