Exercice

Question

On souhaite gérer les multiples parcs de la ville de Compiègne.

Pour chaque parc on gère les espèces de plantes et d'animaux qui le peuplent. Les espèces sont identifiées de manière unique par leur nom latin qui ne change jamais.

Chaque parc dispose d'un nom qui lui est propre, et de son propre site web.

Chaque zone du parc est rectangulaire, est identifiée par un code unique et immuable, et est localisable par ses coordonnées géographiques.

On modélise la situation à l'aide du diagramme UML suivant :

@startumlskinparam defaultFontName Inconsolataskinparam classFontStyle boldskinparam linetype orthohide circleclass Parc {nom: varcharsiteWeb: varchar}class Zone {code: varcharlargeur: reallongueur: reallatitude: reallongitude: real}class Espèce {nom: varchar}Espèce "0..n"--"0..1" Parc : peuple >Parc "1..1"-"1..n" Zone : contient >@enduml

À l'aide de la description de la situation, compléter le diagramme pour y inclure les informations d'unicité et d'immutabilité.

Indice

Il est possible que des attributs soient concernés par ces deux propriétés, auquel cas on utilisera la clause {unique frozen}.

Indice

Il est aussi possible que ces propriétés s'appliquent de manière jointe sur plusieurs attributs.