|
|
MODULO I
Ejercicio 1: Identificar los Requerimientos de Diseño de la base de datos
En este ejercicio, usted repasará el siguiente caso. De la información
descripta en el caso, usted identificará los requerimientos del sistema para el
diseño de la base de datos. Usted estará usando este caso y el resultado de este
ejercicio en ejercicios subsecuentes. El producto final será la base de datos
que usted ha diseñado y ha llevado a cabo en SQL Server. Dado usted necesita
guardar el resultado de este ejercicio, sin embargo, que usted podría querer
copiarlo en un archivo de su procesador de palabras o archivo de texto.
NOTA
Al diseñar un sistema de la base de datos relacional, sus
especificaciones del diseño incluyen a menudo las aplicaciones que son
necesarias para acceder a los datos. Para los propósitos de este kit de
entrenamiento, sin embargo, los ejercicios se enfocarán en diseñar y llevar a
cabo sólo el componente de la base de datos del sistema entero.
Caso de una librería
El gerente de una librería pequeña le ha pedido diseñar y llevar a cabo una base de datos que centraliza información para que sea más fácil y más eficaz de manejar el inventario, las órdenes de pedido y las ventas. La tienda maneja libros raros y agotados y tiende a llevar sólo unos mil títulos en cualquier momento. Actualmente, el gerente registra todas las ventas y el inventario en papel. Para cada libro, el gerente escribe el título, autor, editor, la fecha de la publicación, edición, costo, precio minorista sugerido, y una valoración que indica el estado del libro. A cada libro se le asigna una de las siguientes valoraciones: extraordinario, excelente, bueno, justo, pobre, o dañado. Al gerente le gustaría poder agregar una descripción a cada valoración (sólo un par de frases), pero la descripción no debe ser obligatoria. La información sobre cada libro debe incluir el título, autor, costo, precio minorista sugerido, y valoración. El editor, fecha de la publicación, y edición no siempre están disponibles. Si el año en que un libro fue publicado está disponible, el año nunca será anterior al 1600. Y para los propósitos del nuevo sistema de la base de datos, la fecha de la publicación se nunca caerá después del año 2099.
Dado que estos libros son raros, cada título debe registrarse individualmente, aún si son el mismo libro (título idéntico, autor, editor, fecha de la publicación, y edición). Actualmente, el gerente asigna un único ID a cada libro para que puedan diferenciarse títulos idénticos. Este ID debe ser incluido con la información del libro. El ID de libro asignado por el gerente es un ID de ocho caracteres compuestos de números y letras.
El gerente también mantiene información limitada sobre cada autor de los libros que han pasado por la tienda. La tienda podría tener más de un libro por autor, y a veces un libro a sido escrito por de un autor. El gerente mantiene información actualmente de aproximadamente 2500 autores. La información incluye el nombre del autor, el apellido, año de nacimiento, y año de muerte (si es aplicable). La información debe incluir como mínimo el apellido del autor. Al gerente le gustaría incluir una descripción breve de cada autor, cuando la dispone, cuando un autor se agrega a la lista. La descripción normalmente no excederá a una o dos frases.
La librería tiene 12 empleados (incluidos el gerente y su asistente). El gerente espera contratar a un empleado adicional todos los años durante los próximos años. El gerente y su asistente deben poder acceder y modificar información sobre cada empleado. La información del empleado debe incluir el nombre, el apellido, dirección, el número de teléfono, fecha de nacimiento, fecha de ingreso, y cargo en la tienda. Los cargos incluyen a Gerente, Asistente de Gerente, Empleado de Ventas Full Time Lleno, y Empleado de Ventas Part Time. El gerente podría querer en algún momento agregar un nuevo cargo a la lista o cambiar uno que existe y le gustaría en el futuro agregar una descripción breve de los deberes del trabajo a cada cargo (por lo menos, a algunos de los cargos). Un empleado puede tener sólo un cargo en un momento dado. Ningún empleado, fuera de los dos gerentes, debe tener acceso a la información del empleado. Al gerente le gusta también registrar cuántos y qué libros está vendiendo cada empleado.
La librería mantiene información actualmente sobre los clientes. Para cada cliente, la información incluye el nombre del cliente, apellido, número de teléfono, dirección de correo de envío, libros que el cliente ha comprado, y fecha de la compra. Dado que a algunos clientes no les gusta repartir información personal, sólo el nombre o el apellido son obligatorios. El gerente tiene actualmente una lista de aproximadamente 2000 clientes. No todos los clientes que son incluidos en la lista han comprado libros, aunque la mayoría sí.
El gerente mantiene un registro de ventas de cada pedido con datos sobre la fecha del pedido y la fecha de cuando se completó la venta. En algunos casos, como con los clientes sin pedido previo, estos dos eventos ocurren concurrentemente. Cada orden debe incluir información sobre el libro vendido, el cliente que compró, el vendedor que vendió, la cantidad de la venta, y la fecha de la orden. La orden también debe incluir la fecha en que el libro debe ser entregado o retirado. Una orden se completa cuando el libro se ha pagado y es retirado de la tienda o enviado al cliente. Un libro no puede sacarse de la tienda o puede enviarse a menos que se haya pagado. Cada orden incluye el método del pago y el estado de la orden. Los métodos del pago incluyen dinero en efectivo, cheque, y tarjetas del crédito. Los estados de una orden pueden ser uno de los siguientes: (1) para ser enviado, (2) a ser retirado por el cliente, (3) enviado, o (4) retirado. Una orden puede tener sólo un cliente, vendedor, fecha del orden, fecha de la entrega, método de pago, y estado del orden; sin embargo, una orden puede contener uno o más libros.
Actualmente, se generan órdenes, se rastrean, y se modifican en formas de
orden en papel. Las formas se usan para asegurarse que los órdenes se envían (si
es aplicable) y para mantener un registro de ventas. Siempre que un libro se
agrega a una orden, es eliminado de la lista del inventario. Este proceso ha
sido muy tedioso y no siempre eficaz. Esta situación también puede llevar a
confusión y errores. Al gerente le gustaría, que los libros vendidos
permanecieran en la lista de libros pero marcados para mostrar de algún modo que
el libro se ha vendido.
La tienda vende aproximadamente 20 libros al día. La
tienda está abierta cinco a la semana por aproximadamente 10 horas por día. Hay
uno a dos vendedores que trabajan al mismo tiempo, y hay dos contadores de
ventas donde las personas retiran y pagan por los libros y donde se procesan las
órdenes de los vendedores. Siempre está en la tienda al menos uno de los dos
gerentes.
El gerente espera que las ventas aumenten aproximadamente un 10 por ciento al año. Como resultado, el número de libros disponible, autores, y clientes deberán todos aumentar en la misma proporción.
Para servir a los clientes eficazmente, cada empleado debe poder acceder a una fuente centralizada de información sobre los autores, libros, clientes, y órdenes. Actualmente, los empleados acceden a esta información a través de las tarjetas del índice y de listas. A menudo, estas listas no están actualizadas, y tienen errores. Además, cada empleado debe poder crear, rastrear, y modificar un pedido online, en lugar de tener que mantener las formas de orden en papel. Sin embargo, sólo los gerentes deben poder modificar información sobre los autores, libros, y clientes.
Para identificar metas del sistema
1. Repase el caso. No
intente memorizar todos los detalles; en cambio, intente conseguir un sentido
general de lo que el proyecto está intentando lograr.
2. Apunte las metas del
sistema que usted puede identificar en el caso.
¿Cuáles son esas metas?
3.
Repase cada meta para determinar si es mensurable.
¿Qué metas son
mensurables?
Para identificar la cantidad y tipo de datos
1. Apunte las
categorías de datos que usted puede identificar en este caso.
¿Qué categorías
de datos puede identificar?
2. Para cada categoría de datos que identificó en el Paso 1, apunte el tipo
de información que usted debe registrar para cada categoría.
¿Qué tipo de
información puede identificar?
3. Para cada categoría de datos que identificó en el Paso 1, apunte la
cantidad actual de datos por categoría.
¿Cuál es el volumen de datos para
cada categoría?
4. Para cada categoría de datos que identificó en el Paso 1, apunte el modelo
de crecimiento esperado.
¿Cuál es el modelo de crecimiento para cada
categoría?
Para identificar cómo se usarán los datos
1. Apunte las categorías
de usuarios que puede identificar en este caso.
¿Cuáles son esas categorías
de usuarios?
2. Para cada categoría de usuario que identificó en el Paso 1, apunte el
número de usuarios.
¿Cuál es el número actual de usuarios y el número
proyectado de usuarios en cada categoría?
3. Para cada categoría de usuario que identificó en el Paso 1, apunte las
tareas que ellos realizan.
¿Qué tareas realizará cada tipo de usuario?
Para identificar reglas comerciales
1. Apunte las reglas
comerciales que usted puede identificar en este caso.
¿Cuáles son las reglas
comerciales?