19
Introducción a las Metodologías de Análisis y diseño de Software Ing. Ariel Adolfo Rodríguez [email protected] 3141163790 @aadolforh arielrodriguezh.blogspot.com

introduccion metododologias de analisis y diseño de software

Embed Size (px)

DESCRIPTION

Presentación que sintetiza las metodologías de análisis y diseño de software y el ciclo de vida del desarrollo de software

Citation preview

Page 1: introduccion metododologias de analisis y diseño de software

Introducción a las Metodologías

de Análisis y diseño de Software

Ing. Ariel Adolfo Rodríguez

[email protected] 3141163790

@aadolforh

arielrodriguezh.blogspot.com

Page 2: introduccion metododologias de analisis y diseño de software

Metodologías de Diseño y Desarrollo de Software

Según su enfoque tenemos:

Estructuradas

Orientadas a Procesos

Orientadas a Objetos

• Cascada• Incremental• Prototipado evolutivo• Espiral

• Cluster (Meyer (1990))

• Fuente (Henderson-Seller (1990))

• Remolino (Rumbaugh (1992))

• Pinball (Amler (1994))

• Gane y Sarsons (1979)• DeMarco (1979)• Yourdon (1989)

(Piattini, 1996)

Page 3: introduccion metododologias de analisis y diseño de software

