Вы находитесь на странице: 1из 175

INSTITUTO TECNOLGICO

DE CD.GUZMAN

INSTITUTO TECNOLGICO DE CD. GUZMAN


OPCIN X

MEMORIA DE RESIDENCIA PROFESIONAL

TEMA:

DON EQUIPAL
QUE PARA OBTENER EL TITULO DE:

LICENCIADA EN INFORMATICA
PRESENTA:

MARIA FERNANDA BARAJAS TORRES

ASESORES:

LIC. ADA MABEL VAZQUEZ PAZ


LIC. JOEL OCHOA VAZQUEZ

CD. GUZMAN JALISCO, MEXICO, FEBRERO 2014

NDICE
Introduccin ..................................................................................................................1
Justificacin ..................................................................................................................2
Objetivo general y especficos......................................................................................3
Caracterizacin del rea que participo .........................................................................4
Problemas a resolver priorizndolo ..............................................................................6
Alcenses y limitaciones ................................................................................................7
Fundamento terico .....................................................................................................8
Fundamentos de sistemas ........................................................................................8
Modelos clsico .....................................................................................................8
Modelos cascada .................................................................................................10
Modelos incremental ............................................................................................13
Modelos espiral....................................................................................................15
Diagrama Warnier/Orr .........................................................................................18
Elementos bsicos...............................................................................................18
Uso de diagramas de Warnierr/Orr ......................................................................19
Diagrama de contexto ..........................................................................................21
Elementos del diagrama de contexto ...................................................................22
Diagrama de flujo de datos ..................................................................................22
Fundamentos de lenguaje unificado (UML).............................................................25
Diagrama de casos de uso ..................................................................................27
Relaciones de casos de uso ................................................................................28
extensin .............................................................................................................29
generalizacin .....................................................................................................29
Diagrama de estados ...........................................................................................31
Diagrama de colaboracin ..................................................................................34
Diagrama de clases .............................................................................................38
Fundamentos de bases de datos ............................................................................40
Tipos de bases de datos......................................................................................40
Bases de datos estticas .....................................................................................41

Bases de datos dinmicas ...................................................................................41


Bases de datos bibliogrficas ..............................................................................42
Modelo Entidad-Relacin .....................................................................................42
Entidades .............................................................................................................42
Atributos...............................................................................................................43
Claves..................................................................................................................43
Relaciones ...........................................................................................................45
Correspondencia de cardinalidades ....................................................................45
Restricciones de particin ....................................................................................46
Modelo relacional.................................................................................................46
Normalizacin ......................................................................................................47
Grados de normalizacin .....................................................................................48
Primera forma normal ..........................................................................................49
Segunda forma normal ........................................................................................49
Tercera forma normal ..........................................................................................50
Fundamentos de SQL .............................................................................................51
Caractersticas generales de SQL ......................................................................51
Tipos de datos .....................................................................................................52
Optimizacin ........................................................................................................56
Lenguaje de definicin de datos ..........................................................................57
Fundamentos de visual basic ..................................................................................60
Formularios Windows form ..................................................................................60
Biblioteca de clases .............................................................................................61
Controles comunes visual basic 2010 .................................................................62
Propiedades de objetos .......................................................................................63
Objetos y clases ..................................................................................................67
Caracteres en visual basic .NET..........................................................................69
Identificadores .....................................................................................................70
Tipos ....................................................................................................................72
Palabras reservadas ............................................................................................72

Declaracin de variables......................................................................................74
Operadores de relacin .......................................................................................77
Sentencias visual .................................................................................................79
Case ....................................................................................................................80
Sentencia For ......................................................................................................81
Sentencias Do .....................................................................................................82
ADO.NET .............................................................................................................82
Data set ...............................................................................................................83
ADO.NET Y visual studio.NET.............................................................................85
ADO.NET Entity framework .................................................................................85
Report viewer.......................................................................................................86
Procedimiento y descripcin de las actividades realizadas ........................................88
Anlisis ...................................................................................................................88
Polticas ...............................................................................................................88
Entradas ..............................................................................................................88
Salidas .................................................................................................................89
Procesos ..............................................................................................................89
Almacenes ..........................................................................................................90
Entidades externas ..............................................................................................90
Diagrama de Warnier/Orr.....................................................................................91
Diagrama de contexto ..........................................................................................93
Diagrama de casos de uso general .....................................................................94
Tabla de funciones ..............................................................................................95
Diagrama de movimientos ...................................................................................96
Diseo ...................................................................................................................104
Diccionario de datos ..........................................................................................104
Normalizacin ....................................................................................................116
Diagrama de clases ...........................................................................................126
Pantallas del sistema .........................................................................................127

Codificacin...........................................................................................................129
Diagrama de mdulos ........................................................................................129
Diccionario de mdulos del sistema ..................................................................130
Diagrama de clases ...........................................................................................134
Pruebas y depuracin ...........................................................................................134
Implantacin ..........................................................................................................153
Planeacin de la implantacin ...........................................................................153
Implantacin del sistema ...................................................................................153
Capacitacin ......................................................................................................153
Captura de datos ...............................................................................................154
Ajustes y correcciones .......................................................................................154
Liberacin ..........................................................................................................154
Cronograma de actividades ...............................................................................154
Resultados y grficos ...............................................................................................155
Conclusin ...............................................................................................................161
Referencias bibliogrficas ........................................................................................162
Anexos .....................................................................................................................164

NDICE DE TABLAS
Tabla elementos de diagrama de Warnier/Orr ........................................................20
Tabla identificador para la declaracin de variables ...............................................69
Tabla tipos de datos comunes ................................................................................71
Tabla palabras reservadas ......................................................................................72
Tabla operadores aritmticos ..................................................................................76
Tabla operadores de relacin..................................................................................77
Tabla operadores lgicos ........................................................................................78
Tabla de funciones (8).............................................................................................95
Tabla diccionario de datos (9) ...............................................................................130

INTRODUCCIN
En el presente informe encontrar una introduccin y la justificacin de ste
trabajo de residencias profesionales, objetivo general y especficos, problemas a
resolver, alcances y limitaciones, fundamentos de sistemas de informacin, de UML y
de Visual Basic. de igual forma contiene el anlisis y diseo de los diagramas de
estado, colaboracin, caso de uso expandido, contexto y Warnier/Orr.
Actualmente la tecnologa forma parte importante de la vida cotidiana de todas
las personas y las organizaciones. A diario, se vive en un mundo rodeado de ella, en
la casa, en la escuela y la sociedad. Es por ello que existe la necesidad de
mantenerse actualizado y aprovechar todos los beneficios que las nuevas tendencias
tecnolgicas nos ofrecen.
El objetivo de este proyecto es el desarrollo e implantacin de un sistema
integral para el control de ventas e inventario.
Este sistema ha sido desarrollado para cubrir las necesidades bsicas del
establecimiento Burritos Los Equipales, haciendo uso de la tecnologa existente
para el desarrollo del negocio. El sistema Don Equipal est diseado para ofrecer
un mejor servicio a sus usuarios proporcionndoles una forma diferente de
informacin y atencin de sus necesidades.
En la actualidad la gestin de la comanda de los clientes y el control de
inventario se realiza manualmente desde hace muchos aos. Esta situacin, ha
permitido llegar a la conclusin de que existe un amplio margen de mejora en todos
los procesos diarios que se realizan en el establecimiento Burritos Los Equipales.
Este sistema propone una revolucin en la gestin de los diferentes elementos
principales del establecimiento, haciendo uso de la tecnologa en servicios de sus
usuarios.
El sistema de informacin est programado en el lenguaje de Visual Basic
2010 con una base de datos en SQL Server 2008 y con sistema operativo Windows.
1

JUSTIFICACIN
Actualmente en el establecimiento Burritos Los Equipales se cuenta con un
sistema manual para lleva el control de comandas e inventarios.
Uno de los problemas a resolver es el manejo de las comandas puesto que
cada vez que el cliente vuelve a ordenar un pedido se realiza una comanda nueva
pero no se lleva un control adecuado ocasionando que el pedido se pierde o no se
sabe a qu cliente pertenece y esto genera servicio lento y deficiente. Otro problema
se encuentra en el manejo de inventario debido al despilfarro de materia prima y
bebida causando la prdida de ganancias.
Estos son factores que limitan por completo el desarrollo del negocio de no
solucionar estos problemas el negocio experimentara perdida de dinero, clientes
inconformes y ventas escasas.

OBJETIVO GENERAL
Desarrollar un sistema de informacin monousuario para una computadora de
escritorio que permita llevar el control de ventas e inventario, para el establecimiento
de comida rpida, Burritos Los Equipales.

OBJETIVOS ESPECFICOS
Registro de Clientes.
Registro de Empleados.
Registro de Materia Prima.
Registro de Bebidas.
Registro de Ventas.
Registro de Compras.
Registro de Comanda (Local -Telfono).
Llevar un control de Entradas y Salidas en materia prima.
Llevar un control de Entradas y Salidas en bebidas.
Impresin de Notas de Consumo.
Reporte de Ventas por da.
Relacin de Comandas por empleado.
Relacin de Gastos por periodo.
Reporte de Ventas por Periodo.
Reporte de Compras por Periodo.

CARACTERIZACIN DEL REA EN QUE PARTICIP

Organigrama de la empresa.

En la Figura 1. Se muestra el organigrama de la empresa.

Gerente Juan
Carlos Castillo
Zuiga

Empleado 1

Empleado 2

Empleado 3

Figura 1. Organigrama del establecimiento.

Domicilio del establecimiento: Mariano Escobedo #235, colonia centro.

Funciones del gerente del establecimiento


1. Definir y ejecutar el trabajo requerido.

2. Actualizar los datos entrantes de empleados y clientes junto con su


informacin dentro de los registros.

3. Levantar la comanda pedida por los clientes.

4. Registra notas de consumo.

5. Actualizar la informacin entrante en las bebidas y materia prima.

6. Desarrollar los paquetes promocionales del establecimiento.

7. Apoya en el desarrollo de las actividades del negocio.

8. Gestionar las cuentas del establecimiento.

9. Facilita la incorporacin e integracin de las personas dentro del negocio.

10. Realizacin del pago de los empleados.

PROBLEMAS A RESOLVER PRIORIZNDOLOS

Registro de comandas.
Se modific el procedimiento de registro de la comanda, ya que en el negocio
se duplicaban comandas para l mismo cliente cuando despus de realizar un
pedido inicial quera agregar algo ms ocasionando un mal control en las comandas,
perdida de informacin, as como tambin errores al momento de cobrar.

Registro de inventario.
Problemas debido a que el dueo quiere llevar un inventario de toda su
materia prima que se usa para cocinar los burritos ya que parte del material son
alimentos perecederos, pero despus de llegar a un acuerdo y con la experiencia al
cocinar ciertos alimentos, se lleg a un arreglo, pero ser imposible registrar en el
inventario toda la materia prima.

Control de prdidas y ganancias.


Por el motivo anterior y para saber el total de las ganancias se generarn
reportes con la informacin relevante y ms importante de lo que se vende da a da.

ALCANCES Y LIMITACIONES

Alcances.
Este sistema realiza las comandas de los clientes del establecimiento Burritos
Los Equipales, as como tambin lleva el control convenientemente de parte de la
materia prima y de las bebidas, gestionando un buen inventario. Cuenta con un
registro de los clientes que realizan pedidos a domicilio o de los clientes que
prefieren hacer consumo en el establecimiento.
Genera notas de consumo para de esta manera evitar errores ocasionados en
el momento del cobro. El sistema ofrece una opcin de reportes para que el gerente
pueda consultar los clientes, compras, ventas, ganancias, etc. da a da de la
informacin obtenida de su negocio, as como tambin una opcin de ayuda de cmo
utilizar el sistema y otra ms de respaldo de informacin.

Limitaciones.
Es un sistema exclusivamente para el negocio Burritos Los Equipales.
Los reportes no pueden ser modificados.
Es un sistema monousuario.

FUNDAMENTO TERICO

FUNDAMENTOS DE SISTEMAS

Modelo clsico.
El ciclo de vida del desarrollo de sistemas es el conjunto de actividades que
los analistas, diseadores y usuarios, necesitan llevar a cabo para desarrollar y
poner en marcha un sistema de informacin. El ciclo de vida del desarrollo de un
sistema consiste en las siguientes actividades:

El mtodo del ciclo de vida para el desarrollo de sistemas consta de 6 fases:


1). Investigacin Preliminar: La solicitud para recibir ayuda de un sistema de
informacin puede originarse por varias razones: sin importar cuales sean estas, el
proceso se inicia siempre con la peticin de una persona.
2). Determinacin de los requerimientos del sistema: El aspecto
fundamental del anlisis de sistemas es comprender todas las facetas importantes
por parte de la empresa que se encuentra bajo estudio. Los analistas, al trabajar con
los empleados y administradores, deben estudiar todos o cada uno de los procesos
de una empresa para dar respuesta a las siguientes preguntas clave:
Qu es lo que hace?
Cmo se hace?
Con que frecuencia se presenta?
Qu tan grande es el volumen de transacciones o decisiones?
Cul es el grado de eficiencia con el que se efectan las tareas?
Existe algn problema?
8

Qu tan serio es?


Cul es la causa que lo origina?
3). Diseo del sistema: El diseo de un sistema de informacin produce los
detalles que establecen la forma en la que el sistema cumplir con los requerimientos
identificados durante la fase de anlisis. Los especialistas en sistemas se refieren,
con frecuencia, a esta etapa como diseo lgico en contraste con la del desarrollo
del software, a la que denominan diseo fsico.
4). Desarrollo del software: Los encargados de desarrollar software pueden
instalar software comprobando a terceros o escribir programas diseados a la
medida del solicitante. La eleccin depende del costo de cada alternativa, del tiempo
disponible para escribir el software y de la disponibilidad de los programadores.
Por lo general, los programadores que trabajan en las grandes organizaciones
pertenecen a un grupo permanente de profesionales.
5). Prueba de sistemas: Durante la prueba de sistemas, el sistema se emplea
de manera experimental para asegurarse de que el software no tenga fallas, es decir,
que funciona de acuerdo con las especificaciones y en la forma en que los usuarios
esperan que lo haga.
Se alimentan como entradas conjunto de datos de prueba para su procesamiento y
despus se examinan los resultados.
6). Implantacin y evaluacin: La implantacin es el proceso de verificar e
instalar nuevo equipo, entrenar a los usuarios, instalar la aplicacin y construir todos
los archivos de datos necesarios para utilizarla. Una vez instaladas, las aplicaciones
se emplean durante muchos aos. Sin embargo, las organizaciones y los usuarios
cambian con el paso del tiempo, incluso el ambiente es diferente con el paso de las
semanas y los meses.
Por consiguiente, es indudable que debe darse mantenimiento a las
aplicaciones. La evaluacin de un sistema se lleva a cabo para identificar puntos
9

dbiles y fuertes. La evaluacin ocurre a lo largo de cualquiera de las siguientes


dimensiones:
Evaluacin operacional: Valoracin de la forma en que funciona el sistema,
incluyendo su facilidad de uso, tiempo de respuesta, lo adecuado de los
formatos de informacin, confiabilidad global y nivel de utilizacin.

Impacto organizacional: Identificacin y medicin de los beneficios para la


organizacin en reas tales como finanzas, eficiencia operacional e impacto
competitivo. Tambin se incluye el impacto sobre el flujo de informacin
externo e interno.

Opinin de loa administradores: Evaluacin de las actividades de directivos


y administradores dentro de la organizacin as como de los usuarios finales.

Desempeo del desarrollo: La evaluacin de proceso de desarrollo de


acuerdo con criterios tales como tiempo y esfuerzo de desarrollo, concuerdan
con presupuestos y estndares, y otros criterios de administracin de
proyectos. Tambin se incluye la valoracin de los mtodos y herramientas
utilizados en el desarrollo.

Modelo cascada.
Este, aunque es ms comnmente conocido como modelo en cascada es
tambin llamado modelo clsico, modelo tradicional o modelo lineal
secuencial.
El modelo en cascada puro difcilmente se utiliza tal cual, pues esto implicara
un previo y absoluto conocimiento de los requisitos, la no volatilidad de los mismos (o
rigidez) y etapas subsiguientes libres de errores; ello slo podra ser aplicable a
escasos y pequeos sistemas a desarrollar.
10

En estas circunstancias, el paso de una etapa a otra de las mencionadas sera


sin retorno, por ejemplo: pasar del diseo a la codificacin implicara un diseo
exacto y sin errores ni probable modificacin o evolucin: codifique lo diseado sin
errores, no habr en absoluto variantes futuras. Esto es utpico; ya que
intrnsecamente el software es de carcter evolutivo, cambiante y difcilmente libre
de errores, tanto durante su desarrollo como durante su vida operativa.
Algn cambio durante la ejecucin de una cualquiera de las etapas en este
modelo secuencial implicara reiniciar desde el principio todo el ciclo completo, lo
cual redundara en altos costos de tiempo y desarrollo.
Sin embargo, el modelo cascada en algunas de sus variantes es uno de los
actualmente ms utilizados, por su eficacia y simplicidad, ms que nada en software
de pequeo y algunos de mediano porte; pero nunca (o muy rara vez) se le usa en
su "forma pura", como se dijo anteriormente. En lugar de ello, siempre se produce
alguna realimentacin entre etapas, que no es completamente predecible ni rgida;
esto da oportunidad al desarrollo de productos software en los cuales hay ciertas
incertezas, cambios o evoluciones durante el ciclo de vida. As por ejemplo, una vez
capturados y especificados los requisitos (primera etapa) se puede pasar al diseo
del sistema, pero durante esta ltima fase lo ms probable es que se deban realizar
ajustes en los requisitos (aunque sean mnimos), ya sea por fallas detectadas,
ambigedades o bien por qu los propios requisitos han cambiado o evolucionado;
con lo cual se debe retornar a la primera o previa etapa, hacer los reajuste
pertinentes y luego continuar nuevamente con el diseo; esto ltimo se conoce como
realimentacin. Lo normal en el modelo cascada ser entonces la aplicacin del
mismo con sus etapas realimentadas de alguna forma, permitiendo retroceder de una
a la anterior (e incluso poder saltar a varias anteriores) si es requerido.
Lo dicho es, a grandes rasgos, la forma y utilizacin de este modelo, uno de
los ms usados y populares. El modelo cascada realimentado resulta muy atractivo,
hasta ideal, si el proyecto presenta alta rigidez (pocos cambios, previsto no
evolutivo), los requisitos son muy claros y estn correctamente especificados.
11

Hay ms variantes similares al modelo: refino de etapas (ms etapas,


menores y ms especficas) o incluso mostrar menos etapas de las indicadas,
aunque en tal caso la faltante estar dentro de alguna otra. El orden de esas fases
indicadas en el tem previo es el lgico y adecuado, pero advirtase, como se dijo,
que normalmente habr realimentacin hacia atrs.
El modelo lineal o en cascada es el paradigma ms antiguo y extensamente
utilizado, sin embargo las crticas a l (ver desventajas) han puesto en duda su
eficacia. Pese a todo, tiene un lugar muy importante en la Ingeniera de software y
contina siendo el ms utilizado; y siempre es mejor que un enfoque al azar.
Desventajas del modelo cascada:
Los cambios introducidos durante el desarrollo pueden confundir
al equipo profesional en las etapas tempranas del proyecto. Si los
cambios se producen en etapa madura (codificacin o prueba) pueden
ser catastrficos para un proyecto grande.

