Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica"

Transcripción

1 Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica IE 0502 Proyecto Eléctrico DESARROLLO DEL PROGRAMA ESTIMADOR DE OBRAS ELECTRICAS EN LENGUAJE JAVA Por: Miguel Ortega Álvarez Ciudad Universitaria Rodrigo Facio Diciembre del 2010

2 DESARROLLO DEL PROGRAMA ESTIMADOR DE OBRAS ELECTRICAS EN LENGUAJE JAVA Por: MIGUEL ORTEGA ALVAREZ Sometido a la Escuela de Ingeniería Eléctrica de la Facultad de Ingeniería de la Universidad de Costa Rica como requisito parcial para optar por el grado de: BACHILLER EN INGENIERÍA ELÉCTRICA Aprobado por el Tribunal: Ing. Juan Ramón Rodríguez Solera Profesor Guía Ing. Luis Fernando Andrés Jácome Ing. Wagner Pineda Rodríguez Profesor lector Profesor lector ii

3 ÍNDICE GENERAL ÍNDICE GENERAL...iii ÍNDICE DE FIGURAS...v NOMENCLATURA...vi RESUMEN...vii CAPÍTULO 1: Introducción Objetivos Objetivo general Objetivos específicos Metodología...3 CAPITULO 2: Bases de Datos Conceptos básicos de los sistemas de bases de datos Modelado de datos con el enfoque Entidad-Relación (ER) Entidades y atributos Relaciones El modelado de datos relacional Restricciones del modelo relacional Transformación ER-Relacional Algoritmo de transformación ER-Relacional SQL SQL: Un lenguaje no procedimental Diseño de la BD del programa presupuestador...29 CAPÍTULO 3: Conexión a bases de datos Máquina Virtual de Java (JVM) Distribución de la aplicación Arquitectura Cliente/ Servidor Arquitectura cliente/ servidor de dos capas API JDBC URLs en JDBC Código JDBC...39 CAPÍTULO 5: Conclusiones y recomendaciones Conclusiones...42 iii

4 5.2 Recomendaciones...43 BIBLIOGRAFÍA...45 ANEXO ANEXO iv

5 ÍNDICE DE FIGURAS Figura 2.1 Entorno simplificado de un sistema de bases de datos [1]...5 Figura 2.2 Esquema ilustrativo de una base de datos...7 Figura 2.3 Diagrama de esquema ER...12 Figura 2.4 Relación con razón de cardinalidad 1: N...15 Figura 2.5 Relación Cliente...17 Figura 2.6 Relaciones con restricciones de integridad referencial...21 Figura 2.7 Resultado de la transformación ER-Relacional a la figura Figura 2.8 Diagrama ER de la BD para el programa estimador...29 Figura 2.9 Modelo relacional para el programa estimador...30 v

6 NOMENCLATURA API BD DBMS DDL DML ER FK GUI IDE JAR JDBC JDK JRE JVM PK SQL URL Application Programming Interface Base de Datos Data Base Management System Data Definition Language Data Manipulation Language Modelo Entidad-Relación Foreign Key Graphic User Interface Integrated Development Environment Java Archive Java Data Base Connectivity Java Development Kit Java Runtime Environment Java Virtual Machine Primary Key Structure Query Language Uniform Resource Locator vi

7 RESUMEN Cuando un procedimiento o cálculo se realiza con mucha frecuencia, puede ser conveniente programarlo para facilitar su uso, ahorrar tiempo y evitar errores. Por ello se desea desarrollar un programa distribuible en lenguaje Java que realice presupuestos para obra eléctrica, basado en cálculos simples que utilizan el costo del material y los índices de labor; los índices de labor son un aproximado del tiempo que tarda personal calificado en instalar los diferentes materiales que se utilizan en las obras eléctricas. Para facilitar el desarrollo de la aplicación, se utilizan bases de datos, que servirán para almacenar información de clientes, de proyectos, materiales, y la información necesaria para calcular los presupuestos. La base de datos debe ser accesible y manipulable desde el programa informático, el cual debe poseer una interfaz gráfica para interacción con el usuario. Para el desarrollo del proyecto, se utilizan herramientas computacionales que permiten la elaboración de esquemas de bases de datos y de interfaces gráficas de usuario en forma simple y rápida, como los programas MySQL Workbench y el NetBeans IDE. Se logró obtener una base de datos que cumple con los requerimientos de datos del programa, y se lograron algunas de las funciones básicas de conexión entre la base de datos y el programa, como insertar información a la base de datos, desplegar información de la base de datos en forma de lista y en forma de tabla, además de realizar los cálculos de presupuestos. Con esta metodología de desarrollo, se pueden obtener programas similares para muchas aplicaciones de la ingeniería. vii

8 CAPÍTULO 1: Introducción Se pretende crear una herramienta que estime el presupuesto para obras eléctricas de una manera fácil, rápida y confiable, y tratar de reducir la subjetividad con que se calcula la mano de obra actualmente. Hasta ahora, gracias al aporte de estudiantes en semestres pasados, se cuenta con un programa con una interfaz gráfica amigable para el usuario y con una funcionalidad de estimación básica. Sin embargo, para que el programa funcione, se necesita primero diseñar una base de datos relacional que cumpla con los requerimientos de datos de la aplicación, por ejemplo información de los materiales, registros de clientes y proyectos, además de toda la información necesaria para realizar los cálculos. La base de datos se crea y se manipula con un tipo de software muy específico, conocido como DBMS (Data Base Management System), que además sirve de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de módulos como compiladores del lenguaje SQL (lenguaje estándar en bases de datos), optimizadores de consultas, y procesadores de datos, que administran automáticamente la gestión de las bases de datos. Existen muchos DBMS comerciales, aunque se utilizará el MySQL por ser uno de los más difundidos y además por ser de libre acceso. Para conectar la aplicación con el DBMS, se utiliza una interfaz conocida como API JDBC, el cual es un programa que provee acceso a las bases de datos desde el código fuente 1

9 escrito en Java. Con el API se pueden ejecutar instrucciones en SQL, actualizaciones o cambios en los datos y recuperación de registros, desde el lenguaje huésped (Java). 1.1 Objetivos Objetivo general Completar el desarrollo del programa Estimador de obras eléctricas en lenguaje JAVA Objetivos específicos Aplicar las técnicas de estimación de costos de obras eléctricas en el programa informático. Establecer el procedimiento para la creación de una base de datos basada en MySQL compatible con los requerimientos del programa. Establecer los métodos para conectar la aplicación con la base de datos. Estudiar e investigar la posibilidad de la distribución del programa en disco compacto. 2

10 1.2 Metodología Para la realización del proyecto se necesita adquirir cierto dominio de los conceptos relacionados con bases de datos, así como de varias herramientas computacionales. Parte fundamental del trabajo será el estudio bibliográfico relacionado con la teoría de bases de datos, así como el uso de los programas MySQL, MySQL Workbench y NetBeans IDE, de los cuales se consultará la ayuda que brindan y se estudiarán tutoriales e información que brindan los respectivos fabricantes en el Internet. De esta forma se pretende adquirir la habilidad para la elaboración de bases de datos, y así definir un esquema que se adecue al que necesita el programa. Seguidamente, se investigará y estudiará el procedimiento para establecer conexiones entre aplicaciones y bases de datos, para luego aplicarlo con el programa existente y el esquema de base de datos recién creada. Para esto se estudiará la lógica y estructura de los bloques de código que realizan tal función dentro de la aplicación, así como el lenguaje Java. Realizada la conexión, se debe determinar la fuente de falla del programa y tratar de solucionarlo. Por último, cuando el programa esté funcionando lo que procedería es el llenado de la base de datos con información de materiales utilizados en la industria eléctrica nacional y que satisfaga los requerimientos generales de cualquier usuario. También se ideará una manera de posibilitar la distribución de la aplicación en disco compacto. 3

11 CAPITULO 2: Bases de Datos Las bases de datos y su tecnología desempeñan un papel muy importante en todas las áreas de aplicación de las computadoras, como los negocios, la ingeniería, la medicina, y la educación, por mencionar unas cuantas. El término bases de datos es tan común que se debe comenzar por qué quiere decir: Es un conjunto de datos relacionados entre sí, que poseen las siguientes características: Representa algún aspecto del mundo real, llamado minimundo. Las modificaciones del minimundo se reflejan en la base de datos. Es un conjunto de datos lógicamente coherente, con cierto significado inherente. Una colección aleatoria de datos no puede considerarse una base de datos. Toda base de datos se diseña, construye y se llena con datos para un propósito específico. Está dirigida a un grupo de usuarios y tiene ciertas aplicaciones que interesan a dichos usuarios. [1] Las bases de datos pueden ser de cualquier tamaño y tener diversos grados de complejidad, desde una simple lista de nombres y direcciones hasta las que tienen las autoridades fiscales para llevar el control de las declaraciones fiscales. Las bases de datos computarizadas se crean y mantienen con un grupo de programas de aplicación escritos específicamente para esa tarea, llamado Sistema de Gestión de Bases de Datos (DBMS, Data Base Management System). El DBMS facilita el proceso de definir, construir y manipular bases de datos para diversas aplicaciones. En la figura 2.1 se puede 4

