MÉTODOS PARA LA CONSTRUCCIÓN DE LA SOLUCIÓN TECNOLÓGICA

1 MÉTODOS PARA LA CONSTRUCCIÓN DE LA SOLUCIÓN TECNOLÓGICA...
Author: Andrés Calderón Duarte
0 downloads 0 Views

1 MÉTODOS PARA LA CONSTRUCCIÓN DE LA SOLUCIÓN TECNOLÓGICAINTEGRANTES: CASTILLO CURO MJIA LEON GALLO

2 SISTEMA DE INFORMACIÓN

3 SISTEMAS PARA EL PROCESAMIENTO DE TRANSACCIONES (TPS)Es un tipo de sistema de información que recollect, almacena, modifica y recupera toda la información generada por las transacciones producidas en una organización.

4 SISTEMAS DE SOPORTE PARA LA DECISIÓN (DSS)Ayuda a la toma de decisiones.

5 SISTEMAS DE SOPORTE A LA TOMA DE DECISIONES EN GRUPO (GDSS)Ayuda a la toma de decisión utilizando modelos y datos para resolver problemas no estructurados.

6 SISTEMAS DE TRABAJO CON CONOCIMIENTOS (KWS)Integrar conocimientos en el conjunto de la organización y canalizar los flujos de información asociados a puestos intensivos en información Difícil de administrar

7 SISTEMAS DE AUTOMATIZACIÓN DE OFICINAS (OAS)Aumenta la productividad de los trabajadores de datos en la oficina, apoyando las actividades de coordinación y comunicación de la oficina típica.

8 SISTEMAS DE INFORMACIÓN PARA LA ADMINISTRACIÓN (SIA)Conjunto organizado de personas, procedimientos, software, bases de datos y dispositivos para suministrar la información rutinaria a administradores y tomadores de decisiones.

9 SISTEMAS DE INFORMACIÓN ESTRATÉGICOSAyudan resolver cuestiones estratégicas y tendencias a largo plazo.

10 INGENIERÍA DE SOFTWARE

11 INGENIERÍA DE SOFTWARE : DEFINICIÓNLa ingeniería de software es la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento de software, y el estudio de estos enfoques, es decir, la aplicación de la ingeniería al software. Integra matemáticas, ciencias de la computación y prácticas cuyos orígenes se encuentran en la ingeniería.

12 CICLO DE VIDA DE DESARROLLO DE SOFTWARE

13 DEFINICIONES DEFINICIÓN DE NECESIDADES ANÁLISIS. DISEÑO PROGRAMACIÓN CODIFICACIÓN PRUEBAS VALIDACION MANTENIMIENTO

14 MODELOS DE CICLO DE VIDA DE DESARROLLO DE SOFTWARE

15 EL MODELO EN CASCADA Fases Desventajas VentajasAnálisis de requisitos del software Diseño del sistema Diseño del programa Codificación Pruebas Verificación Mantenimiento Realiza un buen funcionamiento en equipos débiles y productos maduros, por lo que se requiere de menos capital y herramientas para hacerlo funcionar de manera óptima. Es un modelo fácil de implementar y entender. Promueve una metodología de trabajo efectiva: Definir antes que diseñar, diseñar antes que codificar En la vida real, un proyecto rara vez sigue una secuencia lineal, esto crea una mala implementación del modelo, lo cual hace que lo lleve al fracaso. Cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costos del desarrollo. Una etapa determinada del proyecto no se puede llevar a cabo a menos de que se haya culminado la etapa anterior

16 EL MODELO EN ESPIRAL Tareas Desventajas Ventajas Determinar Objetivos.Análisis del riesgo. Desarrollar y probar. 'Planificación.' Reduce riesgos del proyecto Incorpora objetivos de calidad Integra el desarrollo con el mantenimiento, etc. Genera mucho tiempo en el desarrollo del sistema Modelo costoso Requiere experiencia en la identificación de riesgos

17 EL MODELO EN PROTOTIPOSDesventajas Etapas Ventajas Plan rápido. Modelado, diseño rápido Construcción del Prototipo Desarrollo, entrega y retroalimentación Comunicación Entrega del desarrollo final Este modelo es útil cuando el cliente conoce los objetivos generales para el software, pero no identifica los requisitos detallados de entrada, procesamiento o salida. Son más fáciles de abordar con los usuarios finales .Se puede reutilizar el código El usuario quiere empezar a trabajar desde el primer momento con el prototipo para solucionar su problema particular, cuando el prototipo es solo un modelo de lo que será el producto. Requiere participación activa del usuario, al menos, para evaluar el prototipo. Y mucho más involucramiento si queremos que participe en su creación.