No es frecuente que el cliente o usuario final de informacin


abundante clara y completamente los requisitos (etapa de inicio); y el
modelo lineal lo requiere. La incertidumbre natural en los comienzos es
luego difcil de acomodar.

El cliente debe tener paciencia ya que el software no estar


disponible hasta muy avanzado el proyecto. Un error detectado por el
cliente (en fase de operacin) puede ser desastroso, implicando reinicio
del proyecto, con altos costos.

12

Modelo incremental.
La idea principal detrs de mejoramiento iterativo es desarrollar un sistema de
programas de manera incremental, permitindole al desarrollador sacar ventaja de lo
que se ha aprendido a lo largo del desarrollo anterior, incrementando, versiones
entregables del sistema. El aprendizaje viene de dos vertientes: el desarrollo del
sistema, y su uso (mientras sea posible). Los pasos claves en el proceso son
comenzar con una implementacin simple de los requerimientos del sistema, e
iterativamente mejorar la secuencia evolutiva de versiones hasta que el sistema
completo est implementado. En cada iteracin, se realizan cambios en el diseo y
se agregan nuevas funcionalidades y capacidades al sistema.
El proceso en s mismo consiste de:

Etapa de inicializacin

Etapa de iteracin

Lista de control de proyecto

Etapa de inicializacin.
Se crea una versin del sistema. La meta de esta etapa es crear un producto
con el que el usuario pueda interactuar, y por ende retroalimentar el proceso. Debe
ofrecer una muestra de los aspectos claves del problema y proveer una solucin lo
suficientemente simple para ser comprendida e implementada fcilmente. Para guiar
el proceso de iteracin se crea una lista de control de proyecto, que contiene un
historial de todas las tareas que necesitan ser realizadas. Incluye cosas como
nuevas funcionalidades para ser implementadas, y reas de rediseo de la solucin
ya existente. Esta lista de control se revisa peridica y constantemente como
resultado de la fase de anlisis.

13

Etapa de iteracin.
Esta etapa involucra el rediseo e implementacin de una tarea de la lista de
control de proyecto, y el anlisis de la versin ms reciente del sistema. La meta del
diseo e implementacin de cualquier iteracin es ser simple, directa y modular, para
poder soportar el rediseo de la etapa o como una tarea aadida a la lista de control
de proyecto. El cdigo puede, en ciertos casos, representar la mayor fuente de
documentacin del sistema. El anlisis de una iteracin se basa en la
retroalimentacin del usuario y en el anlisis de las funcionalidades disponibles del
programa.

Involucra

el

anlisis

de

la

estructura,

modularidad,

usabilidad,

confiabilidad, eficiencia y eficacia (alcanzar las metas). La lista de control del


proyecto se modifica bajo la luz de los resultados del anlisis.

Las guas primarias que guan la implementacin y el anlisis incluyen:


Cualquier dificultad en el diseo, codificacin y prueba de una
modificacin debera apuntar a la necesidad de redisear o recodificar.

Las modificaciones deben ajustarse fcilmente a los mdulos fciles de


encontrar y a los aislados. Si no es as, entonces se requiere algn
grado de rediseo.

Las modificaciones a las tablas deben ser especialmente fciles de


realizar. Si dicha modificacin no ocurre rpidamente, se debe aplicar
algo de rediseo.
Las modificaciones deben ser ms fciles de hacer conforme avanzan
las iteraciones. Si no es as, hay un problema primordial usualmente
encontrado en un diseo dbil o en la proliferacin excesiva de parches
al sistema.
14

Los parches normalmente deben permanecer solo por una o dos


iteraciones. Se hacen necesarios para evitar el rediseo durante una
fase de implementacin.

La implementacin existente debe ser analizada frecuentemente para


determinar qu tal se ajusta a las metas del proyecto.

Las facilidades para analizar el programa deben ser utilizadas cada vez
para ayudar en el anlisis de implementaciones parciales.

La opinin del usuario debe ser solicitada y analizada para indicar


deficiencias en la implementacin referida por l.

Modelo espiral.
El modelo espiral fue propuesto inicialmente por Barry Boehm. Es un modelo
evolutivo que conjuga la naturaleza iterativa del modelo MCP con los aspectos
controlados y sistemticos del Modelo Cascada. Proporciona potencial para
desarrollo rpido de versiones incrementales. En el modelo Espiral el software se
construye en una serie de versiones incrementales. En las primeras iteraciones la
versin incremental podra ser un modelo en papel o bien un prototipo.
En las ltimas iteraciones se producen versiones cada vez ms completas del
sistema diseado.
El modelo se divide en un nmero de Actividades de marco de trabajo,
llamadas regiones de tareas. En general existen entre tres y seis regiones de
tareas (hay variantes del modelo).
15

En este caso se explica una variante del modelo original de Boehm, expuesto
en su tratado de 1988; en 1998 expuso un tratado ms reciente.
Las regiones definidas en el modelo de la figura son:
Regin 1 - Tareas requeridas para establecer la comunicacin entre el
cliente y el desarrollador.
Regin 2 - Tareas inherentes a la definicin de los recursos, tiempo y
otra informacin relacionada con el proyecto.
Regin 3 - Tareas necesarias para evaluar los riesgos tcnicos y de
gestin del proyecto.
Regin 4 - Tareas para construir una o ms representaciones de la
aplicacin software.
Regin 5 - Tareas para construir la aplicacin, instalarla, probarla y
proporcionar soporte al usuario o cliente (Ej. documentacin y prctica).
Regin 6 - Tareas para obtener la reaccin del cliente, segn la
evaluacin de lo creado e instalado en los ciclos anteriores.
Las actividades enunciadas para el marco de trabajo son generales y se
aplican a cualquier proyecto, grande, mediano o pequeo, complejo o no. Las
regiones que definen esas actividades comprenden un conjunto de tareas del
trabajo: ese conjunto s se debe adaptar a las caractersticas del proyecto en
particular a emprender. Ntese que lo listado en los tems de 1 a 6 son conjuntos de
tareas, algunas de las ellas normalmente dependen del proyecto o desarrollo en s.
Proyectos pequeos requieren baja cantidad de tareas y tambin de
formalidad. En proyectos mayores o crticos cada regin de tareas contiene labores
de ms alto nivel de formalidad. En cualquier caso se aplican actividades de
proteccin (por ejemplo, gestin de configuracin del software, garanta de calidad,
etc.).

16

Al inicio del ciclo, o proceso evolutivo, el equipo de ingeniera gira alrededor


del espiral (metafricamente hablando) comenzando por el centro y en el sentido
indicado; el primer circuito de la espiral puede producir el desarrollo de una
especificacin del producto; los pasos siguientes podran generar un prototipo y
progresivamente versiones ms sofisticadas del software.
Cada paso por la regin de planificacin provoca ajustes en el plan del
proyecto; el coste y planificacin se realimentan en funcin de la evaluacin del
cliente. El gestor de proyectos debe ajustar el nmero de iteraciones requeridas para
completar el desarrollo.
El modelo espiral puede ir adaptndose y aplicarse a lo largo de todo el Ciclo
de vida del software (en el modelo clsico, o cascada, el proceso termina a la
entrega del software).
Cuando la espiral se caracteriza de esta forma, est operativa hasta que el
software se retira, eventualmente puede estar inactiva (el proceso), pero cuando se
produce un cambio el proceso arranca nuevamente en el punto de entrada apropiado
(por ejemplo, en mejora del producto).
El modelo espiral da un enfoque realista, que evoluciona igual que el software;
se adapta muy bien para desarrollos a gran escala.
Este modelo requiere considerar riesgos tcnicos en todas las etapas del
proyecto; aplicado adecuadamente debe reducirlos antes de que sean un verdadero
problema.
El Modelo evolutivo como el Espiral es particularmente apto para el desarrollo
de Sistemas Operativos (complejos); tambin en sistemas de altos riesgos o crticos
(Ej. navegadores y controladores aeronuticos) y en todos aquellos en que sea
necesaria una fuerte gestin del proyecto y sus riesgos, tcnicos o de gestin.

17

Desventajas importantes:
Requiere mucha experiencia y habilidad para la evaluacin de los
riesgos, lo cual es requisito para el xito del proyecto.
Es difcil convencer a los grandes clientes que se podr controlar este
enfoque evolutivo.
Este modelo no se ha usado tanto, como el Cascada (Incremental) o MCP, por
lo que no se tiene bien medida su eficacia, es un paradigma relativamente nuevo y
difcil de implementar y controlar.

Diagrama de Warnier/Orr.
Los diagramas de Warnier/Orr (tambin conocidos como construccin lgica
de programas/construccin lgica de sistemas), fueron desarrollados inicialmente en
Francia por Jean Dominique Warnier y en los Estados Unidos por Kenneth Orr. Este
mtodo ayuda al diseo de estructuras de programas identificando la salida y
resultado del procedimiento, y entonces trabaja hacia atrs para determinar los
pasos y combinaciones de entrada necesarios para producirlos. Los sencillos
mtodos grficos usados en los diagramas de Warnier/Orr hacen evidentes los
niveles en un sistema y ms claros los movimientos de los datos en dichos niveles.

Elementos bsicos.
Los diagramas de Warnier/Orr muestran los procesos y la secuencia en que
se realizan. Cada proceso se define de una manera jerrquica; es decir, consta de
conjuntos de subprocesos que lo definen, en cada nivel, el proceso se muestra en
una llave que agrupa a sus componentes.

18

Puesto que un proceso puede tener muchos subprocesos distintos, un


diagrama de Warnier/Orr, usa un conjunto de llaves para mostrar cada nivel del
sistema.

Uso de diagramas de Warnier/Orr.


La capacidad de mostrar la relacin entre procesos y pasos de un proceso no
es exclusiva de los diagramas de Warnier/Orr, as como tampoco lo es el uso de la
iteracin, seleccin de alternativas o el tratamiento de casos individuales.
Tanto los diagramas de flujo estructurado y los mtodos del espaol
estructurado logran eso tambin. Sin embargo, el enfoque que se usa para
desarrollar las definiciones de un sistema por medio de estos diagramas es distinto y
se adaptan bien a los que se usan en el diseo de sistemas lgicos.
Para desarrollar un diagrama de Warnier/Orr, el analista trabaja hacia atrs,
empezando con la salida del sistema y usando un anlisis orientado hacia la salida.
En el papel el desarrollo se mueve de izquierda a derecha. En primer lugar, se
definen la salida o resultados esperados del procedimiento. En el nivel siguiente,
mostrado mediante la inclusin por medio de una llave, se definen los pasos
necesarios para producir la salida. A su vez, cada paso se define un poco ms. Las
llaves adicionales agrupan los procesos requeridos para producir el resultado en el
siguiente nivel.

19

La simbologa del diagrama Warnier/Orr se muestra en la Tabla 1.

Simbologa

Significado
Se Utiliza Para conjuntos
y Subconjuntos

(N)

Ejecutar el conjunto N
veces

(0,1)

Una condicin debe ser


cierta o falsa.

+
PREFORM

Enunciados arriba y abajo


del + son alternativas
mutuamente excluyentes.
Utilizado para saltar a otra
parte del diagrama

Tabla 1. Elementos del diagrama Warnier/Orr.

Los diagramas de Warnier/Orr ofrecen a los expertos en sistemas algunas


ventajas distintivas. Son simples en apariencia y fciles de entender. Aun as, son
poderosas herramientas de diseo. Tienen la ventaja de mostrar agrupaciones de
procesos y los datos que deben transferirse de nivel a nivel. Adems, la secuencia
del trabajo hacia atrs garantiza que el sistema estar orientado hacia el resultado.

20

Diagrama de contexto.
El diagrama de contexto es un caso especial del diagrama de flujo de datos,
en donde una sola burbuja representa todo el sistema.
El diagrama de contexto muestra a travs de flujos de datos las interacciones
existentes entre los agentes externos y el sistema, sin describir en ningn momento
la estructura del sistema de informacin.
En este tipo de diagrama, el sistema de informacin debe representarse como
un nico proceso de muy alto nivel con entradas y salidas hacia los agentes externos
que lo limitan, de forma equivalente a una caja negra.
Teniendo en cuenta que este diagrama debe de ser comprensible, no es
posible representar todos los flujos de datos del sistema en l, sino ms bien debe
representarse en l una visin general del sistema desde la perspectiva de los
propietarios de sistemas siguiendo dos lineamientos bsicos:
Representar nicamente los flujos de datos que tengan algo que ver con el
objetivo principal del sistema.
Utilizar flujos de datos compuestos que representen a aquellos que sean
similares.
Dentro de ste diagrama se enfatizan varias caractersticas importantes del
sistema.
Las personas, organizaciones y sistemas con los que se comunica el sistema
son conocidos como terminadores.
Los datos que el sistema recibe del mundo exterior y que deben procesarse
de alguna forma.
Los datos producidos por el sistema y que se enviarn al exterior.
Los almacenes de datos que el sistema comparte con los terminadores.
La frontera entre el sistema y el resto del mundo.

21

Elementos del diagrama de contexto.


El diagrama de contexto consiste de terminadores, flujos de datos y flujos de
control, almacenes de datos y un solo proceso, que consiste en una sola burbuja. El
nombre dentro del proceso suele ser el nombre del sistema completo o un acrnimo
convenido.
Los terminadores se representan por medio de rectngulos y se comunican
con el sistema utilizando flujos de datos o de control, los cuales son representados
por flechas, o a travs de almacenes externos.
Hay que recalcar que los terminadores no se comunican entre s, al menos no
en el diagrama de contexto, ya que denotaran interacciones externas al sistema.

Diagrama de flujo de datos.


Un diagrama de flujo de datos (DFD por sus siglas en espaol e ingls) es una
representacin grfica del flujo de datos a travs de un sistema de informacin. Un
diagrama de flujo de datos tambin se puede utilizar para la visualizacin de
procesamiento de datos (diseo estructurado). Es una prctica comn para
un diseador dibujar un contexto a nivel de DFD que primero muestra la interaccin
entre el sistema y las entidades externas. Este contexto a nivel de DFD se utiliza
para mostrar ms detalles del sistema que se est modelando.
Los diagramas de flujo de datos fueron inventados por Larry Constantine, el
desarrollador original del diseo estructurado, basado en el modelo de computacin
de Martin y Estrin: "flujo grfico de datos" .
Los diagramas de flujo de datos (DFD) son una de las tres perspectivas
esenciales de Anlisis de Sistemas Estructurados y Diseo por Mtodo SSADM.
El patrocinador de un proyecto y los usuarios finales tendrn que ser
informados y consultados en todas las etapas de una evolucin del sistema.
22

Con un diagrama de flujo de datos, los usuarios van a poder visualizar la


forma en que el sistema funcione, lo que el sistema va a lograr, y cmo el sistema se
pondr en prctica. El antiguo sistema de diagramas de flujo de datos puede ser
elaborado y se compar con el nuevo sistema de diagramas de flujo para establecer
diferencias y mejoras a aplicar para desarrollar un sistema ms eficiente.
Los diagramas de flujo de datos pueden ser usados para proporcionar al
usuario final una idea fsica de cmo resultarn los datos a ltima instancia, y cmo
tienen un efecto sobre la estructura de todo el sistema. La manera en que cualquier
sistema es desarrollado, puede determinarse a travs de un diagrama de flujo de
datos, modelo de datos. Los smbolos del diagrama de flujo de datos se observan en
la Figura 2.

Figura 2. Smbolos utilizados en el diagrama de flujo de datos.

Los terminadores representan por medio de rectngulos y se comunican con


el sistema utilizando flujos de datos o e control, los cuales son representados por
flechas, o a travs de almacenes externos. Hay que mencionar que los terminadores
no se comunican entre s, al menos no en el diagrama de contexto, ya que
denotaran interacciones externas al sistema. En la Figura 3 se muestra un ejemplo
de diagrama de contexto.

23

Figura 3. Ejemplo de un diagrama de contexto.

24

FUNDAMENTOS DEL LENGUAJE UNIFICADO DE MODELDO (UML)


El Lenguaje de Modelado Unificado (UML:Unified Modeling Language) es la
sucesin de una serie de mtodos de anlisis y diseo orientadas a objetos que
aparecen a fines de los 80's y principios de los 90s. UML es llamado un lenguaje de
modelado, no un mtodo. Los mtodos consisten de ambos de un lenguaje de
modelado y de un proceso. El UML, fusiona los conceptos de la orientacin a objetos
aportados por Booch, OMT (Booch, G. et al., 1999).
UML incrementa la capacidad de lo que se puede hacer con otros mtodos de
anlisis y diseo orientados a objetos. Los autores de UML apuntaron tambin al
modelado de sistemas distribuidos y concurrentes para asegurar que el lenguaje
maneje adecuadamente estos dominios.
El lenguaje de modelado es la notacin (principalmente grfica) que usan los
mtodos para expresar un diseo. El proceso indica los pasos que se deben seguir
para llegar a un diseo.
La estandarizacin de un lenguaje de modelado es invaluable, ya que es la
parte principal del proceso de comunicacin que requieren todos los agentes
involucrados en un proyecto informtico.
Si se quiere discutir un diseo con alguien ms, ambos deben conocer el
lenguaje de modelado y no as el proceso que se sigui para obtenerlo.
Una de las metas principales de UML es avanzar en el estado de la
integracin institucional proporcionando herramientas de interoperabilidad para el
modelado visual de objetos. Sin embargo para lograr un intercambio exitoso de
modelos de informacin entre herramientas, se requiri definir a UML una semntica
y una notacin.

25

La notacin es la parte grfica que se ve en los modelos y representa la


sintaxis del lenguaje de modelado. Por ejemplo: la notacin del diagrama de clases
define como se representan los elementos y conceptos como son: una clase, una
asociacin y una multiplicidad. Y qu significa exactamente una asociacin o
multiplicidad en una clase?. Un metamodelo es la manera de definir esto (un
diagrama, usualmente de clases, que define la notacin).
Para que un proveedor diga que cumple con UML debe cubrir con la
semntica y con la notacin.
Una herramienta de UML debe mantener la consistencia entre los diagramas
en un mismo modelo. Bajo esta definicin una herramienta que solo dibuje, no puede
cumplir con la notacin de UML.
Es importante remarcar que UML es un "lenguaje de modelado" para especificar o
para describir mtodos o procesos. Se utiliza para definir un sistema, para detallar
los artefactos en el sistema y para documentar y construir. En otras palabras, es el
lenguaje en el que est descrito el modelo.
Se puede aplicar en el desarrollo de software gran variedad de formas para
dar soporte a una metodologa de desarrollo de software (tal como el Proceso
Unificado Racional o RUP), pero no especifica en s mismo qu metodologa o
proceso usar.
UML no puede compararse con la programacin estructurada, pues UML
significa Lenguaje Unificado de Modelado, no es programacin, solo se diagrama la
realidad de una utilizacin en un requerimiento. Mientras que, programacin
estructurada, es una forma de programar como lo es la orientacin a objetos, sin
embargo, la programacin orientada a objetos viene siendo un complemento perfecto
de UML, pero no por eso se toma UML slo para lenguajes orientados a objetos.
UML cuenta con varios tipos de diagramas, los cuales muestran diferentes
aspectos de las entidades representadas.
26

Diagrama de casos de uso.

En el Lenguaje de Modelado Unificado, un diagrama de casos de uso es una