12 apreciar el esquema general, en donde el DBMS sirve como interfaz entre la base de datos y los programas de aplicación y los usuarios. El catálogo (metadatos) contiene información sobre los datos, como el tipo y formato de almacenamiento de cada elemento. El catálogo son datos que describen otros datos. Figura 2.1 Entorno simplificado de un sistema de bases de datos [1] Un DBMS consta de diversos componentes o módulos, como los módulos para implementar el catálogo, los lenguajes de consulta, los procesadores de interfaz, el acceso a 5

13 los datos y la seguridad. Debe poder comunicarse con otros programas del sistema, como el sistema operativo y los compiladores de diversos lenguajes de programación. Existen varios DBMS libres y no libres, entre los que encontramos: Libres: - MySQL - DB2 - PostgreSQL - Apache Derby - SQLite No libres: - Microsoft SQL Server - Oracle - Microsoft Access 2.1 Conceptos básicos de los sistemas de bases de datos Un modelo de datos es un conjunto de conceptos que pueden servir para describir la estructura de una base de datos. Una estructura de base de datos son los tipos de datos, los vínculos y las restricciones que deben cumplirse para esos datos. Los modelos de datos de alto nivel o conceptuales disponen de conceptos muy cercanos al modo como los usuarios perciben los datos. Estos utilizan conceptos como entidades, atributos y vínculos. Una entidad representa un objeto o concepto del mundo real, por ejemplo un cliente o un proyecto; un atributo representa alguna propiedad de 6

14 interés que da una descripción más amplia de una entidad, como nombre o edad. Un vínculo o relación describe una interacción entre dos o más entidades, por ejemplo el vínculo Se le presupuesta entre un cliente y un proyecto. En cualquier modelo de datos es importante distinguir entre la descripción de la base de datos y la base de datos misma. La descripción se conoce como esquema de la base de datos (o metadatos). En la figura 2.2 se presenta un diagrama simplificado del esquema para la base de datos del programa presupuestador, con las entidades Cliente, Proyecto y Material, y sus respectivos atributos. Cliente Nombre Teléfono Proyecto NombreP Nivel_Dificultad Salarioxhora Material NombreM Indice_Labor Costo Unitario Figura 2.2 Esquema ilustrativo de una base de datos Este esquema se especifica durante el diseño y no es de esperar que se modifique muy a menudo. En cambio, los datos reales de la base de datos pueden cambiar con mucha 7

15 frecuencia cada vez que se agregan o actualizan registros. Los datos que la base de datos contiene en un determinado momento se denominan estado de la base de datos. Cuando definimos una nueva base de datos, sólo especificamos su esquema al DBMS. En ese momento, el estado correspondiente de la base de datos es el estado vacío, sin datos. Cuando cargamos éstos, la base de datos pasa al estado inicial. De ahí en adelante, siempre que se aplique una operación de actualización a la base de datos, tendremos otro estado. El DBMS se encarga de asegurar que todos los estados sean estados válidos; esto es, que satisfagan la estructura y las restricciones especificadas en el esquema. El DBMS almacena el esquema en su catálogo, de modo que pueda consultarlo siempre que necesite hacerlo. [1] Los modelos de datos se clasifican como relacionales, de red, jerárquicos, y orientado a objetos. El mas ampliamente utilizado en la actualidad y en el que se va a basar este proyecto es el relacional, el cual representa la base de datos como una colección de tablas que se pueden almacenar como archivos individuales. [1] 2.2 Modelado de datos con el enfoque Entidad-Relación (ER) El modelo Entidad-Relación (ER) es un modelo de datos conceptual de alto nivel muy utilizado. Este modelo se emplea a menudo en el diseño conceptual de aplicaciones de bases de datos, y muchas herramientas de diseño de bases de datos aplican sus conceptos. El modelo ER describe los datos como entidades, atributos y vínculos o relaciones. 8

16 2.2.1 Entidades y atributos El objeto básico que se representa en el modelo ER es la entidad: algo del mundo real con existencia independiente. Una entidad puede ser un objeto con existencia física (una persona, un automóvil, una casa o un empleado) o un objeto con existencia conceptual, como una compañía, un puesto de trabajo o un proyecto. El tipo de entidad define a una colección de instancias que tienen los mismos atributos y se representa en los diagramas ER por medio de rectángulos que encierran el nombre del tipo de entidad (ver figura 2.3). [1] Cada entidad tiene propiedades específicas, llamadas atributos, que la describen. Por ejemplo, una entidad Cliente puede describirse por su nombre, dirección, teléfono, y correo electrónico. Una instancia de la entidad tendrá un valor para cada uno de sus atributos. En el modelo ER se manejan varios tipos distintos de atributos: simples o compuestos, monovaluados o multivaluados, y almacenados o derivados. El nombre del atributo se encierra en un óvalo en el diagrama ER y se conectan con su tipo de entidad con líneas rectas (ver figura 2.3). Los atributos compuestos se pueden dividir en atributos simples más pequeños. Por ejemplo el atributo NombreCompleto se puede dividir en los atributos simples Nombre, Apellido1 y Apellido2. Los atributos simples no son divisibles y también se llaman atómicos. En su mayoría, los atributos tienen un solo valor para una entidad en particular, y reciben el calificativo de atributos monovaluados. Sin embargo, hay casos en los que es 9

17 necesario un atributo multivaluado, que puede tener un conjunto de valores para la misma entidad. Por ejemplo, el atributo Teléfonos para la entidad Cliente es multivaluado ya que un cliente puede tener varios teléfonos donde contactarlo, pero el atributo Edad es monovaluado ya que una persona solo puede tener una edad. En algunos casos se relacionan dos o más valores de atributos; por ejemplo, los atributos Edad y FechaNacimiento de una persona. Para una entidad Persona en particular, el valor de Edad se puede determinar a partir de la fecha actual y el valor de FechaNacimiento de esa persona. Por tanto, se dice que el atributo Edad es un atributo derivado, y que es derivable del atributo FechaNacimiento, el cual es un atributo almacenado. Cada uno de los atributos de un tipo de entidades está asociado a un conjunto de valores (o dominio), que especifica los valores que es posible asignar a ese atributo para cada instancia de la entidad. [1] En algunos casos, una cierta entidad podría no tener ningún valor aplicable para un atributo. Por ejemplo, el atributo NumDpto de una dirección sólo se aplica a direcciones que corresponden a edificios de departamentos o condominios, pero no a otro tipo de residencias. En situaciones de este tipo se crea un valor especial llamado nulo. Los atributos se definen nulos cuando: su valor existe pero puede ser desconocido, su valor no aplica para una entidad particular, o si no se sabe si el valor existe. [1] Atributos clave de un tipo de entidades: Una restricción importante de un tipo de entidad es la restricción de clave o unicidad. Los tipos de entidades deben tener un atributo 10

18 cuyo valor es distinto para cada instancia o entidad individual. Los atributos de esta naturaleza se denominan atributos clave o llave primaria, y sus valores sirven para identificar de manera única a cada entidad. El atributo Cédula es una clave del tipo de entidad Cliente, ya que no hay dos clientes con el mismo número de cédula. El atributo CorreoElectrónico también es una clave o llave primaria de Cliente. Cuando existen varios atributos que pueden servir como llave primaria, cada atributo se le conoce como llave candidata. Hay ocasiones en que varios atributos juntos constituyen una clave, o sea que la combinación de los valores de los atributos es distinta para cada entidad individual. En la notación de los diagramas ER, el nombre de todo atributo clave aparece subrayado dentro del óvalo. Los conceptos anteriores son muy importantes a la hora de diseñar la base de datos. En la figura 2.3 se ilustra una propuesta de diagrama ER para la base de datos del programa estimador. 11

19 IdProyect o Nombre SalarioxHor a CLIENTE Se Le Presupuesta 1 N presupuesta PROYECTO N Nombr e Telefon o Cantidad IdMaterial Se Compone De Nombr e MATERIAL M CostoUnitario Figura 2.3 Diagrama de esquema ER El diseño de la base de datos es la construcción del esquema ER. Para esto, los diseñadores entrevistan a los futuros usuarios de la base de datos para entender y documentar sus requerimientos de información. En paralelo con la especificación de los requerimientos de datos, conviene especificar los requerimientos funcionales conocidos de la aplicación. Estos consisten en las operaciones definidas por el usuario que se aplicarán a 12

20 la base de datos, e incluyen la obtención de datos y la actualización. Como se verá luego, se utiliza un algoritmo simple para pasar del modelo ER al modelo relacional que utiliza el DBMS. En la figura 2.3 hay vínculos o relaciones entre los diversos tipos de entidades. De hecho, siempre que un atributo de un tipo de entidades hace referencia a otro tipo de entidad, hay alguna relación Relaciones Un tipo de relación entre n tipos de entidades define un conjunto de asociaciones entre entidades o instancias de estos tipos. En la figura 2.3 se observa el tipo de relación Se le presupuesta que define las asociaciones entre el cliente y cada uno de los proyectos que se le presupuesta. El grado de la relación es el número de entidades que participan en la relación; en nuestro diagrama solo existen relaciones binarias o de grado dos y serán las únicas necesarias para este proyecto. En los diagramas ER, los tipos de relación se representan con rombos conectados mediante líneas rectas con los rectángulos que representan a los tipos de entidades participantes en la relación. 13