18 EL MODELO BASADO A COMPONENTESVentajas El análisis del riesgo se hace de forma explícita y clara. Une los mejores elementos de los restantes modelos. - Reduce riesgos del proyecto - Incorpora objetivos de calidad - Integra el desarrollo con el mantenimiento Beneficios Reutilización del software Simplifica las pruebas. Simplifica el mantenimiento del sistema. Mayor calidad. Desventajas Genera mucho tiempo en el desarrollo del sistema - Modelo costoso –Requiere experiencia en la identificación de riesgos

19 PROCESOS DEL CICLO DE VIDA DEL SOFTWARENORMA ISO 12207 (T.I.) PROCESOS DEL CICLO DE VIDA DEL SOFTWARE

20 INTRODUCCION El software es una parte esencial de sistemas convencionales y de tecnologías de la información. Hay una proliferación de normas, procedimientos, métodos, herramienta y entornos para desarrollar y gestionar el software que ha creado dificultades en la gestión y en la ingeniería de software, especialmente en la integración de productos y servicios.. Una organización, dependiendo de sus necesidades, puede seleccionar una sub-conjunto apropiado para satisfacer dichas necesidades

21 OBJETIVO Y CAMPO DE APLICACIONOBJETIVOS: Definir, controlar y mejorar los procesos del ciclo de vida del software. CAMPO DE APLICACION: Esta NTP es aplicable a la adquisición de sistemas, productos y servicios software, independientemente de que sea hecho interna o externamente a una organización. ADAPTACION DE ESTA NTP: Contiene un conjunto de procesos, actividades y tareas diseñadas, que consiste en la eliminación de los procesos, actividades y tareas no aplicables.

22 REFERENCIAS NORMATIVASNTP- ISO 9000:2001 Sistema de gestión de la calidad. Fundamentos y vocabularios NTP- ISO 9001:2001 Sistemas de gestión de calidad. Requisitos NTP- ISO 14001:2002 Sistemas de gestión ambiental. Especificación con orientación para su uso NTP- ISO/IEC 9126 –1: Ingeniería de software –Calidad de Producto -Parte 1: Modelo de calidad. NTP- ISO/IEC 12119:2005 Tecnología de la información –Paquetes Software –Requerimientos de calidad y pruebas. NTP- ISO/IEC –1:2004 Tecnología de la información – Evaluación del producto software –Parte 1: Vista general NTP- ISO/IEC TR 9126 –2:2004 Ingeniería de software –Calidad de producto - Parte 2: Métricas externas. NTP- ISO/IEC TR 9126 –3:2004 Ingeniería de software –Calidad de producto –Parte 3: Métricas internas.

23 APLICACIÓN

24 PROCESOS PRICIPALES DEL CICLO DE VIDAPROCESO DE ADQUSICION: Define las actividades del adquiriente, la organización que adquiere un sistema, producto software o servicio software. a) Inicio. b) Preparación de la solicitud de propuestas. c) Preparación y actualización del contrato. d) Seguimiento del proveedor. e) Aceptación y finalización. PROCESO DE SUMINISTRO: Define las actividades del proveedor, organización que proporciona un sistema, producto software o servicio software al adquiriente. a) Inicio. b) Preparación de la respuesta. c) Contrato. d) Planificación. e) Ejecución y control. f) Revisión y evaluación. g) Entrega y finalización. PROCESOS PRICIPALES DEL CICLO DE VIDA

25 PROCESOS PRICIPALES DEL CICLO DE VIDAPROCESO DE DESARROLLO: Define las actividades del desarrollador, organización que define y desarrolla el producto software. Este proceso consta de las siguientes actividades: a) Implementación del proceso. b) Análisis de los requerimientos del sistema. c) Diseño de la arquitectura del sistema. d) Análisis de los requerimientos software. e) Diseño de la arquitectura del software. f) Diseño detallado del software. g) Codificación y pruebas del software. h) Integración del software. i) Pruebas de calificación del software. j) Integración del sistema. k) Pruebas de calificación del sistema. l) Instalación del software. m) Apoyo a la aceptación del software. PROCESOS PRICIPALES DEL CICLO DE VIDA