especie de diagrama de comportamiento. UML no define estndares para que el
formato escrito describa los casos de uso, y as mucha gente no entiende que esta
notacin grfica define la naturaleza de un caso de uso; sin embargo una notacin
grfica puede solo dar una vista general simple de un caso de uso o un conjunto de
casos de uso. Los diagramas de casos de uso son a menudo confundidos con los
casos de uso. Mientras los dos conceptos estn relacionados, los casos de uso son
mucho ms detallados que los diagramas de casos de uso.
La descripcin escrita del comportamiento del sistema al afrontar una tarea de
negocio o un requisito de negocio. Esta descripcin se enfoca en el valor
suministrado por el sistema a entidades externas tales como usuarios
humanos u otros sistemas.
La posicin o contexto del caso de uso entre otros casos de uso. Dado que es
un mecanismo de organizacin, un conjunto de casos de usos coherentes y
consistentes promueven una imagen fcil de comprender del comportamiento
del sistema, un entendimiento comn entre el cliente/propietario/usuario y el
equipo de desarrollo.

En esta prctica es comn crear especificaciones suplementarias para capturar


detalles de requisitos que caen fuera del mbito de las descripciones de los casos de
uso. Ejemplos de esos temas incluyen restricciones de diseo como: rendimiento,
temas de escalabilidad/gestin, o cumplimiento de estndares.

El sujeto se representa como un rectngulo que contiene un conjunto de


elipses que son los casos de uso. Los actores se muestran como monigotes fuera del
rectngulo, con el nombre debajo, las lneas rectas conectan los iconos de los
actores con las elipses de los casos de uso. Las relaciones entre los casos de uso se
dibujan dentro del rectngulo, como se puede apreciar en la Figura 4.

27

Figura 4. Ejemplo de un diagrama de caso de uso.

Relaciones de casos de uso.


Las tres relaciones principales entre los casos de uso son soportadas por el
estndar UML, el cual describe notacin grfica para esas relaciones. Por ejemplo:
una revisin de ellas a continuacin: inclusin (include o use).

Es una forma de interaccin o creacin, un caso de uso dado puede "incluir"


otro caso de uso. El primer caso de uso a menudo depende del resultado del caso de
uso incluido. Esto es til para extraer comportamientos verdaderamente comunes
desde mltiples casos de uso a una descripcin individual, desde el caso de uso. El
estndar de lenguaje de modelado unificado de OMG define una notacin grfica
para realizar diagramas de casos de uso, pero no el formato para describir casos de
uso. Mucha gente sufre la equivocacin pensando que un caso de uso es una
notacin grfica (o es su descripcin).

28

Extensin (Extend).
Es otra forma de interaccin, un caso de uso dado (la extensin)
puede extender a otro. Esta relacin indica que el comportamiento del caso de la
extensin se utiliza en casos de uso, un caso de uso a otro caso siempre debe tener
extensin o inclusin. El caso de uso extensin puede ser insertado en el caso de
uso extendido bajo ciertas condiciones. La notacin, es una flecha de punta abierta
con lnea discontinua, desde el caso de uso extensin al caso de uso extendido, con
la etiqueta extend.
Esto puede ser til para lidiar con casos especiales, o para acomodar nuevos
requisitos durante el mantenimiento del sistema y su extensin.
"La extensin, es el conjunto de objetos a los que se aplica un concepto. Los
objetos de la extensin son los ejemplos o instancias de los conceptos. Documentan
el comportamiento de un sistema desde el punto de vista de un usuario.

Generalizacin.
Entonces la generalizacin es la actividad de identificar elementos en comn
entre conceptos y definir las relaciones de una superclase (concepto general) y
subclase (concepto especializado). Es una manera de construir clasificaciones
taxonmicas entre conceptos que entonces se representan en jerarquas de clases.
Las subclases conceptuales son conformes con las superclases conceptuales en
cuanto a la intencin y extensin.

En la tercera forma de relaciones entre casos de uso, existe una relacin


generalizacin/especializacin. Un caso de uso dado puede estar en una forma
especializada de un caso de uso existente. La notacin es una lnea slida terminada
en un tringulo dibujado desde el caso de uso especializado al caso de uso general.

29

Esto se asemeja al concepto orientado a objetos de sub-clases, en la prctica


puede ser til factorizar comportamientos comunes, restricciones al caso de uso
general, describirlos una vez, y enfrentarse a los detalles excepcionales en los casos
de uso especializados.

En la Figura 5: se muestran los smbolos utilizados en el diagrama de casos


de uso.

Figura 5: Smbolos utilizados en el diagrama de casos de uso.

30

Diagrama de estados.
Los diagramas de estados son una tcnica conocida para describir el
comportamiento de un sistema. Describen todos los estados posibles en los que
puede entrar un objeto particular y la manera en que cambia el estado del objeto,
como resultado de los eventos que llegan a l. En la mayor parte de las tcnicas
orientadas a objetos, los diagramas de estado se dibujan para una sola clase,
mostrando el comportamiento de un solo objeto durante todo su ciclo de vida.
Existen muchas formas de diagramas de estado, cada una con semntica
ligeramente diferente. La ms popular que se emplea en las tcnicas de OO se basa
en la tabla de estados de David Harel (Vol. 8). OMT fue quien la uso por primera vez
para los mtodos de OO y fue adoptada por Grady Booch en su segunda edicin
(1994).
El estado en el que se encuentra un objeto determina su comportamiento.
Cada objeto sigue el comportamiento descrito en el diagrama de estados asociado a
su clase. Los diagramas de estados y escenarios son complementarios, los
diagramas

de

estados

son

autmatas

jerrquicos

que

permiten

expresar

concurrencia, sincronizacin y jerarquas de objetos, son grafos dirigidos y


deterministas. La transicin entre estados es instantnea y se debe a la ocurrencia
de un evento.
Los diagramas de estado muestran el conjunto de estados por los cuales pasa
un objeto durante su vida en una aplicacin en respuesta a eventos (por ejemplo,
mensajes recibidos, tiempo rebasado o errores), junto con sus respuestas y
acciones. Tambin ilustran qu eventos pueden cambiar el estado de los objetos de
la clase. Normalmente contienen: estados y transiciones. Como los estados y las
transiciones incluyen, a su vez, eventos, acciones y actividades. Al igual que otros
diagramas, en los diagramas de estado pueden aparecer notas explicativas y
restricciones.

31

Los smbolos utilizados para el diagrama de estados se observan en la Figura 6.

Figura 6. Smbolos para el diagrama de estados


Eventos.
Un evento es una ocurrencia que puede causar la transicin de un estado a
otro de un objeto. Esta ocurrencia puede ser una:
Condicin que toma el valor de verdadero (normalmente descrita como una
expresin booleana). Es un evento cambio.
Recepcin de una seal explcita de un objeto a otro. Es un evento seal.
Recepcin de una llamada a una operacin. Es un evento llamada.
Paso de cierto perodo de tiempo, despus de entrar al estado actual, o de
cierta hora y fecha concretas. Es un evento tiempo.
El nombre de un evento tiene alcance dentro del paquete en el cual est
definido y puede ser usado en los diagramas de estado por las clases que tienen
visibilidad dentro del paquete. Un evento no es local a la clase donde est declarado.

32

En la Figura 5.1: se muestra un ejemplo de un diagrama de estados.

Figura 5.1: Ejemplo diagrama de estados.

33

Diagrama de colaboracin.

Un diagrama de colaboracin en las versiones de UML 1.x es esencialmente


un diagrama que muestra interacciones organizadas alrededor de los roles. A
diferencia de los diagramas de secuencia, los diagramas de colaboracin, tambin
llamados diagramas de comunicacin, muestran explcitamente las relaciones de los
roles. Por otra parte, un diagrama de comunicacin no muestra el tiempo como una
dimensin aparte, por lo que resulta necesario etiquetar con nmeros de secuencia
tanto la secuencia de mensajes como los hilos concurrentes.

Muestra cmo las instancias especficas de las clases trabajan juntas para
conseguir un objetivo comn.
Implementa las asociaciones del diagrama de clases mediante el paso de
mensajes de un objeto a otro. Dicha implementacin es llamada "enlace".

Un diagrama de comunicacin es tambin un diagrama de clases que contiene


roles de clasificador y roles de asociacin en lugar de slo clasificadores y
asociaciones. Los roles de clasificador y los de asociacin describen la configuracin
de los objetos y de los enlaces que pueden ocurrir cuando se ejecuta una instancia
de la comunicacin. Cuando se instancia una comunicacin, los objetos estn
ligados a los roles de clasificador y los enlaces a los roles de asociacin. El rol de
asociacin puede ser desempeado por varios tipos de enlaces temporales, tales
como argumentos de procedimiento o variables locales del procedimiento. Los
smbolos de enlace pueden llevar estereotipos para indicar enlaces temporales.
Usos.
Un uso de un diagrama de colaboracin es mostrar la implementacin de una
operacin. La comunicacin muestra los parmetros y las variables locales de la
operacin, as como asociaciones ms permanentes.
34

Cuando se implementa el comportamiento, la secuencia de los mensajes


corresponde a la estructura de llamadas anidadas y el paso de seales del
programa.

Tipos.
Es til marcar los objetos en cuatro grupos: los que existen con la interaccin
entera; los creados durante la interaccin (restriccin {new}); los destruidos durante
la interaccin (restriccin {destroyed}); y los que se crean y se destruyen durante la
interaccin (restriccin {transient}).
Aunque las comunicaciones muestran directamente la implementacin de una
operacin, pueden tambin mostrar la realizacin de una clase entera. En este uso,
muestran el contexto necesario para implementar todas las operaciones de una
clase. Esto permite que el modelador vea los roles mltiples que los objetos pueden
desempear en varias operaciones.

Mensajes.
Los mensajes se muestran como flechas etiquetadas unidas a los enlaces.
Cada mensaje tiene un nmero de secuencia, una lista opcional de mensajes
precedentes, una condicin opcional de guarda, un nombre y una lista de
argumentos y un nombre de valor de retorno opcional. El nombre de serie incluye el
nombre (opcional) de un hilo. Todos los mensajes del mismo hilo se ordenan
secuencialmente. Los mensajes de diversos hilos son concurrentes a menos que
haya una dependencia secuencial explcita.

35

Flujos.
Generalmente, un diagrama de comunicacin contiene un smbolo para un
objeto durante una operacin completa. Sin embargo, a veces, un objeto contiene
diferentes estados que se deban hacer explcitos. Los diferentes smbolos de objeto
que representan un objeto se pueden conectar usando flujos "become" o
"conversin". Un flujo "become" es una transicin, a partir de un estado de un objeto
a otro. Se dibuja como una flecha de lnea discontinua con el estereotipo "become" o
"conversin" y puede ser etiquetado con un nmero de serie para mostrar cuando
ocurre.
Los smbolos utilizados para el diagrama de colaboracin se observan en la
Figura 7.

Figura 7. Smbolos para el diagrama de colaboracin.

36

En la Figura 7.1: Se muestra un ejemplo de un diagrama de colaboracin.

Figura 7.1: Ejemplo diagrama de colaboracin.

37

Diagrama de clases.
Un diagrama de clases es un tipo de diagrama esttico que describe la
estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos.
Los diagramas de clases son utilizados durante el proceso de anlisis y diseo de los
sistemas, donde se crea el diseo conceptual de la informacin que se manejar en
el sistema, y los componentes que se encargaran del funcionamiento y la relacin
entre uno y otro.
Representacin de requerimientos en entidades y actuaciones la arquitectura
conceptual de un dominio, soluciones de diseo en una arquitectura, componentes
de software orientados a objetos.La estructura de un diagrama de clases se muestra
a continuacin, ver Figura 8.

Figura 8: Ejemplo de diagrama de clases.


38

Propiedad de objetos que tienen propiedades y/u operaciones que contienen


un contexto y un dominio, los primeros dos ejemplos son clases de datos y el tercero
clases de lgica de negocio, dependiendo de quin disee el sistema se pueden unir
los datos con las operaciones.
El diagrama de clases incluye mucha ms informacin como la relacin entre
un objeto y otro, la herencia de propiedades de otro objeto, conjuntos de
operaciones/propiedades que son implementadas para una interfaz grfica. Las
relaciones en el diagrama de clases de muestra con lnea y un rombo ver Figura 8.1.

Figura 8.1: Relaciones diagrama de clases.

Relacin por composicin: Relacin esttica, en donde el tiempo de vida del objeto
incluido est condicionado por el tiempo de vida que lo incluye, la flecha que lo
distingue se muestra a continuacin, ver Figura 8.2.

Figura 8.2: Relacin por Composicin.

Relacin por agregacin: Relacin dinmica, donde el tiempo de vida del objeto
incluido es independiente del que lo incluye, la flecha que lo distingue se muestra a
continuacin, ver Figura 8.3.

Figura 8.3: Relacin por agregacin.


39

FUNDAMENTOS DE BASES DE DATOS


Una base de datos o banco de datos es un conjunto de datos pertenecientes a
un mismo contexto y almacenados sistemticamente para su posterior uso. En este
sentido, una biblioteca puede considerarse una base de datos compuesta en su
mayora por documentos y textos impresos en papel e indexados para su consulta.
Actualmente, y debido al desarrollo tecnolgico de campos como la informtica y
la electrnica, la mayora de las bases de datos estn en formato digital (electrnico),
y por ende se ha desarrollado y se ofrece un amplio rango de soluciones al problema
del almacenamiento de datos.
Existen programas denominados: Sistema Gestor de Base de Datos,
abreviado SGBD, que permiten almacenar y posteriormente acceder a los datos de
forma rpida y estructurada. Las propiedades de estos SGBD, as como su utilizacin
y administracin, se estudian dentro del mbito de la informtica.
Las aplicaciones ms usuales son para la gestin de empresas e instituciones
pblicas. Tambin son ampliamente utilizadas en entornos cientficos con el objeto
de almacenar la informacin experimental.
Aunque las bases de datos pueden contener muchos tipos de datos, algunos
de ellos se encuentran protegidos por las leyes de varios pases. Por ejemplo: en
Espaa, los datos personales se encuentran protegidos por la Ley Orgnica de
Proteccin de Datos de Carcter Personal (LOPD).

Tipos de bases de datos.


Las bases de datos pueden clasificarse de varias maneras, de acuerdo al
contexto que se est manejando, la utilidad de las mismas o las necesidades que
satisfagan.

40

Bases de datos estticas.


Son bases de datos de slo lectura, utilizadas primordialmente para almacenar
datos

histricos

que

posteriormente

se

pueden

utilizar

para

estudiar

el

comportamiento de un conjunto de datos a travs del tiempo, realizar proyecciones,


tomar decisiones y realizar anlisis de datos para inteligencia empresarial.

Bases de datos dinmicas.


stas son bases de datos donde la informacin almacenada se modifica con el
tiempo, permitiendo operaciones como actualizacin, borrado y adicin de datos,
adems de las operaciones fundamentales de consulta. Un ejemplo de esto puede
ser la base de datos utilizada en un sistema de informacin de un supermercado, una
farmacia, un videoclub o una empresa.
En la Figura 9: se ilustra un ejemplo de una SGBD.

Figura 9: Esquema SGBD.


41

Bases de datos bibliogrficas.


Slo contienen un subrogante (representante) de la fuente primaria, que
permite localizarla. Un registro tpico de una base de datos bibliogrfica contiene
informacin sobre el autor, fecha de publicacin, editorial, ttulo, edicin, de una
determinada publicacin, etc. Puede contener un resumen o extracto de la
publicacin original, pero nunca el texto completo, porque si no, se tratara de una
base de datos a texto completo (o de fuentes primarias). Como su nombre lo indica,
el contenido son cifras o nmeros. Por ejemplo, una coleccin de resultados de
anlisis de laboratorio, entre otras.