21 Restricciones estructurales: Los tipos de relaciones típicamente tienen ciertas restricciones que limitan las posibles combinaciones de entidades que pueden participar en las instancias de relación (Las instancias de relación son las r i de la figura 2.4, mientras que las instancias de entidades son las c i y las restricciones de relación: p i en la misma figura). Existen dos tipos de 1) Razón de cardinalidad: Especifica cuantas entidades de un tipo pueden estar asociadas con las entidades del otro tipo que participa en la relación y viceversa. Las razones de cardinalidad se especifican como 1: N, N: 1, M: N y algunas veces 1: 1. En la figura 2.3 se observan razones de 1:N y M: N. 2) Restricción de participación: Especifica si la existencia de una entidad depende de que esté relacionada con otra entidad a través del tipo de relación. Visto de otra manera especifica el número mínimo de instancias de entidades que deben participar en la relación. Existen dos tipos de restricciones de participación: Total: Todas las entidades del conjunto de entidades tienen que participar en la relación. También se conoce como dependencia de existencia. Se representa en el diagrama con una doble línea que conecta la relación con la entidad. Parcial: Sólo un subconjunto del conjunto de entidades participa en la relación. [1] 14

22 Cliente Se Le Presupuesta Proyecto r1 p1 c 1 r2 p2 c 2 r 3 p 3 r 4 p 4 Figura 2.4 Relación con razón de cardinalidad 1: N Atributos de las relaciones: Los tipos de relación, al igual que los tipos de entidad, pueden tener atributos. Sin embargo, los atributos de los tipos de relación 1: 1 pueden migrar hacia uno de los tipos de entidad participantes, preferiblemente a la que tiene la participación total, y los atributos de los tipos de relación 1: N pueden migrar sólo hacia la entidad que participa en el lado N de la relación. En el caso de los tipos de relación M: N tales atributos deberán especificarse como atributos de la relación. Todo esto se verá más claro cuando se utilice el algoritmo de transformación ER-Relacional. 15

23 2.3 El modelado de datos relacional El modelo relacional de los datos fue introducido por Edgar Frank Codd de los laboratorios IBM en Se basa en una estructura de datos simple y uniforme la relación- y tiene fundamentos teóricos sólidos. Es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. El modelo relacional está íntimamente relacionado con el modelo ER, por lo que se aplican muchos de sus conceptos. Para evitar confusiones, en el modelo ER una relación define asociaciones entre tipos de entidades (representados en el diagrama por rombos), mientras que en el modelo relacional una relación debe ser visualizada como una tabla de valores. Cada tipo de entidad en el modelo ER es ahora una relación (tabla) en el modelo relacional que se llama como el tipo de entidad, y los atributos de la entidad nombran cada columna de la relación. De esta manera, cada fila o tupla representa una colección de valores de datos relacionados entre sí o instancias. En la figura 2.5 se observa la relación Cliente obtenida del modelo ER, junto con su estado. 16

24 Atributos Cliente Nombre Teléfono Ana Álvarez Manuel Palacios Will Soto Figura 2.5 Relación Cliente Un esquema de relación R, denotado por R ( A 1, A2,..., An ), se compone de un nombre de relación, R, y una lista de atributos A,..., 1, A2 An. Un esquema de relación sirve para describir la relación. El grado de una relación es el número de atributos, n, de su esquema de relación. [1] Un ejemplar de relación en un momento dado (el estado actual de la relación) refleja solo las tuplas validas que representan un estado específico del mundo real. En general, a medida que cambia el estado del mundo real, se debe cambiar la relación correspondientemente, transformándose en otro estado de la relación. Sin embargo, el esquema R es relativamente estático, y no cambia con frecuencia; lo hace, por ejemplo, 17

25 cuando se añade un atributo para representar información nueva que no estaba representada originalmente en la relación. [1] Restricciones del modelo relacional En un esquema de base de datos relacional se pueden especificar diversos tipos de restricciones. Entre estas restricciones se cuentan las de dominio, de clave, de integridad de entidades y de integridad referencial. Restricciones de Dominio: Las restricciones de dominio especifican que el valor de cada atributo A debe ser un valor atómico del dominio para ese atributo. El dominio debe tener un nombre lógico, un tipo de datos y un formato. Los tipos de datos asociados a los dominios por lo regular incluyen los tipos de datos numéricos estándar de los números enteros y reales. También se dispone de caracteres, cadenas de longitud fija y cadenas de longitud variable, así como tipo de datos de fecha, hora, tiempo y dinero. Es posible describir los dominios mediante un subintervalo de valores de un tipo de datos. Restricciones de clave: Por definición, todas las tuplas de una relación deben ser distintas, lo que significa que no puede haber dos tuplas que tengan la misma combinación de valores para todos sus atributos. Existen subconjuntos de atributos de un esquema de relación R, denominados superclave, con la propiedad de que no existen dos tuplas con la misma combinación de valores para estos atributos. Toda relación tiene por lo menos una superclave: el conjunto de todos sus atributos. Sin embargo, un concepto más importante es 18

26 el de clave o llave primaria PK, que es una superclave con la propiedad adicional de que la eliminación de cualquier atributo A deja un conjunto de atributos que ya no es una superclave de R. En otras palabras, es una superclave mínima, a la cual no podemos quitarle atributos sin que deje de cumplirse la restricción de unicidad. En general, un esquema de relación puede tener más de una clave; en tal caso, cada una de ellas se denomina clave candidata. La elección de una clave candidata para fungir como clave primaria es arbitraria; sin embargo, casi siempre es mejor escoger una clave primaria con un solo atributo o un número reducido de atributos. Se adopta la convención de subrayar los atributos que forman clave primaria de un esquema de relación, como en la figura 2.5. Restricción de integridad de entidades: Establece que ningún valor de llave primaria puede ser nulo. Esto es porque el valor de la clave primaria sirve para identificar las tuplas individuales en una relación; el que la llave primaria tenga valores nulos implica que no podemos identificar o distinguir algunas tuplas. Restricción de integridad referencial: Las restricciones anteriores se especifican sobre relaciones individuales, en tanto que la restricción de integridad referencial se especifica entre dos relaciones. Una base de datos relacional suele contener muchas relaciones y en éstas las tuplas están relacionadas de diversas maneras para mantener la consistencia entre sus tuplas. [1] La integridad referencial se basa en el uso de llaves externas (foreign keys). Una llave externa FK de una relación R que referencia a otra relación S es un conjunto de 19

27 atributos de R cuyo dominio es el mismo que el de los atributos de la llave primaria de S, y cuyo valor para toda tupla de R es igual al valor de la llave primaria de alguna tupla de S. En otras palabras, la llave externa FK es en una sola dirección, sólo una relación o tabla referencia a la otra y las llaves externas sólo se deben referir a atributos clave primaria existentes. Existe una llave externa en una relación R cuando la llave primaria de otra relación S existe en R. La llave externa en R por su parte puede o puede que no sea la llave primaria de R: 1) Vínculos identificadores: Cuando la llave externa es incluida como clave primaria. Se dan en las relaciones M: N. 2) Vínculos no identificadores: Cuando la llave externa no es incluida como llave primaria. Se dan en las relaciones 1: N. Se permite que un atributo que represente el mismo concepto del mundo real tenga nombres que pueden o no ser idénticos en diferentes relaciones. De manera similar, se permite que atributos que representen diferentes conceptos tengan el mismo nombre en relaciones distintas. En la figura 2.6 se ilustran los conceptos relacionados con restricciones de integridad referencial. 20

28 Cliente Nombre Teléfono Proyecto IdProyecto Nombre SalarioxHora Cliente(FK) Material IdMaterial Nombre CostoUnitario Se Compone De IdProyecto(FK) IdMaterial(FK) Cantidad Figura 2.6 Relaciones con restricciones de integridad referencial 2.4 Transformación ER-Relacional Como se mencionó anteriormente, los diseñadores de bases de datos consultan a los futuros usuarios de la aplicación para determinar las necesidades de datos de éstos; a partir de la información recopilada se crea un diagrama ER. Desde muchas herramientas computacionales se puede crear el esquema ER gráficamente, y luego se convierte automáticamente en un esquema de base de datos relacional expresado en lenguaje SQL. 21

29 También existen herramientas como SQL Workbench que convierte automáticamente el diagrama de esquema relacional al esquema de base de datos expresado en lenguaje SQL, para lo que es necesario convertir primero el diagrama ER al esquema relacional. A continuación se presenta un algoritmo que se utiliza para convertir un diagrama ER al esquema de base de datos relacional correspondiente Algoritmo de transformación ER-Relacional El algoritmo es el siguiente: Paso 1: Por cada tipo de entidad E del esquema ER, se crea una relación R que contenga todos los atributos simples de E, incluyendo sólo los atributos simples componentes de un atributo compuesto. Se elige uno de los atributos clave de E como clave primaria de R. Si la clave elegida es compuesta, el conjunto de atributos simples que la forman constituirá la clave primaria de R. Paso 2: Por cada tipo de entidad débil D del esquema ER con tipo de entidad dominante E, se crea una relación R y se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) de D como atributos de R. Además, se incluyen como atributos de clave externa de R los atributos de clave primaria de la relación dominante E. La clave primaria de R es la combinación de las claves primarias de las dominantes y la clave parcial de D, si existe. 22