26 PROCESOS PRICIPALES DEL CICLO DE VIDAPROCESO DE OPERACIÓN: Define las actividades del operador, organización que proporciona el servicio de operar un sistema informático en su entorno real para sus usuarios. Este proceso consta de las siguientes actividades: a) Implementación del proceso. b) Pruebas de operación. c) Operación del sistema. d) Soporte al usuario. PROCESO DE MANTENIMIENTO: Se inicia cuando el producto software sufre modificaciones en el código y la documentación asociada, debido a un problema o a la necesidad de mejora o adaptación. El objetivo es modificar el producto software existente preservando su integridad. El proceso termina con la retirada del producto software. b) Análisis de problemas y modificaciones. c) Implementación de las modificaciones. d) Revisión/aceptación del mantenimiento. e) Migración. f) Retirada del software. PROCESOS PRICIPALES DEL CICLO DE VIDA

27 PROCESOS APOYO DEL CICLO DE VIDAPROCESO DE DOCUMENTACION: Consta de las siguientes actividades: 1. Implementación del proceso. 2. Diseño y desarrollo. 3. Producción. 4. Mantenimiento. PROCESO DE GESTION DE LA CONFIGURACION: Consta de las siguientes actividades 1.Implementación del proceso. 2. Identificación de la configuración. 3. Control de la configuración. 4. Determinación del estado de la configuración. 5. Evaluación de la configuración. 6. Gestión de entrega.

28 PROCESOS APOYO DEL CICLO DE VIDAPROCESO DE ASEGURAMIENTO DE LA CALIDAD: Define las actividades para asegurar que los productos software y los procesos son conformes a sus requerimientos especificados y se ajustan a sus planes establecidos. Revisión Conjunta, Auditoría, Verificación y Validación pueden ser utilizados como técnicas de Aseguramiento de la Calidad. PROCESO DE VERIFICACION: Define las actividades para verificar hasta un nivel de detalle dependiente del proyecto software, los productos software. Este proceso consta de las siguientes actividades: a) Implementación del proceso. b) Verificación. PROCESOS APOYO DEL CICLO DE VIDA

29 PROCESOS APOYO DEL CICLO DE VIDAPROCESO DE VALIDACION: Actividades: a) Implementación del proceso. b) Validación. PROCESO DE REVISION CONJUNTA: Define las actividades para evaluar el estado y productos de una actividad. Actividades: a) Implementación del proceso. b) Revisiones de la gestión del proyecto. c) Revisiones técnicas.

30 PROCESOS APOYO DEL CICLO DE VIDAPROCESO DE AUDITORIA: Define las actividades para determinar la conformidad con los requerimientos, planes y contrato . Actividades: a) lmplementación del proceso. b) Auditoría. PROCESO DE SOLUCION DE PROBLEMAS: a) implementación del proceso b) Solución de problemas. PROCESOS APOYO DEL CICLO DE VIDA

31 PROCESOS ORGANIZATIVOS DEL CICLO DE VIDAPROCESO DE GESTION: : a) Inicio y definición del alcance. b) Planificación. c) Ejecución y control. d) Revisión y evaluación. e) Finalización. PROCESO DE INFRAESTRUCTURA: Define las actividades básicas para establecer la infraestructura de un proceso del ciclo de vida. Este proceso consta de las siguientes actividades: a) Implementación del proceso. b) Establecimiento de la infraestructura. c) Mantenimiento de la infraestructura.

32 PROCESOS ORGANIZATIVOS DEL CICLO DE VIDAPROCESO DE MEJORA DE PROCESO: Define las actividades básicas que una organización lleva a cabo para establecer, medir, controlar y mejorar sus procesos del ciclo de vida. Este proceso consta de las siguientes actividades: a) Establecimiento del proceso. b) Evaluación del proceso. c) Mejora del proceso. PROCESO DE RECURSOS HUMANOS: Define las actividades básicas para conseguir personal adecuadamente capacitado. a) lmplementación del proceso. b) Desarrollo del material de formación. c) lmplementación del plan de formación.

33 ANTECEDENTE ANEXO A ANEXO B ANEXO C ANEXO D ANEXO E ANEXO F ANEXO GANEXO H

34 ANEXO A (PROCESO DE ADAPTACIÓN)Este proceso consta de las siguientes actividades: a) Identificación del entorno del proyecto. b) Solicitud de entradas. c) Selección de procesos, actividades y tareas. d) Documentación de las decisiones y razones de las adaptaciones

