Sesion 1 asi

44
Introducción Diseño Previos

Transcript of Sesion 1 asi

Introducción DiseñoPrevios

CAL/requisitos

¿qué es un proyecto? Documentación que se elabora para

la ejecución de una iniciativa de envergadura, con previsión de todos los detalles necesarios para su logro. La ejecución del mismo, comprende técnicas y documentos que ayudan a asegurar el manejo consistente, oportuno, eficiente y eficaz del mismo

CAL/requisitos

¿qué es un proyecto? Objetivo – Establece el propósito. Alcance – Detalla el objetivo.

Complejidad – Determina los pasos o subproyectos. Estructura y condiciones.

Unico – Realizados de una vez. Producto – Un resultado tangible o

intangible. Contexto Restricción

CAL/requisitos

¿qué es un proyecto?

El primer paso para la elaboración de un proyecto técnico es la presentación de un ‘pliego de condiciones técnicas’, en el que se detalla lo que se quiere hacer y sus características generales

El pliego de condiciones técnicas pretende establecer los compromisos técnicos que deberá asumir el gerente de proyecto

CAL/requisitos

El problema es Describir el problema

Afecta Describir los stakeholders afectados por el problema.

Impacta en Describir cual es el impacto del problema

Una solución exitosa sería

Beneficios clave de la solución propuesta.

Visión : Problema

CAL/requisitos

El problema es Solución inadecuada y fuera de tiempo de servicios al cliente.

Afecta a Nuestros clientes, representantes de soporte al cliente y técnicos de servicio.

Impacta en Insatisfacción del cliente, percepción de falta de calidad, empleados descontentos y pérdida de ingresos.

Una solución exitosa sería

Proporcionar acceso en tiempo real a una base de datos de problemas por parte de los representantes de soporte (help desk) y facilitar el despacho de técnicos de servicio a tiempo, solo a aquellas localidades que necesitan atender.

Visión : Problema - ejemplo

CAL/requisitos

Visión : Producto 

Para Cliente Objetivo

Quien Describir la necesidad u oportunidad

El Describir el nombre del producto o una categoría de productos.

Que Nombre los beneficios clave, razón para efectuar la compra o desarrollo.

A diferencia de

Alternativas de competencia principales

Nuestro producto

Diferencia(s) principal(es).

CAL/requisitos

Para Actuales clientes de contabilidad

Quien Requieren acceso instantáneo a sus cuentas en detalle y a los fondos que ellos contienen,

El Super ATM es una máquina cajera automática.

Que Proporciona la capacidad de ejecutar una simple transacción bancaria.

A diferencia de

Acceder a fondos y detalle a través de una oficina sucursal.

Nuestro producto

Está disponible las 24 horas del día y no necesita asistencia de empleados.

 Visión : Producto - Ejemplo

CAL/requisitos

Modelado Visual

CAL/requisitos

Modelado Visual

CAL/requisitos

Pruebas en Cada Iteración

CAL/requisitos

Mejores Prácticas (Refuerzan)

CAL/requisitos

Metodología

La forma, manera, en que se realiza algo (proyecto).

Conjunto de actividades y otros elementos asociados al tiempo (ciclo de vida) y a la consecución de uno o mas objetivos.

En Informática se le llama Proceso de Desarrollo de softfware.

Un proceso define quien esta haciendo que, cuando y como, para lograr cierto objetivo.

CAL/requisitos

Gerente de ProyectoDocumentadorDiseñadorTester

HitosPlaneamiento

Testing

MBWAUse casesCRC cards

Modelo ObjetosPlan Proyecto

Modelo de Casos de Uso

Microsoft Project3month increments

UML Java

PrecisiónExactitud

Tolerancia

Team Values

Metodología : el quien, que, y cuando de interacciones clave

entre personas.

Actividades

Técnicas

Tools Habilidades

Roles

Estándares

Calidad Equipo

Artefactos

Microsoft ProjectSofware Through Pictures

Envy/Developer

ModelingJava programming

JAD facilitation

CAL/requisitos

Ciclo de Vida

Mas información sobre ciclo de vida ver: SEI Interactive,  http://www.sei.cmu.edu/interactive/Features/1999/March/Background/Background.mar99.htm

CAL/requisitos

RUP – Disciplinas - Flujos

CAL/requisitos

Overview de conceptos RUP ahora Method Composer

CAL/requisitos

Dimensiones La dimensión horizontal representa

el tiempo y muestra los aspectos del ciclo de vida del proceso.

La dimensión vertical representa las disciplinas núcleo del proceso (o flujos de trabajo), que agrupan actividades de ingeniería de software por su naturaleza.

CAL/requisitos

Dimensión horizontal La dimensión horizontal representa

los aspectos dinámicos en términos de ciclos, fases, iteraciones y milestones (hitos). Un producto de software se diseña y construye en una sucesión de iteraciones incrementales. Permitiendo la prueba y validación así como el mitigar los riesgos.

CAL/requisitos

Dimensión Vertical

Representa los aspectos estáticos del proceso descritos en términos de componentes de procesos: Actividades, disciplinas, artefactos y roles.

CAL/requisitos

Ciclo de Vida Cascada

Ciclo de vida tradicional, en el que se debía terminar una tarea para continuar otra. El desarrollo del software se hacía de una sola vez.