30 Paso 3: Por cada tipo de vínculo binario 1: 1 R del esquema ER, se identifican las relaciones S y T que corresponden a los tipos de entidades que participan en R. Se escoge una de las relaciones (S) y se incluye como clave externa en S la clave primaria de T. Es mejor elegir un tipo de entidades con participación total en R en el papel de S. Se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) del tipo de vínculos 1: 1 R como atributos de S. Cabe mencionar que las relaciones 1:1 son poco comunes. Paso 4: Por cada tipo de vínculos normal (no débil) binario 1: N R, se identifica la relación S que representa el tipo de entidad participante del lado N del vínculo R. Se incluye como clave externa en S la clave primaria de la relación T que representa al otro tipo de entidad que participa en R. Se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) de R como atributos de S. Paso 5: Por cada tipo de vínculo binario M: N R, se crea una nueva relación S para representar R. Se incluyen como atributos de clave externa en S las claves primarias de las relaciones que representan los tipos de entidades participantes; su combinación constituirá la clave primaria de S. También se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) del tipo de vínculos M: N R como atributos de S Paso 6: Por cada atributo multivaluado A se crea una nueva relación R que contiene un atributo correspondiente a A más el atributo de clave primaria K de la relación que representa el tipo de entidad o de vínculo que tiene a A como atributo. Se selecciona como 23

31 clave primaria de R a la combinación de A y K, y como llave externa a K. Si el atributo multivaluado es compuesto, se incluyen sus componentes simples. Paso 7: Por cada tipo de vínculos n-ario, n>2, se crea una nueva relación S que represente a R. Se incluyen como atributos de clave externa en S las claves primarias de las relaciones que representan los tipos de entidades participantes. También se incluyen los atributos simples (o los componentes simples de los atributos compuestos) del tipo de vínculos n-ario como atributos de S. La clave primaria de S es la combinación de todas las claves externas que hacen referencia a las relaciones que representan los tipos de entidades participantes. [1] Según cada diagrama ER y sus características los pasos anteriores son o no son aplicables, por lo que en una transformación específica se pueden saltar varios pasos. Por ejemplo, para el diagrama ER de la figura 2.3, los pasos 2, 3, 6 y 7 no son aplicables. En la figura 2.7 se observa el esquema relacional obtenido de la transformación ER-Relacional aplicado al diagrama ER de la figura 2.3 CLIENTE ( , Nombre, Teléfono) PROYECTO (IdProyecto, Nombre, SalarioxHora, Cliente (FK a Cliente)) MATERIAL (IdMaterial, Nombre, CostoUnitario) SE COMPONE DE (IdProyecto (FK a Proyecto), IdMaterial (FK a Material), Cantidad) Figura 2.7 Resultado de la transformación ER-Relacional a la figura

32 En la figura 2.7 se obtuvieron las relaciones Cliente, Proyecto y Material con sus atributos y llaves primarias del paso 1 del algoritmo, excepto la llave externa de Proyecto que se obtuvo del paso 4. La llave externa Cliente es la llave primaria de la relación Cliente, pero se le cambió el nombre para resaltar que se refiere a Cliente. La relación Se Compone se obtuvo del paso 5, y contiene IdProyecto como llave externa a Proyecto e IdMaterial como llave externa a Material, y su combinación conforma la llave primaria de la relación. Además se incluye el atributo Cantidad. De esta transformación se obtuvo la figura 2.6 en primer lugar. Además, se observa que la llave externa de Proyecto es no identificadora, mientras que la llave externa de Se Compone De es identificadora. 2.5 SQL Junto con la definición de modelo relacional, Edgar Frank Codd propuso un lenguaje llamado DSL/Alpha para manipular los datos en las tablas relacionales. Poco después, IBM conformó un grupo de especialistas para construir un prototipo basado en las ideas de Codd. Este grupo creó una versión simplificada de DSL/Alpha que llamaron 25

33 SQUARE. Refinamientos de SQUARE llevaron a un lenguaje llamado SEQUEL que fue, finalmente, renombrado SQL. SQL ha sido cambiado frecuentemente a través del tiempo. A mediados de 1980, la American National Standards Institute (ANSI) empezó a trabajar en el primer estándar para el lenguaje SQL, que fue publicado en Subsecuentes mejoras llevaron a nuevas versiones del estándar SQL en 1989, 1992, 1999, 2003 y [4] El resultado de una consulta SQL es una tabla, llamada result set. Una nueva tabla permanente puede ser creada en una base de datos relacional almacenando el result set de una consulta. Similarmente, tanto tablas permanentes como results sets pueden ser consultados en el DBMS. El lenguaje SQL se divide en distintas partes: DDL (Data Definition Language): Es el lenguaje de definición de datos que permite especificar la estructura de los datos almacenados en la BD. Estos elementos son almacenados en unas tablas especiales conocidas como metadatos o diccionario de datos. DML (Data Manipulation Language): Es el lenguaje de manipulación de datos que permite recuperar, insertar, borrar y modificar los datos almacenados. DQL (Data Query Language): Cuando el DML es usado de forma interactiva fuera de un lenguaje de programación se le llama lenguaje de consulta de datos. 26

34 DCL (Data Control Language): Lenguaje de control de datos que permite controlar el acceso a los recursos de sistema. VDL (View Definition Language): Es el lenguaje de definición de vistas que permite especificar las vistas de usuario y su correspondiente mapeo al esquema conceptual. En la mayoría de DBMS se usa el DDL como VDL. En general, las sentencias o comandos DDL no requieren mucha discusión aparte de la sintaxis. Por su parte las sentencias DML, aunque pocas (select, update, insert y delete), ofrecen numerosas oportunidades de estudio detallado SQL: Un lenguaje no procedimental En los lenguajes de programación como Java o C++, se definen variables y estructuras de datos, se utiliza lógica condicional (if-then-else) e iteraciones (for-while), y se parte el código en pequeñas piezas reutilizables (métodos-funciones). El código se compila, y el ejecutable que resulta hace exactamente lo que se le programa a hacer. Estos son lenguajes procedimentales en los que se está en completo control de lo que el programa hace. Un lenguaje procedimental define los resultados deseados y el mecanismo o proceso por el que los resultados son generados. En cambio, un lenguaje no procedimental 27

35 también define los resultados deseados, pero el proceso por el que son generados se deja a un agente externo. [4] Con SQL, se debe ceder parte del control, ya que la manera en que una sentencia es ejecutada se deja a un componente del DBMS llamado optimizador. El optimizador mira la sentencia SQL, y tomando en consideración como están configuradas las tablas decide el camino más eficiente de ejecución. [4] Si solo se necesitan ejecutar comandos SQL interactivamente, cada vendedor de DBMS provee al menos una herramienta de comandos simple para enviar las sentencias SQL al motor de la base de datos. La mayoría de los vendedores proveen una herramienta gráfica que incluye una ventana que muestra los comandos SQL y otra ventana distinta que muestra los resultados de éstos. Para escribir una aplicación completa, se debe integrar SQL con alguno de los lenguajes de programación conocidos. [4] 28

36 2.6 Diseño de la BD del programa presupuestador El siguiente es el diseño de la base de datos para el programa estimador: IdP NivelDificulta d IdC Emai l NombreP SalarioxHora CLIENTE 1 Se Le N PROYECTO Nombre C Telefon o IdM CostoUnitario Presupuesta presupuesta Cantidad Presupuest o M MATERIAL N N Se Compone De IndiceLabor UnidadMedida NombreM SeClasificaPor IdF 1 FAMILIA NombreF Figura 2.8 Diagrama ER de la BD para el programa estimador 29

37 Se observa del diagrama que un cliente puede tener varios proyectos asociados, y que todo proyecto debe estar necesariamente asociado a un cliente (indicado por la doble línea). Un proyecto se compone de varios materiales, y varios materiales pueden estar asociados a varios proyectos. A su vez, varios materiales están clasificados dentro de una familia. Las entidades anteriores tienen sus atributos correspondientes. La figura 2.9 muestra el mapeo ER-Relacional luego de utilizar el algoritmo de transformación, y en el anexo 2 se encuentra el código correspondiente para implementarlo en MySQL. CLIENTE (IdC, NombreC, Teléfono, ) PROYECTO (IdP, Presupuesto, NombreP, SalarioxHora, NivelDificultad, IdC (FK a Cliente)) MATERIAL (IdM, NombreM, CostoUnitario, IndiceLabor, UnidadMedida, IdF (FK a Familia)) SE COMPONE DE (IdP (FK a Proyecto), IdM (FK a Material), Cantidad) FAMILIA (IdF, NombreF) Figura 2.9 Modelo relacional para el programa estimador 30

