diagrama clases modelo datos

Upload: jordan-durand-espinoza

Post on 13-Oct-2015

51 views

Category:

Documents


2 download

TRANSCRIPT

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 1 ~ Ing. Fabin Silva Alvarado

    DEL DIAGRAMA DE CLASES AL MODELO DE DATOS Y A LA

    BASE DE DATOS EN SQL SERVER 2008

    El Rational Rose es una herramienta que puede ser utilizado para elaborar el modelado de

    un sistema informtico en todas las fases del proyecto, con ella podemos construir todos

    los flujos de trabajos (workflow) que establece la metodologa RUP.

    El Diagrama de clases del anlisis nos permite identificar las clases que utiliza el sistemas y

    sus relaciones, nos permite identificar tambin los atributos y sus mtodos, estas clases

    normalmente se convierten en las tablas de la Base de Datos, por eso este diagrama

    es muy consultado en la fase de implementacin, donde el desarrollador tendr que

    construir las tablas con sus campos basados en este.

    El Rational Rose permite la migracin de este diagrama hacia el motor de base de

    datos que el desarrollador ha seleccionado, (DB2, Oracle, SQL Server, entre otros), sin

    tener que duplicar el trabajo.

    En este manual desarrollaremos paso a paso la creacin del modelo de datos y la base

    de datos en SQL Server 2008, a partir del diagrama de clases, utilizaremos el Rational

    Rose 7 para ello.

    A continuacin tenemos el siguiente caso:

    Soy el administrador de una compaa de capacitacin que provee cursos de informtica, impartidos por nuestros docentes. Enseamos muchos cursos,

    cada uno tiene un cdigo, un nombre y un costo.

    Taller de Modelamiento de Software y Programacin con Visual Basic son dos

    de nuestros cursos ms populares. Los cursos varan en duracin desde un mes

    hasta 3 meses. Un Docente puede ensear varios cursos. Pedro Rodrguez y

    Mara Gonzles son dos de nuestros mejores docentes. De los Docentes

    registramos sus apellidos, nombres, su direccin de correo electrnico, su

    profesin, su grado (Lic, Ing, Mag, Dr etc), as como un nmero telefnico fijo y un mvil. Cada curso es enseado por solo un docente pero a travs del

    tiempo puede ser enseado por otro docente. Se designa el curso y en base a

    ello asignamos al docente. Los estudiantes pueden tomar varios cursos a travs

    del tiempo. Javier Daz de Innova TI tomo cada curso de los que ofrecemos.

    Tambin registramos de los estudiantes sus apellidos, nombres, fecha de

    nacimiento, sexo, direccin, su colegio de procedencia (estatal o particular) y

    su grado de instruccin (Secundaria, Tcnica o Superior) y su distrito de

    procedencia. Identificamos a los distritos mediante un cdigo nico y la

    provincia a la que pertenece. Por ejemplo la mayora de nuestros estudiantes

    provienen de Supe Pueblo. Varios de nuestros docentes no nos dan su nmero

    telefnico.

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 2 ~ Ing. Fabin Silva Alvarado

    Paso 1: Modelo de Objetos (Modelo Conceptual de Datos):

    Figura 1: Diagrama de Clases en Rational Rose

    Paso 2. Cambiar todas las clases del anlisis como Persistentes.

    1. Abrir el diagrama de clases.

    2. Doble clic en la primera clase, se mostrar el

    cuadro de dialogo de open Specification, en

    ella seleccionar la pestaa Detail, y

    seleccionar la opcin Persistent, tal como se

    observa en la figura 2.

    3. Hacer lo mismo con las dems clases.

    Figura 2: Cuadro de Dilogo Open Specification

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 3 ~ Ing. Fabin Silva Alvarado

    Paso 3. Crear La Base de Datos en Rational (Database) ver figura3

    1. Clic derecho en el Paquete Component View, seleccionar la opcin Data

    Modeler / New / Database

    2. Ponerle un nombre adecuado que tenga relacin con el sistema.

    3. Especificar el Motor de la Base de Datos a migrar, doble clic en la base de datos

    creado en el punto anterior, nos mostrara el cuadro de dialogo de las

    especificaciones de la base de datos, ubicar el campo Target seleccionar de la

    lista el motor de base de datos en nuestro caso Microsoft SQL Server 2000.x

    Seleccionando el motor de la

    Figura 3: Database creado, seleccionando el motor de la base de datos

    Paso 4 . Creacin del Schema que almacenara las

    tablas de la Base de Datos y servir para la

    elaboracin el diagrama Modelo de Datos

    1. Ingresar al paquete Logical View, Data

    Modeler -> New-> Schema, clic derecho

    sobre Schema,

    2. Ponerle un nombre

    Figura 4: Creando el Schema

    BASE DE DATOS

    SELECCIONANDO EL MOTOR DE BASE DE DATOS

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 4 ~ Ing. Fabin Silva Alvarado

    Paso 5. Transformar el diagrama de clases al Modelo de Datos, definiendo la base de

    datos y el Schema donde pondr las tablas generadas. Ver figura 4

    1. Ingresar al paquete donde este el diagrama de clases de la figura 1, en nuestro

    caso Logical View / Analisisl.

    2. Clic derecho

    sobre el paquete

    ingresado Analisis ,

    Data Modeler /

    Transform to Data

    Model

    Figura 5: Transformar el diagrama de clases al Modelo de Datos

    3. En el cuadro de dialogo seleccionar los campos Destination Schema elegir

    el schema creado en el paso 4, Target Database elegir la base de datos

    creado en el paso 3. Finalmente ingresar un prefijo que se pondrn a

    las tablas

    4. Pulse OK para finalizar.

    Figura 6: Transformacin del diagrama de clases al Modelo de Datos

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 5 ~ Ing. Fabin Silva Alvarado

    Paso 6. Creacin del Modelo de Datos

    1. Ubicarse en el Schema donde se encuentran las tablas generadas, clic derecho,

    Data Modeler / New / Data Model Diagram.

    Figura 7: Creando el Diagrama del Modelo de Datos

    2. Cambiarlo de nombre con la

    opcin Rename, a un nombre

    tenga relacin con el proyecto

    Figura 8: Renombrando el nombre del Diagrama

    3. Pulsar doble clic sobre el modelo de datos creado y empezar a arrastrar cada

    una de las tablas hacia el diagrama

    Observacin, el Rational Rose genera automticamente los campos claves

    primarias (PK) de las tablas sin importar si ya tenamos definido uno, esto debe

    ser arreglado manualmente de igual manera para los campos claves forneas

    (FK).

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 6 ~ Ing. Fabin Silva Alvarado

    Figura 9: Modelo de Datos sin corregir

    Paso 7. Arreglar los campos de las tablas y definir las PK y FK ver figura 10

    1. Seleccionar la tabla a corregir desde el Schema

    2. Seleccionar el campo

    Tabla_ID generado por el

    Rational y eliminarlo con clic

    derecho / Delete.

    3. Seleccionar el campo a definir

    como PK y pulsar doble click

    sobre ella, nos mostrara la

    ventana de las

    especificaciones del campo,

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 7 ~ Ing. Fabin Silva Alvarado

    4. Abrir las especificaciones de los

    campos para definir el tamao de

    los campos pestaa Type y

    activar el check Primary Key.

    5. Repetir los mismos pasos para todos los campos de las tablas, hasta que el

    diagrama.

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracion a SQL Server 200x ~ 8 ~ Ing. Fabin Silva Alvarado

    Modelo de Datos:

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 9 ~ Ing. Fabin Silva Alvarado

    Paso 8. Convertir a la Base de Datos fsica

    1. Seleccionar la base de datos creado en el paso 2

    2. Clic derecho, Data Model / Forward Engineer mostrara un asistente que le guiara

    durante el proceso

    3. En el cuadro de dialogo pulsar Next / luego mostrar las opciones a generar

    pulsar Next, luego ingresar el nombre del archivo script a generar, tambin

    puede seleccionar la base de datos del motor, debe estar instalado el SQL

    server y funcionando para que esta opcin funcione. Pulsar Next, y luego

    finalizar.

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 10 ~ Ing. Fabin Silva Alvarado

    4. Ubicar el Script generado y ejecutarlo desde el Analizador de Consultas del SQL

    Server 2008. No olvidar de crear una Base de Datos: DB_CAPACITACIONES donde

    alojar las tablas de este script:

    5. Finalizamos la creacin de la Base de Datos, ya puede utilizarlo

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 11 ~ Ing. Fabin Silva Alvarado

    MODELO FISICO DE LA BASE DE DATOS:

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 12 ~ Ing. Fabin Silva Alvarado

    Caso 1: RECURSOS HUMANOS

    Yo manejo el departamento de Recursos Humanos de una compaa grande. Necesitamos tener la informacin de cada uno de los empleados de nuestra compaa. Necesitamos tener seguimiento de los nombres, apellidos, trabajo o puesto, fecha de contratacin y salario de cada empleado. A cada empleado se le asigna un nmero nico. Nuestra compaa est dividida en departamentos. Cada empleado est asignado a un departamento (contabilidad, ventas o desarrollo). En el tiempo un empleado puede ser asignado a ms de un departamento. Necesitamos conocer el departamento responsable de cada empleado y la localizacin del departamento. Cada departamento tiene un nmero nico, por ejemplo contabilidad es 10 y ventas tiene el nmero 40.

    Caso 2: Cadena Boticas

    Somos una cadena de boticas en expansin en la localidad que necesita organizar sus productos en existencia mediante un sistema: Los productos se encuentran organizados segn su accin farmacolgica como por ejemplo: Analgsico, Antiinflamatorio, Histamnico, Antibitico, Corticoide, Antipirtico, etc. Existen casos en que un producto es a la vez Analgsico y Antipirtico como es el caso de los productos que pertenecen a los Genricos del PARACETAMOL, as como tambin los productos que pertenecen al genrico IBUPROFENO que es similar al PARACETAMOL y a su vez puede ser Antiinflamatorio. Interesa registrar una descripcin segn la accin farmacolgica as como la descripcin del producto genrico. Contamos adems con productos que pertenecen a un genrico especfico como por ejemplo IBUPROFENO, DICLOFENACO o AMOXICILINA, etc. Tambin para nosotros es importante conocer la clasificacin general de los productos, es decir, si son va oral, inhaladas, tpicos, parenterales, etc. Por ejemplo dentro de los productos de va oral de se subdividen en: pastillas, capsulas, jarabe, suspensiones, etc. Dentro de las inhaladas tenemos: Aerosoles, Inhaladores, etc. Vendemos productos de distintos laboratorios como por ejemplo: ELIFARMA, MEDIFARMA, ROCHE, GENOMA LAB, etc. Cuando registramos un producto tenemos en cuenta su nombre comercial, su precio de compra, su precio de venta, la cantidad actual, su nombre genrico, el laboratorio al que pertenece.

    Caso 3: Tienda Videos

    Soy el propietario de una pequea tienda de pelculas. Tenemos ms de 3000 videos de las que necesitamos llevar registro. Cada uno de nuestros discos tiene un nmero asignado. Para cada pelcula, necesitamos conocer su ttulo y su categora (ej. Comedia, suspenso, drama, accin, guerra o ciencia ficcin). Tenemos muchas copias de la mayora de nuestras pelculas. Le damos a cada pelcula un identificador especfico, y as podemos saber en que disco est que pelcula. Un disco de video puede ser tanto de

  • Computacin e Informtica Taller de Modelamiento de Software

    Migracin a SQL Server 200x ~ 13 ~ Ing. Fabin Silva Alvarado

    formato CD como DVD. Siempre tenemos por lo menos un disco de cada pelcula que registramos. Frecuentemente nos preguntan por los protagonistas de determinada pelcula. Leonardo DiCaprio y Catherine Zeta-Jones son siempre populares. As que nos gustara llevar el registro de los actores que aparecen en cada pelcula. No todas nuestras pelculas tienen actores. A los clientes les gustara conocer el nombre real del actor y su fecha de nacimiento. Nosotros solamente llevamos el registro de actores que aparecen en pelculas de nuestro inventario. Tenemos muchos clientes. Nosotros solamente rentamos videos a la gente que sea socia del video club. Por cada socio del club, nos gustara registrar sus datos personales y por supuesto cada miembro del club tiene un nmero de membresa. Necesitamos llevar el registro de que cd de video ha rentado en este momento. Un cliente puede alquilar varias pelculas en un mismo punto en el tiempo.