Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
CLASE 5 MODELO DE DESARROLLO DE PROGRAMAS Y PROGRAMACION CONCURRENTE – 2.019 FAC.DE INGENIERIA - UNJu Proceso Unificado - Gestión de Proyectos PROCESO UNIFICADO (PU) DE DESARROLLO SOFTWARE Def. Marco de desarrollo de SW q se caracteriza x estar dirigido x Casos de Uso (CU), centrado en la arquitectura y por ser iterativo e incremental. El modelo de dominio se representa x diagramas de clases a través del Lenguaje de Modelado Unificado (UML), cuyo objetivo es comprender y describir las clases más importantes dentro del contexto del Sist. Dirigido x CU 1CU es 1fragmento de funcional.del sist. q proporc1 result. de valor a 1US. Modelan los requerimientos funcionales sist. Todos los CU juntos forman el modelo de CU. Los CU guían el proceso de desarrollo. Centrado en la arquit. La arquit. (decisiones en1sist. SW a partir de las cuales se compone el sist., interfaces, su comportam., sus colaboraciones, y su composición) de1sist.SW se describe x diferentes vistas del sist.en construcción, incluye aspectos estáticos y dinámicos más significat.del sist. Es 1vista del diseño completo con las características + importantes resaltadas, dejando detalles. Iterativo e Incremental Se divide el esfuerzo de desarrollo de 1proy. SW en mini proy.. C/1es 1iterac.q resulta en 1increm. Las iterac.son pasos en el flujo de trabajo, y los increm.crecim.en el producto. Los desarrollad.basan la selecc.de lo q implementan en c/iterac.en el conj.de CU q amplían la funcional., y en los riesgos+importantes. En c/iterac.se identifican y especifican CU relevantes, crean 1diseño usando la arquit.seleccionada como guía, p/ implementar dichos CU. Si la iterac.cumple sus objet., se continúa con la próxima. Si no deben revisarse las decis.previas y probar otro enfoq. LENGUAJE DE MODELADO UNIFICADO (UML) • Es el leng.de modelado de sist.de SW + conocido y utilizado en la actualidad. Es 1leng.gráfico utilizado p/visualizar, especificar, construir y documentar un sist. Ofrece 1estándar p/describir 1 "plano" del sist.(modelo), incluyendo aspectos conceptuales tales como procesos de negocio, fciones.del sist., y aspectos concretos como expresiones de leng.de programación, esquemas de bases de datos y compuestos reciclados. • UML es un "leng. de modelado" p/especificar o describir métodos o procesos. Se utiliza p/definir un sist,, p/detallar los artefactos en el sist.y p/documentar y construir. CICLO DE VIDA DEL PROCESO UNIFICADO (PU) El PU se repite a lo largo de1serie de ciclos q forman la vida de 1sist. C/ciclo constituye 1versión del sist. C/ciclo consta de cuatro fases: Inicio, Elaboración, Construcción y Transición. C/fase se subdivide en iteraciones. En c/iteración se desarrolla en secuencia un conj.de disciplinas o flujos de trabajos. FASE DE INICIO Establece la planificac.del Proyecto y su alcance. Debe realizarse en 1periodo de tiempo pequeño (1única iterac.). El tener 1 fase de inicio muy larga indica q se está realizando 1especificación previa excesiva, lo q responde + a 1modelo en cascada. Objetivos: • Establecer 1justificación p/el proyecto • Establecer el ámbito del proyecto • Esbozar los CU y los requisitos clave q dirigirán las decisiones de diseño • Esbozar las arquitecturas candidatas • Identificar riesgos • Preparar el plan del proyecto y la estimación de costos FASE DE ELABORACIÓN Se capturan la mayoría de los requisitos del sist. Los objet.principales de esta fase son la identificación de riesgos y establecer y validar la arquit.del sist. Se elabora la Arquitectura Base Ejecutable: • La arquit.se valida a través de la implement.de 1Base de Arquit.Ejecutable o implementac. parcial del sist.q incluye los componentes principales del mismo • Al final de la fase de elaborac.la base de arquit.ejecutable debe demostrar q soporta aspectos claves de funcional.del sist.y q muestra la conducta adecuada en términos de rendim., escalabilidad y costo FASE DE CONSTRUCCIÓN Es la fase +larga de proyecto. El sist.es construido en base a la fase de elaboración. Las características del sist.se implementan en 1serie de iteraciones cortas y limitadas en el tiempo. El resultado de c/iteración es una versión ejecutable de SW. FASE DE TRANSICIÓN En esta fase el sistema es desplegado para los usuarios finales. La retroalimentación recibida permite incorporar refinamientos al sistema en las sucesivas iteraciones. Esta iteración también cubre el entrenamiento de los usuarios p/la utilización del sistema. El hito de lanzamiento del producto marca el final de la fase. DISCIPLINAS C/discipl.es1conj.de activid.relacionadas (flujos de trabajo) a 1área específica dentro del proy.total El objet. es establecer un canal de comunicación entre los ing.del negocio y los ing.del SW. Los ingenieros del SW deben conocer la estruct.y dinámica de la organiz., su objetivo (el del cliente), los problemas actuales y sus posibles mejoras. Se plasma en la identif.del modelo del dominio (visualizan aspectos bás.del dominio de aplicac) Objetivos: • Comprender la estruct.y la dinámica de la organiz. • Comprender problemas actuales e identificar posibles mejoras. • Comprender los procesos de negocio de la organiz. Las actividades q se plantea son el modelo de CU del negocio q describe los procesos de negocio y los clientes, y el modelo de objetos del negocio q describe c/CU del Negocio utilizando diagr.de Activ. MODELADO DEL NEGOCIO REQUISITOS Describe q debe q hacer el sist.y pone a desarrolladores y al cliente de acuerdo en esta descripción Describe como el SW se realiza en la fase de implementación. Se plasma en un modelo de diseño que consiste en una serie de clases (agrupadas en paquetes y subsistemas) con interfaces bien definidos. Contiene descripciones de cómo los objetos colaboran p/realizar las acciones incluidas en CU. ANÁLISIS Y DISEÑO IMPLEMENTACIÓN Se implementan clases y objetos en términos de componentes (arch.fuentes, binarios, ejecutables, etc). PRUEBA Se comprueba q el funcionamiento sea correcto analizando diversos aspectos: los objetos como unidades, la integración entre objetos, la implementación de todos los requisitos, entre otros. Se crea la versión externa del producto, se empaqueta, se distribuye y se instala en el lugar de trabajo. También se da asistencia y ayuda a los usuarios. DESPLIEGUE GESTIÓN DE CONFIGURACIONES Y CAMBIOS Gestiona aspectos como los sist.de control de versiones. Controla las peticiones de cambios clasificándolas según su estado (nueva, registrada, aprobada, asignada, completa, entre otros). Los datos se almacenan en 1base de datos y se pueden obtener informes periódicos. GESTIÓN DE PROYECTOS Define los planes del proyecto global, los planes de fase y los planes de iteración. Se centra en las actividades necesarias p/ configurar el proceso de un proyecto. El objetivo es proveer a la organización de desarrollo SW de un entorno de trabajo (que incluye procedimientos y herramientas) que soporten al equipo de desarrollo. ENTORNO O AMBIENTE GESTIÓN DE PROYECTOS Los gestores de SW son los responsables de la planificación y temporalización del desarrollo de proyectos. Supervisan el trabajo y el progreso del desarrollo. Incluye una serie de actividades tales como: Implica redactar 1propuesta p/realizar el proyecto, en donde se describen los objetivos del mismo y como se llevaría a cabo, incluye estimaciones de costo y tiempo (calendarización); y justifica el xq del proyecto. La redacción es 1tarea crítica y la planificac.consiste en identificar actividades, hitos y entregas en 1proyecto La supervisión es 1tarea continua, donde el gestor debe conocer el progreso del proyecto, comparando costos actuales y planificados, debiendo seleccionar en muchos casos las personas que trabajaran en el mismo. Periódicamente debe elevar al cliente informes detallados de la situacióndel proyecto. 1 Actividades de Gestión GESTIÓN DE PROYECTOS La gestión efectiva de un proyecto de SW depende de planificar completamente el progreso del proyecto, anticipándose a los problemas y preparando soluciones a los mismos. 2.1 El plan del Proyecto Determina los recursos disponibles, divide el trabajo y crea un calendario del mismo, para ello un plan debe incluir las siguientes secciones: 1) Introducción: con los objetivos del proyecto y las restricciones del mismo 2) Organización del proyecto: es decir cómo estará conformado el equipo y sus roles 3) Análisis de Riesgo: se describen los posibles riesgos del proyecto, la probabilidad de q surjan los mismos y las estrategias de reducción de los mismos 4) Requerimientos de HW y SW: viabilidad del proy.mediante un análisis de costos-beneficios 5) División del Proyecto en actividades (Calendarización): hitos y productos que se entregarán 6) Mecanismo de Supervisión e Informes 2 Planificación del Proyecto GESTIÓN DE PROYECTOS 2.2 Hitos y entregas Ya q el SW es intangible, se escriben documentos q describen el estado del SW q se está desarrollando. Se definen 1serie de hitos (puntos finales de una activ.del proceso SW) con 1informe corto del logro de dicha activ. X ej., p/las siguientes activ. corresponden los respectivos informes: 2 Planificación del Proyecto GESTIÓN DE PROYECTOS Estima el tiempo y los recursos requeridos p/completar las actividades y organizarlas en 1sucesión coherente. Se puede realizar de diferentes maneras con redes de actividades o Diagramas de Gantt, la cual es 1herramienta gráfica cuyo objetivo es exponer el tiempo de dedicación previsto para diferentes tareas o actividades a lo largo del tiempo total determinado. A continuación se muestra un gráfico con un ej. de dicho diagrama: 3 Calendarización del proyecto GESTIÓN DE PROYECTOS Un riesgo es 1probabilidad de q 1circunstancia adversa ocurra y q pueden ser amenazas al proyecto (afectan la calendarización o los recursos del proyecto, tal como la pérdida de 1diseñador), al SW (afectan a la calidad del SW como el pobre rendimiento de 1componente) o a la organización o al negocio (como un competidor que introduce un nuevo producto). Es necesario anticipar los riesgos q podrían afectar la programación del proyecto o la calidad del SW a desarrollar y emprender acciones para evitar esos riesgos, debiéndose documentar los resultados del análisis de riesgos, junto con el análisis de consecuencias si el riesgo ocurre. Consta de las siguientes etapas: 1) Identificación de riesgos 2) Análisis de riesgos 3) Planificación de riesgos 4) Supervisión de riesgos 4 Gestión de Riesgos GESTIÓN DE PROYECTOS Proporciona1medida de costos en la realiz.de 1proy.y en los beneficios esperados xla realización del mismo, lo cual determina la viabilidad o no del actual Proyecto 5 Análisis de Costo/Beneficio: Viabilidad del Proyecto Luego se procede a determinar la viabilidad del proyecto ya sea con el método del Retorno de la Inversión o el método del Valor Actual o algún otro método similar. Se hace 1list.de todos los costos necesarios p/implementar el sist.y otro con los beneficios. En gral los costos son medibles en unidades económicas, pero los beneficios pueden ser tangibles o intangibl. Entre los costos considera: adquisición de SW y HW, su mantenimiento, gastos de comunicaciones, gastos de instalación, costos del desarrollo del sist., consultoría, formación, etc. Y también los beneficios tales como incremento de productividad, ahorro de gastos de mantenim.actuales, incremento de vtas.o result., ahorro de materiales, beneficios financieros, incrementos en la calidad del producto, mejora en la atención del cliente, en la imagen del negocio, etc. • Ingeniería del Software 7ma. Ed. 2005, Ian Sommerville. (87) • Métrica 3. Técnicas y Prácticas. Ministerio de Administraciones Públicas. De Alarcos. (3) • El Lenguaje Unificado de Modelado (UML). Manual de Referencia. 2000. De James Rumbaugh, Ivar Jacobson y Grady Booch. • El Proceso Unificado de Desarrollo de Software. 2000. De Ivar Jacobson, Grady Booch y James Rumbaugh. • El Proceso Unificado de Desarrollo de Software. De Gustavo Torossi. • Estudio de Viabilidad. Microsoft. BIBLIOGRAFÍA RECOMENDADA
Compartir