Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

18
 Administración de Proyectos de desarrollo de Software Ciclo de vida de un proyecto Enfoque moderno Temas Objetivos Crisis del software V entajas de las metodologías orientadas a objetos UML Resumen Crisis del Software y Ventajas de la Tecnología Orientada a Objetos

Transcript of Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

Page 1: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 1/18

 Administración de Proyectos de desarrollo de SoftwareCiclo de vida de un proyecto

Enfoque moderno

Temas� Objetivos

� Crisis del software

� Ventajas de las metodologías orientadas a

objetos� UML

� Resumen

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Page 2: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 2/18

 Administración de Proyectos de desarrollo de SoftwareCiclo de vida de un proyecto

Enfoque moderno

Fin de la presentación

Continúe en la siguiente actividad

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Page 3: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 3/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Objetivos

� Al final de este tema podrás:

 ± Explicar la crisis del software

 ± Discutir las ventajas de la tecnología orientada a objetos

Page 4: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 4/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Crisis del software

� El término surgió en 1968, durante la primer conferencia de laOTAN sobre ingeniería de software, como resultado de observar 

que los sistemas en esa época y actualmente: ± Se entregan después del tiempo programado ± Cuestan más de lo que se esperaba ± No cumplen con las necesidades ni requerimientos del cliente

Page 5: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 5/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Datos que ejemplifican la crisis del software*

 ± Más de $300 billones por año se gastan en actividadesreferentes a software en los E.U.

 ± Sólo 8% de los sistemas son liberados Y funcionan ± 70 a 79% son terminados ± El costo de poseer y mantener un sistema es dos veces tan

caro como desarrollar el mismo ± Según la PC Magazine (1995) se encontró que de los

proyectos de desarrollo de software:� 16% fue exitoso� 53% opera (pero menos que exitoso)� 31% fueron cancelados

Page 6: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 6/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Factores que han llevado a la crisis del software

 ± Modificación constante de las fechas de entrega

� Requerimientos del negocio cambian constantemente� Requerimientos iniciales mal definidos

 ± Fallas en el manejo de riesgo� Ciclo de vida de cascada retrasa identificación de

problemas, no se sabe hasta el final si va a funcionar 

 ± Complejidad del software� Se incrementa la demanda de software� Nadie entiende la totalidad del sistema� Sistemas legados� Aumento del poder del hardware y reducción de su costo

Page 7: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 7/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

 Algunas respuestas a la Crisis del software

� Nuevos ciclos de vida del software: Iterativo e incremental en vez decascada

 ± Se divide al proyecto en mini-proyectos o iteraciones, cadaiteración incluye su propio ciclo de cascada (análisis derequerimientos, diseño, implementación y pruebas)

 ± Cada iteración genera una parte del producto final

� Metodología orientada a objetos para el proceso de desarrollo de

software

Page 8: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 8/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Ventajas de las Metodologías Orientadas a Objetos

� Un sólo paradigma

 ± Modelos más cercanos al mundo real

� Más fáciles de entender y mantener 

 ± Estabilidad

� Cambios en los requerimientos no implican cambios masivosen el sistema en desarrollo

 ± Hablan el mismo lenguaje usuarios, analistas, diseñadores,implantadores

 ± Facilita reutilización

Page 9: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 9/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Historia de las Metodologías OO

� 1970 desarrollo mínimo en Xerox

� 1981 lenguaje Smalltak, primer lenguaje y sistema operativo 00popular 

� 1984 lenguaje C++, lenguaje OO para escribir software real

� 1990s desarrollo del lenguaje C++ y diversas metodologías deanálisis y diseño OO

� 1995 lenguaje Java, lenguaje OO para el web

Page 10: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 10/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Metodologías OO

� Una MOO popular es el UP o Unified Process, un proceso iterativoe incremental que se implementa en el Rational Unified Process

� Existen diversas metodologías y autores ± Coad & Yourdon, Grady Booch, Ivar Jacobson (Objectory),

Wirfs-Brook, James Rumbaugh (OMT)

Page 11: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 11/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

 Análisis y Diseño Orientado a Objetos

� OOA OOD

Modelo de Añade detalles

Requerimientos y decisiones de diseño

Perspectiva del usuario Perspectiva del desarrollador  

Cualquier metodología orientada a objetos incluye al menos dos fases.

Durante el análisis se obtiene el modelo que representa las necesidades del

usuario sin considerar ningún aspecto de implementación (software o

hardware). En el diseño se genera la arquitectura del sistema, la cual

representa al sistema considerando los detalles de implementación.

Page 12: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 12/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

UML

� A fin de que la comunidad que desarrolla sistemas representara alos mismos utilizando una misma nomenclatura se creó UML

(Unified Modeling Language)� El lenguaje de modelado unificado (Unified Modeling Language )

o UML, es descrito en ³The Unified Modeling Language for ObjectOriented Development´ escrito por Grady Booch, Jim Rumbaughe Ivar Jacobson

� Basado en las experiencias de los autores

� Incorpora contribuciones de otros metodologistas� Entregada en colaboración por: Rational Software, Microsoft,

Hewlett Packard, Oracle, Texas Instruments, MCI System Housey otros

Page 13: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 13/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

UML

� NO ES UNA METODOLOGÍA, es decir no indica cómo crear unsistema o cuáles son los pasos a seguir para su desarrollo.

� UML permite representar los diferentes artefactos de un sistema deforma estándar independientemente de la metodología que se use.

Page 14: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 14/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Fuentes de UML

UML

R umbaugh Booch Jacobson Fusion Meyer  

(Before and after conditions)

Harel (state

charts)

Gamma,

et.al (frameworks, patterns)

Shlaer-

Mellor ( Object

life cycles)

Odell Wirfs-Brock  

(Classification) (R esponsabilities)

Embley

(Singleton classes,

high level view)

Page 15: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 15/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Beneficios de UML

� Define un mapeo homogéneo del análisis al diseño hasta laimplantación

� Define una notación consistente ± Hace más fácil la comunicación a otros

 ± Ayuda a descubrir omisiones e inconsistencias

 ± Soporta análisis y diseño a pequeña y gran escala

Page 16: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 16/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Resumen

� Se requieren de nuevas tecnologías de desarrollo para mitigar lacrisis del software ± Entregar a tiempo ± Calcular con mayor precisión el presupuesto ± Cumplir con los requerimientos del cliente

� Ventajas de la tecnología de objetos ± Sus modelos representan el mundo real ± Facilita la reutilización ± Gran flexibilidad (cambios en los requerimientos no cambios

masivos en el sistema en desarrollo)

Page 17: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 17/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Resumen

� El análisis orientado a objetos es un método de análisis en el cuallos requerimientos se expresan en términos de objetos encontrados

en el problema ± Se enfoca en el qué

� En el diseño orientado a objetos el modelo de análisis se transformaen un modelo de diseño mediante refinar el modelo, agregandodetalles y capturando decisiones de diseño necesarias paraimplantar el modelo ± Se enfoca en el cómo

Page 18: Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

8/7/2019 Introduccion Analisis Diseno OO 1-Unidad 1-01 Crisis Software

http://slidepdf.com/reader/full/introduccion-analisis-diseno-oo-1-unidad-1-01-crisis-software 18/18

Crisis del Software yVentajas de la Tecnología Orientada a Objetos

Resumen

� UML (Unified Modeling Language) fue desarrollado por GradyBooch, Jim Rumbaugh e Ivar Jacobson en colaboración con unnúmero de contribuidores basados en sus experiencias colectivas.No es una metodología sino una notación que puede utilizarse pararepresentar sistemas.