En primer lugar, un diseñador podría preguntarse cuál es toda la información necesaria en la aplicación dada en una especificación. La información puede dividirse en los siguientes 2 grupos dependiendo de si se admiten instancias o no de la información:
Información que no puede tener múltiples instancias. Un ejemplo de este tipo de información en una aplicación podría ser la hora del sistema. La aplicación, no puede tener a la vez diferentes horas del sistema, sino sólamente una, que por supuesto irá cambiando a lo largo del tiempo, pero que en un instante de tiempo no tendrá varias instancias. Para este tipo de información, se puede tener a su vez que se tenga claro desde el inicio cual es la memoria necesaria para guardar dicha información (como es el caso de la hora) o bien que no se tenga claro desde el inicio cual es la cantidad de memoria necesaria para guardar dicha información ya que puede variar (por ejemplo podría ser una cadena de longitud indefinida).
Información que puede tener múltiples instancias. Se podría establecer una analogía entre instancia y objeto. Un ejemplo de este tipo de información en la aplicación de referencia es las fotos y otra los autores. Ya que pueden existir múltiples instancias de fotos y de autores presentes en el mismo instante de tiempo. Además, suele ocurrir que el número de instancias no está predefinido a priori y que puede variar a lo largo del tiempo, como ocurre en el caso de la aplicación de referencia para las fotos y los autores.
Para modelar cada uno de los elementos que pueden tener múltiples instancias, se utiliza una tabla, que incluirá todos los atributos de información que puede tener dicho elemento, junto con la indicación del tipo de datos que corresponde a cada atributo. Así mismo, también se indica que campo o combinación de campos hacen posible identificar a cualquier instancia de dicho elemento, diferenciándola de todas las demás instancias. A esto se denomina PRIMARY KEY (PK). Por ejemplo, para las fotos podría ser un identificador único, y para los autores la combinación de los campos nombre y apellidos, los que los identifique unívocamente.
La estructura de la tabla que almacena los elementos “foto” es la siguiente:
Foto | |
---|---|
Campo | Tipo de datos |
ID(PK) |
Entero |
Nombre |
String |
Tipo fichero |
Entero |
Tamaño |
Entero |
Autor_ID |
Entero |
La estructura de la tabla que almacena los elementos “autor” es la siguiente:
Autor | |
---|---|
Campo | Tipo de datos |
Autor_ID |
Entero |
Nombre (PK) |
String |
Apellidos (PK) |
String |
Edad |
Entero |
Teléfono |
Entero |
Responde a las siguientes preguntas