38 CAPÍTULO 3: Conexión a bases de datos 3.1 Máquina Virtual de Java (JVM) Se dice que los programas escritos en Java son portables, porque pueden ser ejecutados sin cambio alguno en diversos sistemas operativos a través de la Máquina Virtual de Java (JVM), que interpreta y traduce el bytecode al sistema operativo. Cuando la compilación de un programa es exitosa, se crea la versión compilada del archivo fuente llamada bytecode (código byte). El nombre del archivo bytecode generado por el compilador tendrá el sufijo.class, mientras que el prefijo es el mismo que el del código fuente. A diferencia de las instrucciones del lenguaje de máquina o el código de máquina, el bytecode de Java no está atado a ningún sistema operativo o CPU en particular, lo que significa que es el mismo independientemente de la plataforma donde se genere. Lo único necesario para ejecutar los mismos programas Java en diferentes sistemas operativos es tener los intérpretes del bytecode para los sistemas operativos deseados. Un intérprete también es llamado Máquina Virtual de Java (JVM), porque es como una máquina virtual que ejecuta el bytecode, mientras el CPU es una máquina real que ejecuta el código de máquina. El JVM viene incorporado en el JRE (Java Runtime Environment), y se encarga de ejecutar los programas compilados (bytecode). Cada sistema operativo tiene su implementación correspondiente de JRE, que interpreta el bytecode para poder ser ejecutado en su lenguaje máquina. 31

39 3.1.1 Distribución de la aplicación Para poder distribuir la aplicación a los usuarios, se debe crear un disco compacto con los archivos necesarios. El disco debe llevar el instalador de MySQL, el cual es un archivo.msi que se descarga de la página web mysql.com, así como el ejecutable.jar (Java Archive), que se crea desde el NetBeans IDE y que se compone de un comprimido del programa compilado y las clases y librerías que el programa utiliza. Los dos archivos anteriores es el software necesario para utilizar la aplicación, sin embargo el disco debe llevar también dos archivos pdf para las instrucciones de instalación de MySQL (Anexo 1), y para las instrucciones de uso del programa. También, se debe incluir un archivo Word que contenga el script tanto del esquema de la base de datos, como su estado (llenado de la relación material ), que se carga desde MySQL. Este script se encuentra en el Anexo Arquitectura Cliente/ Servidor Los primeros sistemas de bases de datos fueron de arquitectura centralizada, donde la base de datos, el DBMS y las aplicaciones de usuario estaban en una misma computadora. Los usuarios accedían a estos sistemas por medio de terminales con muy baja capacidad de procesamiento que prácticamente sólo servían para visualizar la información enviada por el computador central o mainframe. Posteriormente, las terminales fueron reemplazadas por PCs y estaciones de trabajo, pero eran usadas de modo similar (sólo para visualización). 32

40 Gradualmente, los DBMS tomaron ventaja de la capacidad de procesamiento del lado del usuario, dando paso a las arquitecturas cliente/ servidor. [1] Arquitectura cliente/ servidor de dos capas La arquitectura cliente/servidor se desarrolló para entornos de redes de computadoras donde existían máquinas cliente con cierta capacidad de procesamiento y máquinas servidor poderosas que ofrecían diferentes tipos de servicios. Servidores: máquinas con funcionalidades específicas. Pueden ser de diferentes tipos, por ejemplo: servidores de impresión, de archivos, de , y DBMS. Los últimos se usan para todas las tareas relacionadas con la creación, manipulación y mantenimiento de bases de datos. Clientes: máquinas con capacidad de procesamiento local para ejecutar las aplicaciones locales y usar los servicios ofrecidos por las computadoras servidor. Cuando el servidor se utiliza como DBMS, los programas de interfaz de usuario y los programas de aplicación se ejecutan del lado del cliente. El cliente puede comunicarse con el DBMS siempre y cuando tenga instalado el software necesario y obtenga la conexión requerida (por medio de JDBC). El servidor ejecuta la funcionalidad de consulta y transacción, relacionada con el procesamiento de comandos SQL. Los componentes de software están, por ende, distribuidos en dos sistemas: cliente y servidor. [1] 33

41 También es posible tener las aplicaciones en el servidor. Algunas de las ventajas de de esta configuración son que: Se pueden compartir entre diferentes usuarios. Es más fácil optimizarlas y modificarlas. Se puede restringir su uso a personas autorizadas con más facilidad. Se puede guardar su versión ya compilada disminuyendo el tiempo de respuesta a la consulta. [1] También existe la arquitectura de tres capas, la cual contiene una capa intermedia entre el cliente y el servidor de la base de datos. En las aplicaciones web esta capa intermedia almacena las reglas de comercio (procedimientos o restricciones) que se usan para acceder a los datos del servidor de la BD. Esta capa agrega un nivel más de seguridad al comprobar los credenciales del cliente antes de enviar una solicitud al servidor. La capa de presentación es la interfaz de usuario y permite la entrada de datos, la capa lógica comercial maneja las reglas y restricciones comerciales, y la capa de servicios incluye todo lo referente a la administración de los datos. De lo anterior se desprende la capacidad de lograr mayores niveles de integración que utilizan el Internet para las comunicaciones e intercambio de información, con el uso de DBMS y aplicaciones portables. 34

42 3.3 API JDBC Una aplicación Java y una base de datos se comunican entre sí por medio del API JDBC. Un API (Application Programming Interface) es una interfaz implementada por un programa que permite la interacción con otro programa. JDBC (Java DataBase Connectivity) es un API incluido dentro del lenguaje Java para el acceso a bases de datos, y consiste en un conjunto de clases e interfaces escritos en Java que permiten interactuar con bases de datos. Debido a que JDBC está escrito completamente en Java, también posee la ventaja de ser independiente de la plataforma, mientras posea una JVM. Tampoco será necesario escribir un programa para cada DBMS; una misma aplicación que utilice JDBC podrá manejar bases de datos de Oracle, SQL Server o MySQL. El API JDBC viene incluido en el paquete java.sql. Básicamente el API JDBC hace posible las siguientes tareas: Establecer una conexión con una base de datos Enviar sentencias SQL Manipular los datos Procesar los resultados de la ejecución de las sentencias [3] La columna vertebral de JDBC es la clase Driver Manager (gestor de drivers), que se encuentra representado por la clase java.sql.drivermanager. El gestor de drivers es pequeño y simple y su función principal es la de seleccionar el driver adecuado para conectar la aplicación con una base de datos determinada, y acto seguido desaparece. [3] 35

43 JDBC es una especificación formada por una colección de interfaces y clases abstractas, que deben implementar todos los fabricantes de drivers que quieran que su driver sea 100% Java y compatible con JDBC. Se puede considerar que JDBC ofrece dos conjuntos de clases e interfaces bien diferenciados, aquellas de mas alto nivel que serán utilizadas por los programadores de aplicaciones para el acceso a bases de datos, y otras de mas bajo nivel enfocadas hacia los programadores de drivers que permiten la conexión a la base de datos. [3] Los drivers permiten conectarse a una base de datos determinada. Existen cuatro tipos de drivers JDBC, cada tipo presenta una filosofía de trabajo diferente. Sin embargo, el que se necesita para el desarrollo del presente proyecto es el driver tipo 4 por sus características. Este tipo de driver convierte directamente las llamadas en JDBC al protocolo utilizado por el DBMS, lo que permite una comunicación directa entre la máquina cliente y el servidor en que se encuentra el DBMS. Este driver está escrito totalmente en Java. Para cada tipo de driver existe un gran número de drivers disponibles en la página web de sun microsystems, donde se ofrece un formulario de búsqueda que permite seleccionar el tipo de driver que se busca junto con el sistema gestor de bases de datos al que se desea acceder y la versión JDBC que implementa el driver. El driver tipo 4 necesario para MySQL se descarga gratuitamente de su página web (mysql.com), llamado Connector/J, aunque el NetBeans IDE trae incorporado un driver para conectar aplicaciones con bases de datos MySQL, haciendo innecesaria su descarga. 36

44 siguiente: El nombre del driver que brinda el fabricante para reconocerlo desde Java es el com.mysql.jdbc.driver Como se dijo anteriormente, el API JDBC se encuentra dentro del paquete java.sql que se incorpora como un paquete más dentro del lenguaje Java. Dentro de las clases, interfaces y excepciones mas importantes que se encuentran en este paquete podemos mencionar: java.sql.drivermanager: Es la clase gestora de los drivers. Esta clase se encarga de cargar y seleccionar el driver adecuado para realizar la conexión con una base de datos determinada. java.sql.connection: Representa una conexión con una base de datos. java.sql.statement: Actúa como un contenedor para ejecutar sentencias SQL sobre una base de datos. java.sql.preparedstatement: Permite la ejecución de sentencias SQL precompiladas a las que se le pueden pasar parámetros de entrada. java.sql.callablestatement: Permite ejecutar procedimientos almacenados de una base de datos. java.sql.resultset: Controla el acceso a los resultados de la ejecución de una consulta, es decir, de un objeto Statement. Permite también la modificación de estos resultados. java.sql.sqlexception: Para tratar las excepciones que se produzcan al 37

