Vous êtes sur la page 1sur 13

Computacin e Informtica Taller de Modelamiento de Software

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.

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


Computacin e Informtica Taller de Modelamiento de Software

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

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


Computacin e Informtica Taller de Modelamiento de Software

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 BASE DE DATOS


Seleccionando el motor de la

BASE DE DATOS

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

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


Computacin e Informtica Taller de Modelamiento de Software

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

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


Computacin e Informtica Taller de Modelamiento de Software

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).

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


Computacin e Informtica Taller de Modelamiento de Software

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,

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


Computacin e Informtica Taller de Modelamiento de Software

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.

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


Computacin e Informtica Taller de Modelamiento de Software

Modelo de Datos:

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


Computacin e Informtica Taller de Modelamiento de Software

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.

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


Computacin e Informtica Taller de Modelamiento de Software

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

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


Computacin e Informtica Taller de Modelamiento de Software

MODELO FISICO DE LA BASE DE DATOS:

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


Computacin e Informtica Taller de Modelamiento de Software

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

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


Computacin e Informtica Taller de Modelamiento de Software

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.

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

Vous aimerez peut-être aussi