Modelo Entidad-Relacin.
Un diagrama o Modelo Entidad-Relacin (a veces denominado por sus siglas
en ingls, E-R "Entityrelationship", o del espaol DER "Diagrama de Entidad
Relacin") es una herramienta para el modelado de datos que permite representar
las entidades relevantes de un sistema de informacin as como sus interrelaciones y
propiedades.

Entidades.
Las entidades son el fundamento del modelo entidad relacin. Podemos
adoptar como definicin de entidad cualquier cosa o parte del mundo que es
distinguible del resto. Por ejemplo, en un sistema bancario, las personas y las
cuentas bancarias se podran interpretar como entidades. Las entidades pueden
representar entes concretos, como una persona o un avin, o abstractas, como por
ejemplo un prstamo o una reserva. Se representan por medio de un rectngulo.

42

Atributos.
Se representan mediante un crculo o elipse etiquetado mediante un nombre
en su interior. Cuando un atributo es identificativo de la entidad se suele subrayar
dicha etiqueta.
Por motivos de legibilidad, los atributos suelen no aparecer representados en
el diagrama entidad-relacin, sino descritos textualmente en otros documentos
adjuntos.

Claves.
Es un subconjunto del conjunto de atributos comunes en una coleccin de
entidades, que permite identificar unvocamente cada una de las entidades
pertenecientes a dicha coleccin. Asimismo, permiten distinguir entre s las
relaciones de un conjunto de relaciones.
Dentro de los conjuntos de entidades existen los siguientes tipos de claves:
Superclave: Es

un

subconjunto

de

atributos

que

permite

distinguir

unvocamente cada una de las entidades de un conjunto de entidades. Si se


aade un atributo al anterior subconjunto, el resultado seguir siendo una
superclave.
Clave candidata: Dada una superclave, si sta deja de serlo quitando
nicamente uno de los atributos que la componen, entonces sta es una clave
candidata.
Clave primaria: Es una clave candidata, elegida por el diseador de la base de
datos, para identificar unvocamente las entidades en un conjunto de
entidades.
Los valores de los atributos de una clave, no pueden ser todos iguales para
dos o ms instancias.

43

Para poder distinguir unvocamente las relaciones en un conjunto de


relaciones R, se deben considerar dos casos.
R No tiene atributos asociados: En este caso, se usa como clave primaria de
R la unin de las claves primarias de todos los conjuntos de entidades
participantes.
R tiene atributos asociados: En este caso, se usa como clave primaria de R la
unin de los atributos asociados y las claves primarias de todos los conjuntos
de entidades participantes.

Si el conjunto de relaciones, R, sobre las que se pretende determinar la clave


primaria est compuesto de relaciones binarias, con los conjuntos de entidades
participantes A y B, se consideran los siguientes casos, segn sus cardinalidades:
R es de muchos a uno de A a B entonces slo se toma la clave primaria de A,
como clave primaria de R.
R es de uno a muchos de A a B entonces se toma slo la clave primaria de B,
como clave primaria de R.
R es de uno a uno de A a B entonces se toma cualquiera de las dos claves
primarias, como clave primaria de R.
R es de muchos a muchos de A a B entonces se toma la unin de los
atributos que conforman las claves primarias de A y de B, como clave primaria
de R.
Cabe destacar que para todo proceso de modelado, formalmente, los
diagramas ER son un lenguaje grfico para describir conceptos. Informalmente, son
simples dibujos o grficos que describen informacin que trata un sistema de
informacin y el software que lo automatiza.

44

Relaciones.
Se representan mediante un rombo etiquetado en su interior con un verbo.
Este rombo se debe unir mediante lneas con las entidades (rectngulos) que
relaciona, para as saber cul es la relacin que lleva cada uno.

Correspondencia de cardinalidades.
Dado un conjunto de relaciones en el que participan dos o ms conjuntos de
entidades, la correspondencia de cardinalidad indica el nmero de entidades con las
que puede estar relacionada una entidad dada.
Dado un conjunto de relaciones binarias y los conjuntos de entidades A y B, la
correspondencia de cardinalidades puede ser:
Uno a Uno: Una entidad de A se relaciona nicamente con una entidad en B y
viceversa (ejemplo relacin vehculo - matrcula: cada vehculo tiene una nica
matrcula, y cada matrcula est asociada a un nico vehculo).
Uno a varios: Una entidad en A se relaciona con cero o muchas entidades en
B. Pero una entidad en B se relaciona con una nica entidad en A (ejemplo
vendedor - ventas).
Varios a Uno: Una entidad en A se relaciona exclusivamente con una entidad
en B. Pero una entidad en B se puede relacionar con 0 o muchas entidades en
A (ejemplo empleado-centro de trabajo).
Varios a Varios: Una entidad en A se puede relacionar con 0 o muchas
entidades en B y viceversa (ejemplo asociaciones- ciudadanos, donde muchos
ciudadanos pueden pertenecer a una misma asociacin, y cada ciudadano
puede pertenecer a muchas asociaciones distintas).

45

Restricciones de participacin.
Dado un conjunto de relaciones R en el cual participa un conjunto de
entidades A, dicha participaciones pueden ser de dos tipos:
Total: Cuando cada entidad en A participa en al menos una relacin de R.
Parcial: Cuando al menos una entidad en A No participa en alguna relacin
de R.

Modelo relacional.
El modelo relacional para la gestin de una base de datos es un modelo de
datos basado en la lgica de predicados y en la teora de conjuntos. Es el modelo
ms utilizado en la actualidad para modelar problemas reales y administrar datos
dinmicamente. Tras ser postuladas sus bases en 1970 por Edgar Frank Codd, de
los laboratorios IBM en San Jos (California), no tard en consolidarse como un
nuevo paradigma en los modelos de base de datos.
Su idea fundamental es el uso de relaciones. Estas relaciones podran
considerarse en forma lgica como conjuntos de datos llamados tuplas. Pese a que
sta es la teora de las bases de datos relacionales creadas por Edgar Frank Codd,
la mayora de las veces se conceptualiza de una manera ms fcil de imaginar, esto
es, pensando en cada relacin como si fuese una tabla que est compuesta
por registros (cada fila de la tabla sera un registro o tupla), y columnas (tambin
llamadas campos).
En este modelo todos los datos son almacenados en relaciones, y como cada
relacin es un conjunto de datos, el orden en el que stos se almacenen no tiene
relevancia (a diferencia de otros modelos como el jerrquico y el de red). Esto tiene
la considerable ventaja de que es ms fcil de entender y de utilizar por un usuario
no experto.

46

La informacin puede ser recuperada o almacenada por medio de consultas


que ofrecen una amplia flexibilidad y poder para administrar la informacin.
Tabla: Tipo de modelado de datos, donde se guardan los datos recogidos por
un programa de una base de datos, formada de filas y columnas o campos,
contienen los datos que pertenecen a una misma repeticin de entidad..
Registro: (fila o tupla)

representa

un objeto nico

de datos implcitamente

estructurados en una tabla.


Fila: Representa un conjunto de datos relacionados, y todas las filas de la
misma tabla tienen la misma estructura.

Normalizacin.
El proceso de normalizacin de bases de datos consiste en aplicar una serie
de

reglas

las

relaciones

obtenidas

tras

el

paso

del modelo

entidad-

relacin al modelo relacional.

Las bases de datos relacionales se normalizan para:

Evitar la redundancia de los datos.


Evitar problemas de actualizacin de los datos en las tablas.
En el modelo relacional es frecuente llamar tabla a una relacin, aunque para
que una tabla sea considerada como una relacin tiene que cumplir con algunas
restricciones:
Cada tabla debe tener su nombre nico.
No puede haber dos filas iguales. No se permiten los duplicados.
Todos los datos en una columna deben ser del mismo tipo.
47

La normalizacin es el proceso mediante el cual se transforman datos


complejos a un conjunto de estructuras de datos ms pequeas, que adems de ser
ms simples y ms estables, son ms fciles de mantener. Tambin se puede
entender la normalizacin como una serie de reglas que sirven para ayudar a los
diseadores de bases de datos a desarrollar un esquema que minimice los
problemas de lgica. Cada regla est basada en la que le antecede. La
normalizacin se adopt porque el viejo estilo de poner todos los datos en un solo
lugar, como un archivo o una tabla de la base de datos, era ineficiente y conduca a
errores de lgica cuando se trataban de manipular los datos.
La normalizacin tambin hace las cosas fciles de entender. Los seres
humanos tenemos la tendencia de simplificar las cosas al mximo. Lo hacemos con
casi todo, desde los animales hasta con los automviles. Vemos una imagen de gran
tamao y la hacemos ms simple agrupando cosas similares juntas. Las guas que la
normalizacin provee crean el marco de referencia para simplificar una estructura de
datos compleja.
Otra ventaja de la normalizacin de base de datos es el consumo de espacio.
Una base de datos normalizada ocupa menos espacio en disco que una no
normalizada. Hay menos repeticin de datos, lo que tiene como consecuencia un
mucho menor uso de espacio en disco.
El proceso de normalizacin tiene un nombre y una serie de reglas para cada
fase. Esto puede parecer un poco confuso al principio, pero poco a poco se va
entendiendo el proceso, as como las razones para hacerlo de esta manera.

Grados de normalizacin.

Existen bsicamente tres niveles de normalizacin: Primera Forma Normal


(1NF), Segunda Forma Normal (2NF) y Tercera Forma Normal (3NF). Cada una de
estas formas tiene sus propias reglas.

48

Cuando una base de datos se conforma a un nivel, se considera normalizada


a esa forma de normalizacin. No siempre es una buena idea tener una base de
datos conformada en el nivel ms alto de normalizacin, puede llevar a un nivel de
complejidad que pudiera ser evitado si estuviera en un nivel ms bajo de
normalizacin.
A continuacin se describe brevemente en qu consiste cada una de las
reglas, y posteriormente se explican con ms detalle.

Primera Forma Normal (1FN).


Incluye la eliminacin de todos los grupos repetidos. Resuelve el problema de
los encabezados de columna mltiples. Muy a menudo, los diseadores de bases de
datos inexpertos harn algo similar a la tabla no normalizada. Una y otra vez, crearn
columnas que representen los mismos datos.
La normalizacin ayuda a clarificar la base de datos y a organizarla en partes
ms pequeas y ms fciles de entender. En lugar de tener que entender una tabla
gigantesca y monoltica que tiene muchos diferentes aspectos, slo tenemos que
entender los objetos pequeos y ms tangibles, as como las relaciones que guardan
con otros objetos tambin pequeos.

Segunda Forma Normal (2FN).


Asegura que todas las columnas que no son llave sean completamente
dependientes de la llave primaria (PK).
La regla de la segunda forma normal establece que todas las dependencias
parciales se deben eliminar y separar dentro de sus propias tablas. Una dependencia
parcial es un trmino que describe a aquellos datos que no dependen de la llave
primaria de la tabla para identificarlos.
49

Una vez alcanzado el nivel de la segunda forma normal, se controlan la


mayora de los problemas de lgica. Se puede insertar un registro sin un exceso de
datos en la mayora de las tablas.

Tercera Forma Normal (3FN).


Elimina cualquier dependencia transitiva.
Una tabla est normalizada en esta forma si todas las columnas que no son
llave son funcionalmente dependientes por completo de la llave primaria y no hay
dependencias transitivas. Una dependencia transitiva es aquella en la cual existen
columnas que no son llave que dependen de otras columnas que tampoco son llave.
Cuando las tablas estn en la tercera forma normal se previenen errores de
lgica cuando se insertan o borran registros. Cada columna en una tabla est
identificada de manera nica por la llave primaria, y no debe haber datos repetidos.
Esto provee un esquema limpio y elegante, que es fcil de trabajar y expandir.
Un dato sin normalizar no cumple con ninguna regla de normalizacin.

50

FUNDAMENTOS DE SQL
Caractersticas generales de SQL (SelectedQueryLanguaje).
El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y
potencia de los sistemas relacionales y permite as gran variedad de operaciones.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento" que, gracias
a su fuerte base terica y su orientacin al manejo de conjuntos de registros y no a
registros individuales permite una alta productividad en codificacin y la orientacin a
objetos. De esta forma, una sola sentencia puede equivaler a uno o ms programas
que se utilizaran en un lenguaje de bajo nivel orientado a registros. SQL tambin
tiene las siguientes caractersticas:
Lenguaje de definicin de datos: El LDD de SQL proporciona comandos
para la definicin de esquemas de relacin, borrado de relaciones y
modificaciones de los esquemas de relacin.
Lenguaje interactivo de manipulacin de datos: El LMD de SQL incluye
lenguajes de consultas basado tanto en lgebra relacional como en clculo
relacional de tuplas.
Integridad: El LDD de SQL incluye comandos para especificar las
restricciones de integridad que deben cumplir los datos almacenados en la
base de datos.
Definicin de vistas: El LDD incluye comandos para definir las vistas.
Control de transacciones: SQL tiene comandos para especificar el comienzo
y el final de una transaccin.
SQL incorporado y dinmico: Esto quiere decir que se pueden incorporar
instrucciones de SQL en lenguajes de programacin como: C++, C, Java,
Cobol, Pascal y Fortran.
Autorizacin: El LDD incluye comandos para especificar los derechos de
acceso a las relaciones y a las vistas.

51

Tipos de datos.
Los tipos datos de SQL:
Categora

Descripcin

Tipo de Dato

Descripcin

Los datos deben tener la


binary

KB)

Un dato Binary almacena


cadenas de bits. El dato
Binary

consiste de nmeros
hexadecimales. Por ejemplo,

misma longitud fija (hasta 8

Los datos pueden variar en


varbinary

el nmero de dgitos
hexadecimales (hasta 8 KB)

el nmero decimal 245 vale


en hexadecimal F5.

Los datos pueden ser de


image

longitud variable y exceder


los 8 KB.

Los datos Character consisten


de cualquier combinacin de

Los datos deben tener la


char

KB)

letras, smbolos, y caracteres


Character