CAL/requisitos

El desarrollo de Software se construye en una sucesión de iteraciones

Ciclo de Vida Iterativo

CAL/requisitos

Sucesión de iteraciones incrementales

Artefactos : Producto del trabajo

CAL/requisitos

Ciclo de desarrollo Una pasada a través de las cuatro fases es un ciclo de

desarrollo; cada paso a través de las cuatro fases produce una generación de software.

CAL/requisitos

Releases

Cada Iteración en una fase resulta en un release ejecutable del sistema

CAL/requisitos

Iteración

Una iteración lleva cabo el desarrollo de actividades que conducen a producir un release del producto – una versión del producto ejecutable, estable, junto a otro conjunto de elementos periféricos necesarios para usar este release.

Es como una pequeña cascada. Un release puede ser interno o

externo.

CAL/requisitos

Hitos La elección de los hitos del ciclo

de vida debería reflejar el mismo enfoque (iterativo incremental).

Las cuatro fases se concentran en remover las incertidumbres y por lo tanto manejar el acuerdo con el stakeholder de que los riesgos sean eliminados.

CAL/requisitos

Desarrollo Iterativo

El uso del ciclo de vida iterativo es mejor al cascada por muchas razones: Nos permite estar al tanto de cambios en

los requisitos. La verdad es que los requisitos usualmente cambian.

La integración no debe ser un “big bang” al final; los elementos deben intregrarse progresivamente en el tiempo.

CAL/requisitos

Desarrollo Iterativo

Los riesgos, normalmente, se descubren y tratan durante la integración. Con este enfoque se pueden mitigar mas temprano.

El desarrollo interativo proporciona un medio al gerente, para hacer cambios tácticos al producto.

CAL/requisitos

Desarrollo Iterativo Facilita el reuso; es mas fácil

identificar partes comunes diseñadas o implementadas parcialmente que reconocerlas durante el planeamiento.

El proceso de desarrollo en si puede ser mejorado y refinado.

CAL/requisitos

Inception : Creación La primera fase inception (creación) se

enfoca en el espacio del problema: determinando lo que el sistema necesita para ser entregado, sus límites, interacciones, servicios, y asi sucesivamente. La fase se completa cuando todos los stakeholders estan de acuerdo con la descripción del sistema.

Definimos una “visión” del producto final y los casos de uso del negocio asociados, definiendo el alcance global del proyecto.

CAL/requisitos

Incepción (creación)

Trabajos ejecutados en esta fase

CAL/requisitos

Elaboración La segunda fase Elaboración se enfoca

en identificar una arquitectura robusta para lograr satisfacre las necesidades del stakeholder.

Se refina la definción del producto, se define y se establece una línea base de arquitectura y se desarrolla un plan mas preciso para su desarrollo y despliegue.

CAL/requisitos

Elaboración

CAL/requisitos

Arquitectura

Es el nivel conceptual de mas alto nivel de un sistema y su ambiente (IEEE). La arquitectura de un sistema de software (en un momento dado del tiempo), es su organización o estructura de componentes significativos que interactúan a través de interfaces, cuyos componentes estan a su vez compuestos de componentes mas pequeños e interfaces

CAL/requisitos

Arquitectura Estructura organizativa de un

sistema: una arquitectura puede descomponerse recursivamente en partes que interactúan a través de interfaces, vínculos y partes conectadas y restricciones para el ensamble de sus partes. Partes que interactúan a través de una interface incluye: clases, componentes y subsistemas.

CAL/requisitos

Criterios de evaluación - Elaboración

¿La visión del producto es estable? ¿La arquitectura es estable? ¿Las demostraciones ejecutables,

muestran que los principales elementos de riesgo han sido considerado y resueltos?

¿Está el plan de construcción suficientemente detallado, tiene una base creible de estimados?.

CAL/requisitos

¿Todos los stakeholder concuerdan que la visión actual se puede lograr si se ejecuta el plan para desarrollar el sistema completo, en el contexto de la arquitectura?.

¿Son aceptables los gastos en recursos actuales versus los planeados?.

Criterios de evaluación - Elaboración

CAL/requisitos

Construcción

La tercera fase, construcción, se enfoca en la construcción incremental del sistema que elimine los riesgos para una entrega exitosa.

Cada una de las iteraciones en esta fase proporcionan mas capacidad que la anterior y por lo tanto puede pasar por mas pruebas del sistema.

CAL/requisitos

Construcción

CAL/requisitos

Transición

La cuarta fase, transición, concluye con la adopción exitosa del sistema.

El producto es entregado a la comunidad de usuarios; incluye manufactura, entrenamiento, soporte, entrega y mantenimiento del producto.

CAL/requisitos

Transición Objetivos:

Lograr que el usuario sea autosuficiente. Lograr el producto tan rápido y efectivo

en costo como sea practico. Actividades:

Hacer el despliegue de ingeniería del producto, empaque, entrenamiento del personal de campo, ventas.

Actividades de afinamiento.

CAL/requisitos

Participantes Equipo Roles

System Analyst

User-Interface Designer

Use case Specifier

System Integrator

Integration Tester

System Tester

Test Engineer

Requerimientos

Implementación

Test

Análisis

Use case Engineer

Architect

Diseño Component Engineer

CAL/requisitos

Mapa de Dominios