Vicenç Fernández es Doctor en Administración y Dirección de Empresas por la UPC e Ingeniero Técnico en Telecomunicaciones y Superior en Electrónica por la Universitat Ramon Llull (Enginyeria La Salle). Es profesor a tiempo completo en el Departamento de Organización de Empresas e imparte docencia en la Escola Tècnica Superior d’Enginyeria Industrial i Aeronàutica de Terrassa (ETSEIAT) y en la Escola Universitària d’Enginyeria Industrial de Terrassa (EUETIT) de la UPC. Ha sido docente en sistemas de información, dirección estratégica, gestión del conocimiento e investigación operativa. Recientemente ha publicado un libro sobre investigación operativa y ha escrito diversos artículos sobre estrategia, gestión del conocimiento y gestión de la tecnología en revistas como Revue Management & Avenir, Management Sciences, Intangible Capital y Management & Empresa. Vicenç Fernández Alarcón 120 AULA POLITÈCNICA / ORGANIZACIÓN DE EMPRESAS Vicenç Fernández Alarcón Desarrollo de sistemas de información Una metodología basada en el modelado Desarrollo de sistemas de información Una metodología basada en el modelado El objetivo de este libro es exponer, de forma práctica, el proceso de desarrollo de un sistema de información centrándose en el análisis de las necesidades de una empresa o negocio y en el diseño lógico de un sistema de información que satisfaga estos requisitos, pero sin olvidar las demás etapas en su desarrollo. Para ello, el libro se estructura en tres módulos. El primer módulo introduce qué es un sistema de información, así como otros elementos importantes para su comprensión. El segundo bloque expone, de forma detallada, las etapas y las fases que forman el ciclo de vida de un sistema de información: planificación, análisis, diseño, implantación y soporte de sistemas. Por último, el tercer bloque presenta tres técnicas: el modelado de casos de uso, el modelado de datos y el modelado de procesos, para el desarrollo de sistemas de información a través de varios ejemplos. El libro también ofrece un conjunto de ejercicios y problemas sobre el desarrollo de sistemas de información, un glosario con los términos más importantes y una extensa bibliografía, que ayudarán al lector en su proceso de aprendizaje. 9 788483 018620 EDICIONS UPC AULA POLITÈCNICA 120 Desarrollo de sistemas de información Una metodología basada en el modelado AULA POLITÈCNICA / ORGANIZACIÓN DE EMPRESAS Vicenç Fernández Alarcón Desarrollo de sistemas de información Una metodología basada en el modelado EDICIONS UPC Material elaborado para los Estudios de Segundo Ciclo d’Enginyeria en Organització Industrial de l’ETSEIAT, de la UPC Primera edición: junio de 2006 Diseño de la cubierta: Jordi Calvet © Vicenç Fernández, 2006 © Edicions UPC, 2006 Edicions de la Universitat Politècnica de Catalunya, SL Jordi Girona Salgado 31, 08034 Barcelona Tel.: 934 016 883 Fax: 934 015 885 Edicions Virtuals: www.edicionsupc.es E-mail: [email protected] Producción: Cargraphics Pedrosa B 29-31, 08908 L’Hospitalet de Llobregat Depósito legal: B-31667-2006 ISBN: 84-8301-862-4 Quedan rigurosamente prohibidas, sin la autorización escrita de los titulares del copyright, bajo las sanciones establecidas en las leyes, la reproducción total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografía y el tratamiento informático, y la distribución de ejemplares de ella mediante alquiler o préstamo públicos. 7 Índice Índice MÓDULO I: INTRODUCCIÓN A LOS SISTEMAS DE INFORMACIÓN 1. ¿Qué es un sistema de información? 1.1. Definición de sistemas de información 1.1.1. Una definición general de los sistemas de información 1.1.2. Una definición de los sistemas de información basada en la tecnología de la información 1.1.3. Una definición de los sistemas de información desde una perspectiva estratégica 1.2. Componentes de un sistema de información 1.2.1. Individuos participantes 1.2.2. Datos e información 1.2.3. Procesos de negocio 1.2.4. Tecnologías de la información 1.3. Clasificación de los sistemas de información 1.3.1. Clasificación en función de la agrupación de los usuarios en la organización 1.3.2. Clasificación en función del servicio ofrecido 2. 11 12 13 14 15 15 19 20 20 21 22 25 El ciclo de vida de un sistema de información 2.1. Principios necesarios en el desarrollo de un sistema de información 2.1.1. Implicar a los usuarios del sistema 2.1.2. Utilizar una estrategia para resolución de problemas 2.1.3. Establecer fases y actividades 2.1.4. Documentar durante desarrollo 2.1.5. Establecer estándares 2.1.6. Gestionar el proceso y los proyectos 2.1.7. Justificar el sistema como una inversión de capital 2.1.8. No tener miedo de revisar o cancelar alguna perspectiva 2.1.9. Dividir los problemas, y resolverlos uno a uno 2.1.10. Diseñar sistemas con previsión de crecimiento y cambio… 2.2. El ciclo de vida de un sistema de información 2.2.1. Desarrollo de sistemas de información 2.2.2. El ciclo de vida de los sistemas de información 2.2.3. Otros ejemplos de metodologías para el desarrollo de sistemas 31 31 32 32 33 34 34 34 35 36 36 36 36 40 41 MÓDULO II: FASES EN EL DESARROLLO DE SISTEMAS 3. Planificación de sistemas 3.1. El inicio de un proyecto de información 3.1.1. Planificación estratégica de sistemas de información 3.1.2. Causas de solicitud para el desarrollo de un sistema de información 3.1.3. Métodos para la selección de proyectos © Los autores, 2006; © Edicions UPC, 2006 49 49 52 53 8 Desarrollo de sistemas de información. Una metodología basada en el modelado 3.2. Actividades en la fase de planificación del proyecto 3.2.1. Seleccionar los participantes en el desarrollo de un sistema 3.2.2. Definir objetivos y el alcance del proyecto 3.2.3. Definición de actividades 3.2.4. Planificar un calendario 3.2.5. Asignar recursos 3.2.6. Diseñar criterios de evaluación 3.2.7. Estudiar la viabilidad del proyecto 3.3. Análisis de viabilidad 3.3.1. Viabilidad económica 3.3.2. Viabilidad operacional 3.3.3. Viabilidad técnica 3.3.4. Viabilidad de fechas 3.3.5. Viabilidad legal y contractual 3.3.6. Viabilidad política 3.3.7. Evaluar propuestas de sistemas de información a través de análisis de viabilidad 4. 69 70 71 75 78 81 82 83 85 85 Diseño de sistemas 5.1. Introducción al diseño de sistemas de información 5.2. Diseño lógico del sistema 5.2.1. Diseño lógico de datos 5.2.2. Diseño lógico de procesos 5.3. Diseño físico del sistema 5.3.1. Definir las fronteras de mecanización 5.3.2. Diseñar la arquitectura del sistema de información 5.3.3. Diseñar los procesos del sistema 5.3.4. Diseñar la bases de datos 5.3.5. Diseñar las salidas del sistema 5.3.6. Diseñar las entradas del sistema 5.3.7. Diseñar las interfaces del sistema 6. 67 Análisis de sistemas 4.1. Introducción del análisis de sistemas de información 4.2. Análisis del sistema actual 4.2.1. Analizar la estructura y el funcionamiento de la organización 4.2.2. Analizar el sistema de información actual 4.2.3. Analizar los problemas, las oportunidades y las normas 4.2.4. Establecer los objetivos del nuevo sistema 4.3. Análisis de requerimientos 4.3.1. Identificar las necesidades del sistema 4.3.2. Priorizar y seleccionar las necesidades 4.3.3. Estructurar las necesidades del sistema 5. 54 55 56 56 57 59 61 61 62 62 66 66 67 67 67 89 90 91 93 95 96 98 99 101 105 107 109 Implantación y soporte de sistemas 6.1. Introducción a la implantación de un sistema de información 6.2. Implementación del sistema de información 6.2.1. Construir y comprobar las tecnologías de comunicación 6.2.2. Construir y comprobar las bases de datos 6.2.3. Construir y comprobar los programas de software 6.2.4. Comprobar el sistema de información 6.3. Instalación y pruebas del sistema 6.3.1. Preparar un plan de instalación 6.3.2. Instalar y evaluar el nuevo sistema de información © Los autores, 2006; © Edicions UPC, 2006 111 112 113 114 117 118 119 120 124 9 Índice 6.3.3. Formación de los usuarios 6.4. Soporte del sistema 6.4.1. Mantenimiento del sistema 6.4.2. Recuperación del sistema 6.4.3. Soporte a los usuarios 6.4.4. Reingeniería del sistema 6.4.5. Obsolescencia del sistema 125 126 126 127 127 128 129 MÓDULO III: TÉCNICAS DE MODELADO 7. Modelado de requisitos del sistema 7.1. Introducción al modelado de necesidades funcionales 7.2. Conceptos y elementos del modelado de casos de uso 7.2.1. Casos de uso 7.2.2. Actores 7.2.3. Relaciones 7.3. Desarrollo de un modelo de casos de uso 7.3.1. Identificar actores de negocio 7.3.2. Identificar casos de uso que representen las necesidades del sistema 7.3.3. Construir un diagrama de casos de uso 7.3.4. Documentar las necesidades de negocio a través de narrativas de caso de usos 8. 145 Modelado de datos 8.1. Introducción al modelado de datos 8.2. Conceptos y elementos del modelado de datos 8.2.1. Entidades 8.2.2. Atributos 8.2.3. Relaciones 8.2.4. Normalización de datos 8.3. Desarrollo de un modelo de datos 8.3.1. Identificar entidades de datos 8.3.2. Representar un modelo contextual de datos 8.3.3. Identificar claves o identificadores de las entidades de datos 8.3.4. Representar un modelo de datos basado en claves 8.3.5. Definir arquitecturas de generalización 8.3.6. Identificar todos los atributos del modelo de datos 8.3.7. Realizar un análisis de datos 8.4. Otras notaciones para los diagramas entidad-relación 9. 131 132 132 133 134 138 138 139 142 151 152 152 153 156 162 164 164 165 166 167 168 169 172 173 Modelado de procesos 9.1. Introducción al modelado de procesos 9.2. Conceptos y elementos del modelado de procesos 9.2.1. Procesos 9.2.2. Flujos de datos 9.2.3. Agentes externos 9.2.4. Almacenes de datos 9.3. Desarrollo de un modelo de procesos 9.3.1. Desarrollar un diagrama de flujo de datos contextual 9.3.2. Representar un diagrama de descomposición funcional 9.3.3. Identificar los casos de uso o los eventos-respuesta 9.3.4. Representar un diagrama descomposición de eventos 9.3.5. Desarrollar diagramas de evento © Los autores, 2006; © Edicions UPC, 2006 175 176 177 179 184 185 186 186 188 188 191 191 10 Desarrollo de sistemas de información. Una metodología basada en el modelado 9.3.6. Construir un diagrama de flujos de datos del sistema 9.3.7. Desarrollar diagramas de flujos de datos primigenios 9.4. Otras notaciones para los diagramas de flujo de datos 193 195 195 Anexo A: Enunciado para el desarrollo de un sistema de información en una universidad 197 Preguntas y problemas 201 Glosario de términos 211 Bibliografía 217 © Los autores, 2006; © Edicions UPC, 2006 197 Anexo A Anexo A Enunciado para el desarrollo de un sistema de información en una universidad Una escuela universitaria vinculada a la Universidad Politécnica de Cataluña ha decidido desarrollar un sistema de información para su gestión integral. Actualmente, dicha escuela universitaria imparte la carrera de Ingeniería Industrial, que consta de diez semestres y más de setenta asignaturas entre troncales, obligatorias, optativas y de libre elección. El sistema de información que se intenta desarrollar debe permitir a la escuela universitaria gestionar toda la información y todas las acciones relacionadas con el funcionamiento de la carrera. Básicamente, el sistema de información debe almacenar toda la información relacionada con los estudiantes, con los profesores y con las asignaturas que se imparten en la escuela universitaria. Todos los estudiantes pueden ser identificados por dos números: el DNI y el NIA (Número de Identificación de Alumno). El sistema de información debe diferenciar dos tipos de estudiantes: los estudiantes que ya han finalizado la carrera de Ingeniería Industrial y los que están cursando la carrera en la actualidad. Del primer grupo es importante conservar información personal sobre el estudiante, así como la fecha de finalización y la nota final de la carrera. Por si acaso, también se aconseja almacenar todas las asignaturas en las que ha participado, el semestre en las que se matriculó y sus notas finales. La cantidad de información necesaria de los estudiantes que están cursando la carrera es bastante mayor. Aparte de almacenar la información personal del estudiante, se necesita conocer su número de cuenta (para cobrarle la matrícula cada año), así como todas las ayudas o subvenciones que ha recibido y todas las instancias que ha abierto durante la carrera. Una vez un estudiante acaba la carrera, la información sobre subvenciones y sobre instancias se debe eliminar del sistema de información. Por supuesto, se debe guardar la fecha de inicio de la carrera tanto de los estudiantes actuales como de los estudiantes que ya han finalizado la carrera. Los profesores de la escuela universitaria se identifican a través del DNI o a través del NPD (Número Personal Docente). El sistema de información debe almacenar bastante información sobre los profesores. Para empezar, el sistema debe poder diferenciar a los profesores que están activos de los que no están activos (por tener un año sabático o por una baja de maternidad/paternidad). En la actualidad existen distintas figuras de profesores (colaboradores, ayudantes, titulares, catedráticos, agregados, etc.). Cada figura contractual conlleva un número de créditos distintos a impartir. Por ejemplo, los profesores colaboradores deben realizar 24 créditos anuales, mientras que un profesor ayudante debe impartir 14 créditos anuales. A veces, estos valores pueden variar si el profesor pertenece a ciertas comisiones docentes. En función de la fecha de inicio, la figura contractual y el número de créditos a impartir, un profesor debe cobrar un sueldo u otro. Por este motivo el sistema debe conocer el sueldo de cada profesor en particular y el número de cuenta en donde debe ingresarse. Todos los profesores deben pertenecer a un único departamento (identificado por un número de tres dígitos). Para la gestión de los departamentos, los gestores de la escuela universitaria han comentado que es importante conocer el número de profesores que hay en cada departamento y su dirección postal (ya que algunos están situados fuera del edificio principal). Debido a la reducción del número de estudiantes durante los últimos años, hay departamentos que sólo tienen un profesor (por supuesto, que un departamento debe tener como mínimo un profesor). © Los autores, 2006; © Edicions UPC, 2006 198 Desarrollo de sistemas de información. Una metodología basada en el modelado Tal y como se ha comentado previamente, es muy importante que el sistema conozca toda la información personal del los estudiantes y de los profesores. Debido a la proliferación de móviles y a la gran cantidad de estudiantes extranjeros de esta escuela universitaria, el sistema de información debe poder almacenar todos los números de teléfonos que proporcione el profesor o el estudiante, así como los prefijos necesarios para cada número. Pero como mínimo, cada profesor y estudiante debe dejar un número de teléfono. La información relacionada con las asignaturas es de vital importancia para el funcionamiento del sistema de información. Cada asignatura tiene asociado un código formado por cinco dígitos. Cada asignatura tiene cuatro aspectos muy importantes: el número de créditos, los prerrequisitos para que un estudiante se pueda matricular (si los hay), la ficha de la asignatura y la guía de la asignatura. La ficha de una asignatura es un redactado que expone las características y los puntos principales de la asignatura como son los objetivos y la forma de evaluación. La guía de la asignatura es una versión más exhaustiva de la ficha de la asignatura. Una asignatura puede tener uno o varios prerrequisitos. Existen dos tipos de prerrequisitos: cuando es necesario haber aprobado otra asignatura o cuando sólo es necesario haber estado matriculado de otra asignatura (aunque no se haya aprobado). Los propietarios del nuevo sistema de información han comentado, en relación a las asignaturas que se imparten, la necesidad de conocer todas las aulas que tiene la escuela universitaria. Las aulas se pueden identificar de dos formas: un código de seis dígitos (los dos primeros dígitos representan el edificio en donde está, los dos siguientes representan la planta en donde está y los dos últimos dígitos representan el número del aula en la planta) y un nombre que representa la empresa que la subvenciona. Además, se propone conocer si el aula tiene proyector y/o cañón para las presentaciones multimedia. Como es comprensible, los profesores y las asignaturas están relacionados. Debido a que las asignaturas tienen como máximo 7,5 créditos, es previsible que la mayoría de profesores tengan que impartir más de una asignatura. También es necesario conocer el número de créditos de teoría, el número de créditos de prácticas y el número de créditos de laboratorio que debe impartir cada profesor en cada asignatura. Así como el coordinador de cada asignatura. Algunas asignaturas están impartidas por un único profesor, mientras que otras tienen varios profesores (algunos para teoría, otros para prácticas, y otros para el laboratorio). Estas vinculaciones pueden cambiar de un año para otro. Como se ha comentado al principio, los estudiantes pueden conseguir subvenciones a lo largo de la carrera. Cada subvención conseguida está descrita a través de la normativa de la subvención, la cantidad económica conseguida y un atributo sobre el tipo de ayuda o subvención a la que hace referencia. Toda esta información se elimina del sistema cuando un estudiante finaliza la carrera de Ingeniería Industrial. De forma muy similar, el sistema debe poder almacenar todas las instancias que un estudiante realice a lo largo de la carrera. Estas instancias se utilizan cuando surge un imprevisto como el incumplimiento de ciertas reglas durante la matriculación de un estudiante, o cuando se solicita la revisión de una asignatura. Toda esta información se elimina del sistema cuando un estudiante finaliza la carrera de Ingeniería Industrial. Todo lo que se ha comentado hasta el momento es muy importante para el funcionamiento del sistema de información. Sin embargo, falta poder almacenar la información que relaciona las asignaturas con los estudiantes. Tras muchas discusiones con los propietarios del sistema, se ha decidido que el sistema debe guardar cuándo un estudiante ha cursado una asignatura, en qué aula, en qué curso y qué nota ha sacado. En relación al curso, se ha decidido que un curso se identifique a través del año académico y el semestre (otoño o primavera). Tanto los profesores como los estudiantes deben poder actualizar en cualquier momento sus datos personales, como son la dirección postal y los números de teléfono. Por otra parte, la escuela universitaria tiene dos comités o grupos de personas que se preocupan del buen funcionamiento del centro: la dirección de la escuela y la administración de la escuela. © Los autores, 2006; © Edicions UPC, 2006 199 Anexo A Las altas y las bajas de los estudiantes las realiza la administración de la escuela universitaria, mientras que las altas y las bajas de los profesores las realiza la dirección de la escuela. Estas funciones fueron definidas en los estatutos de la escuela en su creación y no se han modificado hasta el momento. La dirección de la escuela universitaria también es la encargada de dar de alta las nuevas asignaturas en el sistema de información y de dar la baja a aquellas asignaturas que ya no se consideran necesarias. Sin embargo, el coordinador de la asignatura (un profesor) es el responsable de actualizar los datos de la asignatura, aunque con la supervisión y conformidad de la dirección de la escuela. Por supuesto, el profesor también es el encargado de introducir las notas de los estudiantes en el sistema de información. Desde le principio de cada semestre, un profesor puede solicitar las listas de los estudiantes que se han matriculado en sus asignaturas. Al final del semestre, el sistema de información bloquea las notas de los estudiantes y deja de permitir modificar las notas por parte de los profesores (para evita a los hackers). Es por este motivo que es tan importante que los profesores cuelguen en el sistema las notas antes de la fecha límite. De forma similar a los profesores, los estudiantes pueden solicitar en cualquier momento su expediente académico para ver su evolución en la carrera que están cursando o que ya han finalizado. Sin embargo, el estudiante sólo puede solicitar la revisión de la nota de una asignatura al final del semestre. En este caso, se crea una instancia a la que, posteriormente, el profesor y la dirección de la escuela debe responder. Al inicio de cada semestre, la administración de la escuela debe asignar a cada asignatura las aulas que necesita y sus horarios. Estas aulas pueden cambiar de un año a otro, así como ocurre con los horarios. Mientras la administración de la escuela se dedica a asignar horarios y aulas a las asignaturas, la dirección de la escuela se dedica a la asignación de cada profesor a cada asignatura. Después del proceso anterior, los estudiantes deben matricularse de una o varias asignaturas para ese semestre. El sistema debe comprobar la idoneidad de la matrícula. En primer lugar, el sistema comprueba que las asignaturas que el estudiante ha seleccionado no hayan sido ya aprobadas. Después debe validar los prerrequisitos de cada asignatura, y por último el sistema tiene que comprobar si se han superado el número máximo de créditos a matricularse. En caso de no cumplir una de las dos últimas condiciones, el sistema crea una instancia y lo notifica a la dirección de la escuela para que decida si el estudiante puede o no matricularse de todas esas asignaturas. El sistema también debe permitir modificar la matrícula. Pero en este caso, no se permite saltarse las condiciones de prerrequisitos o el número máximo de créditos. De forma aleatoria, la administración de la escuela realiza comprobaciones en cada asignatura, con la ayuda de los profesores, para detectar si se siguen la normas que se han definido en la ficha y en la guía de cada asignatura (por ejemplo, si se sigue la fórmula para calcular la nota final o el temario). Al final de cada mes, el sistema debe pagar a los profesores su sueldo de forma automática. De la misma forma, después de cada período de matrícula el sistema debe cobrar los costes de matrícula a cada estudiante de forma automática. Es por este motivo que la administración de la escuela solicita en cada período de matrícula la información sobre el número de la cuenta corriente de cada estudiante y la actualiza en la base de datos. Esta escuela universitaria ofrece subvenciones o ayudas a los estudiantes con dificultades económicas o con grandes expedientes académicos. Estas solicitudes tienen un tiempo de validez de un año y son concedidas por la dirección de la escuela universitaria. Tras aprobar todas las asignaturas de la carrera de Ingeniería Industrial, los estudiantes deben solicitar el título universitario a través del sistema de información. En ese mismo momento, el sistema empieza a considerar al estudiante como un estudiante que ya ha finalizado la carrera. Además, se comunica a la administración de la escuela este cambio y se envía una notificación al Ministerio de Educación y Ciencia. El estudiante puede solicitar en cualquier momento la situación de su título universitario (es decir, si ya ha llegado a la universidad o no). En este caso, la administración de la escuela tendrá que responder al estudiante. Por último, cuando el título universitario se envíe a la universidad, el Ministerio de Educación y Ciencia tendrá que informar del proceso a través del sistema de información de la universidad. © Los autores, 2006; © Edicions UPC, 2006 201 Preguntas y problemas Preguntas y problemas Tema 1. ¿Qué es un sistema de información? 1. Defina sistema de información desde las tres perspectivas que propone el libro. Señale las diferencias y similitudes entre dichas definiciones. 2. Defina trabajador de información y trabajador de conocimiento. Describa las diferencias entre ambos colectivos y las relaciones que se producen entre ellos. 3. Ofrezca cinco ejemplos de sistemas formales de información y cinco ejemplos de sistemas no formales de información. ¿Es siempre interesante traducir los sistemas no formales a sistemas formales de información? 4. Establezca las diferencias entre datos, información y conocimiento. Así mismo, ponga tres ejemplos que reflejan las diferencias entre los tres conceptos. 5. Indica los distintos tipos de personas que participan en el desarrollo de un sistema de información. Ponga tres ejemplos de cada uno de ellos. 6. Relaciona la clasificación de sistemas de información en función de la agrupación de los usuarios con la clasificación de sistemas de información en función del servicio ofrecido. 7. Describa las utilidades de un sistema de información gerencial. Ponga diversos ejemplos de dicho sistema de información. 8. Establezca las diferencias entre un sistema de apoyo a ejecutivos y un sistema de apoyo a la toma de decisiones. ¿En qué situaciones utilizaría uno u otro? 9. Ofrezca tres ejemplos de sistemas de información con distintos grados de formalidad y tres ejemplos con distintos grados de personalización. 10. Razone la importancia de las tecnologías de la información para el éxito de un sistema de información. Tema 2. El ciclo de vida de un sistema de información 1. Enumere los diez principios a seguir en el desarrollo de un sistema de información. Intente priorizarlos en función de su importancia y justifica el resultado. 2. ¿Qué ventajas y desventajas conlleva documentar el sistema de información durante su desarrollo? 3. Compare el desarrollo basado en modelos de un sistema y el desarrollo rápido de aplicaciones. ¿Cuándo utilizaría un tipo de desarrollo y cuándo el otro? 4. Compare el desarrollo basado en un paquete de aplicaciones y la subcontratación para el desarrollo de un sistema de información. ¿Cuándo utilizaría un tipo de desarrollo y cuándo el otro? 5. Enumere las fases en el desarrollo de un sistema de información según el libro. © Los autores, 2006; © Edicions UPC, 2006 202 Desarrollo de sistemas de información. Una metodología basada en el modelado 6. Compare los ciclos de vida propuestos por Senn, por Kendall y Kendall, y por Whitten, Bentley y Dittman. Comente sus similitudes y diferencias. 7. ¿Qué relación existe entre el desarrollo iterativo propuesto por George, Batra, Valacich y Hoffer y los ciclos de vida clásicos? 8. Defina arquitectura de un sistema de información. 9. Indique si es necesario establecer fases y actividades en todos los desarrollos de sistemas de información. Justifique la respuesta. 10. Busque en la red diversos paquetes de software que se puedan utilizar como un sistema de información. Enumere sus características y comenta las diferencias que existen entre estos paquetes de software. Tema 3. Planificación de sistemas de información 1. Señale y describa el objetivo de la planificación estratégica de sistemas de información. 2. Enumere, describa y compare las responsabilidades de los tres grupos de personas que participan en el desarrollo de un plan estratégico de sistemas de información. 3. Señale y describa el objetivo de la planificación en el desarrollo de un sistema de información. 4. Describa los distintos métodos para la selección de proyectos. Compare las ventajas y desventajas de utilizar cada uno de los métodos en relación al resto. 5. ¿Qué tipo de causas pueden generar una solicitud para el desarrollo de un sistema de información? Indique cinco ejemplos para cada tipo de causa. 6. ¿Cómo se calcula el tiempo esperado de una actividad? Busque el motivo de utilizar dicha fórmula para calcular el tiempo esperado de una actividad. Ponga dos ejemplos de tiempo esperado. 7. Enumere los seis tipos de viabilidad. Para cada uno de ellos, describa cómo se debe estudiar y qué importancia tiene en el análisis global de la viabilidad. 8. Ponga seis ejemplos de costes fijos y costes variables. Ponga, también, seis ejemplos de beneficios tangibles y de beneficios intangibles de un sistema de información. 9. ¿Por qué es importante tener en cuenta el valor de dinero en el tiempo? ¿Qué ocurre si no se actualiza el valor del dinero? 10. Invente un ejemplo formado por siete actividades en donde aparezcan ocho dependencias. Después representa dicha situación a través de un gráfico Gantt. Tema 4. Análisis de sistemas de información 1. Enumere y describa los objetivos de las cuatro actividades en el análisis del sistema actual. 2. Defina cultura organizativa. ¿Qué importancia tiene la cultura organizativa en el éxito del desarrollo de un sistema de información? ¿En qué situaciones la cultura organizativa puede convertirse en un elemento negativo en el desarrollo de un sistema de información? 3. Represente la cadena de valor de una empresa digital. Puede buscar información en la red. 4. Realice un análisis de las cinco fuerzas competitivas de Porter. Puede buscar información en la red. © Los autores, 2006; © Edicions UPC, 2006 203 Preguntas y problemas 5. Describa qué es un diccionario de proyectos. ¿Es importante utilizar un diccionario de proyectos o es simplemente opcional? 6. Enumere las similitudes y las diferencias entre un modelo lógico y un modelo físico. ¿Qué relación existe entre los dos tipos de modelos? 7. Busque tres ejemplos para cada una de las categorías propuestas por la estructura PIECES. ¿Qué beneficios aporta utilizar la estructura PIECES? 8. Busque tres ejemplos de requerimientos funcionales y tres ejemplos no funcionales. ¿Qué diferencias existen entre ellas? ¿Cómo se evalúan cada una de ellas? 9. ¿Cómo recopilaría información durante el desarrollo de un sistema? Enumere distintos métodos de recopilación de información y comenta las ventajas y desventajas de cada una de ellas. 10. Enumere los tres tipos de requerimientos existentes. Para el caso de un sistema de información en el departamento de marketing, identifica dos ejemplos de cada tipo de requerimientos. Tema 5. Diseño de sistemas de información 1. Compare los modelos lógicos de datos y los modelos físicos de datos. ¿Qué objetivos tiene cada uno de ellos? ¿Qué dependencia existe entre ellos? 2. Compare los modelos lógicos de procesos y los modelos físicos de procesos. ¿Qué objetivos tiene cada uno de ellos? ¿Qué dependencia existe entre ellos? 3. Defina diagrama entidad-relación. ¿Qué elementos forman un diagrama entidad-relación? 4. Defina diagrama de flujo de datos. ¿Qué elementos forman un diagrama entidad-relación? 5. Enumere los pasos a seguir para definir la arquitectura del sistema de información. ¿Qué importancia tiene cada uno de estos pasos? ¿Es posible saltarse alguno de ellos? 6. Busque seis ejemplos de almacenes físicos de datos. Compare cada uno de ellos y compara sus ventajas y desventajas. 7. Enumere diversos métodos de salida de un sistema de información y comente en qué situaciones es más conveniente su utilización. 8. Enumere diversos métodos de entrada a un sistema de información y comenta en qué situaciones es más conveniente su utilización. 9. Defina interfaz y la importancia en su diseño durante el desarrollo de un sistema de información. 10. ¿Qué es la normalización de datos? ¿Es necesario para desarrollar un sistema de información? Tema 6. Implantación y soporte de sistemas 1. Describa los tres tipos de redes existentes y compara las describiendo sus ventajas y desventajas. Busca información adicional en la red sobre cada tipo de red. 2. ¿Qué ventajas ofrece una base de datos en relación a un archivo de texto convencional? 3. Enumere las partes de un sistema de gestión de base de datos. Busca en la red cinco DBMS comerciales y comenta sus características. © Los autores, 2006; © Edicions UPC, 2006 204 Desarrollo de sistemas de información. Una metodología basada en el modelado 4. Busque un tutorial sobre SQL en la red. Después explique las diversas ventajas que ofrece este tipo de lenguaje cuando se está trabajando con grandes cantidades de información. 5. Enumere y describa las tareas para el desarrollo de un programa informático. Intente ordenarlo según el grado de dificultad y de importancia. 6. Compare las cuatro aproximaciones a la instalación de un nuevo sistema de información. Comente en qué situaciones utilizaría uno u otro. 7. Busque en la red cursos de formación para el uso de sistemas de información. ¿Qué características tienen (duración, precio, tipo de temario? 8. Busque en la red cursos de formación para la implantación de sistemas de información. ¿Qué características tienen (duración, precio, tipo de temario? 9. Defina los cuatro tipos de mantenimiento y de reingenierías de sistemas que se pueden realizar. 10. ¿Qué diferencias existe entre un estudio de viabilidad y un estudio de validación? ¿En qué situaciones se realiza cada uno de ellos? Tema 7. Modelado de casos de uso Problema 1: Imaginemos un videoclub en donde se quiere representar su funcionamiento a través de un modelo de casos de usos. Un analista de sistemas nos ha proporcionado los actores y los casos de usos que han de utilizarse. A continuación, se enumeran: • • Actores: Cliente, Dependiente, Proveedor, Tiempo. Casos de usos: Abrir cuenta, Cerrar cuenta, Comprar bono, Pagar el alquiler en efectivo, Pagar alquiler con el bono, Devolver cambio, Seleccionar y pedir película, Devolver película, Llamar cliente por retraso en la devolución, Pagar el retraso, Pedir por teléfono nuevas películas proveedor, Entregar películas nuevas al videoclub, Generar un listado de películas no devueltas finaliza el día. el al al al Se pide: a) Construir un modelo de casos de usos que represente el videoclub y agrupar los casos de usos en subsistemas. b) Construir un diagrama de dependencias. c) Construir el sub_caso de uso “pagar el alquiler en efectivo”, en donde aparezcan como mínimo una relación de <<incluye>> y una relación <<extiende>>. Problema 2: El gerente de un restaurante ha contratado a un analista de sistemas para crear un sistema de información que permita gestionar y consultar la disponibilidad de sus mesas y sus reservados. El restaurante dispone de tres tipos de reservas: mesa simple, reservado (de capacidad máxima de 10 personas) y reservado de empresa (de capacidad máxima de 50 personas). Así mismo el restaurante ha clasificado a los clientes en dos grupos: habituales y esporádicos. Cada reserva realizada debe almacenar n el sistema la siguiente información: Datos del cliente, la mesa o reservado que ha solicitado, el día y hora, y el número de comensales. El metre del restaurante debe poder llevar a cabo las siguientes operaciones: © Los autores, 2006; © Edicions UPC, 2006 205 Preguntas y problemas Obtener un listado de las mesas y reservados disponibles en cualquier momento Conocer el precio de una mesa o reservado en función del día y el número de comensales Conocer el descuento ofrecido a los clientes habituales Conocer el precio total para un cliente dado, especificando su mesa y reservado, el tipo de reserva y el número de comensales Dibujar en pantalla cualquier reservado para distribuir a los comensales Reservar una mesa o reservado especificando nombre del cliente y el número de comensales Eliminar una reserva especificando el número de mesa o reservado o el nombre del cliente El dueño del restaurante puede usar el sistema de información para: Cambiar el precio de una mesa o un reservado de acuerdo al día y la hora (comida o cena) Cambiar el valor del descuento ofrecido a los clientes habituales Calcular las ganancias que tendrán en un mes especificado El restaurante tiene actualmente información sobre sus clientes más habituales. Esta estructura puede manejarla con un listado (o entidad), cuya clave sea el número de cliente (los clientes habituales tienen una tarjeta personal). El diseño a desarrollar debe facilitar la extensibilidad de nuevos tipos de mesas y reservados o clientes y a su vez permitir agregar nuevas consultas. Se pide: a) Construir un modelo de casos de usos que represente el sistema que se quiere instalar en el restaurante, y agrupar los casos de usos en subsistemas. b) Construir un diagrama de dependencias. c) Construir el sub_caso de uso en donde aparezcan como mínimo dos relaciones de <<incluye>> y dos relaciones <<extiende>>. Tema 8. Modelado de datos Problema 1: Un importante grupo de inversores ha decidido comprar una cadena de cines, los cuales están situados en territorio catalán. Después de su adquisición, los inversores han comprobado que la gestión de cada cine se hacía de forma independiente a la del resto de la cadena. Por este motivo, se nos ha pedido desarrollar una base de datos global que permite una mejorar gestión de la cadena de cines. La cadena que han comprado los inversores está formada por una gran cantidad de cines, cada uno de ellos con características diferentes. Para entender el funcionamiento de la cadena, es necesario diferenciar lo que son las salas de lo que son los cines. Cada uno de los cines puede tener una o varias salas de proyección (multicines). Cada una de estas salas de proyección tiene características diferentes en relación al número de asientos, el tamaño de la pantalla, el tipo de sonido que tiene (analógico/digital), etc. Como es habitual, en cada sala se proyecta una única película, mientras que el número de anuncios no está limitado (puede no emitirse ninguna o muchos). Es por este motivo que tenemos que almacenar todos los anuncios a proyectar y todas las películas que la cadena ha alquilado en nuestro sistema de información. Por otro lado, es necesario saber a qué distribuidor se han alquilado las películas. De cada distribuidor es necesario conocer su nombre, la dirección fiscal, el teléfono, etc. Cada película sólo pertenece a un único distribuidor. En cambio, cada distribuidor puede tener en su posesión uno o varias películas. Tanto las películas como los anuncios pueden estar simultáneamente en varias salas, o no estar en ninguna. Todo depende de las decisiones semanales del director general. Se pide: a) Identificar las entidades necesarias para modelar la situación anterior a través de un modelo de datos b) Dibujar un diagrama entidad-relación que represente la situación anterior y que muestre las entidades, las relaciones, y el orden y la cardinalidad de cada relación. © Los autores, 2006; © Edicions UPC, 2006 206 Desarrollo de sistemas de información. Una metodología basada en el modelado Problema 2: Se le pide que asesore al servicio de bibliotecas de su universidad (como persona entendida en el diseño de los sistemas de información) en la realización de un DER teniendo en cuenta el funcionamiento de la biblioteca que a continuación se describe: Como todo el mundo puede imaginar, la biblioteca de nuestra universidad se dedica principalmente a prestar libros a estudiantes durante el curso. Pero tras muchos años de utilizar un sistema basado en tarjetas, se intenta pasar a un sistema basado en ordenadores. El sistema debe almacenar toda la información relacionada con los libros que la biblioteca puede prestar. Así mismo, también se necesita conocer a todos los estudiantes que se han matriculado en la universidad (nuestros clientes). Los estudiantes de nuestra universidad pueden sacar uno o varios libros de la biblioteca al mismo tiempo. Después de muchas discusiones, los bibliotecarios han decidido poner un tope de diez libros por estudiante al mismo tiempo. Una forma muy típica de buscar un libro es a través de sus autores. Es por este motivo que los bibliotecarios han pensado en que el sistema también tenga almacenada información sobre autores. Se tiene que tener presente la posibilidad de que un autor que esté almacenado en el sistema no tenga asociado ningún libro. ¿Cuándo puede pasar esto? Por ejemplo, en el caso de que un libro se pierda, el bibliotecario tendrá que dar de baja el libro del sistema pero no se tendrá que dar de baja al autor, ya que en el futuro es posible que se compre un nuevo libro de ese autor. No es necesario decir que todos los libros han tenido que ser escritos por un autor como mínimo. Y que un autor puede haber escrito unos cuantos libros. Por último, no nos olvidemos que estamos hablando de una universidad, por lo que la mayoría de libros (no todos) están vinculados a una o más asignaturas de la universidad. La información de las asignaturas permite a los bibliotecarios asociar nuevos libros a las asignaturas existentes, creando una gran bibliografía para cada asignatura. Sin embargo, todavía existen asignaturas sin ninguna bibliografía (aunque parezca mentira). Se pide: a) Dibujar un diagrama entidad-relación que represente la situación anterior y que muestre las entidades, las relaciones, y el orden y la cardinalidad de cada relación. b) Dibujar el diagrama entidad-relación anterior, eliminando cualquier tipo de relación de muchos a muchos (a través de entidades asociativas). Problema 3: El gimnasio Terragym nos ha solicitado diseñar una base de datos para gestionar el negocio. Su gerente nos ha indicado algunos detalles que debemos de tener en cuenta en el diseño del SI. Dicha base de datos debe almacenar la información de los actuales y futuros socios del gimnasio. Debido a la proliferación de móviles, la base de datos debe permitir que los socios puedan registrar tantos números de teléfonos como crean conveniente. Por otra banda, el gimnasio ofrece cursos de educación física dirigidos por uno o dos profesores. Cada uno de los profesores del gimnasio deben también estar registrados en la base de datos, así como otras empresas en donde estén trabajando en la actualidad (un profesor puede trabajar en más de un gimnasio al mismo tiempo). En la actualidad existen cuatro tipos de cursos de educación física (curso de fitness, aeróbic, spinning, steps). No obstante, es posible que en el futuro aumente el número de cursos impartidos, por lo que se tendrá que tener en cuenta en el diseño de la base de datos. Es importante que la base de datos permita crear informes de cada uno de los cursos, de manera que se pueda observar que clientes están abonados a dichos cursos, y qué profesores están asignados a cada curso. Después de dos meses de funcionamiento del gimnasio (de forma manual porque están esperando nuestro SI), se ha decidido definir cinco cuotas diferentes (universitaria, bronce, plata, oro y platinium), aunque es © Los autores, 2006; © Edicions UPC, 2006 207 Preguntas y problemas posible que aumente. En función del tipo de cuota, es posible que un socio pueda realizar desde 1 curso (obligatorio) a 8 cursos como máximo. Para atraer a más clientes, los socios que tengan familiares en el gimnasio tendrán descuentos, por lo que es necesario saber que socios son familiares entre ellos. Por último, se debe guardar los precios en función del tipo de cuota y del número de familiares de cada socio. Se pide: a) Entidades necesarias y sus atributos más significativos b) Un diagrama entidad-relación c) Las relaciones entre las entidades (orden y cardinalidad) Tema 9. Modelado de procesos Problema 1: Se le pide que asesore al servicio de bibliotecas de su universidad (como persona entendida en el diseño de los sistemas de información) en la realización de un DFD teniendo en cuenta que la biblioteca realiza las siguientes funciones básicas: En primer lugar, los bibliotecarios se ocupan de entrar en el sistema las altas y las bajas de los libros, así como del resto de documentos que pueden ser prestados. En segundo lugar, también se gestiona la petición de libros por parte de los usuarios en base a las siguientes características: Si un usuario quiere solicitar uno o más libros a la biblioteca, deberá presentar el carné de la biblioteca y una ficha en la que se detallan todos los libros que solicita. Una vez entregados el carné y la ficha, el sistema comprobará y aceptará la petición de los libros solicitados siempre que pueda satisfacer la petición, es decir, siempre que existan ejemplares disponibles. En caso afirmativo, el sistema deberá actualizar el número de unidades disponibles de cada libro prestado, y almacenar la ficha de préstamo en el sistema y el carné del usuario en un cajón de una mesa. En tercer lugar, también se tiene que poder gestionar las devoluciones teniendo en cuenta que un usuario no puede realizar más peticiones hasta que no haya devuelto todos los documentos de la petición anterior. El usuario necesita utilizar el carné de la biblioteca para realizar una nueva petición. Sin embargo, al usuario no se le entrega el carné hasta que no ha devuelto todos los libros (Recordad que después de coger prestado uno o más libros, la bibliotecaria guarda el carné en un cajón hasta que el usuario no ha devuelto todos libros). No obstante, hay que tener en cuenta que el usuario sí que puede hacer una devolución parcial de los libros que tiene. Cuando un usuario realiza una devolución, el sistema debe actualizar el stock de libros y comprobar la fecha de devolución de cada ejemplar para estudiar, en el caso de que la devolución se haga fuera de tiempo, la imposición de una sanción que tiene un coste de X unidades monetarias por cada día de retraso. En este caso, la sanción se emite cuando el usuario entrega el último documento prestado.Se pide: a) Representar un diagrama de flujo de datos de contexto que represente la situación anterior. b) Dibujar un diagrama de flujo de datos de nivel medio (especificando las funciones básicas que se describen en el enunciado). Problema 2: Una empresa de reparación de aviones diseña un sistema que debe permitirle el máximo control de las tareas que realiza a través de un seguimiento de los pedidos de reparación y de una gestión de almacén © Los autores, 2006; © Edicions UPC, 2006 208 Desarrollo de sistemas de información. Una metodología basada en el modelado que reduzca el stock de piezas de repuesto. Además el sistema debe tener un módulo de contabilidad y facturación automática para cada pedido. El sistema debe contar con un mecanismo de aceptación-grabación de pedidos de los clientes, que puede contemplar varias actividades o modalidades de mantenimiento (preventivo-periódico, reparación, reemplazo de piezas) que estarán previamente codificadas y tarificadas. El sistema deberá calcular el precio total del pedido (horas de trabajo más las piezas utilizadas), comprobar en la base de datos si hay disponibilidad de piezas, y efectuar, en caso contrario un pedido al suministrador, actualizar el fichero de stock de piezas, permitir un seguimiento de la situación del trabajo (en base a fases predeterminadas por cada tipo de mantenimiento) y finalmente, emitir la factura al cliente, actualizar el montante de la deuda por cada cliente (puede haber pagos anticipados, el pago de las deudas se hace semestralmente) y comprobar el abono de la deuda al final de cada periodo semestral. Se pide: a) Representar un diagrama de flujo de datos de contexto que represente la situación anterior. b) Representar un diagrama de flujo de datos de nivel medio (especificando las funciones básicas que se describen en el enunciado). c) Representar un diagrama de flujo de datos de bajo nivel que refleje la situación anterior. Problema general (capítulos 7, 8, y 9) Un grupo de estudiantes de Terrassa ha decidido abrir una empresa (Viajes ETSEIT) dedicada a la preparación de paquetes turísticos a medida para agencias de viaje. Su funcionamiento es bastante simple; sin embargo, la cantidad de información a gestionar para el buen funcionamiento de la empresa es bastante grande, por lo que es necesario desarrollar un nuevo sistema de información. Los servicios que ofrece la empresa Viajes ETSEIT son varios, y con el tiempo se espera que crezcan mucho más. En la actualidad, Viajes ETSEIT permite crear paquetes de vacaciones formado por reservas de hoteles, reservas de billetes de avión, alquiler de automóviles y reserva de billetes de barco. Para conseguir los mejores precios del mercado, la empresa Viajes ETSEIT sigue una política de compra anticipada. Por ejemplo, la empresa reserva y paga de forma anticipada un gran número de habitaciones para ser usadas de cualquier manera entre unas determinadas fechas. Este sistema permite reservar las habitaciones de forma muy económica, pero en caso de no poder venderlas después, la empresa debe quedárselas con todo el coste asociado. De la misma forma funcionan el resto de servicios que ofrecen. De forma mensual, la empresa revisa el número de habitaciones que tiene reservada en los distintos hoteles, el número de billetes de avión que ha comprado, el número de vehículo alquilados y el número de billetes de barco que ha adquirido, y en función del stock disponible decide si comprar más billetes de cada tipo o no. Como la empresa está en sus inicios, todos los hoteles que ofrece la empresa Viajes ETSEIT están ubicados en el territorio español, así como todos los billetes de barco y de avión. Los hoteles que ofrece la empresa están clasificados en función de un color que está vinculado directamente con su precio. Actualmente, la clasificación de los hoteles está formada por cuatro colores (oro, plata, bronce, piedra), pero en el futuro y con las ampliaciones que se esperan realizar se prevé que el número de categoría aumente. Cada dos meses, los precios de los hoteles se actualizan. Los viajes en avión se deben clasificar en dos grupos: vuelos charter y de línea regular. El precio de los billetes se clasifica en estrellas. Un vuelo de pocas estrellas representa un billete muy barato, mientras que un vuelo de muchas estrellas representa un billete muy caro. El tipo de características que tienen los vuelos charter y los de línea regular son distintas. Por ejemplo, los vuelos charter es necesario guardar información sobre el número de azafatas que se tienen que contratar, mientras que en los vuelos regulares se debe guardar información sobre modificaciones en los billetes de los pasajeros. Es importante destacar que los vuelos de los aviones tienen como origen y destino los aeropuertos y NO las ciudades, ya que una ciudad puede tener más de un aeropuerto. Por otra parte, las tasas de los © Los autores, 2006; © Edicions UPC, 2006 209 Preguntas y problemas aeropuertos varían en función de si su categoría es alta, media o bajo. Una vez al año, la AENA puede variar la categoría de los aeropuertos en función de sus resultados anuales. Los viajes en barco también son un servicio que ofrece la empresa Viajes ETSEIT. A diferencia de los vuelos con avión, las ciudades con puerto sólo disponen de un único puerto. Sin embargo, las tasas son diferentes para cada puerto. El alquiler de coches funciona por una clasificación de ruedas. El alquiler de un coche de alta gama se representará con cinco estrellas y su precio será muy elevado. Por el contrario, un coche de baja gama se representará con una estrella y su precio será muy bajo. Tanto los hoteles como los orígenes y los destinos actuales que la empresa ofrece en sus viajes pertenecen al territorio español. Para destacarse de la competencia, el sistema de información debe poder ofrecer información turística del lugar a donde tiene la intención de ir (tiempo, clima, parques de atracciones, etc.) de forma automática. Viajes ETSEIT tiene dos tipos de clientes: agencias de viajes y clientes particulares. Ambos pueden pedir paquetes de cualquier tipo y tamaño. Una vez se ha producido la venta de los productos a un cliente, el sistema debe seguir almacenando la información para posteriores descuentos. El sistema debe permitir realizar descuentos en función de los movimientos realizados por el cliente. Por ejemplo, cuando un cliente ha comprado más de siete productos durante el último año, se le realizará un descuento del diez por ciento. Los descuentos dependerán del tipo de cliente (agencia de viajes o particular). Debido a que los clientes pueden tener varios números de teléfono y de direcciones e-mail, el sistema debe estar preparado para almacenar tantos números de teléfono y direcciones e-mail como el cliente crea conveniente. Tal y como ocurre en la vida real, es posible que se anulen o se modifiquen las reservas realizadas por los clientes, por lo que el sistema debe tenerlo presente. Nota: Recordar que los precios que se almacenan en el sistema son los precios para los clientes. Se pide: a) Desarrollar un modelo completo de casos de uso. b) Desarrollar un modelo completo de datos. c) Desarrollar un modelo completo de procesos. © Los autores, 2006; © Edicions UPC, 2006 211 Glosario de términos Glosario de términos Actor: Elemento externo que interacciona con el sistema de información. Los actores son los encargados de iniciar los casos de uso que representan las actividades que el sistema de información debe realizar. Actores primarios de negocio: Individuos que consiguen algún beneficio de la ejecución del caso de uso recibiendo alguna cosa de valor medible u observable. Actores primarios de sistemas: Individuos que interactúan directamente con el sistema de información. Actor de recepción externo: Actor que se caracteriza por no ser primario, pero que sin embargo recibe alguna cosa de valor medible u observable. Actor de servicios externos: Individuo o sistema externo que responde a la petición de un caso de uso. Agente externo: Persona, unidad de la organización, sistema, u otra organización que interactúa con un sistema. Almacén de datos: Inventario de datos, es decir, lugar en donde el sistema de información almacena los datos que necesita para su correcto funcionamiento. Analista de sistemas: Persona que estudia los problemas y las necesidades de una empresa para determinar cómo podrían combinarse los recursos humanos, los procesos, los datos y la tecnología de la información para obtener mejoras en la empresa. Arquitectura de sistemas: Definición de la tecnología que será usada para construir el sistema de información Atributo de datos (o simplemente atributo): Característica común a todas o casi todas las instancias de una entidad concreta. Base de datos: Fuente central de datos interrelacionada que está pensada para que sea compartida por muchos usuarios en una diversidad de aplicaciones. Cardinalidad: Indicación del número máximo de instancias de una entidad para una única instancia de la entidad relacionada. Caso de uso: Elemento que describe las funciones básicas o simples del sistema desde la perspectiva de los usuarios externos y de manera que ellos puedan comprenderlo. Ciclo de vida del desarrollo de sistemas: Conjunto de actividades que los analistas, diseñadores y usuarios realizan para desarrollar e implantar un sistema de información. Conocimiento: Mezcla fluida de experiencias concretas, valores, información en contexto y juicio basado en la experiencia que proporciona un marco de referencia para evaluar e incorporar nuevas experiencias e información. Constructores de sistemas: Especialistas en tecnología y encargados de fabricar sistemas de información basados en las especificaciones de diseño obtenidas de los diseñadores de sistemas. © Los autores, 2006; © Edicions UPC, 2006 212 Desarrollo de sistemas de información. Una metodología basada en el modelado Datos: Hechos y cifras que tienen de algún modo una existencia propia e independiente y que tiene poco significado para el usuario. DBMS (Sistema de gestión de bases de datos): Software informático especializado y disponible en el mercado que se utiliza para creación, acceso, control y gestión de la base de datos. DER (Diagrama de entidad-relación): Herramienta de modelado de datos que describe las asociaciones que existen entre las diferentes categorías de datos dentro de un sistema de empresa o de información. Desarrollo rápido de aplicaciones: Método existente para el desarrollo de sistemas de información que se basa en la creación de prototipos. Diagrama de flujo de datos de contexto: Diagrama que define el campo de acción y los límites del sistema y el proyecto. DFD (Diagrama de flujo de datos): Herramienta de modelado de procesos que representa el flujo de datos a través de un sistema y los trabajos o procesos llevados a cabo por dicho sistema. Diseñadores de sistemas: Expertos en tecnología que traducen las necesidades y las restricciones manifestadas por lo usuarios de la empresa en soluciones técnicas. DLL (Lenguaje de definición de datos): Parte de un sistema de gestión de bases de datos. DML (Lenguaje de manipulación de datos): Parte de un sistema de gestión de bases de datos. DSS (Sistema de apoyo a la toma de decisiones): Sistema de información que puede ayudar a identificar oportunidades en la toma de decisiones o proporciona la información necesaria para ayudar a tomar dichas decisiones. Entidad: Cualquier ente o cosa, real o abstracta, de la cual queramos guardar datos. ESS (Sistemas de apoyo a ejecutivos): Sistema de información al nivel estratégico diseñado para abordar la toma de decisiones no estructuradas relacionadas con las actividades a largo plazo de la dirección general de la empresa. Estructura de datos: Composición de un flujo de datos. Flujos de control: Equivale a un flujo de datos en el que no se transportan datos. Flujo de datos: Introducción de datos en un proceso o la obtención de datos de un proceso. Aunque también puede representar la actualización de datos en un archivo, en una base de datos o en cualquier otro medio de almacenaje. Grado de una relación: Número de entidades que participan en la relación. Información: Conjunto de datos procesados con significado, y dotados de relevancia y propósito. JRP (Planificación de requerimientos conjunta): Técnica que enfatiza el desarrollo participativo entre los propietarios, los usuarios, los diseñadores y los constructores de sistemas. MIS (Sistema de información gerencial): Sistema de información que proporciona informes orientados a la gestión basados en el procesado de transacciones y operaciones de la organización. Los sistemas de información gerencial proporcionan servicio a nivel administrativo. Modelado o modelización: Acción de realizar una o más representaciones gráficas de cualquier sistema. Modelado de casos de uso: Método orientado a los usuarios para identificar necesidades funcionales de un nuevo sistema de información. El modelado de casos de uso es una técnica que permite modelar las funciones de un sistema en términos de eventos, de quién inicia los eventos y de cómo el sistema responde a estos eventos. © Los autores, 2006; © Edicions UPC, 2006 213 Glosario de términos Modelo: Representación estructurada de un sistema o de algún elemento constituyente del mismo. Modelo lógico de datos: Representación del conjunto de datos que un sistema debe almacenar internamente para poder responder a las necesidades de los propietarios y de los usuarios del sistema. Modelo lógico de procesos: Representación del conjunto de procesos que un sistema debe realizar para poder responder a las necesidades de los propietarios y de los usuarios del sistema. Modelo físico de datos: Representación de la estructura y las relaciones de los datos para la implementación del modelo lógico de datos. Modelo físico de procesos: Representación de los procesos y los flujos de datos necesarios para implementar el modelo lógico de procesos. Normalización: Método basado en tres etapas que consiste en trasformar las entidades del modelo de datos en primera forma normal (1FN), después en segunda forma normal (2FN), y finalmente en tercera forma normal (3FN). Orden: Indicación de si la relación entre diversas entidades es obligatoria u opcional. Planificación estratégica de sistemas de información: Metodología que intenta identificar y establecer prioridades acerca de las tecnologías y las aplicaciones susceptibles de reportar un máximo beneficio a la empresa. Proceso: Conjunto de tareas o acciones realizadas a partir de un flujo de datos de entrada para producir flujos de datos de salida. Project Manager: Profesional experimentado que acepta la responsabilidad de planificar, supervisar y controlar proyectos en lo que concierne al calendario, el presupuesto, la satisfacción de cliente, las normas técnicas y la calidad de sistema. Propietarios de sistemas: Personas que patrocinan y promueven los sistemas de información. Red en anillo: Red que se caracteriza en que las estaciones están unidas entre ellas formando un círculo por medio de un cable común. Reden en bus: Red que se caracteriza por permitir que todas las estaciones reciban la información que se transmite. Red en estrella: Red que se caracteriza en que todas las estaciones de trabajo se comunican a través de un único punto, que normalmente es usado como centro de control y gestión. Reingeniería del sistema: Toda modificación del sistema de información que no tenga que ver con la corrección de errores de diseño y programación. Relación: Representación de un evento que vincula dos o más entidades, o una afinidad lógica entre dos o más entidades. Relación específica: Relación en que la cardinalidad, en sus dos direcciones, no es muchos (varios). Relación no específica: Relación en que muchas instancias de una entidad están asociadas con muchas instancias de otra entidad Sistema: Conjunto de componentes que interaccionan entre sí para lograr un objetivo común. Sistema de información (1): Conjunto de componentes interrelacionados que recolectan (o recuperan), procesan, almacenan y distribuyen información para apoyar la toma de decisiones y el control de una organización. © Los autores, 2006; © Edicions UPC, 2006 214 Desarrollo de sistemas de información. Una metodología basada en el modelado Sistema de información (2): Conjunto de personas, datos, procesos, y tecnología de la información que interactúan para recoger, procesar, almacenar y proveer la información necesaria para el correcto funcionamiento de la organización. Sistema de información (3): Conjunto formal de procesos que, operando con un conjunto estructurado de datos estructurada de acuerdo con las necesidades de una empresa, recopila, elabora y distribuye (parte de) la información necesaria para la operación de dicha empresa y para las actividades de dirección de control correspondientes, apoyando al menos en parte, la toma de decisiones necesaria para desempeñar las funciones y procesos de negocio de la empresa de acuerdo con su estrategia. Sistema de información de producción: Sistema cuyos objetivos son de apoyar al sistema de producción físico, y proporcionar información acerca de las operaciones de producción. Sistema de información de recursos humanos: Sistema que permite recopilar y almacenar información relacionada con los recursos humanos, para transformarla y luego distribuirla a los usuarios de la empresa Sistema de información financiera: Sistema que proporciona a las personas y a los grupos (stakeholders), tanto de dentro como de fuera de la organización, información relacionada con los asuntos financieros de la compañía. Sistemas de información para directivos: Sistema que proporciona a un directivo información sobre el desempeño global de la empresa. Sistemas de oficina: Aplicaciones informáticas que proporcionan un grado perfeccionado de comunicación entre todos los tipos de trabajadores de la información. SQL (Lenguaje de consultas estructurado): Lenguaje para la comunicación entre bases de datos y programas informáticos. Tecnología de la información: Término contemporáneo que describe la combinación de la tecnología informática (hardware y software) con la tecnología de las telecomunicaciones (redes de datos, imágenes, y voz). TPS (Sistema de procesamiento de transacciones): Sistema cuyo objetivo es capturar y procesar datos sobre las transacciones de negocios que se realizan, diariamente, en la empresa Trabajador de la información: Personas cuyo trabajo tiene que ver con la creación, la captura, la distribución y el uso de información. Trabajador del conocimiento: Subgrupo de trabajadores de la información cuyas responsabilidades se basan en conocimiento específico. Usuarios de sistemas: Personas que utilizan los sistemas de información de una forma regular para capturar, introducir, validar, transformar y almacenar datos e información. VDL (Lenguaje de definición de vistas): Parte de un sistema de gestión de bases de datos. Viabilidad de un proyecto de sistemas de información: Medida del beneficio obtenido en una organización a través del desarrollo de un sistema de información. Viabilidad de fechas: Proceso que tiene como objetivo estudiar si las previsiones iniciales en relación al calendario se mantienen o han sufrido un retraso o un avance. Viabilidad legal y contractual: Proceso que consiste en estudiar cualquier ramificación legal y contractual debido a la construcción del sistema de información. Viabilidad operacional u operativa: Proceso de examinar la concordancia entre los resultados de un proyecto y sus objetivos. © Los autores, 2006; © Edicions UPC, 2006 215 Glosario de términos Viabilidad política: Proceso que evalúa cómo afecta el sistema de información a la estructura social y política de la organización. Viabilidad técnica: Proceso que tiene como objetivo estudiar si la organización es capaz de construir el sistema de información propuesto. WKS (Sistema de trabajo del conocimiento): Sistema que promueve la creación de nuevo conocimiento y permite que dicho conocimiento, así como la experiencia adquirida de su creación, se integre en la empresa. © Los autores, 2006; © Edicions UPC, 2006 217 Bibliografía Bibliografía Andreu, R., Ricart, J. y J. Valor. (1996). Estrategia y sistemas de información. McGraw-Hill. Applegate, L.M., Austin, R.D. y F.W. McFarlan (2004). Estrategia y gestión de la información corporativa. McGraw-Hill. Benjamín, R.I. (1971). Control of the information system development cycle. Wiley-Interscience. Conger, J. (1994). Learning to lead: the art of transforming managers into leaders. Jossey-Bass. Davenport, T.H. y L. Prusak (1998). Working knowledge how organizations manage what they know. Harvard Business School Press. Edwards, Ch., Ward, J. y A. Bytheway (1998). Fundamentos de sistemas de información. Prentice Hall. George, J.F., Batra, D, Valacich, J.S. y J.A. Hoffer (2004). Object-oriented systems analysis and design. Pearson Prentice Hall Gómez, A. y C. Suárez (2003). Sistemas de información: Herramientas prácticas para la gestión empresarial. Editorial Ra-Ma. Jacobson, I., Christerson, M., Jonson, P. y G. Overgaard (1992). Object-oriented software engineering - A use case driven approach. Addison-Wesley. Kendall, K.E. y J.E. Kendall (1997). Análisis y diseño de sistemas. Pearson educación. Kotler, P. (1966). Marketing management : analysis, planning, implementation, and control. PrenticeHall. Laudon, K.C. y J.P. Laudon (2004). Sistemas de información gerencial. Pearson Educación. Luque, I., Gómez-Nieto, M.A., López, E. y G. Cerruela (2001). Bases de datos: desde Chen hasta Codd con Oracle. Editorial Ra-Ma. McLeod, R. Jr. (2000). Sistemas de información gerencial. Pearson educación. Porter, M.E. (1987). Ventaja competitiva creación y sostenimiento de un desempeño superior. Compañía Editorial Continental. Rockart, J.F. y D.W. DeLong (1988). Executive Support Systems: The Emergence of Top Management Computer Use. Dow-Jones Irwin. Senn J.A. (1992). Análisis y diseño de sistemas de información. McGraw-Hill. Sethi, V. y W.R. King (1998). Organizational transformation through business process reengineering. Prentice-Hall. Villapecellín, M.M. (2004). Desarrollo de aplicaciones de cuarta generación y con herramientas CASE. Editorial Ra-Ma. © Los autores, 2006; © Edicions UPC, 2006 218 Desarrollo de sistemas de información. Una metodología basada en el modelado Wetherbe, J. (1988). Systems analysis and design: tradicional, structured, and advanced concepts and techniques. West. Whitten, J.L., Bentley, L.D. y V.M. Barlow (1996). Análisis y diseño de sistemas de información. McGraw-Hill (Irwin). Whitten, J.L., Bentley, L.D. y K.C. Dittman (2004). System analysis & design methods. McGraw-Hill. Zachman, J.A. (1987). A framework for information systems architecture, IBM Systems Journal 26, no. 3, pp. 276-292. © Los autores, 2006; © Edicions UPC, 2006