misma longitud fija (hasta 8

numricos. Por ejemplo,


Los datos pueden variar en

datos character
vlidos:"John928"

varchar

el nmero de caracteres
(hasta 8 KB)

"(0*&(%B99nh jkJ"

Los datos pueden ser cadena


text

de caracteres ASCII que


excedan los 8 KB.

Date time

Los datos Date time

Los datos fecha estn

consisten de combinaciones

comprendidos entre en el 1

de fechas o horas vlidas. No datetime

de Enero de 1753 hasta el

existe tipos de datos

31 de diciembre de 9999

separados para fechas y

(requiere 8 bytes por dato).

52

Categora

Descripcin

Tipo de Dato

Descripcin

horas para almacenar solo

Los datos fecha estn

fechas o solo horas

comprendidos entre en el 1
smalldatetime

de Enero de 1900 hasta el


31 de diciembre de 2079
(requiere 4 bytes por dato).
Los datos pueden tener un
mximo de 30 dgitos, que
pueden estar todos a la

decimal

Decimal

derecha de la coma decimal.

Los datos Decimal consisten

El tipo de dato almacena un

de datos numricos que son

representacin exacta del

almacenados al menor dgito

nmero.

significativo
En SQL Server, el tipo de
numeric

datos numeric es
equivalente al tipo de datos
decimal.

Floating

Datos numricos

point

aproximados que consisten

float

Desde 1.79E + 308 a 1.79E


+ 308.

de datos con una


aproximacin tanto como el
sistema de numeracin

real

binaria pueda ofrecer

Desde 3.40E + 38 a 3.40E


+ 38.

Desde 2^63 (
Los datos Integer consisten
Integer

de nmeros enteros positivos

9223372036854775808) a
bigint

2^631
(9223372036854775807).

y negativos tales como: 15,

Tamao 8 bytes.

0, 5, y 2.509.
int

Desde 2.147.483.648 a
2.147.483.647 (requiere de

53

Categora

Descripcin

Tipo de Dato

Descripcin

4 bytes por valor).


Desde 32,768 a 32.767
smallint

(requiere de 2 bytes por


valor).

tinyint

Desde cero a 255 (requiere


de 1 bytes por valor).
Desde
922.337.203.685.477,5808

money
Monetary

Monetary representa montos

+922.337.203.685.477,5807

de dinero positivos o

Tamao 8 bytes.

negativos
Desde 214.748,3648 a
smallmoney

214.748,3647 Tamao 4
bytes.
Consisten en un 1 o un 0. Se

bit

usan para representar


valores lgicos VERDADERO
o FALSO, SI o NO

Special

Special se utiliza para datos

Este tipo de dato es usado

que caben en ninguna de las

para variables o prmetros

categors anteriores.

OUTPUT en procedimientos
cursor

almacenados que contenga


una referencia a un cursor.
Cualquier variable creada
con el tipo de datos cursor
puede tomar valor nulo

timestamp

Este tipo de datos es usado

54

Categora

Descripcin

Tipo de Dato

Descripcin

para indicar la secuencia de


la actividad del SQL Server
sobre una fila y es
representado por un nmero
incremental en formato
binario.
Consiste de nmeros
hexadecimales de 16 byte,
indicando un identificador
uniqueidentifier

nico global (GUID). Los


GUID son usados cuando
una columna deba ser nica
frente a cualquier otra
columna.
Este tipo de datos soporta a
cualquier otro tipo de datos

SQL_variant

soportado por SQL Server


excepto text, ntext,
timestamp, image, y
sql_variant.
Es utilizado para almacenar
un conjunto de resultados
para su posterior
procesamiento. El tipo de

table

datos Table puede ser usado


nicamente para para definir
variable locales de tipo table
o para retornar valores de
una funcin definida por el
usuario.

55

Categora

Descripcin

Tipo de Dato

Al usar tipo de datos Unicode,


una columna puede

Descripcin

Los datos deben tener la


nchar

almacenar cualquier cualquier

misma longitud fija (hasta


4000 caracteres Unicode)

caracter definido por el


estndar Unicode. Lo cual
Unicode

incluye a todos los caracteres


Los datos pueden variar en

definidos en los distintos


conjuntos de caracteres. Los
tipos de datos Unicode toman

nvarchar

el nmero de caracteres
(hasta 4000 caracteres
Unicode)

el doble de espacio de
almacenamiento que los tipos
no-Unicode.

ntext

Los datos pueden exceder


los 4000 caracteres Unicode.

Optimizacin.
Como ya se dijo antes, y suele ser comn en los lenguajes de acceso a bases
de datos de alto nivel, el SQL es un lenguaje declarativo. O sea, que especifica qu
es lo que se quiere y no cmo conseguirlo, por lo que una sentencia no establece
explcitamente un orden de ejecucin.
El orden de ejecucin interno de una sentencia puede afectar gravemente a la
eficiencia del SGBD, por lo que se hace necesario que ste lleve a cabo una
optimizacin antes de su ejecucin. Muchas veces, el uso de ndices acelera una
instruccin de consulta, pero ralentiza la actualizacin de los datos.
Dependiendo del uso de la aplicacin, se priorizar el acceso indexado o una
rpida actualizacin de la informacin. La optimizacin difiere sensiblemente en cada
motor de base de datos y depende de muchos factores.
56

Existe una ampliacin de SQL conocida como FSQL (Fuzzy SQL, SQL difuso)
que permite el acceso a bases de datos difusas, usando la lgica difusa. Este
lenguaje ha sido implementado a nivel experimental y est evolucionando
rpidamente.

Lenguaje de definicin de datos (DDL).


El lenguaje de definicin de datos (en ingls Data DefinitionLanguage, o DDL),
es el que se encarga de la modificacin de la estructura de los objetos de la base de
datos. Incluye rdenes para modificar, borrar o definir las tablas en las que se
almacenan los datos de la base de datos. Existen cuatro operaciones bsicas:
CREATE, ALTER, DROP y TRUNCATE.

CREATE
Este comando crea un objeto dentro del gestor de base de datos. Puede ser
una base de datos, tabla, ndice, procedimiento almacenado o vista.

Ejemplo (crear una tabla).


CREATE TABLE Clientes
(
IdCliente INT NOT NULL IDENTITY (1,1) PRIMARY KEY,
Nombre VARCHAR(15),
Apellido VARCHAR(25),
Direccin VARCHAR(30),
Ciudad VARCHAR(30),
Telfono VARCHAR(15),
)
57

DROP.
Este comando elimina un objeto de la base de datos. Puede ser una
tabla, vista, ndice, trigger, funcin, procedimiento o cualquier otro objeto que el
motor de la base de datos soporte. Se puede combinar con la sentencia ALTER.
Ejemplo:
DROPTABLEClientes.

TRUNCATE.
Este comando trunca todo el contenido de una tabla. La ventaja sobre el
comando DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho
ms rpido, especialmente si la tabla es muy grande.
Ejemplo:
TRUNCATETABLE Clientes;

INSERT.
Una sentencia INSERT de SQL agrega uno o ms registros a una (y slo una)
tabla en una base de datos relacional.
Ejemplo:
Insert into Clientes values ( 115,Alejandra)

58

UPDATE.
Una sentencia UPDATE de SQL es utilizada para modificar los valores de un
conjunto de registros existentes en una tabla.
Ejemplo:
Update Clientes set Direccion=Constitucion 39 WHERE IdCliente=4

DELETE.
Una sentencia DELETE de SQL borra uno o ms registros existentes en una
tabla.
Ejemplo:
DELETE FROM Clientes WHERE Domicilio = Constitucion 39

59

FUNDAMENTOS DE VISUAL BASIC


Fundamentos de Visual Basic .NET 2010.
Visual Basic .NET (VB .NET) es un lenguaje de programacin orientado a
objetos que se puede considerar una evolucin de Visual Basic implementada sobre
el framework .NET. Su introduccin result muy controvertida, ya que debido a
cambios significativos en el lenguaje VB. NET no es compatible hacia atrs con
Visual Basic, pero el manejo de las instrucciones es similar a versiones anteriores de
Visual Basic, facilitando as el desarrollo de aplicaciones ms avanzadas con
herramientas modernas.
La gran mayora de programadores de VB .NET utilizan el entorno de
desarrollo integrado Microsoft Visual Studio en alguna de sus versiones (desde el
primer Visual Studio .NET hasta Visual Studio .NET 2012, que es la ltima versin de
Visual Studio para la plataforma .NET), aunque existen otras alternativas,
como SharpDevelop (que adems es libre).
Al igual que con todos los lenguajes de programacin basados en .NET, los
programas escritos en VB .NET requieren el Framework.NET o Mono para
ejecutarse.

Formularios Windows Forms.


Puesto que los formularios son la unidad bsica de una aplicacin, es
importante realizar algunas consideraciones sobre su funcin y su diseo. Un
formulario es, en ltima instancia, una hoja en blanco que el desarrollador rellena con
controles, para crear una interfaz de usuario, y con cdigo, para procesar los datos.
Para ese fin, Visual Studio proporciona un entorno de desarrollo integrado que ayuda
a escribir el cdigo, as como un completo conjunto de controles escrito con .NET
Framework.

60

La funcionalidad de estos controles se complementa con el cdigo escrito por


el desarrollador, lo que permite desarrollar fcil y rpidamente las soluciones
deseadas.
En la Figura 10: Se muestra el ejemplo de un formulario.

Figura 10: Muestra la aplicacin de para crear un formulario, de Windows Forms.

Bibliotecas de clases.
La biblioteca de clases de .NET Framework est constituida por espacios de
nombres. Cada espacio de nombres contiene tipos que se pueden utilizar en el
programa: clases, estructuras, enumeraciones, delegados e interfaces.
Cuando se crea un proyecto de Visual Basic .NET o Visual C# en Visual
Studio, se sigue haciendo referencia a las DLL ms comunes de la clase base
(ensamblados).

61

No obstante, si se necesita utilizar un tipo incluido en una DLL a la que an no


se hace referencia, se deber agregar la referencia de esa DLL.

Controles comunes Visual Basic 2010.


Puntero.

Se utiliza para seleccionar las variables que estamos o que

vamos a utilizar en el programa.


Button. Desencadena un evento cuando un usuario hace clic sobre l.
CheckBox. Permite al usuario seleccionar o quitar la opcin asociada.
CheckedListBox. Muestra una lista de elementos con una casilla a la
izquierda de cada elemento.
ComboBox. Muestra un cuadro de texto editable con una lista desplegable
de los valores permitidos.
DataTimePicker. Permite al usuario seleccionar fecha y hora, as como
mostrar ambas en un formato especificado.
Label. Proporciona informacin en tiempo de ejecucin o texto descriptivo
para un control.
LinkLabel. Muestra un control de etiqueta que admite funcionalidad de
hipervnculo, formato y seguimiento.
ListView. Muestra una coleccin de elementos en una de cinco vistas
diferentes.
MaskedTexBox. Utiliza una mscara para distinguir si los datos que
proporciona el usuario son apropiados o inapropiados.
MonthCalendar. Muestra un calendario mensual donde el usuario puede
seleccionar una fecha.
NotifyIcon. Muestra un icono en el rea de notificacin, a la derecha de la
barra de tareas de Windows, en tiempo de ejecucin.
NumericUpDown. Muestra un nico valor numrico que el usuario puede
aumentar o reducir haciendo clic en los botones de arriba y abajo del
control.
PictureBox. Muestra una imagen.
62

ProgressBar. Muestra una barra que se va completando para indicar al


usuario el progreso de una operacin.
RadioButton. Permite al usuario seleccionar una nica opcin de entre un
grupo de opciones cuando estn emparejadas con otros RadioButtons.
RichTextBox. Proporciona una entrada de texto y caractersticas de
edicin avanzadas, como el formato de prrafo y de caracteres.
TextBox. Permite al usuario especificar un texto, as como funciones de
edicin de varias lneas y mscaras de caracteres para contraseas.
ToolTip. Muestra informacin cuando el usuario mueve el puntero sobre
un control asociado.

Propiedades de objetos.
TextBox
Text: Texto que aparecer en el control.
Name: Nombre del control.
MultiLine: Permite introducir varias lineas de texto.
Alignment: Alineacin que tendr el texto dentro del control que puede ser
izquierdo, derecho, centrado.
Visible: Si esta propiedad esta en falso la caja de texto no sera visible cuando
este en ejecucin el programa. si est en verdadero si se podr ver.
MaxLength: Nmero mximo de caracteres que tendr el control.
Looked: Con esta propiedad se puede bloquear el control para que el usuario
no pueda escribir ni modificar.
BackColor: Color que tendr el fondo de la caja de texto.
ForeColor: Es el color de la letra que tendr el control.
Font: Tipo y tamao que contendr el control.
Height, Left, Top, Width: Se refieren al tamao del espacio reservado para
las TextBox.

63

Label.
Caption: Texto que contendr el control.
BorderStyle: Borde alrededor del texto.
BackStyle: Borde transparente o no transparente.
BackColor: Para cambiar color del fondo.
Visible: Si est en True el control est visible si est en False est oculto.
Name: Es el nombre del control y sirve para hacer referencia al mismo en el
cdigo, como todos los controles.
Enabled: Si est en True (Verdadero) el control est activado y se puede
utilizar normalmente, si se encuentra en False, el control est desactivado.
FontName: El nombre de la fuente que utilizar el texto del control.
ForeColor: Indica el color del Texto.
Height y Width: Ancho y alto del Label.
ToolTipText: Muestra el mensaje de descripcin cuando se pasa el mouse
por encima del control.

CommandButton.
Caption: Texto para el usuario.
Enable: Inhabilita o habilita el control con el fin de que ese disponible para el
usuario.
Style: Cuando est en 1 habilita al backColor y cuando esta en 0 lo
deshabilita.

64

Picture e picture.
Name: Especifca el nombre del control para poder referenciarlo e
identificarlo.
Appearance: Esta propiedad determina si el Image posee o no efecto 3d
con respecto a su apariencia. Los valores son: 1 - 3D y 0 - None. Para que
esta propiedad se pueda utilizar, la propiedad BorderStyle debe estar con
el valor 1.
BorderStyle: Determina si el control Image posee o no un borde. Al igual
que el anterior tiene dos posibles valores, 0 sin borde o 1 con borde.
Picture: Esta es la propiedad principal del control, que tambin es la
propiedad por defecto o default. Picture es la que establece la imagen o
grfico que mostrar el control.
Stretch: Esta es una de las propiedades ms importantes. Si est en True la
imagen se ajustar al tamao que posea el control Image, si est en False el
control Image es el que se adaptar al tamao y dimensiones de la imagen.
Las dems propiedades son las clsicas y comunes para la mayora de los
controles, como la propiedad Index, Visible, EnabledToolTipText, Width,
Heigth, etc.

Frame.
Name: Este es el nombre como se le reconocer al objeto durante el
programa, se acostumbra escribir frm antes del nombre para saber que es un
Frame (Ej: frmFondo).
Caption: Este es el mensaje que se quiere que aparezca en el Frame.
Height,Left,Top,Width: Se refieren al tamao del espacio reservado para los
Frames.
Font: Permite escoger el tipo de letra, tamao y estilo de la letras a usar.
BorderStyle: Si esta en 0 no dibuja el recuadro.

65

Listbox.
Name: Este es el nombre como se le reconocer al objeto durante el
programa, se acostumbra escribir lst antes del nombre para saber que es un
List Box (Ej: lstLista).
List: Ingresa elementos nuevos al List Box.
Font: Permite escoger el tipo de letra, tamao y estilo de la letras a usar.
Sorted: Si el valor es verdadero la lista aparecer en orden alfabtico.
Height,Left,Top,Width: Se refieren al tamao del espacio reservado para los
List Box.

ScrollBar.
Name: Este es el nombre como se le reconocer al objeto durante el
programa, se acostumbra escribir scb antes del nombre para saber que es un
Scroll Bar (Ej: scbFila).
Max: Este indica el valor mximo que puede alcanzar el Scroll al moverse.
Min: Es el valor mnimo con el cual empieza la barra de Scroll.
Height,Left,Top,Width: Se refieren al tamao del espacio reservado para los
ScrollBar.

Shape.
Shape: Esta propiedad es la forma que tomar el control.
BorderColor: Color del borde.
BorderStyle: Estilo del borde.
BorderWidth: Ancho del borde.
FillColor: Este es el fondo, esta funciona si FillStyle en opaco.

66

En la Figura 11: Se muestran los controles comunes de Visual Basic .NET.

Figura 11: Controladores comunes de Visual.NET.

Objetos y clases.
Los objetos permiten declarar variables y procedimientos una vez y utilizarlos
siempre que sean necesarios. Por ejemplo, si se desea agregar un corrector
ortogrfico a una aplicacin, puede definir todas las variables y funciones auxiliares
para proporcionar funcionalidad de correccin ortogrfica. Si se crea el corrector
ortogrfico como una clase, se puede volver a utilizarlo en otras aplicaciones
mediante la inclusin de una referencia en el ensamblado compilado.

67

Clases.
Cada objeto de Visual Basic est definido por una clase. Una clase describe
las variables, propiedades, procedimientos y eventos de un objeto. Los objetos son
instancias de clases; pueden crearse tantos objetos como sean necesarios una vez
que se defina una clase.
Para comprender la relacin entre un objeto y su clase, como los moldes de
hacer galletas y en las galletas. El molde es la clase. Define las caractersticas de
cada galleta, por ejemplo, el tamao y la forma. La clase se utiliza para crear objetos.
Los objetos son las galletas.
Dos ejemplos en Visual Basic podran ayudar a ilustrar la relacin entre las clases
y objetos.
Los controles en el cuadro de herramientas de Visual Basic representan las
clases. Cuando se arrastra un control del Cuadro de herramientas a un
formulario, se est creando un objeto; una instancia de una clase.
El formulario con el que se trabaja en tiempo de diseo es una clase. En
tiempo de ejecucin, Visual Basic crea una instancia de la clase del formulario,
es decir, un objeto.

Eventos.
A pesar de que se puede visualizar un proyecto de Visual Studio como una
serie de procedimientos que se ejecutan consecutivamente, en realidad la mayora
de los programas estn dirigidos por eventos, es decir, el flujo de ejecucin est
determinado por elementos externos denominados eventos.
Un evento es una seal que comunica a una aplicacin que ha sucedido algo
importante. Por ejemplo, cuando un usuario hace clic en un control de un formulario,
el formulario puede provocar un evento Click y llamar a un procedimiento que
controla el evento.
68

Los eventos tambin permiten que las tareas separadas se comuniquen, por
ejemplo, que una aplicacin realiza una tarea de ordenacin independientemente de
la aplicacin principal. Si un usuario cancela la ordenacin, la aplicacin puede
enviar un evento de cancelacin que ordene la detencin del proceso de ordenacin.

Caracteres en Visual Basic .NET.


Visual

Basic

.NET

proporciona

un

conjunto

de caracteres

de

tipo

identificador que se pueden utilizar en una declaracin para especificar el tipo de


datos de una variable o constante. La Tabla 2. Muestra los caracteres de tipo
identificador disponibles, con ejemplos de su utilizacin.

Carcter de tipo identificador

Tipo de datos

Integer

&

Long

Decimal

Single

Double

String

Tabla 2. Identificador para la declaracin de variables.

69

En algunos casos, puede anexar el carcter $ a una funcin de Visual Basic


.NET, por ejemplo: Left$ en lugar de Left, para obtener un valor devuelto de
tipo String. En todos los casos, el carcter de tipo identificador debe ir
inmediatamente despus del nombre del identificador.

Identificadores.
Los identificadores de Visual Basic .NET deben cumplir los estndares de
Unicode 3.0, Report 15 y Annex 7, con la diferencia de que los identificadores
pueden comenzar con un carcter de subrayado (conector).
Si un identificador comienza con un carcter de subrayado, debe contener al
menos un carcter identificador para eliminar la ambigedad de la continuacin de
lnea.
Los identificadores normales no pueden coincidir con palabras clave, pero s
los identificadores de escape. Un identificador de escape es un identificador
delimitado por corchetes. Los identificadores de escape siguen las mismas reglas
que los identificadores regulares con la diferencia de que pueden coincidir con las
palabras clave y no pueden tener caracteres de tipo.
La longitud mxima del identificador es de 16383 caracteres.

Tipos.
En Visual Basic .NET a toda variable que se use en un programa, se le debe
asociar (generalmente al principio del programa) un tipo de dato especifico.
Un tipo de dato define todo el posible rango de valores que una variable puede
tomar al momento de ejecucin del programa y a lo largo de toda la vida til del
propio programa.

70

Los tipos de datos ms comunes en Visual Basic .Net son. Ver Tabla 3:

Tipo

Rango

Byte

0-255

Integer(%)

+-2,147,483,698

Single(!)

3.4E+-38(7 DECIMALES)

Double(#)

1.8E+308(16 DECIMALES)

Currency

15 DIG IZQ 4 DIG DEECHA

String($)

2 BILLONES CHARS

Boolean

TRUE, FALSE

Date

FECHA

Variant

TODOS LOS TIPOS y ms


usado en este curso

Tabla 3: Tipos de datos comunes en visual.


Recordar tambin que en Visual Basic .NET toda variable usada en un
programa se deber declarar al principio del programa el formato de declaracin ms
sencillo es:
Ejemplos:
Dimalfa As Integer
Dimalfa As Long, beta As Long
Dimalfa As Integer, nombre As String
Dim ciudad As String * 20, alfa As Double
En Visual Basic .NET un problema comn, es la necesidad de convertir
variables numricas a strings y tambin el problema inverso es decir convertir strings
a su representacin numrica.

71

Para este ltimo problema por ejemplo se tiene:


Dim alfa As String Alfa=3.1416
Como se observa del ejemplo anterior, se puede dar en algn momento
convertir la string ALFA a su valor numrico, para resolver este problema se debern
usar

las

siguientes

funciones

de

conversin

numrica

que

proporciona Visual Basic.NET

Palabras reservadas.
Las palabras clave siguientes estn reservadas, lo que significa que no se
pueden utilizar como nombres para los elementos de programacin, como son las
variables o los procedimientos. Se puede omitir esta restriccin incluyendo el nombre
entre corchetes ([ ]). Para obtener ms informacin, vea "Nombres de escape"
en Nombres de elementos declarados. Ver Tabla 4.
Nota:No se recomienda utilizar nombres de escape porque pueden complicar la lectura
del cdigo y llevar a errores imperceptibles difciles de encontrar.
AddHandler

AddressOf

Alias

And

AndAlso

As

Boolean

ByRef

Byte

ByVal

Call

Case

Catch

CBool

CByte

CChar

CDate

CDec

CDbl

Char

CInt

Class

CLng

CObj

Const

Continue

CSByte

CShort

CSng

CStr

CType

CUInt

72

CULng

CUShort

Date

Decimal

Declare

Default

Delegate

Dim

DirectCast

Do

Double

Each

Else

ElseIf

End

EndIf

Enum

Erase

Error

Event

Exit

False

Finally

For

Friend

Function

Get

GetType

Global

GoSub

GoTo

Handles

If

Implements

Imports

In

Inherits

Integer

Interface

Is

IsNot

Let

Lib

Like

Long

Loop

Me

Mod

Module

MustInherit

MustOverride

MyBase

MyClass

Namespace

Narrowing

New

Next

Not

Nothing

NotInheritable

NotOverridable

Object

Of

On

Operator

Option

Optional

Or

OrElse

Overloads

Overridable

Overrides

ParamArray

Partial

Private

Property

Protected

Public

RaiseEvent

ReadOnly

ReDim

REM

RemoveHandler

Resume

73

Return

SByte

Select

Set

Shadows

Shared

Short

Single

Static

Step

Stop

String

Structure

Sub

SyncLock

Then

Throw

To

True

Try

TryCast

TypeOf

Variant

Wend

UInteger

ULong

UShort

Using

When

While

Widening

With

WithEvents

WriteOnly

Xor

#Const

#Else

#ElseIf

#End

#If

&

&=

*=

/=

\=

^=

+=

-=

Tabla 4: Tabla de palabras reservadas.

Declaracin de variables.
Una variable se declara para especificar su nombre y sus caractersticas. La
instruccin de declaracin para variables es Instruccin Dim (Visual Basic .NET). Su
ubicacin y contenido determinan las caractersticas de la variable.
Para

las

reglas

de

denominacin

de

variables

consideraciones,

consulte Nombres de elementos declarados.


74

Valor local y variables miembros.


Una variable local es aquella que se declara dentro de un procedimiento.
Una variable miembro es un miembro de un tipo de Visual Basic; se declara en
el nivel de mdulo, dentro de una clase, estructura o mdulo, pero no dentro de
ningn procedimiento interno de esa clase, estructura o mdulo.
Variables compartidas y de instancias.
La categora de una variable miembro, en una clase o estructura, depende de
que la variable est o no compartida. Si una variable se declara con la palabra
clave Shared, es una variable compartida, y existe en una nica copia compartida por
todas las instancias de la clase o estructura.
De lo contrario, es una variable de instancia, y se crea una copia
independiente de ella para cada instancia de la clase o estructura. Una copia
determinada de una variable de instancia slo est disponible en la instancia para la
cual se cre. Es independiente de una copia en cualquier otra instancia.

Declaracin de variables:
Dim NombreDeVariable [as tipo].
Dim nCantidad As Integer.
Dim s Nombre As String.
Dim b Descontar As Booleano.

Declaracin de constante:
Const dTipoCambio As Double=3.2.
DimnCantidad As Integer.
Const sNombreWeb As String=solocodigofuente.
75

mbito de las Variables: El mbito de las variables determina su nivel de


acceso, quiere decir que una variable declarada dentro de un bloque de cdigo, slo
podr ser utilizado dentro de ella, ms no en otro bloque de cdigo.

Operadores.
En Visual Basic .NET un operador es un smbolo especial que indica al
compilador que debe efectuar una operacin matemtica o lgica.

Visual Basic .NET reconoce los siguientes operadores aritmticos:


La siguiente Tabla muestra los operadores aritmticos, ver Tabla 5.

Operador

Operacion

Suma

Resta

Multiplicacion

Division Flotante

Division Entera

Potencia

MOD

Modulo

Tabla 5. Operadores aritmticos.

76

Operadores de relacin.
A continuacin se recogen los operadores de comparacin definidos en Visual
Basic .NET. Ver Tabla 6.

Operador

True si

False si

< (Menor que)

expression1 < expression2

expression1 >= expression2

<= (Menor o igual que)

expression1 <= expression2

expression1 > expression2

> (Mayor que)

expression1 > expression2

expression1 <= expression2

>= (Mayor o igual que)

expression1 >= expression2

expression1 < expression2

= (Igual a)

expression1 = expression2

expression1 <> expression2

<> (Distinto de)

expression1 <> expression2

expression1 = expression2

Nota: = (Operador, Visual Basic) tambin se utiliza como un operador de asignacin.

Tabla 6. Tabla de operadores de relacin.

Operadores lgicos.
La siguiente Tabla contiene una lista con los operadores de comparacin
relacionales y las condiciones que determinan si resultado es True o False.
El Not (Operado, Visual Basic .NET) realiza la negacin lgica en una
expresin Boolean. Produce el contrario lgico de su operacin. Si la expresin se
evala como True, Not devuelve False, si la expresin se evala como False, Not
devuelve True.

77

Esto se ilustra en el siguiente ejemplo:


Dim x, y As Boolean
x = Not 23 > 14 y = Not 23 > 67
En Visual Basic existen 6 operadores lgicos. Ver Tabla 7.
Operador

Descripcin

And

Cuando ambas expresiones son verdaderas

Or

Evalua una de dos expresiones

Not

Niega una expresin

Xor

La expresin completa se considera verdadera, si las 2 expresiones


evaluadas no son verdaderas o ambas son falsas

Eqv

Ambas expresiones debe ser verdaderas o falsas para evaluar la


expresin completa como verdadera

Imp

La expresin completa es verdadera excepto cuando la primer expresin


es verdadera y la segunda expresin es falsa

Tabla 7. Tabla de operadores lgicos.

Operadores de asignacin.
A continuacin se recogen los operadores de asignacin definidos en Visual
Basic.
Operador =
Operador ^=
Operador *=
Operador /=
78

\= (Operador)
Operador +=
Operador -=
Operador <<=
Operador >>=
Operador &=

Operadores de concatenacin.
Los operadores de concatenacin combinan varias cadenas en una sola. Hay
dos operadores de concatenacin: + y &. Los dos realizan la operacin de
concatenacin bsica, como se muestra en el ejemplo siguiente.
Dim x As String = "Con" & "caten" & "ation"
Dim y As String = "Con" + "caten" + "ation"
Estos operadores tambin concatenan variables String, como en el ejemplo
siguiente:
Dim a As String = "abc"
Dim d As String = "def"
Dim zAs String = a & d
Dim w As String = a + d

Sentencias visual.
Las sentencias de flujo tambin llamadas estructuras de control o flujo
permite cambiar las secuencias de instrucciones de un programa y ejecutar varias
veces un bloque de las mismas sin necesidad de escribirlas tantas veces como se
requieran.

79

Todas las sentencias de control sirven para tomar la decisin de ejecutar o no


un bloque de instrucciones dependiendo del resultado de la evaluacin, de una
condicin o variable.

Sintaxis.
if condicin then
instrucciones.
else
Otras instrucciones
Endif
Otra forma es:
if condicin then
instrucciones
end if
Si condicin entonces
Instrucciones
Fin del if

Case.
Estructura de control para ejecutar un bloque de instrucciones solo cuando el
resultado de la comparacin de 2 expresiones coincida.

80

Es importante mencionar que las instrucciones asociadas al bloque case de la


expresin coincidente se ejecutaran una vez y que el control del programa pasar a
la siguiente lnea de finalizar.

Sintaxis.
select case expresin
case expresin 1
case expresin 2
caseelse
endselect

seleccin de casos expresin


caso expresin
caso expresin
caso expresin
o si no este caso
fin del case

Sentencia For.
El for es utilizado para repetir un nmero determinado de veces un mismo
bloque instrucciones.
Sintaxis.
For contador= nmero inicial to numero final step
Codigo
Next

81

Sentencia Do.
Estructura de control que al igual que la sentencia for genera un ciclo
repetitivo, la diferencia es que para ejecutar las instrucciones se debe evaluar una
condicin.

Sintaxis.
Do while<condicion>
Codigo.
loop.

ADO.NET
ADO.NET es un conjunto de componentes del software que pueden ser
usados por los programadores para acceder a datos y a servicios de datos. Es una
parte

de

la

biblioteca

de

clases

base

que

estn

incluidas

en

el

Microsoft .NET Framework. Es comnmente usado por los programadores para


acceder y para modificar los datos almacenados en un Sistema Gestor de Bases de
Datos Relacionales, aunque tambin puede ser usado para acceder a datos en
fuentes no relacionales. ADO.NET es a veces considerado como una evolucin de la
tecnologa ActiveX Data Objects (ADO), pero fue cambiado tan extensivamente que
puede ser concebido como un producto enteramente nuevo.

82

ADO.NET consiste en dos partes primarias


Data provider.
Estas clases proporcionan el acceso a una fuente de datos, como Microsoft
SQL Server y Oracle. Cada fuente de datos tiene su propio conjunto de objetos del
proveedor, pero cada uno tiene un conjunto comn de clases de utilidad:
Connection: Proporciona una conexin usada para comunicarse con la fuente
de datos. Tambin acta como Abstract Factory para los objetos command.
Command: Usado para realizar alguna accin en la fuente de datos, como
lectura, actualizacin, o borrado de datos relacionales.
Parameter: Describe un simple parmetro para un command. Un ejemplo
comn es un parmetro para ser usado en un procedimiento almacenado.
DataAdapter: "Puente" utilizado para transferir data entre una fuente de datos
y un objeto DataSet (ver abajo).
DataReader: Es una clase usada para procesar eficientemente una lista
grande de resultados, un registro a la vez.

DataSet.
Los objetos DataSets, es un grupo de clases que describen una simple base
de datos relacional en memoria, fueron la estrella del show en el lanzamiento inicial
(1.0) del Microsoft .NET Framework. Las clases forman una jerarqua de contencin:
Un objeto DataSet representa un esquema (o una base de datos entera o un
subconjunto de una). Puede contener las tablas y las relaciones entre esas
tablas.
Un objeto DataTable representa una sola tabla en la base de datos. Tiene un
nombre, filas, y columnas.

83

Un objeto DataView "se sienta sobre" un DataTable y ordena los datos (como
una clusula "orderby" de SQL) y, si se activa un filtro, filtra los registros (como
una clusula "where" del SQL). Para facilitar estas operaciones se usa un
ndice en memoria. Todas las DataTables tienen un filtro por defecto, mientras
que pueden ser definidos cualquier nmero de DataViews adicionales,
reduciendo la interaccin con la base de datos subyacente y mejorando as el
desempeo.
Un DataColumn representa una columna de la tabla, incluyendo su nombre y
tipo.
Un objeto DataRow representa una sola fila en la tabla, y permite leer y
actualizar los valores en esa fila, as como la recuperacin de cualquier fila
que est relacionada con ella a travs de una relacin de clave primaria clave extranjera.
Un DataRowView representa una sola fila de un DataView, la diferencia entre
un DataRow y el DataRowView es importante cuando se est interactuando
sobre un resultset.
Un DataRelation es una relacin entre las tablas, tales como una relacin de
clave primaria - clave ajena. Esto es til para permitir la funcionalidad del
DataRow de recuperar filas relacionadas.
Un Constraint describe una propiedad de la base de datos que se debe
cumplir, como que los valores en una columna de clave primaria deben ser
nicos. A medida que los datos son modificados cualquier violacin que se
presente causar excepciones.
Un DataSet es llenado desde una base de datos por un DataAdapter cuyas
propiedades Connection y Command que han sido iniciados. Sin embargo, un
DataSet puede guardar su contenido a XML (opcionalmente con un esquema
XSD), o llenarse a s mismo desde un XML, haciendo esto excepcionalmente
til para los servicios web,

computacin

distribuida,

y aplicaciones

ocasionalmente conectadas desconectados.

84

ADO.NET y Visual Studio .NET.


En el IDE Visual Studio .NET existe la funcionalidad para crear las subclases
especializadas de las clases del DataSet para un esquema particular de base de
datos, permitiendo el acceso conveniente a cada campo a travs de propiedades
fuertemente tipadas. Esto ayuda a capturar ms errores de programacin en tiempo
de compilacin y hace ms til la caracterstica Intellisense del IDE.

ADO.NET Entity Framework.


El ADO.NET Entity Framework es un conjunto de APIs de acceso a datos para
el Microsoft .NET Framework, apuntando a la versin de ADO.NET que se incluye
con el .NET Framework 3.5. Fue lanzado como actualizacin separada junto con el
Service Pack 1 para el .NET Framework, despus del lanzamiento de tanto el .NET
Framework 3.5 y el Visual Studio 2008. Una nueva versin del Entity Framework (v
4.0) ser liberada junto al Visual Studio 2010 y el .NET Framework 4.0.
Una entidad del Entity Framework es un objeto que tiene una clave
representando la clave primaria de una entidad lgica de datastore. Un modelo
conceptual Entity Data Model (modelo Entidad-Relacin) es mapeado a un modelo
de esquema de datastore. Usando el Entity Data Model, el Framework permite que
los

datos

sean

tratados

como

entidades

independientemente

de

sus

representaciones del datastore subyacente.


El Entity SQL es un lenguaje similar al SQL para consultar el Entity Data
Model (en vez del datastore subyacente). Similarmente, las extensiones del Linq,
Linq-to-Entities, proporcionan consultas tipeadas en el Entity Data Model. Las
consultas Entity SQL y Linq-to-Entities son convertidas internamente en un Canonical
QueryTree que entonces es convertido en una consulta comprensible al datastore
subyacente (ej. en SQL en el caso de una base de datos relacional). Las entidades
pueden utilizar sus relaciones, y sus cambios enviados de regreso al datastore.

85

Report Viewer.
Es un control de libre distribucin que permite la incorporacin de informes en
las aplicaciones desarrolladas con .NET Framework. Los informes se han
desarrollado con la simplicidad de arrestar y soltar el diseador de informes incluidos
en Visual Basic 2010.
El Report Viewer facilita la creacin de informes simples y dispone tambin de
herramientas

poderosas

necesarias

para

generar

informes

complejos

especializados desde casi cualquier origen de datos. Su objetivo principal es ayudar


a cualquier usuario a analizar e interpretar la informacin importante.

Los informes que genera el Report Viewer

son herramientas de

administracin que sirven para facilitar una rpida comprensin de los elementos
bsicos y relacionados entre los datos sin formatos y ayudarle a tomar decisiones
correctas. Para que un informe sea eficaz, debe presentar los datos adecuados de
forma lgica. Si presenta datos incorrectos, o datos correctos de forma desordenada,
el informe puede retrasar el proceso de decisin o incluso provocar que se tome una
decisin incorrecta. Los datos de los informes se pueden agrupar y ordenar de
diversas formas esto le provee mucha flexibilidad para personalizar los informes.

El modo local o modo remoto puede utilizar enunciados de SQL estos se


pueden utilizar para obtener un conjunto especifico de datos

de una base de

datos,los cuales se pueden ordenar, agrupar y seleccionar campos de enunciados de


SQL.

El control adems soporta el uso de parmetros para solicitar al usuario de un


informe que especifique la informacin antes de que se genere el informe. La
informacin que escribe el usuario determinara lo que aparecer en el informe.

86

Por ejemplo, en un informe usado por vendedores, puede existir una


parmetro que pida al usuario que elija una regin. El informe devuelve los
resultados de la regin.
El control permite dar formato a las cosas que puede hacer para cambiar la
presentacin y el diseo de su informe, la apariencia del texto, de objetos o
secciones enteras del informe:
Dividir las secciones de un informe.
Llamar la atencin sobre ciertos datos.
Cambiar la presentacin de fechas, nmeros, valores, cadenas de
texto.
Ocultar secciones no deseadas.
Dar el informe una apariencia profesional.

Ventajas:
Procesos de datos eficientes. El motor de informes integrado en ReportViewer
puede realizar operaciones tales como el filtrado, clasificacin, agrupacin y
agregacin.
Soporta una gran variedad de formas para presentar los datos. Puede
presentar los datos como listas, tablas, cuadros y matrices (tambin conocido
como tablas de referencias cruzadas.)
Aade atractivo visual. Puede especificar las fuentes, colores, estilos de
borde, imgenes de fondo, etc para hacer su informe atractivo a la vista.
Permite la interactividad en los informes. Puede tener secciones plegables,
mapa del documento, marcadores, clasificacin etc interactivo en su informe.
Soporta el formato condicional. Puede incrustar expresiones en el informe
para cambiar el estilo de visualizacin dinmica en funcin de los valores de
datos.
Apoya la impresin y vista preliminar.
87

Soporta la exportacin a Excel, Word y PDF. (Exportacin de Word en Visual


Studio 2010 y.)

PROCEDIMIENTO

DESCRIPCION

DE

LAS

ACTIVIDADES

REALIZADAS
En esta seccin del informe se explica cmo se realizaron las
actividades para desarrollar el sistema denominado Don Equipal.
ANLISIS.
Polticas.
El pago es solo en efectivo.
Solo existen descuentos para estudiantes, presentando su credencial.

Entradas.
Clientes.
Empleados.
Comidas.
Bebidas.
Recetas.
Materia Prima.
Comandas.
Notas.

88

Salidas.
Relacin de clientes ordenado por nombre.
Relacin de empleados ordenado por nombre.
Reporte de materia prima por da.
Reporte de bebidas por da.
Reporte de compras por perodo.
Impresin de notas.
Relacin de comandas por empleado.
Reporte de ventas por periodo.
Listado de precios.

Procesos.
Compras (materia prima y bebidas).
Comandas.
Notas.

89

Almacenes.
Clientes.
Empleados.
Comidas.
Bebidas.
Materia prima
Comandas.
Detalle bebida/ comida.
Recetas.

Entidades externas.
Empleados.

90

Diagrama de Warnier/Orr.
En la Figura 12. Se ilustra el diagrama de Warnier/Orr en el que se muestra el
funcionamiento general del sistema.
Registrar
Clientes

Consultar
Modificar (telfono, direccin, colonia, ciudad, calles)
Registrar

Empleados

Consultar
Modificar (tel, dir, colonia, ciudad, sueldo, fecha ingreso)
Registrar

Comidas

Consultar
Modificar (precio)
Registrar

existencias =0

CATLOGOS
Bebidas

Consultar
Modificar (precio)

Materia prima

Registrar

existencias =0

Consultar
Registra
Recetas

Consulta

por comida

Figura 12. Diagrama de Warnier/Orr.

91

+ Existencias

Materia prima
Registra

Actualiza costo/unidad
+ Existencias
Bebidas

Compras

Actualiza costo/unidad
Consulta

por no. compra


- Existencias

Registra

Comida

Comadna Edo = A
- Existencias

Bebida
MOVIMIENTOS

Comanda
Actualiza

- existencias
Comida

Bebida

Registra

Notas

- Existencias
Comanda Edo = C

Cancela

Consulta

Comanda Edo = A

- Existencias

Comanda Edo = C
pro no. comanda

Comanda Edo. = P

Imprime
Relacin de clientes ordenado por nombre.
Relacin de empleados ordenado por nombre.
Reporte de materia prima por da.
Reporte de bebidas por da.
Reporte de ventas por periodo.
Reporte de compras por periodo.
Impresin de notas.
Relacin de comandas por empleado.
Listado de precios.

REPORTES

Ayuda
UTILERIAS
Respaldo
Restaurar

Figura 12. Diagrama de Warnier/Orr.


92

Diagrama de contexto.
En la Figura 13. Se ilustra el diagrama de contexto en el que se muestra el
funcionamiento general del sistema.

Figura 13. Diagrama de contexto del sistema Don Equipal.

93

Diagrama de casos de uso general.


En la Figura 14. Se observa el diagrama de casos de uso general del sistema
donde se muestran los movimientos que incluye el sistema Don Equipal y tambin
los actores con los que trabaja.

Figura 14. Diagrama de caso de uso general.

94

Tabla de funciones.
En la Tabla 8. Se muestran las funciones que aparecen en los diagramas de
casos expandidos.

No. de

Descripcin

Tipo

funcin
1

Incrementa no de comanda

Evidente

Selecciona cliente

Evidente

Busca y muestra datos

Evidente

Selecciona tipo de pedido

Evidente

Selecciona nmero de mesa

Evidente

Selecciona empleado

Evidente

Selecciona comida

Evidente

Selecciona bebida

Evidente

Calcula total

Evidente

10

Incrementa nmero de nota

Evidente

11

Selecciona nmero de comanda

Evidente

Tabla 8. Funciones de los diagramas de caso expandidos.

95

Diagramas de movimientos.
Diagrama de flujo de datos para registrar comanda.
En la Figura 15. Se ilustra el diagrama de flujo de datos para registrar una
comanda.

Figura 15. Diagrama flujo de datos para registrar una comanda.

96

Diagrama de caso de uso expandido para registrar comanda.


En la Figura 16. Se ilustra el diagrama de caso de uso expandido para
registrar una comanda.

Figura 16. Diagrama de caso de uso expandido.

Nombre: Diagrama de caso de uso expandido para registrar comandas.


Actores: cliente y empleado.
Descripcin: incrementa el nmero de comanda, selecciona el cliente a realizar la
comanda, busca y muestra los datos del cliente, selecciona tipo de comanda, si la comanda
es local entonces incrementa, selecciona el nmero de mesa despues selecciona el
empleado, busca y muestra los datos del empleado, elige la comida del cliente y si desea
bebida tambien y por ultimo calcula el total de la comanda.

Funciones: 1, 2, 3, 4, 5, 6 , 7, 8 y 9.

97

Diagrama de estados para registrar comanda.


En la Figura 17. Se ilustra el diagrama de estados para registrar una comanda.

Precondicin:

Registra

una

nueva

comanda.
Poscondicin: Graba una nueva comanda.
Caminos alternos: Tipo de pedido por
telfono, si el cliente desea ms pedido y si
desea ms bebida.
Descripcin: Incrementa el nmero de
comanda, se toma la fecha del sistema
operativo para la comanda, se elige el
empleado se buscan sus datos y se
muestran, seleccionar el tipo de pedido, si la
opcin es local entonces se elige la mesa, si
es telfono se brinca esta opcin. Despus
se escoge el nombre del cliente, se busca
sus datos y se muestran, seleccionar la
comida se busca y se muestra en la rejilla y
la misma opcin para las bebidas, en caso
de que el cliente desee mas comida o
bebida se regresa a elegirla, se calcula el
subtotal, el estado de la comanda es = A y
se decrementan existencias en la comanda
y se graba la comanda junto con el detalle
de comida y detalle de bebida.
Figura 17. Diagrama de estados.

98

Diagrama de colaboracin para registrar comanda.


En la Figura 18. Se ilustra el diagrama de colaboracin para registrar una
comanda.

Figura 18. Diagrama de colaboracin para registrar comanda.

99

Diagrama de flujo de datos para registrar nota.


En la Figura 19. Se ilustra el diagrama de colaboracin para registrar una
comanda.

Figura 19. Diagrama de colaboracin para registrar notas.

100

Diagrama de caso de uso expandido para registrar nota.


En la Figura 20. Se ilustra el diagrama de caso de uso expandido para
registrar nota.

Figura 20. Diagrama de caso de uso expandido para registrar nota.

Nombre: Diagrama de caso de uso expandido para registrar nota.


Actores: cliente y empleado.
Descripcin: incrementa el nmero de nota, selecciona el nmero de comanda a pagar,
busca y muestra datos del empleado, busca y muestra los datos del cliente,

busca y

muestra los datos de comanda.

Funciones: 3, 10, 11.

101

Diagrama de estados para registrar nota.


En la Figura 21. Se ilustra el diagrama de estados para registrar una nota.

Precondicin: Registra una nueva nota.


Poscondicin: Graba una nueva nota.
Caminos alternos: No se realiza ninguna
nota.
Descripcin: incrementa el nmero de nota,
se toma la fecha del sistema operativo, se
elige en nmero de la comanda para realizar
la nota, se muestra el tipo de pedido y se
buscan y muestran datos como el de
empleado,

cliente

los

datos

de

la

comanda. Cambia el estado de la comanda


a P de pagada y se graba la nota.

Figura 21. Diagrama de estados para registrar nota.

102

Diagrama de colaboracin para registrar nota.


En la Figura 22. Se ilustra el diagrama de colaboracin para registrar una nota.

Figura 22. Diagrama de colaboracin para registrar nota.

103

DISEO
Diccionario de datos.
Clientes
Entidad: Clientes
Objetivo: Almacena los datos principales de las asistencias de los clientes.
Atributos: 8
Campo Llave: IdCliente

No.
1

Nombre
IdCliente

Tipo
Int

Long Nulo
10

No

Descripcin

Dominio

Campo llave, almacena la 0-9


clave nica del cliente

Nombre

Nvarchar

45

No

Guarda

el

nombre

del a-z, 0-9

cliente
3

Direccin Nvarchar

45

Si

Almacena la direccin del a-z, 0-9


cliente

Colonia

Nvarchar

23

Si

Almacena la colonia del a-z, 0-9


cliente

Calle1

Nvarchar

35

Si

Almacena la primer calle del a-z, 0-9


domicilio del cliente

Calle2

Nvarchar

35

Si

Almacena la segunda calle a-z, 0-9


del cliente

Ciudad

Nvarchar

23

Si

Almacena

la

ciudad

del a-z, 0-9

cliente
8

Telfono

Nvarchar

18

Si

Almacena el telfono del a-z, 0-9


cliente

104

Empleados
Entidad: Empleados
Objetivo: Almacena los datos principales de los clientes.
Atributos: 9
Campo Llave: IdEmpleado
No.
1

Nombre
IdEmpleado

Tipo
Int

Long
5

Nul
Descripcin
Dominio
o
No Campo
llave, 0-9
almacena

la

clave

nica del empleado


2

Nombre

Nvarchar

45

No

Guarda el nombre del a-z, 0-9


empleado

Direccin

Nvarchar

45

No

Almacena la direccin a-z, 0-9


del empleado

Colonia

Nvarchar

23

Si

Almacena la colonia a-z, 0-9


del empleado

Ciudad

Nvarchar

23

Si

Almacena la ciudad a-z, 0-9


del empleado

Telfono

Nvarchar

18

Si

Almacena el telfono a-z, 0-9


del empleado

Celular

Nvarchar

18

No

Almacena

el

no. a-z, 0-9

celular del empleado


8

Fecha_Ingreso

Nvarchar

15

Si

Almacena

la

fecha Fecha

ingreso del empleado


9

Sueldo

Decimal

(18,2) Si

vlida

Almacena la cantidad 0-9


sueldo del empleado

105

Bebidas
Entidad: Bebidas
Objetivo: Almacena los datos de las bebidas.
Atributos: 6
Campo Llave: IdBebida
No.
Nombre
1
IdBebida

Tipo
Int

Long
5

Nulo
Descripcin
Dominio
No
Campo llave, almacena 0-9
la clave de la bebida

Descripcin

Nvarchar

35

No

Guarda la descripcin a-z, 0-9


de la bebida

Costo

Decimal

(18,2)

Si

Almacena el costo de la

0-9

bebida
4

Precio

Decimal

(18,2)

No

Almacena la contrasea 0-9


del usuario

Existencia

Int

10

No

Almacenaexistencias de

0-9

bebidas
6

Imagen

Nvarchar

(MAX)

Si

Almacena la imagen de a-z, 0-9


la bebida

106

Detalle Bebidas
Entidad: DetalleBebida
Objetivo: Almacena el detalle de las bebidas.
Atributos: 6
Campo Llave: IdComanda e IdBebida
No.
Nombre
1
IdComanda

Tipo
Int

Long
10

Nulo
Descripcin
Dominio
No
Campo llave, almacena la 0-9
clave de la comanda

IdBebida

Int

No

Campo llave, almacena la 0-9


clave de la bebida

Cantidad

int

10

No

Almacena la cantidad de

0-9

la bebida
4

Precio

Decimal

(18,2) No

Almacena el precio de la 0-9


bebida

107

Comidas
Entidad: Comidas
Objetivo: Almacena los principales datos de las comidas.
Atributos: 4
Campo Llave: IdComida
No.
1

Nombre
IdComida

Tipo
Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena 0-9


la clave de la comida

Descripcion

Nvarchar

80

No

Almacena la descripcin 0-9


de la comida

Precio

Decimal

10

No

Almacena el precio de

0-9

la comida
4

Imagen

Nvarchar

(MAX)

Si

Almacena la imagen de 0-9


la comida

108

Detalle Comidas
Entidad: DetalleComida
Objetivo: Almacena en detalle de las comidas.
Atributos: 4
Campo Llave: IdComanda e IdComida
No.
1

Nombre
IdComanda

Tipo
Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena la 0-9


clave de la comanda

IdComida

Int

10

No

Campo llave, almacena la 0-9


clave de la comida

Cantidad

Int

10

No

Almacena la cantidad de la

0-9

comida
4

Precio

Decimal

(18,2) No

Almacena la el precio de la 0-9


comida

109

Comandas
Entidad: Comanda
Objetivo: Almacena los principales datos de la comanda de los clientes.
Atributos: 8
Campo Llave: IdComanda
No.
1

Nombre
IdComanda

Tipo
Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena 0-9


la clave de la comanda

IdEmpleado Int

No

Almacena la clave del 0-9


empleado

IdCliente

Int

10

No

Almacena la clave del

0-9

cliente
4

Fecha

Date

NA

Si

Almacena la fecha de la Fecha


comanda

Tipo

Nvarchar

10

No

Almacena

vlida
el

tipo

de a-z, 0-9

comanda
6

Mesa

Int

Si

Almacena el no. de mesa 0-9


de la comanda

Total

Decimal

(18,2) No

Almacena el total de la 0-9


comanda

Estado

Nvarchar

No

Almacena el estado de la a-z, 0-9


comanda

110

Compras
Entidad: Compras
Objetivo: Almacena los principales datos de las compras del establecimiento.
Atributos: 4
Campo Llave: NoCompra
No.
1

Nombre

Tipo

NoCompra Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena el 0-9


no. de compra

Factura

Int

10

Si

Almacena la clave de la 0-9


factura

Fecha

Date

NA

Si

Almacena la fecha de la Fecha


compra

Total

Decimal

(18,2) No

vlida

Almacena el total de la 0-9


compra

111

Detalle CompBeb
Entidad: DetalleCompBeb
Objetivo: Almacena los detalle de las compras de bebidas del establecimiento.
Atributos: 4
Campo Llave: NoCompra e Idbebida
No.
1

Nombre

Tipo

NoCompra Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena el 0-9


no. de compra

Idbebida

Int

No

Campo llave, almacena el 0-9


no. de bebida

Cantidad

Int

No

Almacena la cantidad de la 0-9


bebida

Costo

Decimal

(18,2) No

Almacena el costo de la 0-9


bebida

112

Detalle CompMP
Entidad: DetalleCompMP
Objetivo: Almacena los detalle de las compras de materia prima del establecimiento.
Atributos: 4
Campo Llave: NoCompra e IdProducto
No.
1

Nombre

Tipo

NoCompra Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena el 0-9


no. de compra

IdProducto Int

No

Campo llave, almacena el 0-9


no. de materia prima

Cantidad

Decimal

(18,3) No

Almacena la cantidad de la 0-9


materia prima

Costo

Decimal

(18,2) No

Almacena el costo de la 0-9


materia prima

113

Materia Prima
Entidad: MateriaPrima
Objetivo: Almacena los principales datos de la materia prima.
Atributos: 4
Campo Llave: IdProducto
No.
1

Nombre
IdProducto

Tipo
Int

Long
5

Nulo
No

Descripcin

Dominio

Campo llave, almacena 0-9


el no. de producto

Descripcion

Nvarchar

20

No

Almacena la descripcin a-z, 0-9


de la materia prima

Existencias

Decimal

(18,3) No

Almacena la cantidad de 0-9


existencias de la materia
prima

Unidad

Nvarchar

12

No

Almacena la unidad del la a-z, 0-9


materia prima

Costo_Unid

Decimal

(18,2) Si

Almacena el costo por 0-9


unidad

de

la

materia

prima

114

Notas
Entidad: Nota
Objetivo: Almacena los principales datos de la nota del cliente.
Atributos: 4
Campo Llave: NoNota
No.
1

Nombre
NoNota

Tipo
Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena el 0-9


no. de nota

IdComanda

Int

10

No

Almacena el nmero de la 0-9


comanda

Fecha

Date

No

Almacena la fecha de la Fecha


nota

Total

Decimal

(18,2) No

vlida

Almacena el total de la 0-9


nota

Recetas
Entidad: Recetas
Objetivo: Almacena los principales datos de las recetas.
Atributos: 3
Campo Llave: IdComanda e IdProducto
No.
1

Nombre
IdComanda

Tipo
Int

Long
10

Nulo
No

Descripcin

Dominio

Campo llave, almacena el 0-9


no. de comanda

IdProducto

Int

No

Campo llave, almacena el 0-9


no. de producto

Cantidad

Decimal

(18,3) No

Almacena la cantidad de 0-9


las recetas
115

Normalizacin.
Tabla: Clientes
Primera Forma Normal (1FN):La tabla clientes cumple con la primera forma
normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos, los
valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (IdCliente).

Segunda Forma Norma (2FN): La tabla clientes cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Nombre, Direccin, Colonia, Calle1, Calle2, Ciudad, Telfono) depende
completamente de la llave primaria (IdCliente).

Tercera Forma Normal (3FN): La tabla clientes se encuentra en la tercera


forma normal, ya que cumple con la segunda forma normal y todos sus atributos no
primos (Nombre, Direccin, Colonia, Calle1, Calle2, Ciudad, Telfono) dependen no
transitivamente de la llave primaria (IdCliente).

Tabla: Empleados
Primera Forma Normal (1FN):La tabla empleados cumple con la primera
forma normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos,
los valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (IdCliente).
116

Segunda Forma Norma (2FN): La tabla empleados cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Nombre, Direccion, Colonia, Ciudad, Telfono, Celular, Fecha_Ingreso,
Sueldo) depende completamente de la llave primaria (IdEmpleado).