45 manipular la base de datos, ya sea durante el proceso de conexión, desconexión u obtención y modificación de los datos. java.sql.warning: Nos indica los avisos que se produzcan al manipular y realizar operaciones sobre la base de datos. java.sql.driver: Esta interfaz la deben implementar todos los fabricantes de drivers que deseen construir un driver JDBC. Representa un driver que podemos utilizar para establecer una conexión con una base de datos. java.sql.resultsetmetadata: Esta interfaz ofrece información detallada relativa a un objeto ResultSet determinado. java.sql.databasemetadata: Ofrece información detallada sobre la base de datos a la que se encuentra conectada la aplicación. java.sql.types: Realiza la conversión o mapeo de tipos estándar del lenguaje SQL a los tipos de datos del lenguaje Java. [3] son necesarias. En un programa sencillo sólo unas cuantas de estas clases, interfaces y excepciones URLs en JDBC Una URL de JDBC ofrece un mecanismo para identificar una base de datos de forma que el driver adecuado la reconozca y establezca una conexión con ella. Al igual que las 38

46 URLs generales sirven para identificar de un modo único un recurso en Internet, una URL de JDBC localizará una base de datos determinada. La sintaxis estándar de las URLs de JDBC es la siguiente: jdbc:<subprotocolo>:<subnombre> Siempre se debe comenzar por jdbc pero es el fabricante del driver quien debe especificar la sintaxis exacta de la URL para su driver. El subprotocolo suele ser el nombre del driver o del mecanismo de conectividad con la base de datos y el subnombre es una forma de identificar a la base de datos concreta. El subnombre puede variar ya que puede identificar una base de datos local, una base de datos remota, un número de puerto específico o una base de datos que requiera identificador de usuario y contraseña. [3] La URL para bases de datos de MySQL es la siguiente: jdbc:mysql://localhost:3306/nombredebd Código JDBC Para conectar aplicaciones con bases de datos, se debe hacer por medio de instrucciones en el lenguaje huésped (java). Para usar JDBC, se empieza por establecer una conexión a la base de datos. Para ello, se debe cargar el driver utilizando la clase DriverManager. Ésta devuelve un objeto Connection que le dirá a un objeto Statement que ejecute un comando DDL o DML, a un objeto PreparedStatement que ejecute un comando DML precompilado, o a un objeto CallableStatement que ejecute un procedimiento 39

Base de datos relacional

Base de datos relacional Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura 1. Conceptos Generales 2. Modelo Entidad / Relación 3. Modelo Relacional 4. Integridad de datos relacional 5. Diseño de bases de datos relacionales 6. Lenguaje de consulta estructurado (SQL) 1.1.- Objetivos

Más detalles

BASE DE DATOS RELACIONALES

BASE DE DATOS RELACIONALES BASE DE DATOS RELACIONALES Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para implementar bases de datos ya

Más detalles

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl Resumen demandas de almacenamiento y procesamiento de datos. Es el conjunto de estas dos capacidades

Más detalles

Tema 1. Conceptos básicos

Tema 1. Conceptos básicos Conceptos básicos Sistema de Gestión de Bases de Datos, SGBD (DBMS, Database Management System): software diseñado específicamente para el mantenimiento y la explotación de grandes conjuntos de datos 1

Más detalles

Capitulo 5. Implementación del sistema MDM

Capitulo 5. Implementación del sistema MDM Capitulo 5. Implementación del sistema MDM Una vez que se concluyeron las actividades de análisis y diseño se comenzó la implementación del sistema MDM (Manejador de Documentos de MoProSoft). En este capitulo

Más detalles

CAPÍTULO 3 Servidor de Modelo de Usuario

CAPÍTULO 3 Servidor de Modelo de Usuario CAPÍTULO 3 Servidor de Modelo de Usuario Para el desarrollo del modelado del estudiante se utilizó el servidor de modelo de usuario desarrollado en la Universidad de las Américas Puebla por Rosa G. Paredes

Más detalles

Ministerio de Educación Base de datos en la Enseñanza. Glosario

Ministerio de Educación Base de datos en la Enseñanza. Glosario Ministerio de Educación Base de datos en la Enseñanza. Glosario Instituto de Tecnologías Educativas 2011 Glosario Glosario GLOSARIO Archivo Un archivo es un elemento que contiene información y que a su

Más detalles

Aviso Legal El presente libro electrónico se distribuye bajo Attribution-NonCommercial- NoDerivs 3.0 Unported

Aviso Legal El presente libro electrónico se distribuye bajo Attribution-NonCommercial- NoDerivs 3.0 Unported PROGRAMACIÓN ORIENTADA A OBJETOS APLICADA A BASES DE DATOS Por LAURA NOUSSAN LETTRY BrowserSQL MySQL Workbench en Linux (Abril 2015, Mendoza) Aviso Legal El presente libro electrónico se distribuye bajo

Más detalles

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Diseño Lógico. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Diseño Lógico. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com. Maestría en Bioinformática Bases de Datos y Sistemas de Información Diseño Lógico Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda Conceptos Herramientas Diseño lógico Modelo Relacional Las

Más detalles

QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A)

QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A) APRENDERAPROGRAMAR.COM QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A) Sección: Divulgación Categoría: Lenguajes y entornos

Más detalles

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN 3.3 Aplicaciones Definición de Aplicación (Application). Programa informático que permite a un usuario utilizar una computadora con un fin específico. Las

Más detalles

Estructura de Bases de datos. Leonardo Víquez Acuña

Estructura de Bases de datos. Leonardo Víquez Acuña Estructura de Bases de datos Leonardo Víquez Acuña Lenguajes de Bases de Datos Un sistema de bases de datos proporciona Un lenguaje de definición de datos para especificar el esquema de la base de datos

Más detalles

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES El modelo relacional se basa en dos ramas de las matemáticas: la teoría de conjuntos y la lógica de predicados de primer orden. El hecho de que

Más detalles

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS AUTORÍA JOSEFA PÉREZ DOMÍNGUEZ TEMÁTICA NUEVAS TECNOLOGIAS ETAPA CICLOS FORMATIVOS DE GRADO SUPERIOR DE INFORMÁTICA Resumen En esta publicación se

Más detalles

BrowserSQL 4 versión 2 - TUTORIAL

BrowserSQL 4 versión 2 - TUTORIAL BrowserSQL 4 versión 2 - TUTORIAL LAURA NOUSSAN LETTRY (Mendoza, Argentina 2015) aviso legal El presente libro electrónico se distribuye bajo Attribution-NonCommercialNoDerivs 3.0 Unported INDICE INTRODUCCIÓN

Más detalles

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios "Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios Miguel Alfonso Flores Sánchez 1, Fernando Sandoya Sanchez 2 Resumen En el presente artículo se

Más detalles

Componentes de Integración entre Plataformas Información Detallada

Componentes de Integración entre Plataformas Información Detallada Componentes de Integración entre Plataformas Información Detallada Active Directory Integration Integración con el Directorio Activo Active Directory es el servicio de directorio para Windows 2000 Server.

Más detalles

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y Capítulo VI Conclusiones En este capítulo abordaremos la comparación de las características principales y de las ventajas cada tecnología Web nos ofrece para el desarrollo de ciertas aplicaciones. También

Más detalles

SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS))

SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS)) SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS)) Los sistemas de gestión de bases de datos son un tipo de software muy específico, dedicado a servir de interfaz entre la base de

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

Introducción a las redes de computadores

Introducción a las redes de computadores Introducción a las redes de computadores Contenido Descripción general 1 Beneficios de las redes 2 Papel de los equipos en una red 3 Tipos de redes 5 Sistemas operativos de red 7 Introducción a las redes

Más detalles

Modelo Entidad-Relación

Modelo Entidad-Relación Modelo Entidad-Relación El modelo de datos de entidad-relación (ER) se basa en una percepción de un mundo real que consiste en un conjunto de objetos básicos llamados entidades y de relaciones entre estos

Más detalles

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

Registro (record): es la unidad básica de acceso y manipulación de la base de datos. UNIDAD II 1. Modelos de Bases de Datos. Modelo de Red. Representan las entidades en forma de nodos de un grafo y las asociaciones o interrelaciones entre estas, mediante los arcos que unen a dichos nodos.

Más detalles

Bases de Datos Modelo Relacional

Bases de Datos Modelo Relacional Bases de Datos Modelo Relacional Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos del método relacional

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 9. Reglas de Integridad 1.- Introducción. 2.- Claves Primarias. 3.- Regla de Integridad de Entidades. 4.- Claves Ajenas. 5.- Regla de Integridad

Más detalles

ADMINISTRACIÓN DE BASE DE DATOS

ADMINISTRACIÓN DE BASE DE DATOS SQL SERVER T-SQL QUERY s es ADMINISTRADOR GRÁFICO SGBD Elementos objetos Tablas Procedimientos Triggers Funciones Usuarios Permiso Roles Contraseñas Programas DTS (Data Transfer System) Exportación e Importación

Más detalles

INTRANET DE UNA EMPRESA RESUMEN DEL PROYECTO. PALABRAS CLAVE: Aplicación cliente-servidor, Intranet, Área reservada, Red INTRODUCCIÓN

