Sobre el modelo de dominio - Arquisoft/ObservaTerra22 GitHub Wiki
Observaciones (entidad):
- Tienen un provider, de tipo Organization
- Tienen un atributo time de tipo Time (objeto de valor), que puede ser Interval o TimeInstant.
- También tienen un atributo indicator de tipo Indicator.
- Las Observations se identifican por time e indicator.
Yo creo que no debería haber dos Observations sobre el mismo indicator y el mismo tiempo de providers diferentes, pero tampoco estoy muy segura de ello... Opiniones porfaplis.
Indicadores (entidad):
- Atributos: name de tipo string, area de tipo Area y measure de tipo Measure.
La medida debe ir asociada al indicator y no a la observation. La unidad de medida depende del indicador (no vas hacer una observacion de una poblacion y medirla en años, tiene que ir en personas)
- Identificadores: name y area
Area (entidad)
- Atributos: name, de tipo string.
Country (entidad)
- Es un (hereda de) Area.
- Atributos: name de tipo string y continent de tipo string.
Solo pongo estos dos porque las posibilidades son infinitas, podemos incluir poblacion, capital... y no sé aún cuales serán necesarios y cuales superfluos. También considero la posibilidad de que un Area pueda contener a otras areas (composite).
Organization (entidad):
- Atributos: name de tipo string, suborganizations, de tipo Set de Organizations y users, de tipo Set de User.
User (entidad):
- Atributos: name, last name, user name... etc.
- Identificador: ¿user name?