35 ANEXO B (GUÍA PARA LA ADAPTACIÓN)B.1 Guía general para la adaptación B.2 Adaptación del proceso de desarrollo B.3 Adaptación de las actividades relacionadas con evaluaciones B.4 Consideraciones sobre las adaptaciones y la aplicación

36

37 ANEXO C GUÍA SOBRE PROCESOS Y ORGANIZACIONESC.1 Procesos bajo puntos de vista clave: Representa los procesos del ciclo de vida y sus relaciones bajo distintos puntos de vista del uso de esta NTP. Los puntos de vista básicos mostrados son: contrato, gestión, operación, ingeniería y apoyo C.2 Procesos, organizaciones y relaciones

38 ANEXO D (BIBLIOGRAFIA)NTP-ISO/IEC : Tecnología de la Información. Paquetes software. Requerimientos de calidad y pruebas.

39 ANEXO E E.1 Relaciones entre el propósito y los resultados para la ISO/IEC 12207:1995 E.2 Propósitos y resultados E.3 Tipo de procesos Básico – Estos procesos y sub-procesos son idénticos a las actividades y proceso de la ISO/IEC Nuevo – Estos procesos y sub-procesos son una expansión de la definición del proceso de la ISO/IEC Extendido – Estos procesos y sub-procesos son ampliaciones de los procesos y actividades existentes de la ISO/IEC 12207 Componente – Estos son agrupaciones de actividades existentes de la ISO/IEC 12207

40 ANEXO F (PROPÓSITO Y RESULTADOS)F.1 Procesos principales del ciclo de vida F.2 Procesos de apoyo al ciclo de vida F.3 Procesos organizativos del ciclo de vida

41 ANEXO G ISO/IEC 12207 ESTRUCTURA DEL PROCESO PARA "NUEVOS" PROCESOS EN EL ANEXO FG.1 Procesos de apoyo del ciclo de vida G.2 Procesos de gestión G.3 Actividades y tareas del proceso de recurso humano G.4 Actividades y tareas del proceso de gestión de activos G.5 Actividades y tareas del proceso de gestión del programa de reuso G.6 Actividades y tareas del proceso de ingeniería de dominio

42 ANEXO H ISO/IEC TR , PDAM1, EXTENSIÓN DEL MODELO DE REFERENCIA PARA EL ISO/IEC 12207:1995 PROCESO DE ADQUISICIÓN H.1 Propósito y resultados del proceso de adquisición H.2 Tareas y actividades del proceso de adquisición

43 METODOLOGÍAS

44 METODOLOGÍAS AGILES o LEVIANASMETODOLOGÍAS AGILES o LEVIANAS: Las metodologías agiles se centran en el factor humano y en el producto software. Da más importancia a una participación simultánea con el cliente, al programador. Se caracterizan por ser métodos simples por lo que son empleadas para proyectos pequeños y por ello disminuye su calidad.

45 SCRUM CARACTERÍSTICAS Equipos auto dirigidosNo prescribe prácticas específicas de ingeniería Los requerimientos se capturan como ítems de la lista Product Back log. El producto se construye en una serie de Sprint de un mes de duración.

46 SCRUM ventajas desventajasEntregables en tiempo y forma, puedes ir enviando entregables al cliente mientras vas atacando los objetivos mas sencillos, eso te hace ganar tiempo para atacar los objetivos mas complejos. el ScrumMaster tiene el conocimiento necesario para lograr el objetivo primario y secundario por lo cual puede ir controlando el proyecto y delegando roles. Cada persona sabe que es lo que tiene que hacer y no es necesario estar reorganizando una y otra vez los Tracks de cada persona. Se involucra desde un principio y se da un rol a todos los stakeholders (personas que van a participar en el proyecto incluyendo cliente final, QA, Testers, etc.) Algunos miembros de tu equipo pueden saltar pasos importantes en el camino rápido para llegar al “sprint” final. El cliente siempre va a esperar los informes con la fecha exacta, y muchas veces los va a pedir antes, cuando capaz no pudiste avanzar en nada. Demasiadas Reuniones para poco avance, a veces es muy cansador y estresante reunirse demasiadas veces por el mismo tema, algunos van perdiendo el interés en el proyecto. Si una persona renuncia o hay algún cambio es complicado remplazar ese rol ya que es la persona que se lleva el conocimiento especifico y afecta a todo el proyecto. No es aplicable a grandes escalas o cuando el sector IT es variado.