Tercera Forma Normal (3FN): La tabla clientes se encuentra en la tercera


forma normal, ya que cumple con la segunda forma normal y todos sus atributos no
primos (Nombre, Direccion, Colonia, Ciudad, Telfono, Celular, Fecha_Ingreso,
Sueldo) dependen no transitivamente de la llave primaria (IdEmpleado).

Tabla: Bebidas
Primera Forma Normal (1FN): La tabla bebidas cumple con la primera forma
normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos, los
valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (IdBebida).

Segunda Forma Norma (2FN): La tabla bebidas cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Descripcion, Costo, Precio, Existencias, Imagen) depende completamente
de la llave primaria (IdBebida).

117

Tercera Forma Normal (3FN): La tabla clientes se encuentra en la tercera


forma normal, ya que cumple con la segunda forma normal y todos sus atributos no
primos

(Descripcion,

Costo,

Precio,

Existencias,

Imagen)

dependen

no

transitivamente de la llave primaria (IdBebida).

Tabla: DetalleBebida
Primera Forma Normal (1FN): La tabla detallebebida cumple con la primera
forma normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos,
los valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con dos llaves primaria (IdComanda, IdBebida).

Segunda Forma Norma (2FN): La tabla detallebebida cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Cantidad, Precio) depende completamente de las llaves primarias
(IdComanda, IdBebida).

