De rjardin

8
Ejercicio Una empresa de jardinería quiere informatizar su gestión. La empresa dispone de un conjunto de clientes: domicilios particulares, hoteles, comunidades de vecinos, etc. A veces, el mismo cliente puede requerir servicios de la empresa para jardines de diferentes ubicaciones, por ejemplo, un propietario de dos hoteles o un cliente con casa propia y dos chalets, etc. Para cada uno de estos jardines, le empresa elabora un contrato y el importe variará en función del tipo de jardín, de su extensión y del tiempo de dedicación que necesita. El contrato será de una cierta duración y tendrá un tipo de tarifa determinado.Evidentemente, se tendrá que conocer la dirección de cada uno de los jardines a mantener, así como los datos necesarios del propietario, para poder facturarle a final de cada mes todos los servicios realizados por la empresa o avisarlos si surge alguna eventualidad. La empresa dispondrá de un sistema informático, que podrá enseñar al cliente todo un conjunto de fotografías de muchas plantas para facilitarle la construcción o ampliación de su jardín, su aspecto, tipo de hojas, de flores, temporada de plantación, de floración, la familia a la que pertenece y su origen. La empresa también tendrá inventariado todos los tipos de materiales que utiliza, tipos de tierra, abonos, etc. El empresario tendrá que conocer en todo momento la composición de

Transcript of De rjardin

Page 1: De rjardin

Ejercicio

Una empresa de jardinería quiere informatizar su gestión. La empresa dispone de un conjunto de clientes: domicilios particulares, hoteles, comunidades de vecinos, etc. A veces, el mismo cliente puede requerir servicios de la empresa para jardines de diferentes ubicaciones, por ejemplo, un propietario de dos hoteles o un cliente con casa propia y dos chalets, etc. Para cada uno de estos jardines, le empresa elabora un contrato y el importe variará en función del tipo de jardín, de su extensión y del tiempo de dedicación que necesita. El contrato será de una cierta duración y tendrá un tipo de tarifa determinado.Evidentemente, se tendrá que conocer la dirección de cada uno de los jardines a mantener, así como los datos necesarios del propietario, para poder facturarle a final de cada mes todos los servicios realizados por la empresa o avisarlos si surge alguna eventualidad.

La empresa dispondrá de un sistema informático, que podrá enseñar al cliente todo un conjunto de fotografías de muchas plantas para facilitarle la construcción o ampliación de su jardín, su aspecto, tipo de hojas, de flores, temporada de plantación, de floración, la familia a la que pertenece y su origen. La empresa también tendrá inventariado todos los tipos de materiales que utiliza, tipos de tierra, abonos, etc.

El empresario tendrá que conocer en todo momento la composición de cada jardín, los tipos de plantas que contiene, el nombre, la fecha de plantación, etc.

A final de cada mes, el empresario deberá pagar a todos sus jardineros, un sueldo fijo más un importe por hora extra (para todos igual), así que le gustaría llevar un control exhaustivo de todas las tareas realizadas por cada uno de ellos (plantación, poda, etc.), el lugar donde están trabajando, las horas dedicadas a cada tarea, etc.

Elaborar el Modelo Entidad/Relación (modelo conceptual) y pasarlo a Relacional.

Page 2: De rjardin

CLIENTE JARDIN

CONTRATO

PLANTA

TAREA JARDINEROMATERIAL

1:N

1:1

0:N0:N

Fecha_plantación,número

Cantidad

1:10:N0:N 0:M

1:1

1:N

1:1

0:N

R2

R1

R4

R3

R5

R6

Diagrama Entidad/Interrelación

Page 3: De rjardin

CLIENTE JARDIN

CONTRATO

PLANTA

TAREA JARDINEROMATERIAL

1:N

1:1

0:N0:N

Fecha_plantación,número

Cantidad

1:10:N0:N 0:M

1:1

1:N

1:1

0:N

R2

R1

R4

R3

R5

R6

CLIENTE (DNI, nombre, apellidos,…..)JARDIN (cod_jardin, ubicación, extensión, tipo,…)CONTRATO (cod_contrato, duración, tarifa, fecha,…)PLANTA (cod_planta, nombre, tipohojas, tipoflores, tempplantación, tempfloración, familia, origen)MATERIAL (cod_material, nombre, descripción)TAREA (id_tarea, nombre, descripción, horasdedicadas, observaciones,...)JARDINERO (DNI_jar, num_ss, nombre, apellidos, tipocontrato, horassemanales,….)R1( ), R2( ), R3(Fecha_plantacion,número)R4( ), R5( ), R6 (cantidad)

Page 4: De rjardin

CLIENTE (DNI, nombre, apellidos,…..)JARDIN (cod_jardin, ubicación, extensión, tipo,…)CONTRATO (cod_contrato, duración, tarifa, fecha,…)PLANTA (cod_planta, nombre, tipohojas, tipoflores, tempplantación,tempfloración,familia,origen)MATERIAL (cod_material, nombre, descripción)TAREA (id_tarea, nombre, descripción, horasdedicadas, observaciones, ...)JARDINERO (DNI_jar, num_ss, nombre, apellidos, tipocontrato, horassemanales,….)R1( )R2( )R3(Fecha_plantacion,número)R4( )R5( )R6 (cantidad)

