presentación digital eliezer alas

26
Desarrollo de prototipos de aplicaciones Eliezer Alas 25.390.867 Diseño de software Universidad Fermín Toro Vicerrectorado Académico Facultad de ingeniería Escuela de computación

Upload: eliezer-alas

Post on 14-Apr-2017

205 views

Category:

Engineering


2 download

TRANSCRIPT

Page 1: Presentación digital Eliezer Alas

Desarrollo de prototipos

de aplicacionesEliezer Alas25.390.867Diseño de software

Universidad Fermín ToroVicerrectorado AcadémicoFacultad de ingenieríaEscuela de computación

Page 2: Presentación digital Eliezer Alas

Que es un prototipo:

Los prototipos son una visión preliminar del sistema futuro que se implantara.La elaboración de prototipos de un sistema de información es una técnica valiosa para la recopilación rápida de información especifica a cerca de los requerimientos de información de los usuarios.Los prototipos efectivos deben hacerse tempranamente en el ciclo de vida del desarrollo de sistemas, durante la fase de determinación de requerimientos.

Page 3: Presentación digital Eliezer Alas

Características de prototipos

El prototipo es una aplicación que funciona.

La finalidad del prototipo es probar varias suposiciones formuladas por analistas y usuarios

Los prototipos se crean con rapidez

Los prototipos evolucionan a través de un proceso iterativo

Los prototipos tiene un costo bajo desarrollo

Page 4: Presentación digital Eliezer Alas

Fines de prototipos de aplicaciones:

Los prototipos no contiene todas las características o lleva a cabo la totalidad de las funciones necesarias del sistema final. Mas bien incluye elementos suficientes para permitir a las personas utilizar el sistema propuesto para determinar que les gusta, que no les gusta y identificar aquellas características que deben cambiar son o añadiesen.

Page 5: Presentación digital Eliezer Alas

Uso de prototipos de aplicación:

Tiene dos usos principales

Es un método eficaz para aclarar los requerimientos del usuarios.

Verificar la factibilidad del diseño de un sistema

Page 6: Presentación digital Eliezer Alas

Razones para el empleo de prototipos:Las razones para el uso de prototipos son el resultado directo de las necesidades de diseñar y desarrollar sistemas de información con rapidez, eficiencia y eficacia.

Esta compuesto de tres partes esenciales que ayudan a un optimo desarrollo del diseño.

Aumento en la productividadRedesarrollo planificadoEntusiasmo de los usuarios con respecto a los prototipos

Page 7: Presentación digital Eliezer Alas

Aumento en la productividad

Llevar a cabo actividades en forma mas eficiente ,obteniendo el mayor impacto con la mejor utilización de recursos

Los analistas se enfrentan con muchos obstáculos para alcázar sus objetivos de desarrollo.

Page 8: Presentación digital Eliezer Alas

Redesarrollo planificado

los analistas desarrollan e implementan aplicaciones de forma deliberada por ensayo y error, debido a la falta de comunicación o mala compresión. La mayor parte de las veces tienen que volverse a desarrollar para satisfacer los requerimientos de forma completa.

Page 9: Presentación digital Eliezer Alas

Entusiasmo de los usuarios con respecto a los prototipos

Que esperan?

Ellos desean un sistema que se adapte a sus necesidades

Generar preguntas y reacciones al usuario

Page 10: Presentación digital Eliezer Alas

Aplicación para candidatos:

No se conocen los requerimientos

Los requerimientos

Costos altos

Altos riesgo

Nuevas tecnologías

Page 11: Presentación digital Eliezer Alas

Etapas del modelo de prototiposEl desarrollo de prototipos es una aplicaciones que se llevan de forma ordenada, sin importar la herramienta

Identificación de requerimientosDesarrollo de un modelo que funcioneUtilizar el prototipoRevisión del prototipoRepetición del proceso las veces que sea necesario

Page 12: Presentación digital Eliezer Alas

Identificación de requerimientos

La determinación de los requerimientos de una Aplicación es tan importante para el métodode desarrollo de prototipos. Como lo es parael ciclo de desarrollo de sistemas o análisis o Analista estructurado.

Page 13: Presentación digital Eliezer Alas

Definición de Requerimiento

Cuando el Cliente solicita que se desarrolle un sistema tiene algunas nociones de lo que debe hacer.

Por está razón cada sistema basado en software tiene un propósito, usualmente expresado con algo que el sistema debe hacer.

Un Requerimiento “es una característica del sistema o una descripción de algo que el sistema es capaz de hacer con el objeto de satisfacer el propósito del sistema”.

Page 14: Presentación digital Eliezer Alas

Definición de Requerimiento

Es decir, los requerimientos son lo que los clientes/usuarios esperan que haga el sistema.

Los analistas, por lo tanto, deben entender el problema de los usuarios en SU cultura y con SU lenguaje y construir el sistema que resuelve sus necesidades.

En si el objetivo del análisis de requerimientos es resolver el problema.

Page 15: Presentación digital Eliezer Alas

Requerimientos v/s Diseño

Los requerimientos definen el Qué (el problema) del sistema.

El Diseño define el Cómo (la solución).

Durante el análisis de requerimientos no se consideran descripciones especificas de la implementación como requerimientos, a menos que el cliente lo pida (Ej.: bases de datos especificas, lenguajes de programación, etc.).

Los requerimientos, por lo tanto deben centrarse en el cliente/usuario y el problema.