Tercera Forma Normal (3FN): La tabla detallebebida se encuentra en la


tercera forma normal, ya que cumple con la segunda forma normal y todos sus
atributos no primos (Cantidad, Precio) dependen no transitivamente de las llaves
primarias (IdComanda, IdBebida).

118

Tabla: Comidas
Primera Forma Normal (1FN): La tabla comidas cumple con la primera forma
normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos, los
valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (IdComida).
Segunda Forma Norma (2FN): La tabla comidas cumple con la segunda
forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Descripcion, Precio, Imagen) depende completamente de la llave primaria
(IdComida).

Tercera Forma Normal (3FN): La tabla comidas se encuentra en la tercera


forma normal, ya que cumple con la segunda forma normal y todos sus atributos no
primos (Descripcion,

Precio, Imagen) dependen no transitivamente de la llave

primaria (IdComida).

Tabla: DetalleComida
Primera Forma Normal (1FN): La tabla detallecomida cumple con la primera
forma normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos,
los valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con dos llaves primarias (IdComanda, IdComida).

119

Segunda Forma Norma (2FN): La tabla detallecomida cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Cantidad, Precio) depende completamente de las llaves primarias
(IdComanda, IdComida).

Tercera Forma Normal (3FN): La tabla detallecomida se encuentra en la


tercera forma normal, ya que cumple con la segunda forma normal y todos sus
atributos no primos (Cantidad, Precio) dependen no transitivamente de las llaves
primarias (IdComanda, IdComida).

Tabla: Comandas
Primera Forma Normal (1FN):La tabla comandas cumple con la primera
forma normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos,
los valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (IdComanda).

Segunda Forma Norma (2FN): La tabla comandas cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (IdEmpleado, IdCliente, Fecha, Tipo, Mesa, Total, Estado) depende
completamente de la llave primaria (IdComanda).

120

Tercera Forma Normal (3FN): La tabla comidas se encuentra en la tercera


forma normal, ya que cumple con la segunda forma normal y todos sus atributos no
primos (IdEmpleado, IdCliente, Fecha, Tipo, Mesa, Total, Estado) dependen no
transitivamente de la llave primaria (IdComanda).

Tabla: Compras
Primera Forma Normal (1FN):La tabla compras cumple con la primera forma
normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos, los
valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (NoCompra).

Segunda Forma Norma (2FN): La tabla compras cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Factura, Fecha, Total) depende completamente de la llave primaria
(NoCompra).

Tercera Forma Normal (3FN): La tabla compras se encuentra en la tercera


forma normal, ya que cumple con la segunda forma normal y todos sus atributos no
primos (Factura, Fecha, Total) dependen no transitivamente de la llave primaria
(NoCompra).

121

Tabla: DetalleCompBeb
Primera Forma Normal (1FN): La tabla detallecompbeb cumple con la
primera forma normal (1FN), ya que por cada rengln, columna, se tienen valores
atmicos, los valores de sus celdas poseen valores simples e indivisibles y en cada
una de sus columnas todos sus atributos son del mismo tipo, as como tambin las
columnas cuentan con un nombre nico y cumplen con la regla de no tener registros
repetidos ya que cuenta con dos llaves primarias (NoCompra, IdBebida).

Segunda Forma Norma (2FN): La tabla detallecompbeb cumple con la


segunda forma norma (2FN), ya que cumple con la primera forma normal y todos sus
atributos no primos (Cantidad, Costo) depende completamente de las llaves
primarias (NoCompra, IdBebida).

Tercera Forma Normal (3FN): La tabla detallecompbeb se encuentra en la


tercera forma normal, ya que cumple con la segunda forma normal y todos sus
atributos no primos (Cantidad, Costo) dependen no transitivamente de las llaves
primarias (NoCompra, IdBebida).

Tabla: DetalleCompMP
Primera Forma Normal (1FN): La tabla detallecompmp cumple con la primera
forma normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos,
los valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con dos llaves primarias (NoCompra, IdProducto).

122

Segunda Forma Norma (2FN): La tabla detallecompmp cumple con la


segunda forma norma (2FN), ya que cumple con la primera forma normal y todos sus
atributos no primos (Cantidad, Costo) depende completamente de las llaves
primarias (NoCompra, IdProducto).

Tercera Forma Normal (3FN): La tabla detallecompmp se encuentra en la


tercera forma normal, ya que cumple con la segunda forma normal y todos sus
atributos no primos (Cantidad, Costo) dependen no transitivamente de las llaves
primarias (NoCompra, IdProducto).

Tabla: MateriaPrima
Primera Forma Normal (1FN): La tabla materiaprima cumple con la primera
forma normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos,
los valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (IdProducto).

Segunda Forma Norma (2FN): La tabla materiaprima cumple con la segunda


forma norma (2FN), ya que cumple con la primera forma normal y todos sus atributos
no primos (Descripcion, Existencias, Unidad, Costo_Unid) depende completamente
de la llave primaria (IdProducto).

123

Tercera Forma Normal (3FN): La tabla materiaprima se encuentra en la


tercera forma normal, ya que cumple con la segunda forma normal y todos sus
atributos no primos (Desripcion, Existencias, Unidad, Costo_Unid) dependen no
transitivamente de la llave primaria (IdProducto).

Tabla: Nota
Primera Forma Normal (1FN): La tabla nota cumple con la primera forma
normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos, los
valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con una llave primaria (NoNota).

Segunda Forma Norma (2FN): La tabla nota cumple con la segunda forma
norma (2FN), ya que cumple con la primera forma normal y todos sus atributos no
primos (IdComanda, Fecha, Total) depende completamente de la llave primaria
(NoNota).

Tercera Forma Normal (3FN): La tabla nota se encuentra en la tercera forma


normal, ya que cumple con la segunda forma normal y todos sus atributos no primos
(IdComanda, Fecha, Total) dependen no transitivamente de la llave primaria
(NoNota).

124

Tabla: Recetas
Primera Forma Normal (1FN): La tabla recetas cumple con la primera forma
normal (1FN), ya que por cada rengln, columna, se tienen valores atmicos, los
valores de sus celdas poseen valores simples e indivisibles y en cada una de sus
columnas todos sus atributos son del mismo tipo, as como tambin las columnas
cuentan con un nombre nico y cumplen con la regla de no tener registros repetidos
ya que cuenta con dos llaves primarias (IdComida, IdProducto).

Segunda Forma Norma (2FN): La tabla recetas cumple con la segunda forma
norma (2FN), ya que cumple con la primera forma normal y todos sus atributos no
primos (Cantidad) depende completamente de las llaves primarias (IdComida,
IdProducto).

Tercera Forma Normal (3FN): La tabla compras se encuentra en la tercera


forma normal, ya que cumple con la segunda forma normal y todos sus atributos no
primos (Cantidad) dependen no transitivamente de las llaves primarias (IdComida,
IdProducto).

125

Diagrama de clases.

126

Pantallas del sistema.


El diseo del sistema est basado en 1 men principal.
Pantalla general.
Reportes, Utilera, Salir, Levantar Orden, Clientes, Empleados, Comidas,
Bebidas, Materia Prima, Recetas, Compras, Nota. Se muestra en la Figura 23.

Figura 23. Pantalla general.

127

Pantalla de Utileras.
Ayuda, Respaldar, Restaurar. Se muestra en la Figura 24.

Figura 24. Pantalla de Utileras.

Pantalla de Reportes.
Se muestra en la Figura 25.

Figura 25.Pantalla de reportes.


128

CODIFICACIN
Diagrama de mdulos.
En la Figura 26. Se muestra el diagrama de mdulos del sistema, con todos los
componentes que lo conforman.

Figura 26. Diagrama de mdulos del sistema Don Equipal.

129

Diccionario de mdulos del sistema.


En la siguiente tabla se muestra los formularios diseados y las tablas a las
que se tiene acceso cada uno. Ver tabla 9.
Tabla 9. Diccionario de mdulos del sistema.
Opcin

Formulario

Catlogo
clientes

frmClientes.vb

Catlogo
empleados

Catlogo
Comidas

Catlogo
Bebidas

frmEmpleados.vb

frmComidas.vb

frmBebidas.vb

descripcin
A travs de este catlogo se
puede:
Registrar nuevo
cliente.
Modificar datos del
cliente.
Consultar datos de los
clientes.
A travs de este catlogo se
puede:
Registrar nuevo
empleado.
Modificar datos del
empleado.
Consultar datos de los
empleados.
A travs de este catlogo se
puede:
Registrar nueva
comida.
Modificar datos de la
comida.
Consultar datos de las
comidas.
A travs de este catlogo se
puede:
Registrar nueva
bebida.
Modificar datos de la
bebida.
Consultar datos de las
bebidas.

Tablas que accesa

Clientes

Empleados

Comidas

Bebidas

130

Catlogo
Materia
Prima

Catlogo
Recetas

frmMateriaPrima.vb

frmRecetas.vb

Proceso
Compras

1.-frmCompras.vb
2.-frmCompraBeb.vb
3.-frmCompraMP.vb

Proceso
Nota

frmNotas.vb

Proceso
levantar
orden

A travs de este catlogo se


puede:
Registrar nueva
materia prima.
Consultar datos de las
materias primas.

A travs de este catlogo se


puede:
Registrar nueva
receta.
Consultar datos de la
receta.

Clientes.rpt

Relacin de
Empleados

Empleados.rpt

Recetas

A travs de este proceso se


puede:
Registrar nueva
compra.
Consultar datos de la
compra.

A travs de este proceso se


puede:
Registrar nueva nota.
Imprime datos de la
nota.

Nota

A travs de este proceso se