INTRANET DE UNA EMPRESA RESUMEN DEL PROYECTO. PALABRAS CLAVE: Aplicación cliente-servidor, Intranet, Área reservada, Red INTRODUCCIÓN INTRANET DE UNA EMPRESA Autor: Burgos González, Sergio. Director: Zaforas de Cabo, Juan. Entidad colaboradora: Colegio de Ingenieros del ICAI. RESUMEN DEL PROYECTO El proyecto consiste en el desarrollo

Más detalles

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd Maxpho Commerce 11 Gestión CSV Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd Índice general 1 - Introducción... 3 1.1 - El archivo CSV... 3 1.2 - Módulo CSV en Maxpho... 3 1.3 - Módulo CSV

Más detalles

Guía de Laboratorio Base de Datos I.

Guía de Laboratorio Base de Datos I. Guía de Laboratorio Base de Datos I. UNIVERSIDAD DON BOSCO FACULTAD DE INGENIERIA 1- Gestión del SQL Server Management Studio y creación de bases de datos. Objetivos: Identificar el entorno de trabajo

Más detalles

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Antes de analizar lo que es un servidor Web y llevara a cabo su instalación, es muy importante identificar diferentes elementos involucrados

Más detalles

Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño

Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño El proceso de diseño para una base de datos consta básicamente de 7 pasos, los cuáles se describen en la siguiente imagen.

Más detalles

LiLa Portal Guía para profesores

LiLa Portal Guía para profesores Library of Labs Lecturer s Guide LiLa Portal Guía para profesores Se espera que los profesores se encarguen de gestionar el aprendizaje de los alumnos, por lo que su objetivo es seleccionar de la lista

Más detalles

BASE DE DATOS UNIVERSIDAD DE LOS ANDES FACULTAD DE MEDICINA T.S.U. EN ESTADISTICA DE SALUD CATEDRA DE COMPUTACIÓN II. Comenzar presentación

BASE DE DATOS UNIVERSIDAD DE LOS ANDES FACULTAD DE MEDICINA T.S.U. EN ESTADISTICA DE SALUD CATEDRA DE COMPUTACIÓN II. Comenzar presentación UNIVERSIDAD DE LOS ANDES FACULTAD DE MEDICINA T.S.U. EN ESTADISTICA DE SALUD CATEDRA DE COMPUTACIÓN II BASE DE DATOS Comenzar presentación Base de datos Una base de datos (BD) o banco de datos es un conjunto

Más detalles

Capitulo III. Diseño del Sistema.

Capitulo III. Diseño del Sistema. Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje

Más detalles

Bases de Datos 3º Informática de Sistemas

Bases de Datos 3º Informática de Sistemas TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. Concepto y Funciones del SGBD. Lenguajes de los SGBD. Niveles de Abstracción. Arquitectura ANSI/SPARC. Componentes del SGBD. 1. Concepto y Funciones del SGBD.

Más detalles

Administración de la producción. Sesión 10: Gestor de Base de Datos (Access)

Administración de la producción. Sesión 10: Gestor de Base de Datos (Access) Administración de la producción Sesión 10: Gestor de Base de Datos (Access) Contextualización Microsoft Access es un sistema de gestión de bases de datos, creado para uso personal y de pequeñas organizaciones,

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. BASES DE DATOS Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. La creación de una base de datos debe ser realizada cuidadosamente procurando

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

DBMS (Data Base Management System) Un Sistema de Gestión de Base de Datos, consiste en una colección de datos interrelacionados y un conjunto de

DBMS (Data Base Management System) Un Sistema de Gestión de Base de Datos, consiste en una colección de datos interrelacionados y un conjunto de Unidad 1 DBMS (Data Base Management System) Un Sistema de Gestión de Base de Datos, consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a esos datos. El objetivo

Más detalles

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar CAPITULO 4 Requerimientos, Análisis y Diseño El presente capítulo explica los pasos que se realizaron antes de implementar el sistema. Para esto, primero se explicarán los requerimientos que fueron solicitados

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable 1. Introducción. El Sistema de Administración de Información de un Negocio Franquiciable (SAINF)

Más detalles

Unidad 1. Fundamentos en Gestión de Riesgos

Unidad 1. Fundamentos en Gestión de Riesgos 1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.

Más detalles

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades INTRODUCCION Uno de los objetivos del curso es modelar a través de un diagrama las estructuras lógicas requeridas para almacenar los datos y resolver las consultas del sistema información que requiera

Más detalles

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS 5 ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS Contenido: 5.1 Conceptos Generales Administración de Bases de Datos Distribuidas 5.1.1 Administración la Estructura de la Base de Datos 5.1.2 Administración

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

Figura 4.1 Clasificación de los lenguajes de bases de datos

Figura 4.1 Clasificación de los lenguajes de bases de datos 1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto Este capítulo describen los distintos lenguajes para bases de datos, la forma en que se puede escribir un lenguaje

Más detalles

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor. Procesamiento del lado del servidor La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante la interpretación de un script en el

Más detalles

Manual de NetBeans y XAMPP

Manual de NetBeans y XAMPP Three Headed Monkey Manual de NetBeans y XAMPP Versión 1.0 Guillermo Montoro Delgado Raúl Nadal Burgos Juan María Ruiz Tinas Lunes, 22 de marzo de 2010 Contenido NetBeans... 2 Qué es NetBeans?... 2 Instalación

Más detalles

Creación y administración de grupos de dominio

Creación y administración de grupos de dominio Creación y administración de grupos de dominio Contenido Descripción general 1 a los grupos de Windows 2000 2 Tipos y ámbitos de los grupos 5 Grupos integrados y predefinidos en un dominio 7 Estrategia

Más detalles

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Del MER al MR. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Del MER al MR. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com. Maestría en Bioinformática Bases de Datos y Sistemas de Información Del MER al MR Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda Conceptos MER a MR Introducción Agenda Conceptos MER a MR

Más detalles

UNIVERSIDAD DE SALAMANCA

UNIVERSIDAD DE SALAMANCA UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

19. Packages o paquetes

19. Packages o paquetes Programación orientada a objetos con Java 201 19. Packages o paquetes Objetivos: a) Definir el concepto de paquete b) Interpretar el código fuente de una aplicación Java donde se utilicen paquetes c) Construir

Más detalles

Workflows? Sí, cuántos quiere?

Workflows? Sí, cuántos quiere? Workflows? Sí, cuántos quiere? 12.11.2006 Servicios Profesionales Danysoft Son notables los beneficios que una organización puede obtener gracias al soporte de procesos de negocios que requieran la intervención

Más detalles

Acronis License Server. Guía del usuario

Acronis License Server. Guía del usuario Acronis License Server Guía del usuario TABLA DE CONTENIDO 1. INTRODUCCIÓN... 3 1.1 Generalidades... 3 1.2 Política de licencias... 3 2. SISTEMAS OPERATIVOS COMPATIBLES... 4 3. INSTALACIÓN DE ACRONIS LICENSE

Más detalles

Guías _SGO. Gestione administradores, usuarios y grupos de su empresa. Sistema de Gestión Online

Guías _SGO. Gestione administradores, usuarios y grupos de su empresa. Sistema de Gestión Online Guías _SGO Gestione administradores, usuarios y grupos de su empresa Sistema de Gestión Online Índice General 1. Parámetros Generales... 4 1.1 Qué es?... 4 1.2 Consumo por Cuentas... 6 1.3 Días Feriados...

Más detalles

3. Modelo relacional: Estructura e integridad.

3. Modelo relacional: Estructura e integridad. Modelo relacional: Estructura e integridad 47 3. Modelo relacional: Estructura e integridad. 3.1. Introducción. El modelo de datos relacional es posterior a los modelos jerárquicos y de red. Nació como

Más detalles

SISTEMAS DE INFORMACIÓN II TEORÍA

SISTEMAS DE INFORMACIÓN II TEORÍA CONTENIDO: EL PROCESO DE DISEÑO DE SISTEMAS DISTRIBUIDOS MANEJANDO LOS DATOS EN LOS SISTEMAS DISTRIBUIDOS DISEÑANDO SISTEMAS PARA REDES DE ÁREA LOCAL DISEÑANDO SISTEMAS PARA ARQUITECTURAS CLIENTE/SERVIDOR

Más detalles

Haga clic en los recuadros donde indica la mano y regrese al inicio del capítulo al hacer clic en el título de la sección donde se encuentra

Haga clic en los recuadros donde indica la mano y regrese al inicio del capítulo al hacer clic en el título de la sección donde se encuentra Cómo gestiono el Plan Anual de Adquisiciones de mi Entidad en el SECOP II? Crear equipo Crear Plan Anual de Adquisiciones Publicar Plan Anual de Adquisiciones Modificar Plan Anual de Adquisiciones Buscar

Más detalles

Índice libro SQL Server 2005 1 / 6

Índice libro SQL Server 2005 1 / 6 Sql Server 2005 Charte, Francisco Ed. Anaya Multimedia Precio: 13,30 336 páginas. Idioma: Español ISBN: 8441520283. ISBN-13: 9788441520288 1ª edición (06/2006). Índice libro SQL Server 2005 1 / 6 Microsoft