Page 5: De rjardin

El objetivo es convertir el esquema conceptual en un esquema lógico global en el modelo El objetivo es convertir el esquema conceptual en un esquema lógico global en el modelo relacional. Aplicando las siguientes reglas adecuadamente se obtendrá un esquema relacional relacional. Aplicando las siguientes reglas adecuadamente se obtendrá un esquema relacional ya normalizado:ya normalizado:

1. Toda entidad se convierte en una tabla o relación que toma el nombre de la entidad. Los 1. Toda entidad se convierte en una tabla o relación que toma el nombre de la entidad. Los atributos de la entidad serán las columnas de las tablas y el atributo(s) identificador principal atributos de la entidad serán las columnas de las tablas y el atributo(s) identificador principal será la clave primaria. A menos que se diga lo contrario los atributos no identificadores será la clave primaria. A menos que se diga lo contrario los atributos no identificadores podrán tomar valores nulos.podrán tomar valores nulos.

2. Las interrelaciones N:M se transforman en una tabla cuya clave primaria será la 2. Las interrelaciones N:M se transforman en una tabla cuya clave primaria será la concatenación de los atributos principales de las entidades que asocia; estos atributos serán concatenación de los atributos principales de las entidades que asocia; estos atributos serán claves ajenas que referencian a las respectivas tablas donde son claves primarias. Los claves ajenas que referencian a las respectivas tablas donde son claves primarias. Los atributos de la interrelación serán columnas de la tablaatributos de la interrelación serán columnas de la tabla

3. Las interrelaciones 1:N o 1:1 se transforman propagando el atributo identificador principal 3. Las interrelaciones 1:N o 1:1 se transforman propagando el atributo identificador principal de la entidad que tiene cardinalidad máxima 1 a la que tiene cardinalidad máxima N. Si la de la entidad que tiene cardinalidad máxima 1 a la que tiene cardinalidad máxima N. Si la relación fuese 1:1: la propagación de la clave se podría realizarse en cualquier sentido. relación fuese 1:1: la propagación de la clave se podría realizarse en cualquier sentido. Los atributos de la interrelación migrarían junto a la clave, aunque muchas veces puede ser Los atributos de la interrelación migrarían junto a la clave, aunque muchas veces puede ser preferible crear una nueva tabla. Si se crea una nueva tabla para transformar la interrelación, preferible crear una nueva tabla. Si se crea una nueva tabla para transformar la interrelación, la clave primaria será el atributo identificador principal de la entidad que tiene cardinalidad la clave primaria será el atributo identificador principal de la entidad que tiene cardinalidad máxima N y sus atributos serán los propios de la interrelación más el atributo identificador máxima N y sus atributos serán los propios de la interrelación más el atributo identificador principal de la entidad que participa con cardinalidad máxima 1 en la interrelaciónprincipal de la entidad que participa con cardinalidad máxima 1 en la interrelación

Page 6: De rjardin

Paso 1.

CLIENTE (DNI, nombre, apellidos,…..)JARDIN (cod_jardin, ubicación, extensión, tipo,…)CONTRATO (cod_contrato, duración, tarifa, fecha,…)PLANTA (cod_planta, nombre, tipohojas, tipoflores, tempplantación, tempfloración, familia, origen)MATERIAL (cod_material, nombre, descripción)TAREA (id_tarea, nombre, descripción, horasdedicadas, observaciones, ...)JARDINERO (DNI_jar, num_ss, nombre, apellidos, tipocontrato, horassemanales,….)

Paso 2

R3(cod_jardin , cod_planta ,Fecha_plantacion,número)R6 (cod_material , id_tarea , cantidad)

Paso 3

CONTRATO (cod_contrato, duración, tarifa, fecha, DNI,cod-jardin,…)TAREA (id_tarea, nombre, descripción, horasdedicadas, observaciones, DNI_jar,cod-contrato...)

Page 7: De rjardin

Finalmente

CLIENTE (DNI, nombre, apellidos,…..)JARDIN (cod_jardin, ubicación, extensión, tipo,…)CONTRATO (cod_contrato, duración, tarifa, fecha, DNI,cod-jardin,…)PLANTA (cod_planta, nombre, tipohojas, tipoflores, tempplantación, tempfloración, familia, origen)MATERIAL (cod_material, nombre, descripción)TAREA (id_tarea, nombre, descripción, horasdedicadas, observaciones, DNI_jar,cod-contrato...) JARDINERO (DNI_jar, num_ss, nombre, apellidos, tipocontrato, horassemanales,….)R3(cod_jardin , cod_planta ,Fecha_plantacion,número)R6 (cod_material , id_tarea , cantidad)

Page 8: De rjardin

CLIENTE JARDIN

CONTRATO

PLANTA

TAREA JARDINEROMATERIAL

R3

R6

Diagrama de Estructura de Datos (DED)