puede:
1.-frmComandas.vb
Registrar nueva orden.
2.-frmActualizarComanda.vb
Actualizar la orden.
3.-frmCancelarComanda.vb
Cancelar la orden.
Consultar datos de la
orden.

Relacin de
Clientes

MateriaPrima

Esta pantalla permite


consultar e imprimir La
relacin de todos los clientes
ordenados por Nombre.
Esta pantalla permite
consultar e imprimir la
relacin de todos los clientes

Compras
DetalleCompMP
DetalleCompBeb
Bebidas
MateriaPrima

Comandas
DetalleComida
DetalleBebida
Bebidas
MateriaPrima
Recetas

Clientes

Empleados
131

ordenados por Nombre.

Reporte de
Materia
Prima

Reporte
Bebidas

Reporte
Comidas

Reporte de
comandas

Reporte
Compras

Utilera de
ayuda

MateriaPrima_Exist.rpt

1.-Bebidas_Exist.rpt
2.-Lista_PreBeb.rpt

Lista_PreComi.rpt

1.-Comandas_Emplea.rpt
2.-Ventas_Periodo.rpt

Compras_Periodo.rpt

frmAyuda.vb

Esta pantalla permite


consultar e imprimir el reporte
de las existencias de la
materia prima por da.

Materia Prima

Estas pantallas permiten


consultar e imprimir el reporte
de las existencias de las
bebidas por da y la lista de
precios.

Bebidas

Esta pantalla permite


consultar e imprimir el reporte
de la lista de precios de las
comidas.

Comidas
MateriaPrima

Estas pantallas permite


consultar e imprimir el reporte
de las comandas por
empleado y comandas en un
periodo.

Esta pantalla permite


consultar e imprimir el reporte
de todas las compras en un
perodo.
Esta utilera incluye todos los
temas relacionados con la
ayuda para manejar el
sistema, se incluyen
aspectos de cada parte
principal del programa, su
funcionamiento, as como
puntos importantes a
considerar, adems esta
ayuda cuenta con una
interfaz amigable para el
usuario.

Comandas
DetalleComida
DetalleBebida
Empleados
Comidas
Bebidas

Compras
DetalleCompBeb
DetalleCompMP

No aplica

Esta utilera sirve para que el


gerente del establecimiento
132

Utilera
de Respaldo

Utilera
de Restaurar

frmRespaldar.vb

frmRestaurar.vb

pueda crear un respaldo de


la base de datos del sistema
en cualquier momento que lo
necesite.
Esta utilera sirve para que el
gerente del establecimiento
pueda restaurar la base de
datos del sistema en
cualquier momento que lo
necesite.

No aplica

No aplica

133

PRUEBAS Y DEPURACIN
Caso de prueba: Registrar Cliente
Entradas
El empleado registrar un nuevo cliente, los datos que se encuentran en la
tabla de Clientes son los siguientes, ver Figura 27.

Figura 27. Tabla de clientes.

Condiciones

Los datos a ingresar a este cliente son los siguientes:


1. IdCliente: 6
2. Nombre: tzirinzi magaa bautista
3. Direccion: rosales #54
4. Colonia: bugambilias
5. Calle1: de las rosas
6. Calle2:
7. Ciudad: tamazula
8. Telefono: 358 357 541

134

En la Figura 28. Se muestra la pantalla con los datos del cliente.

Figura 28. Pantalla de captura de los datos del cliente.

Para grabar el cliente es necesario presionar el botn de grabar. Se espera el


mensaje de Se ha grabado exitosamente como se observa en la Figura 29.

Figura 29. Pantalla de grabado exitoso.

135

Salidas
Al momento de grabar, se insertar un nuevo registro en la tabla Clientes con
los datos antes proporcionados. Ver Figura 30.

Figura 30. Pantalla de la tabla de clientes despus de la insercin correcta.

Caso de prueba: Registrar Materia Prima.


Entradas
El gerente registrar una nueva materia prima, los datos que se encuentran en
la tabla de materia prima son los siguientes, ver Figura 31:

Figura 31.Tabla de materia prima.

136

Condiciones

Los datos a ingresar a esta materia prima son los siguientes:


1. IdProducto: 5
2. Descripcion: tortilla
3. Existencias: 0
4. Unidad: pieza
5. Costo_Unid: 1.00

En la Figura 32. Se muestra la pantalla con los datos de la materia prima.

Figura 32. Pantalla de captura de los datos del cliente.

137

Para grabar la materia prima es necesario presionar el botn de grabar. Se


espera el mensaje de Se ha grabado exitosamente como se observa en la Figura
33.

Figura 33. Pantalla de grabado exitoso.

Salidas
Al momento de grabar, se insertar un nuevo registro en la tabla
MateriaPrima con los datos antes proporcionados. Ver Figura 34.

Pantalla 34. Pantalla de la tabla de materia prima despus de la insercin


correcta.

138

Caso de prueba: Levantar Orden


Entradas
El empleado registrar una nueva comanda, los datos que se encuentran en la
tabla de comandas son los siguientes, ver Figura 35.

Figura 35.Tabla de comandas.

La tabla de DetalleComida muestra la siguiente informacin, ver Figura 36.

Figura 36. Datos del detalle de comida.


139

La tabla de DetalleBebida muestra la siguiente informacin, ver Figura 37.

Figura 37.Datos del detalle de bebida.


La tabla de Clientes de la clave 6 muestra la siguiente informacin, ver
Figura 38.

Figura 38. Datos principales del cliente 6

La tabla de Empleados de la clave 5 muestra la siguiente informacin, ver Figura


39.

Figura 39. Datos principales del cliente 5.


140

La tabla de Recetas muestra la siguiente informacin, ver Figura 40.

Figura 40. Datos de la Receta.

La tabla de MateriaPrima muestra la siguiente informacin, ver Figura


41.

Figura 41.Datos de la materia prima.

141

La tabla de Bebidas muestra la siguiente informacin, ver Figura 42.

Figura 42. Datos de las bebidas.

La tabla de Comidas muestra la siguiente informacin, ver Figura 43.

Figura 43. Datos de las Comidas.

142

Condiciones

Los datos a ingresar a esta comanda son los siguientes:


6. IdComanda: 5
7. IdEmpleado:2
8. IdCliente:1
9. Fecha: 20-11-2013
10. Tipo: Local
11. Mesa: 3
12. Total: 213.5
13. Estado: A

En la Figura 44. Se ilustra la pantalla con los datos de la comanda.

Figura 44. Pantalla de captura de los datos de la comanda.

143

Para grabar la comanda es necesario presionar el botn de grabar. Se muestra el


mensaje de Se ha grabado exitosamente como se observa en la Figura 45.

Figura 45. Pantalla de grabado exitoso.

Salidas
Al momento de grabar, se insertar un nuevo registro en la tabla Comandas
con los datos antes proporcionados. Ver Figura 46.

Figura 46. Pantalla de la tabla de comandas despus de la insercin Correcta.

Se insertar nuevos registros en la tabla DetalleComida con el pedido de


comida de la comanda. Ver Figura 47.

144

Figura 47. Pantalla de la tabla de DetalleComida despus de la insercin


correcta

Se insertar nuevos registros en la tabla DetalleBebida con el pedido de


bebidas de la comanda. Ver Figura 48.

Figura 48. Pantalla de la tabla de DetalleBebida despus de la insercin


correcta.

145

Se consultar la receta en la tabla Recetas para ver la cantidad a


decrementar de materia prima. Ver Figura 49.

Figura 49. Pantalla de la tabla de Recetas para consultar la cantidad de


productos a decrementar.

Se actualizar la materia prima en la tabla MateriaPrima decrementando la


cantidad de producto que se necesit en la receta. Ver Figura 50.

Figura 50. Pantalla de la tabla de MateriaPrima despus de


decrementar el producto.
146

Se actualizar la bebida en la tabla Bebidas decrementando la cantidad de


bebida que se solicit en el pedido. Ver Figura 51.

Figura 51. Pantalla de la tabla de Bebidas despus de decrementar la bebida.

147

Dentro del programa se puede consultar el registro de la comanda al presionar


el botn de consultar que aparece en la Figura 44. A continuacin se muestra la
consulta individual de la comanda con una vez oprimido el botn. Ver Figura 52.

Figura 52. Consulta de comanda.

148

Caso de prueba: Nota


Entradas
El empleado registrar una nueva nota, los datos que se encuentran en la
tabla de notas son los siguientes, ver Figura 53.

Figura 53. Tabla de notas.

La tabla de comanda muestra la siguiente informacin, ver Figura 54.

Figura 54. Tabla de Comanda.

149

Condiciones
Los datos a ingresar a esta nota son los siguientes:
1. NoNota: 4
2. IdComanda:5
3. Fecha: 20-11-2013
4. Total: 213.50

En la Figura 55. Se ilustra la pantalla con los datos de la nota.

Figura 55. Pantalla de captura de los datos de la nota.

150

Para grabar la nota es necesario presionar el botn de grabar. Se espera el


mensaje de Se ha grabado exitosamente como se observa en la Figura 56.

Figura 56. Pantalla de grabado exitoso.

Salidas
Al momento de grabar, se insertar un nuevo registro en la tabla Notas con
los datos antes proporcionados. Ver Figura 57.

Figura 57. Pantalla de la tabla de Notas despus de la insercin Correcta.

151

Se actualizar el estado de la comanda en la tabla Comandas

una vez

pagada edo=P. Ver Figura 58.

Figura 58. Pantalla de la tabla de comandas despus de actualizar el estado.

152

IMPLANTACIN

El mtodo de implantacin que se utiliz fue el de forma paralela, ya que el


gerente del establecimiento junto con los empleados llevan el control de inventario y
de comandas de forma manual. De esta forma podrn llevar el control de forma
manual y automatizada, hasta que se familiaricen con el sistema y ste.

Planeacin de la implantacin.
Objetivo: implantar el sistema Don Equipal en un periodo de 3 semanas.
Objetivos especficos:
Instalacin del sistema.
Capacitacin.
Ajustes y correcciones.

Implantacin del sistema.


Se instalar el sistema Don Equipal.

Capacitacin.
Se les mostrar a la persona o personas que vayan a manejar el sistema de
cules son las opciones que contiene, sobre cmo se tiene que manejar y el saber
utilizar la ayuda en caso de que se le presente alguna limitante.

153

Captura de datos.
En este paso se tendr que reunir toda la informacin actualizada y detallada
con la que se cuenta para que las bases de datos se encuentren con informacin
actual y arroje resultados congruentes.

Ajustes y correcciones.
Desarrollar una serie de pruebas que permiten verificar y corregir los errores
que se presenten.

Liberacin.
Cuando ya se hayan cumplido todos los objetivos mencionados anteriormente
se liberar el sistema.

Cronograma de actividades.
En la Figura 59 se ilustra el total de semanas invertidas en la implantacin del
sistema, mostrando todos los puntos anteriores que se tomaron en cuenta.
ACTIVIDAD

10 11 12 13 14 15 16

Anlisis
Diseo
Codificacin
Pruebas
Implantacin
Documentacin
Mantenimiento
Figura 59. Cronograma de actividades.
154

RESULTADOS Y GRFICOS
En las siguientes imgenes se muestran algunos de los resultados obtenidos
en el sistema. En la Figura 60 se muestra la consulta general de los clientes.

Figura 60. Consulta general de clientes.

155

Como grfico se presenta el reporte de clientes que se muestra a continuacin


en la Figura 61 relacionado con la tabla de la Figura 60.

Figura 61. Reporte de relacin de clientes.

156

En la Figura 62. Se muestra la consulta general de materia prima.

Figura 62. Consulta general de materia prima.

157

Como grfico se presenta el reporte de existencias de materia prima que se


muestra a continuacin en la Figura 63 relacionado con la tabla de la Figura 62.

Figura 63. Consulta de existencias de materia prima.

158

En la Figura 64. Se observa la relacin de comandas por empleado en un


perodo.

Figura 64. Relacin de comandas por empleado.

159

En la Figura 65. Se observa el reporte de compras en un perodo.

Figura 65. Reporte de compras en un perodo.

160

CONCLUSIN
Al terminar ste sistema nos podemos dar cuenta que en la actualidad los
sistemas de informacin son una herramienta indispensable para las empresas, pues
juegan un papel muy importante dentro de ella, con el fin de que puedan enfrentarse
en el mundo de la competencia por medio de la informacin que genera, los cuales
nos permiten tener una mejor toma de decisiones para la empresa.

Los sistemas de informacin dentro de las empresas son demasiado


importantes, por ello es bueno conocer el funcionamiento y todo lo que pueden
realizar. Uno de los principales problemas que aqueja a los directivos es la escases
de informacin para poder tomar las decisiones adecuadas, resulta de mucha
importancia el tener un sistema de informacin adecuado a las necesidades que les
permita planear, gestionar y controlar de manera optima los objetivos que se
requieren, para as poder tomar la decisin segn la situacin en la que se
encuentre.

La realizacin e implementacin del sistema de informacin propuesto cumple


con las consideraciones anteriores y facilita el manejo de inventario y comandas para
el establecimiento Burritos Los Equipales.

161

REFERENCIAS BIBLIOGRFICAS

http://translate.google.com.mx/translate?hl=es&sl=en&u=http://en.wikipedia.org/wiki/
Warnier/Orr_diagram&prev=/search%3Fq%3Ddiagrama%2Bwarnier/orr%26sa%3DX
%26biw%3D520%26bih%3D450

http://clases3gingsof.wikifoundry.com/page/Diagrama+de+Contexto

http://es.wikipedia.org/wiki/Diagrama_de_Flujo_de_Datos

http://es.wikipedia.org/wiki/Lenguaje_Unificado_de_Modelado

http://es.wikipedia.org/wiki/Diagrama_de_casos_de_uso

http://markblogs-markmendoza.blogspot.mx/2010/12/diagramas-de-estado.html

http://es.wikipedia.org/wiki/Diagrama_de_colaboracin

http://es.wikipedia.org/wiki/Diagrama_de_clases

http://utubersidad.com/?page_id=1234

http://www.slideshare.net/JaimeDavidRomero/fundamentos-de-las-bases-de-datos

http://es.wikipedia.org/wiki/Modelo_entidad-relacin

162

http://es.wikipedia.org/wiki/Modelo_relacional

http://www.buenastareas.com/ensayos/Grados-De-Normalizacin-Validacin-DeDatos-Reglas/24186855.html

https://www.google.com.mx/search?q=simbolo+para+el+diagrama+de+colaboracion&
source=lnms&tbm=isch&sa=X&ei=FnaCUqHaGYf8iQK374HoCQ&ved=0CAcQ_AUo
AQ&biw=1024&bih=498#q=diagrama%20de%20colaboracion%20interfaz&tbm=isch

http://www.slideshare.net/ece79/visual-basic-net-5186125

http://es.wikipedia.org/wiki/SQL

http://msdn.microsoft.com/es-es/library/ms187752.aspx

http://gotreportviewer.com/

163

ANEXOS

Modulo de Recetas el cual es para llevar el control de la cantidad de materia


prima (producto) que tienen los alimentos para sacar las existencias de la comida.

Imports System.Data.SqlClient
Public Class frmRecetas
Dim conexion As New SqlConnection("data source=(local); initial
catalog=LosEquipales; integrated security=true")
Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnNuevo.Click
'Desabilita Cajas de texto
cboComida.Enabled = True
cboProducto.Enabled = True
cboUnidad.Enabled = True
mskCantidad.Enabled = True
dgRecet.Rows.Clear()
'Carga la descripcion de las comidas registradas
Dim comando As New SqlCommand("select Descripcion from Comidas", conexion)
conexion.Open()
Dim lector As SqlDataReader = comando.ExecuteReader
While lector.Read
cboComida.Items.Add(lector(0))
End While
conexion.Close()
'carga la descripcion de la materia prima
Dim comando1 As New SqlCommand("Select Descripcion from MateriaPrima",
conexion)
conexion.Open()
Dim lector1 As SqlDataReader = comando1.ExecuteReader
While lector1.Read
cboProducto.Items.Add(lector1(0))
End While
conexion.Close()

164

'limpia las cajas de texto


txtComida.Text = ""
cboComida.Text = ""
cboProducto.Text = ""
txtProducto.Text = ""
mskCantidad.Text = ""
cboUnidad.Text = ""

'Habilitar/Desabilita Botones
btnGrabar.Enabled = True
btnConsultar.Enabled = False
btnNuevo.Enabled = False
'btnAgregar.Enabled = True
End Sub
Private Sub cboComida_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
cboComida.SelectedIndexChanged
' se trae datos de la Comida y los muestra
Dim comando As New SqlCommand("select Comidas.IdComida, Imagen from
Comidas
where Descripcion='" & cboComida.Text & "'", conexion)
conexion.Open()
Dim lector As SqlDataReader = comando.ExecuteReader
comando.Parameters.AddWithValue("@id", Convert.ToString(cboComida.Text))
If lector.Read() Then
txtComida.Text = lector(0)
PictureBox1.Image = Image.FromFile(Convert.ToString(lector("Imagen")))
End If
conexion.Close()
cboComida.Enabled = False
End Sub
Private Sub cboProducto_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
cboProducto.SelectedIndexChanged
' se trae datos de la materia prima (Producto) y los muestra
Dim comando As New SqlCommand("select MateriaPrima.IdProducto from
MateriaPrima
where Descripcion='" & cboProducto.Text & "'", conexion)
conexion.Open()
165

Dim lector As SqlDataReader = comando.ExecuteReader


While lector.Read
txtProducto.Text = lector(0)
End While
conexion.Close()
End Sub

Private Sub btnGrabar_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnGrabar.Click
try
'Graba Receta
For x = 0 To dgRecet.Rows.Count - 2
Dim coman As New SqlCommand("INSERT INTO Recetas VALUES('" &
txtComida.Text & "','" &dgRecet.Item(0, x).Value & "','" & dgRecet.Item(2, x).Value &
"')", conexion)
conexion.Open()
coman.ExecuteNonQuery()
conexion.Close()
Next x
MsgBox("Datos Guardados exitosamente")
dgRecet.Rows.Clear()
catch ex As Exception
MsgBox("No se Puede insertar el registro", MsgBoxStyle.Critical, "Atencin")
End try
'Inhabilitar las cajas de texto
txtComida.Enabled = False
cboComida.Enabled = False
cboProducto.Enabled = False
txtProducto.Enabled = False
mskCantidad.Enabled = False
cboUnidad.Enabled = False

166

'limpia las cajas de texto


txtComida.Text = ""
cboComida.Text = ""
cboProducto.Text = ""
txtProducto.Text = ""
mskCantidad.Text = ""
cboUnidad.Text = ""
'habilita/Desabilita botones
btnGrabar.Enabled = False
btnConsultar.Enabled = True
btnNuevo.Enabled = True
'btnAgregar.Enabled = False
End Sub
Private Sub btnConsultar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnConsultar.Click
frmConsultaRecetas.ShowDialog()
End Sub

Private Sub btnAgregar_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs)
'agrega a la rejilla
dgRecet.Rows.Add(txtProducto.Text, cboProducto.Text, mskCantidad.Text,
cboUnidad.Text)
'si ya se eligio un producto o materia prima se elimana del combo
cboProducto.Items.Remove(cboProducto.SelectedItem)
mskCantidad.Text = ""
cboProducto.Text = ""
cboUnidad.Text = ""
txtProducto.Text = ""
End Sub

167

En la Figura 66. Se ilustra la nota de remisin del establecimiento.

Figura 66. Nota de remisin del establecimiento.

168

Вам также может понравиться