Page 16: Presentación digital Eliezer Alas

Importancia de los requerimientos

En 1994 el Standish Group hizo un estudio sobre 350 compañías y cerca de 8000 proyectos de software para averiguar como les estaba llendo. Los resultados fueron desencantadores:

El 31% de los proyectos de software fueron cancelados antes de tiempo (2480 proyectos).

En las grandes compañías, sólo el 9% de los proyectos fue entregado en el termino de tiempo y dentro del costo que se presupuestaron; el 16% satisfizo estos requerimientos en las compañías pequeñas.

Page 17: Presentación digital Eliezer Alas

En 1995 Standish pidió a los participantes que especificarán las causas. Los resultados fueron los siguientes:

Requerimientos incompletos (13,1%). Falta de compromiso del usuario (12,4%). Falta de recursos (10,6%). Expectativas no realistas (9,9%). Falta de soporte ejecutivo (9,3%). Requerimientos y especificaciones cambiantes (8,7%). Falta de planeamiento (8,1%). Fin de la necesidad del sistema (7,5%).

Importancia de los requerimientos

Page 18: Presentación digital Eliezer Alas

Importancia de los requerimientosBoehm y Papaccio en 1988, realizan un cuantificación del costo de corregir los errores asociados a requerimientos en las diversas etapas del software.

Etapa en la que se encuentra el error Costo en USD

Análisis y Esp. Requerimientos 1Diseño 5Codificación 10Prueba Unitaria 20Producción 200

Page 19: Presentación digital Eliezer Alas

Clasificación de Requerimientos

Según el Tipo los requerimientos se clasifican en:

Requerimientos funcionales.Requerimientos no funcionales.Requerimientos del Dominio.

Según a quien van dirigidos se clasifican en:

Requerimientos del Usuario.Requerimientos del Sistema.

Page 20: Presentación digital Eliezer Alas

Clasificación de RequerimientosRequerimientos funcionales

Describen la funcionalidad o los servicios que se espera que el sistema proveerá. Dependen del tipo de software, del sistema que se desarrollo y de los posibles usuarios.

Cuando se expresan como Requerimientos del usuarios, se definen de forma general.

Cuando se expresan como requerimiento del sistema describen con detalle la función de éste, sus entradas y salidas, excepciones, etc.

Page 21: Presentación digital Eliezer Alas

Clasificación de RequerimientosRequerimientos no funcionales

Los requerimientos no funcionales se clasifican según su implicancia:

Del producto: especifican comportamiento del producto. Ej.: de desempeño en la rapidez de ejecución del sistema, cuanta memoria se requiere; los de fiabilidad que fijan la tasa de fallas para el sistema sea aceptable, los de portabilidad y de usabilidad.

Organizacionales: se derivan de las políticas y procedimientos existentes en la organización del cliente y del desarrollador. Ej.: estándares en los procesos que deben utilizarse, requerimientos de implementación como los lenguajes de programación o el método de diseño a utilizar.

Page 22: Presentación digital Eliezer Alas

Clasificación de RequerimientosRequerimientos no funcionales

Son los requerimientos que no se refieren directamente a las funciones específicas que entrega el sistema, sino a las propiedades emergentes de éste, como la fiabilidad, la respuesta en el tiempo y la capacidad de almacenamiento.

Muchos requerimientos no funcionales se refieren al sistema como un todo más que a rasgos particulares del mismo.

A menudo son mas críticos que los funcionales. Mientras que un incumplimiento de un requerimiento funcional degrada el sistema, el de un requerimiento no funcional del sistema lo inutiliza.

Page 23: Presentación digital Eliezer Alas

Clasificación de RequerimientosRequerimientos no funcionales

Los requerimientos no funcionales se clasifican según su implicancia:

Del producto: especifican comportamiento del producto. Ej.: de desempeño en la rapidez de ejecución del sistema, cuanta memoria se requiere; los de fiabilidad que fijan la tasa de fallas para el sistema sea aceptable, los de portabilidad y de usabilidad.

Organizacionales: se derivan de las políticas y procedimientos existentes en la organización del cliente y del desarrollador. Ej.: estándares en los procesos que deben utilizarse, requerimientos de implementación como los lenguajes de programación o el método de diseño a utilizar.

Page 24: Presentación digital Eliezer Alas

Clasificación de RequerimientosRequerimientos no funcionales

Externos: cubre todos los requerimientos que se derivan de los factores externos al sistema y de su proceso de desarrollo. Ej.: requerimientos de interoperabilidad, requerimientos legales, requerimientos éticos.

Un problema común con los requerimientos no funcionales es que algunas veces son difíciles de verificar.

De forma ideal los requerimientos no funcionales se deben expresar de manera cuantitativa utilizando métricas que se puedan probar de forma objetiva. En la práctica, es difícil. El costo es muy alto.

Page 25: Presentación digital Eliezer Alas

Clasificación de RequerimientosRequerimientos del dominio

Se derivan del dominio del sistema más que de las necesidades especificas del usuario.

Son importantes debido a que a menudo reflejan los fundamentos del dominio de la aplicación. Si estos no se satisfacen es imposible que el sistema trabaje de forma satisfactoria.

Estos se expresan utilizando un lenguaje especifico del dominio de la aplicación que a menudo es difícil de comprender. Ej.: operación para calcular desaceleración del tren, para un sistema de control de trenes.

Page 26: Presentación digital Eliezer Alas

Muchas gracias