Más detalles

Primer avance de proyecto de software para la gestión de inscripciones en cursos

Primer avance de proyecto de software para la gestión de inscripciones en cursos Primer avance de proyecto de software para la gestión de inscripciones en cursos 1. Introducción Andrés Felipe Bustamante García, Carolina Sarmiento González En este documento se presentan los resultados

Más detalles

CAPÍTULO 2 Sistemas De Base De Datos Multiusuarios

CAPÍTULO 2 Sistemas De Base De Datos Multiusuarios CAPÍTULO 2 Sistemas De De Multiusuarios Un sistema multiusuario es un sistema informático que da servicio, manera concurrente, a diferentes usuarios mediante la utilización compartida sus recursos. Con

Más detalles

Apuntes de la Unidad 1 de Base de Datos

Apuntes de la Unidad 1 de Base de Datos DEFINICIÓN DE BASE DE DATOS.- Base de Datos es un conjunto de datos relacionados entre sðy que tienen un significado implðcito. En un sistema de información se cuenta con dos enfoques principales para

Más detalles

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica Base de Datos I Maestra: Martha E. Evangelista Salazar Introducción a los conceptos de Bases de Datos a).- Definiciones básicas sobre bases

Más detalles

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE AÑO: 2010 Qué es un servidor Blade? Blade Server es una arquitectura que ha conseguido integrar en

Más detalles

Toda base de datos relacional se basa en dos objetos

Toda base de datos relacional se basa en dos objetos 1. INTRODUCCIÓN Toda base de datos relacional se basa en dos objetos fundamentales: las tablas y las relaciones. Sin embargo, en SQL Server, una base de datos puede contener otros objetos también importantes.

Más detalles

Visión General de GXportal. Última actualización: 2009

Visión General de GXportal. Última actualización: 2009 Última actualización: 2009 Copyright Artech Consultores S. R. L. 1988-2009. Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimiento explícito de

Más detalles

Modelos y Bases de Datos

Modelos y Bases de Datos Modelos y Bases de Datos MODELOS Y BASES DE DATOS 1 Sesión No. 12 Nombre: Lenguaje SQL: Valores Nulos Contextualización Qué más ofrece el lenguaje SQL? Así como te has introducido en el desarrollo de la

Más detalles

TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS.

TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. Concepto y Funciones del SGBD. Lenguajes de los SGBD. Niveles de Abstracción. Arquitectura ANSI/SPARC. Componentes del SGBD. 1. Concepto y Funciones del SGBD.

Más detalles

Tema: CREACIÓN DE TABLAS DE RDBMS (RELATIONAL DATA BASE MANAGEMENT SYSTEM).

Tema: CREACIÓN DE TABLAS DE RDBMS (RELATIONAL DATA BASE MANAGEMENT SYSTEM). Base de datos I. Guía 1 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos I Tema: CREACIÓN DE TABLAS DE RDBMS (RELATIONAL DATA BASE MANAGEMENT SYSTEM). Objetivo Específico Creer una

Más detalles

Técnicas de Programación

Técnicas de Programación Técnicas de Programación U.D.1.2.- Programas informáticos de uso general: procesadores de texto y bases de datos. Definición Una base de datos es una recopilación de información relativa a un asunto o

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

Capítulo VI. Diagramas de Entidad Relación

Capítulo VI. Diagramas de Entidad Relación Diagramas de Entidad Relación Diagramas de entidad relación Tabla de contenido 1.- Concepto de entidad... 91 1.1.- Entidad del negocio... 91 1.2.- Atributos y datos... 91 2.- Asociación de entidades...

Más detalles

Formularios. Formularios Diapositiva 1

Formularios. Formularios Diapositiva 1 Formularios Crear un formulario utilizando el Asistente para formularios Modificación en vista Diseño Adición de Controles a un Formulario Adición de un Subformulario a un formulario Formularios Diapositiva

Más detalles

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es SCT3000 95 Versión 3.5 Software para la calibración de transductores de fuerza. Microtest S.A. microtes@arrakis.es Introducción El programa SCT3000 95, es un sistema diseñado para la calibración automática

Más detalles

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR En este capítulo se describe el análisis y diseño de un sistema, denominado e-commerce Constructor, el cual cumple con los siguientes objetivos: Fungir

Más detalles

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN Tabla de Contenidos LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN... 1 Tabla de Contenidos... 1 General... 2 Uso de los Lineamientos Estándares...

Más detalles

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas: SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas

Más detalles

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema Capítulo2 Planteamientodelproblema 38 2.1Antecedentesycontextodelproyecto En lo que respecta a los antecedentes del proyecto, se describe inicialmente el contexto donde se utiliza el producto de software.

Más detalles

UNIDADES DE ALMACENAMIENTO DE DATOS

UNIDADES DE ALMACENAMIENTO DE DATOS 1.2 MATÉMATICAS DE REDES 1.2.1 REPRESENTACIÓN BINARIA DE DATOS Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo

Más detalles

UNIDAD 3. MODELO RELACIONAL

UNIDAD 3. MODELO RELACIONAL UNIDAD 3. MODELO RELACIONAL El modelo relacional se basa en dos ramas de las matemáticas: la teoría de conjuntos y la lógica de predicados de primer orden. El hecho de que el modelo relacional esté basado

Más detalles

Capitulo VI. Conclusiones.

Capitulo VI. Conclusiones. Capitulo VI. Conclusiones. VI.I. Conclusiones. Finalmente como conclusiones tenemos que resaltar el uso de varias tecnologías aparte de Java, como lo son el uso de la librería O reilly para pasar archivos

Más detalles

RESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014

RESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014 RESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014 FAMILIA PROFESIONAL: INFORMATICA Y COMUNICACIONES MATERIA: 28. DESARROLLO WEB EN ENTORNO SERVIDOR CURSO: 2º DE CFGS DESARROLLO DE APLICACIONES

Más detalles

Microsoft Access proporciona dos métodos para crear una Base de datos.

Microsoft Access proporciona dos métodos para crear una Base de datos. Operaciones básicas con Base de datos Crear una Base de datos Microsoft Access proporciona dos métodos para crear una Base de datos. Se puede crear una base de datos en blanco y agregarle más tarde las

Más detalles

Interoperabilidad de Fieldbus

Interoperabilidad de Fieldbus 2002 Emerson Process Management. Todos los derechos reservados. Vea este y otros cursos en línea en www.plantwebuniversity.com. Fieldbus 201 Interoperabilidad de Fieldbus Generalidades Qué es interoperabilidad?

Más detalles

Guía Metodológica para el diseño de procesos de negocio

Guía Metodológica para el diseño de procesos de negocio Guía Metodológica para el diseño de procesos de negocio La guía desarrollada para apoyar TBA, se diseñó con base en las metodologías existentes para el desarrollo BPM, principalmente en aquellas que soportan

Más detalles

UNIVERSIDAD DE OVIEDO

UNIVERSIDAD DE OVIEDO UNIVERSIDAD DE OVIEDO ESCUELA POLITÉCNICA DE INGENIERÍA DE GIJÓN MÁSTER EN INGENIERÍA INFORMÁTICA TRABAJO FIN DE MÁSTER SPRING ROO ADD-ONS PARA PROTOTIPADO RÁPIDO JAVIER MENÉNDEZ ÁLVAREZ JULIO 2014 UNIVERSIDAD

Más detalles

SEGURIDAD Y PROTECCION DE FICHEROS

SEGURIDAD Y PROTECCION DE FICHEROS SEGURIDAD Y PROTECCION DE FICHEROS INTEGRIDAD DEL SISTEMA DE ARCHIVOS ATAQUES AL SISTEMA PRINCIPIOS DE DISEÑO DE SISTEMAS SEGUROS IDENTIFICACIÓN DE USUARIOS MECANISMOS DE PROTECCIÓN Y CONTROL INTEGRIDAD

Más detalles

Arquitectura y seguridad

Arquitectura y seguridad En el desarrollo del SIGOB nos hemos enfrentado a diversos problemas que nos han llevado a investigar y desarrollar nuestras propias tecnologías. En este documento presentamos cada uno de los desarrollos

Más detalles

Manual del usuario del Módulo de Administración de Privilegios del Sistema Ingresador (MAPSI)

Manual del usuario del Módulo de Administración de Privilegios del Sistema Ingresador (MAPSI) Manual del usuario del Módulo de Administración de Privilegios del Sistema Ingresador (MAPSI) 1. Introducción El presente manual representa una guía rápida que ilustra la utilización del Módulo de Administración

Más detalles

INTRODUCCION A LAS BASES DE DATOS Procesamiento de Archivos vs Bases de Datos ARCHIVOS BASES DE DATOS

INTRODUCCION A LAS BASES DE DATOS Procesamiento de Archivos vs Bases de Datos ARCHIVOS BASES DE DATOS INTRODUCCION A LAS BASES DE DATOS Procesamiento de Archivos vs Bases de Datos ARCHIVOS Datos repetidos. No se manejan estándares. Había inconsistencia de datos. Falta de seguridad en los datos. No existían

Más detalles