Modelo Cascada (Royce (1970), Boehm (1981), Sommerville (1985) y Sigwart et al. (1990).

En este modelo, el producto evoluciona a través de una secuencia de fases ordenadas en forma lineal, permitiendo iteraciones al estado anterior. Fases

◦Análisis de requisitos del sistema. ◦Análisis de requisitos del software. ◦Diseño preliminar. ◦Diseño detallado. ◦Codificación y pruebas. ◦Explotación (u operación) y mantenimiento

Page 4: introduccion metododologias de analisis y diseño de software

Modelo Incremental (Lehman 1984)

En este modelo, el producto evoluciona a través de una secuencia de fases ordenadas en forma lineal ciclica, Fases

◦Análisis de requisitos del sistema. ◦Análisis de requisitos del software. ◦Diseño preliminar. ◦Diseño detallado. ◦Codificación y pruebas. ◦Explotación (u operación) y mantenimiento

Page 5: introduccion metododologias de analisis y diseño de software

Modelo Prototipado Evolutivo (J. Jusgado 1996)

El uso de prototipos se centra en la idea de ayudar a comprender los requisitos que plantea el usuario, sobre todo si este no tiene una idea muy clara de lo que desea.

Esta versión temprana de lo que será el producto, con una funcionalidad reducida, en principio, podrá incrementarse paulatinamente a través de refinamientos sucesivos de las especificaciones del sistema, evolucionando hasta llegar al sistema final.

Fases ◦ Análisis de requisitos del sistema. ◦ Análisis de requisitos del software. ◦ Diseño, desarrollo e implementación del prototipo Diseño detallado. ◦ Prueba del prototipo. ◦ Refinamiento iterativo del prototipo. ◦ Refinamiento de las especificaciones del prototipo. ◦ Diseño e implementación del sistema final. ◦ Explotación (u operación) y mantenimiento

Page 6: introduccion metododologias de analisis y diseño de software

Modelo en espiral de Boehm (Boehm, 1988)

El movimiento de la espiral,ampliando con cada iteración su amplitud radial, indica que cadavez se van construyendo versiones sucesivas del software, cada vez más completas.

Fases Planeación : determinación de los objetivos, alternativas y

restricciones Análisis de riesgo : análisis de alternativas e

identificación/resolución de riesgos Ingeniería : desarrollo del producto hasta "el siguiente nivel". Evaluación : valoración por parte del cliente de los resultados

obtenidos.

Page 7: introduccion metododologias de analisis y diseño de software

El Ciclo de Vida de un Desarrollo de Software

Page 8: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

1. La planificación de la gestión proyecto, se la puede describir en términos de: las actividades a realizar, los documentos de salida y las técnicas a utilizar.

Page 9: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

2. La identificación de la necesidad, , enunciada en términos concretos, es el punto de partida para la puesta en marcha de un proyecto y la evaluación de las posibles soluciones darán la viabilidad del mismo.

Page 10: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

3. El proceso de especificación de los requisitos , Aquí hay que establecer de un modo conciso, claro y preciso el conjunto de requisitos que deben ser satisfechos por el software a desarrollar. El objetivo es determinar en forma total y consistente los requisitos de software. El análisis se realiza sobre la salida resultante, la descomposición de los datos, el procesamiento de los mismos, las bases de datos y las interfaces de usuario.

(J. Juzgado, 1996).

Page 11: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

4. El proceso de diseño, es la piedra angular para la obtención de un producto coherente que satisfaga los requisitos de software. El diseño desde el punto de vista técnico comprende cuatro tipos de actividades: el diseño de datos, arquitectónico, procedimental y diseño de interfaces y desde el punto de vista del proyecto evoluciona desde un diseño preliminar al diseño detallado.

◦ El diseño de datos, modela las estructuras de datos necesarias para el desarrollo.

◦ El diseño arquitectónico define las relaciones entre las estructuras del programa, considerando el desarrollo de módulos que se relacionan, mezcla la estructura de programas y de datos, y define las interfaces.

◦ El diseño procedimental transforma estructuras en descripción procedimental del software.

◦ El diseño de interface establece los mecanismos de interacción humano- computadora.

Existen herramientas de tipo CASE (Computer Aided Software Engineerig).

(Pressman, 1996).

Page 12: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

4. El proceso de diseño, este proceso requiere tener en cuenta:

Page 13: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

5. El proceso de Implementación, Este proceso produce código fuente, código de la base de datos y documentación de base de acuerdo a los estándares utilizados. La salida de este proceso conduce a las pruebas de validación y verificación.

Page 14: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

6. El proceso de Instalación, Este proceso se centra en la verificación de la implementación adecuada del software y en la conformidad del cliente, previa prueba de aceptación.

Page 15: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

7. Los procesos de mantenimiento y retiro, El proceso de mantenimiento se centra en el cambio asociado a los errores detectados, fallas, mejoras solicitadas y cambios. Se lo considera como una vuelta a la aplicación del ciclo de vida pero con un software existente como iteraciones de desarrollo. Los tipos de mantenimiento pueden ser:

◦ Correctivos, ante defectos encontrados, ◦ Adaptativos, o sea, cambios del software de acuerdo al cambio en el entorno.◦ De mejoras, con agregado de funciones adicionales.

Page 16: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

8. El proceso de verificación y validación, Las tareas que abarca son las siguientes:

◦ Pruebas de verificación◦ Revisiones y auditoría e incluye las tareas de validación ◦ Pruebas de validación que se realizan durante el ciclo de vida del software para

asegurar la satisfacción con los requisitos.

Page 17: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

9. El proceso de la gestión de la configuración, este involucra la gestión de los cambios durante el ciclo de vida que a partir de la configuración del sistema en un dado momento, tiene como objetivo un control de los cambios producidos y la coherencia del mismo.

Page 18: introduccion metododologias de analisis y diseño de software

Fases del Ciclo de Vida de un Desarrollo de Software

10. Los procesos de desarrollo de la documentación y de formación, Este proceso permite planificar, diseñar, implementar, editar, producir, distribuir y mantener los documentos para los desarrolladores y los usuarios. Para una utilización efectiva del sistema se debe proporcionar al usuario las instrucciones y guías necesarias acerca del uso del software y de sus limitaciones. Es un punto fundamental la formación del usuario en el sistema. También es importante la formación de los desarrolladores y soporte técnico.

Page 19: introduccion metododologias de analisis y diseño de software

Bibliografía

Jacobson, I., Booch, G. & Rumbaugh, G. (2000). El Proceso Unificado de Desarrollo de Software. Madrid. Pearson Educación S.A.

Pressman R. (2010). Ingeniería del software. Un enfoque práctico. Editorial Mc Graw Hill. Séptima edición. 

Rational Software Corporation. (2006). Rational Unified Process, Versión 2002.05.00. http://www.ts.mah.se/RUP/RationalUnifiedProcess. Página web vigente al 8/05/2012.Software Engineering Standards Committee of the IEEE Computer Society. (1990). IEEE Std 610.12-1990. IEEE Standard Glossary of Software Engineering Terminology. (Revision and redesignation of IEEE Std 792-1983). IEEE-SA Standards Board. The Institute of Electrical and Electronics Engineers. 

Software Engineering Standards Committee of the IEEE Computer Society. (1998). IEEE Std 830. IEEE Recommended Practice for Software Requirements Specifications. IEEE-SA Standards Board. The Institute of Electrical and Electronics Engineers, Inc. ISBN 0-7381-0332-2. http://www.mug.org.ar/Descargas/Jornadas/default.aspx. Página web vigente al 09/10/2009. 

Software Engineering Standards Committee of the IEEE Computer Society. (1998). IEEE Std 1233. 1998. IEEE Guía para el desarrollo de Especificaciones de Requerimientos de Sistemas. (incluye IEEE Std 1233–1996. e IEEE Std 1233a-1998). IEEE-SA Standards Board. The Institute of Electrical and Electronics Engineers. 

Software Engineering Institute, Carnegie Mellon University. (2010). CMMI® for Development, Version 1.3. CMMI-DEV, V1.3. Improving processes for developing better products and services. TECHNICAL REPORT CMU/SEI-2010-TR-033. ESC-TR-2010-033. Software Engineering Process Management Program. http://www.sei.cmu.edu/reports/10tr033.pdf . Página web vigente al 21/04/2012.  

Sommerville, I. (2005). Ingeniería de software. 7 Edición. México: Addison – Wesley. 

Sommerville, I. (2011). Ingeniería de software. 9 Edición. México. Pearson Educación.

Whitten. J, & Bentley. L. (2008). Análisis de sistemas: diseño y métodos. Séptima edición. Mc Graw Hill. México.

Yourdon, E. (2000). Análisis Estructurado Moderno. México: Pearson. ISBN 968-880-330-0.