47 Extreme Programming – XPCARACTERISTICAS: Desarrollo iterativo e incremental Pruebas unitarias continuas, frecuentemente repetidas y automatizadas, incluyendo pruebas de regresión Programación en parejas Frecuente integración del equipo de programación con el cliente o usuario. Corrección de todos los errores antes de añadir nueva funcionalidad. Hacer entregas frecuentes. Refactorización del código, es decir. Propiedad del código compartida. Simplicidad en el código

48 Extreme Programming – XPVentajas Desventajas Cuenta con una tasa de errores muy pequeña. Propicia la satisfacción del programador. Fomenta la comunicación entre los clientes y los desarrolladores. Facilita los cambios. Permite ahorrar mucho tiempo y dinero. La XP es mejor utilizada en la implementación de nuevas tecnologías. Es recomendable emplearla solo en proyectos a corto plazo. En caso de fallar, las comisiones son muy altas. Requiere de un rígido ajuste a los principios de XP. Puede no siempre ser más fácil que el desarrollo tradicional.

49 OPEN UP Características· Desarrollo incremental. · Uso de casos de uso y escenarios. · Manejo de riesgos. · Diseño basado en la arquitectura.

50 OPEN UP Desventajas Ventajas Es una metodología ágil.·Se puede adaptar con otros procesos. ·A veces omite contenido que puede ser de interés en el proyecto. ·Se espera que cubra un amplio sistema de necesidades para los proyectos de desarrollo en un plazo muy corto.

51 METODOLOGIAS: OPEN UP:

52

53

54 METODOLOGÍAS TRADICIONALES:Teniendo en cuenta la filosofía de desarrollo de las metodologías, aquellas con mayor énfasis en la planificación y control del proyecto, en especificación precisa de requisitos y modelado, reciben el apelativo de Metodologías Tradicionales o Pesadas. Estas metodologías tradicionales imponen una disciplina de trabajo sobre el proceso de desarrollo del software, con el fin de conseguir un software más eficiente.

55 BPM características Pueden ser medidos y están orientados al rendimiento Tienen resultados específicos Entregan resultados a clientes o “stakeholders” Responden a alguna acción o evento específico Las actividades deben agregar valor a las entradas del proceso

56 BPM Beneficios Visibilidad de los procesos de las empresas.Mayor flexibilidad y agilidad para adaptación al cambio. Posibilidad de integrar la información del negocio dispersa en diferentes sistemas. Dirigir los esfuerzos de la empresa de una manera planeada y alineada con los objetivos estratégicos. Adquirir la habilidad para diseñar, simular y monitorear procesos de manera automática y sin la participación de usuarios técnicos. Adquirir una ruta de mejoramiento y eficiencia continua al convertir actividades ineficientes en menores costos a través de uso de tecnología enfocada en procesos. Reducir costos futuros de integración y mantenimiento al adquirir tecnología ya preparada para abordar el cambio.

57 METRICA V3 Es una metodología desarrollada y promovida por el Ministerio de Administraciones Públicas del Gobierno de España para la planificación, desarrollo y mantenimiento de sistemas informáticos para la gestión de actividades del ciclo de vida de los proyectos software dentro de las Administraciones Públicas. Este modelo es utilizado y exigido por la mayor parte de las Comunidades, Ayuntamientos y otros Organismos públicos. Esta metodología propia está basada en el modelo de procesos del ciclo de vida de desarrollo ISO/IEC (Information Technology – Software Life Cycle Processes) así como en la norma ISO/IEC SPICE (Software Process Improvement And Assurance Standards Capability Determination).

58 RUP PRINCIPALES CARACTERÍSTICASFases y disciplinas RUP PRINCIPALES CARACTERÍSTICAS Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo) Pretende implementar las mejores prácticas en Ingeniería de Software. ‍‍‍Desarrollo iterativo‍‍‍ Administración de requisitos Uso de arquitectura basada en componentes Control de cambios Modelado visual del software Verificación de la calidad del software

59 RUP fases disciplinas Inicio Elaboración Construcción TransiciónModelado de negocios Requerimientos Análisis y diseño Implementación Pruebas Transición Administración y configuración del cambio Administración de proyectos Ambiente

60 Gracias