Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
ANÁLISIS DE SISTEMAS UNIDAD I: DEFINICIONES BÁSICAS PRODUCTO Y PROCESO METODOLOGÍAS Contenido � Concepto de Producto y Proceso. � Introducción a Metodologías de Sistemas: Definiciones Básicas -Ciclos de Vida de Sistemas: Clásico y Estructurado. � Modelos Evolutivos: Incremental, Modelo Espiral, Modelos Formales. � Estrategias: de Prototipado y de Ensamblaje de Componentes. � Proceso Unificado de Desarrollo de Software: centrado en la arquitectura, iterativo e incremental y guiado por Casos de Uso � TP Nro. 1: Proceso y Productos – Modelos de Proceso del Sw (Ciclo de Vida) ¿Qué es un sistema? “un conjunto de partes relacionadas que persiguen un objetivo en común” ¿Qué es un sistema de información? “es un programa de pc (SW), que se utiliza como herramienta para proveer información que pueda servir a una organización, facilitándole diversos aspectos de su negocio, como puede ser la facturación, registro de personas, etc.” El Análisis de Sistemas es: determinar los objetivos y límites del sistema objeto de análisis (nuevo o existente) , caracterizar su estructura y funcionamiento, marcar las directrices que permitan alcanzar los objetivos propuestos y evaluar sus consecuencias MODELO Concepto de Producto –Software –Programas –Documentos –Formularios virtuales –Datos obtenidos Qué es ? Concepto de Proceso � Qué es?: una serie de pasos a seguir para construir un producto. � Proceso de Software es un marco de trabajo de las tareas que se requieren para construir software de alta calidad. � Proceso de Sistemas: marco de trabajo de las tareas para construir. � Quién lo hace? La Ingeniería de Sw y la Ingeniería de Sistemas. � Por qué es importante? Porque da estabilidad, control y organización a las actividades. Desde un punto de vista del conocimiento: «El PROCESO es un diálogo en el que se reúne el conocimiento y se incluye en el Sw para convertirse en Sw. El PROCESO proporciona una interacción entre: � los usuarios y los diseñadores � los usuarios y la tecnología � los diseñadores y la tecnología (herramientas de desarrollo) Es un proceso interactivo donde la herramienta de desarrollo se usa como medio de comunicación, con cada interacción del diálogo se obtiene mayor conocimiento de las personas involucradas.» Ingeniería de Software Es la aplicación de un enfoque sistemático, disciplinado y cuantificable hacia el desarrollo, operación y mantenimiento de software, es decir la aplicación de ingeniería al software Ingeniería del Sw: procesos, métodos, herramientas Se apoya sobre un componente de calidad. La capa fundamental es el proceso que mantiene juntas el resto de las capas, permite un desarrollo racional de la ISw y define un marco de trabajo. Los métodos indican cómo construir técnicamente el Sw. Abarca tareas como: análisis de requisitos, diseño, construcción de programas, pruebas, mantenimiento. Las herramientas aportan un enfoque automático dando soporte al proceso. Enfoque de Calidad Proceso Métodos Herramientas Tecnología estratificada (multicapa) Visión General de la ISw (Fases) �Fase Definición: se centra en el QUÉ �Qué información se procesará �Qué función, �Qué rendimiento se desea, �Qué comportamiento debe tener, �Qué interfaces, �Qué restricciones, �Qué criterios �Fase Desarrollo: se centra en el CÓMO �Cómo diseñar las estructuras de datos �Cómo implementar las funciones dentro de la arquitectura de Sw �Cómo se implementan los procedimientos, las interfaces �Lenguaje de programación �Cómo serán las pruebas � Fase de Mantenimiento: se centra en el CAMBIO � Corrección de defectos � Adaptación a los cambios de su entorno � Mejora, incorporando funciones adicionales � Prevención, también llamado reingeniería de sw � Actividades Protectoras: � Garantía de calidad � Gestión de riesgos � Reutilización El Proceso de Sw Se establece un Marco de trabajo común de proceso definiendo una serie de actividades aplicables a todos los proyectos de sw, un conjunto de tareas, hitos de proyecto, productos de trabajos y puntos de garantía de calidad. Tareas Hitos, Entregables Puntos SQA Marco de trabajo del proceso común Actividades de Protección Actividades del marco de trabajo Conjunto de tareas Fases para resolución de problemas El desarrollo de sw se puede caracterizar como un bucle de resolución de problemas que sigue un modelo de proceso. Este bucle consta de 4 etapas. Estado actual Definición de problemas Desarrollo Técnico Integración de soluciones CICLO DE VIDA (Denominación histórica para el proceso de desarrollo) Define cómo vamos a llevar adelante el proceso: Es importante porque: - Define las actividades a realizar - Brinda puntos de control - Es bueno para la organización Ciclo de Vida Básico: Modelo Lineal Secuencial o en Cascada Características: – Implantación ascendente: 1ro pruebas modulares, 2do por subsistemas, 3ro del sistema completo. –Progresión secuencial de una fase a otra. –Tareas: análisis, diseño, codificación, prueba Especificación de requisitos Análisis Diseño Implementación Pruebas parciales Integración Mantenimiento 1 Encuesta 2 Análisis 3 Diseño 8 Convers. de B.D. 4 Implanta ción 6 Descrip. de Proced. 5 Generación Pruebas 7 Control de Calidad 9 Instala- ción USUARIOS ADMINISTRACIÓN OPERACIONES ADMINISTRACIÓN Requerimientos del Sistema Políticas del usuario Documentos RestriccionesInf. de Costos Benef. Reporte de Costos Benef. Especificación Estructurada Especificación Estructurada Restricciones Bases de Datos existentesRestricciones operacionales Especif. de Diseño Especif. de Diseño Bases de Datos convertida SISTEMA INSTALADO Sistema aceptado Sistema integrado Manual del Usuario Conj. de Pruebas de Control de Calidad Ciclo de Vida Estructurado Ciclo de Vida Estructurado Características: – Se pueden realizar actividades en paralelo – Se establecen vínculos entre actividades y terminadores (usuarios, administradores) – Actividades: encuesta, análisis, diseño, implantación, generación de pruebas de aceptación, control de calidad, descripción de procedimientos, conversión de BD, instalación – Actividades paralelas (no secuencial) Modelos Evolutivos Son modelos que consideran la naturaleza evolutiva del Sw. Características: �Iterativos �Interactivos �Lineal secuencial �Desarrollan versiones cada vez más completas Modelos Evolutivos: características Sistemas: requisitos de la empresa - Información: requisitos del negocio 1. Análisis de los requisitos del SW: comprender funciones, comportamiento, rendimiento, información e interconexión. 2. Diseño: traduce los requisitos y define estructuras de datos, arquitectura del sw, representación de interfaces y detalle procedimental (algoritmos). 3. Generación de Código: traducir el diseño en una forma legible por una máquina. 4. Pruebas: detectar errores y asegurar que la entrada definida produce los resultados requeridos. Análisis Diseño Código Prueba Ingeniería de Sistemas / Información Modelo Incremental Incremento 1 Incremento 2 Incremento 3 Incremento 4 Entrega del 1° Incremento Entrega del 2° Incremento Entrega del 3° Incremento Entrega del 4° Increm. Tiempo de Calendario � Cada secuencia lineal produce un “incremento” del sw. � El primer incremento es un producto esencial, y luego se va completando � Entrega un producto operacional con cada incremento Modelo en Espiral � Acompaña durante toda la vida del Sw. � Inicialmente entrega un producto básico, el cual evolucionará a través de iteraciones en el espiral El Sw se desarrolla en un serie de versiones incrementales. Durante las primeras iteraciones , la versión incremental podría ser un modelo en papel o un prototipo. Durante las últimas iteraciones se producen versiones cada vez mas completas del sistema. Modelo en Espiral Seis regiones de tareas: 1. Comunicacióncon el cliente 2. Planificación 3. Análisis de Riesgos 4. Ingeniería 5. Construcción y Acción 6. Evaluación del Cliente Se aplica a lo largo de la vida del Sw DRA Desarrollo Rápido de Aplicaciones Es un modelo lineal secuencial que enfatiza un período de desarrollo muy corto Modelado de Gestión Mod. de Datos Mod. de Proceso Generación de Aplicaciones Pruebas y Entrega Modelado de Gestión Mod. de Datos Mod. de Proceso Generación de Aplicaciones Pruebas y Entrega Equipo 1 Equipo n 60 – 90 días Fases DRA Desarrollo Rápido de Aplicaciones Modelado de Gestión: flujo de información Modelado de Datos: características (atributos) de los objetos y sus relaciones Modelado de Procesos: añadir, modificar, eliminar o recuperar objetos de datos Generación de aplicaciones: reutiliza componentes Pruebas y entrega: debe probarse sólo lo nuevo Características: • Requiere muchos RRHH • Compromiso con actividades rápidas • Sólo para aplicaciones que pueden modularizarse • No adecuado cuando los riesgos técnicos son altos Estrategias Una estrategia se define como «un plan para lograr un objetivo». Afectan aspectos como: � la metodología a utilizar � la arquitectura del sistema � el orden de las actividades del proceso de desarrollo de software Cuales son: PROTOTIPOS Y Ensamblaje de componentes - REUTILIZACIÓN Prototipos Versión preliminar, incompleta o reducida de un sistema Objetivo: obtener rápidamente información. Tipos: �Requisitos: interfaces, pantallas, informes. �Análisis: definir arquitectura general �Diseño: comprender arquitectura general �Verticales: comprender parte de un problema y plantear la solución �Factibilidad: si es posible llevar adelante el proyecto Reutilización � Es la explotación de componentes ya desarrollados o ensamblaje de componentes �Bajo Nivel: dentro del mismo sistema. Técnica: herencia �Alto Nivel: entre sistemas. Recurso: paquetes, bibliotecas. � Componentes reutilizables �Consumo: es necesario identificar si ya existe una solución. �Producción: se debe tener una perspectiva de múltiples proyectos, lo que implica más costo y planificación. Herramientas �Conjunto de aplicaciones que apoyan la administración del proceso de Sw = CASE (Ingeniería de Sw asistida por computadora) �Objetivos: Asistir al desarrollador durante las diferentes actividades del ciclo de vida del proceso de Sw. Herramientas �Editores de texto �generadores de modelos gráficos �generadores de código �compiladores �depuradores �verificadores �validadores �medidores �administradores de configuración �administradores del proyecto Proceso Unificado El Proceso Unificado es un proceso de software genérico que puede ser utilizado para una gran cantidad de tipos de sistemas de software, para diferentes áreas de aplicación, diferentes tipos de organizaciones, diferentes niveles de competencia y diferentes tamaños de proyectos. Proceso de Desarrollo de SW Requisitos Del Usuario Sistema Sw Proceso Unificado �Características: –Dirigido por Casos de Uso –Centrado en la Arquitectura – Iterativo e Incremental El PU está basado en componentes. El PU utiliza el UML (Lenguaje Unificado de Modelado) Dirigido por Casos de Uso �Porque se debe construir el sistema para dar servicio a sus usuarios. �La interacción entre un usuario y el sistema se conoce como Caso de Uso �El proceso se desarrolla siguiendo un hilo, a través de flujos de trabajo que parten de los CU Modelo de CU Modelo de Análisis Modelo de Diseño Modelo de Despliegue Modelo de Prueba Modelo de Implementación Especificado por Realizado por Distribuidopor Implementado por Verificado por Dependencia entre el Modelo de CU y los demás Centrado en la Arquitectura �Similar a la arquitectura de la construcción de edificios, es decir describe al sistema desde diferentes puntos de vista, incluyendo aspectos estáticos y dinámicos. �Cada producto tiene una función y una forma, la función corresponde a los CU y la forma a la Arquitectura Iterativo e Incremental �Dividir el proyecto en miniproyectos. Cada miniproyecto es una iteración que resulta en un incremento. �Las iteraciones son pasos en el flujo de trabajo. �Los incrementos se refieren al crecimiento del producto. La vida del PU � El PU se repite a lo largo de una serie de ciclos que constituyen la vida de un sistema. Cada ciclo termina en una nueva versión que es un producto listo para entregar. tiempo… Los ciclos concluyen con una versión MuerteNacimiento Inicio Elaboración Construcción Transición It #1 It #2 … It #n-1 It #n … … … … … … … Versiones Ciclo La vida del PU �Las fases de cada ciclo son: – Inicio: objetivos del ciclo de vida –Elaboración: arquitectura del ciclo de vida –Construcción: posibilidad operacional inicial –Transición: versión del producto La vida del PU �Cada fase se divide en iteraciones o mini- proyectos, y cada iteración pasa por los cinco flujos de trabajo fundamentales: 1) Captura de requisitos 2) Análisis 3) Diseño 4) Implementación 5) Prueba Fases y Flujos Fundamentales iter. #1 iter. #2 iter. #n-1 iter. #n inicio Elaboración Construcción Transición Fases Flujos de trabajo fundamentales Requisitos Análisis Diseño Implementación Prueba Una iteración en la fase de elaboración � Las iteraciones sucesivas se construyen sobre los resultados de la anterior � Las iteraciones controladas reducen el riesgo � Permite obtener resultados claros a corto plazo � Permite que los requisitos no se tengan que definir completam. al principio El producto �Cada ciclo produce una nueva versión del sistema �Cada versión es un producto preparado para su entrega El producto terminado incluye: � Requisitos � Casos de Uso � Especificaciones no funcionales � Casos de Prueba Resumiendo…. PROCESO PRODUCTO Proceso Sw Sw de calidad Ingeniería Sw (operc y mant) calidad, proceso, métodos y herramientas Definición: QUE Desarrollo: COMO Mantenimiento: CAMBIO Ciclo de Vida CLASICO (básico, secuencial lineal, en cascada) ESTRUCTURADO Modelos Evolutivos ESPIRAL INCREMENTAL DRA Estrategias PROTOTIPADO REUTILIZACIÓN (ensamblaje de componentes) Proceso Unificado Centrado en la Arquitectura Guiado por Casos de Uso Iterativo e Incremental
Compartir