1. Clase 1 Ing. de Software

Embed Size (px)

Citation preview

  • 7/25/2019 1. Clase 1 Ing. de Software

    1/24

    INGENIERIADE SOFTWARE

  • 7/25/2019 1. Clase 1 Ing. de Software

    2/24

    2

    Ing. SW Ver 09

    Introduccin a la Ing. de Software

  • 7/25/2019 1. Clase 1 Ing. de Software

    3/24

    3

    Ing. SW Ver 09

    . Definicione!

  • 7/25/2019 1. Clase 1 Ing. de Software

    4/24

    "

    Ing. SW Ver 09

    .2 E#olucin del Software

  • 7/25/2019 1. Clase 1 Ing. de Software

    5/24

    $

    Ing. SW Ver 09

    .3 I%&ortancia del !oftware

  • 7/25/2019 1. Clase 1 Ing. de Software

    6/24

    '

    Ing. SW Ver 09

    ." (ro)le%a! del !oftware

  • 7/25/2019 1. Clase 1 Ing. de Software

    7/24

    *

    Ing. SW Ver 09.$ +aracter,!tica! del !oftware

  • 7/25/2019 1. Clase 1 Ing. de Software

    8/24

    -

    Ing. SW Ver 09.' +once&to! de calidad

  • 7/25/2019 1. Clase 1 Ing. de Software

    9/24

    Ing. SW Ver 09.* /ito! del !oftware

  • 7/25/2019 1. Clase 1 Ing. de Software

    10/24

    0

    Ing. SW Ver 09.* /ito! del !oftware

  • 7/25/2019 1. Clase 1 Ing. de Software

    11/24

    Ing. SW Ver 09.- Di!tri)ucin del e!fuer1o

  • 7/25/2019 1. Clase 1 Ing. de Software

    12/24

    2

    Ing. SW Ver 09. Ad%on. de (roecto! de SW

  • 7/25/2019 1. Clase 1 Ing. de Software

    13/24

    3

    Ing. SW Ver 09.0 (aradig%a! de la Ing. de SW

  • 7/25/2019 1. Clase 1 Ing. de Software

    14/24

    "

    Ing. SW Ver 09.0 /etodologia

    Un objetivo de dcadas ha sido el encontrar procesos y metodologas, que sean

    sistemticas, predecibles y repetibles, a fin de mejorar la productividad en el

    desarrollo y la calidad del producto software.

    Etapas del proceso del ciclo de vida

    !"nlisis de #equerimientos!Especificaci$n!%ise&o y arquitectura!'rogramaci$n!'ruebas!%ocumentaci$n y mantenimiento

    http://es.wikipedia.org/wiki/Metodolog%C3%ADa_(ingenier%C3%ADa_de_software)http://es.wikipedia.org/wiki/Metodolog%C3%ADa_(ingenier%C3%ADa_de_software)
  • 7/25/2019 1. Clase 1 Ing. de Software

    15/24

    $

    Ing. SW Ver 09.0 /odelo! de de!arrollo de !w

    (a ingeniera de software tiene varios modelos o paradigmasde desarrollo en

    los cuales se puede apoyar para la reali)aci$n de software, de los cuales podemos

    destacar a stos por ser los ms utili)ados y los ms completos

    !*odelo en cascadao +lsico modelo tradicional-!*odelo en espiralmodelo evolutivo-!*odelo de prototipos!%esarrollo por etapas!%esarrollo iterativo y crecienteo terativo e ncremental

    !#"%#apid "pplication %evelopment-

    http://es.wikipedia.org/wiki/Paradigmahttp://es.wikipedia.org/wiki/Modelo_en_cascadahttp://es.wikipedia.org/wiki/Desarrollo_en_espiralhttp://es.wikipedia.org/wiki/Modelo_de_prototiposhttp://es.wikipedia.org/wiki/Desarrollo_por_etapashttp://es.wikipedia.org/wiki/Desarrollo_iterativo_y_crecientehttp://es.wikipedia.org/wiki/RADhttp://es.wikipedia.org/wiki/RADhttp://es.wikipedia.org/wiki/Desarrollo_iterativo_y_crecientehttp://es.wikipedia.org/wiki/Desarrollo_por_etapashttp://es.wikipedia.org/wiki/Modelo_de_prototiposhttp://es.wikipedia.org/wiki/Desarrollo_en_espiralhttp://es.wikipedia.org/wiki/Modelo_en_cascadahttp://es.wikipedia.org/wiki/Paradigma
  • 7/25/2019 1. Clase 1 Ing. de Software

    16/24

    '

    Ing. SW Ver 09/odelo en +a!cada

    !En ngeniera de softwareel desarrollo en cascada, tambin llamado modelo!en cascada, es el enfoque metodol$gico que ordena rigurosamente las etapas!del ciclo de vida del software, de forma tal que el inicio de cada etapa debe!esperar a la finali)aci$n de la inmediatamente anterior.

    Un ejemplo de una metodologa de desarrollo en cascada es

    !"nlisis de requisitos!%ise&o del /istema!%ise&o del 'rograma

    !+odificaci$n!'ruebas!mplantaci$n!*antenimiento

    http://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_softwarehttp://es.wikipedia.org/wiki/Ciclo_de_vida_del_softwarehttp://es.wikipedia.org/wiki/Ciclo_de_vida_del_softwarehttp://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software
  • 7/25/2019 1. Clase 1 Ing. de Software

    17/24

    *

    Ing. SW Ver 09/odelo en +a!cada

    VENTAJAS:

    /e tiene todo bien organi)ado y no se me)clan las fases.

    Es perfecto para proyectos que son rgidos, y adems donde se especifiquen muy

    bien los requerimientos y se cono)ca muy bien la herramienta a utili)ar.

    DESVENTAJAS:

    En la vida real, un proyecto rara ve) sigue una secuencia lineal, esto crea una

    mala implementaci$n del modelo, lo cual hace que lo lleve al fracaso

  • 7/25/2019 1. Clase 1 Ing. de Software

    18/24

    -

    Ing. SW Ver 09/odelo en E!&iral

    El desarrollo en espirales un modelode ciclo de vida del softwaredesarrollado

    por 0arry 0oehmen 1234, utili)ado generalmente en la ngeniera de software.

    (as actividades de este modelo se conforman en una espiral, en la que cada bucle

    o iteraci$nrepresenta un conjunto de actividades. (as actividades no estn fijadas

    a priori, sino que las siguientes se eligen en funci$n del anlisis de riesgo,

    comen)ando por el bucle interior

    1.1 En cada vuelta o iteraci$n hay que tener en cuenta

    1.5 /i el resultado no es el adecuado o se necesita implementar mejoras o funcionalidades

    1.6 7areas

    1.8 %eterminar o fijar objetivos

    1.4 "nlisis del riesgo1.9 %esarrollar, verificar y validar probar-

    1.: 'lanificar

    http://es.wikipedia.org/wiki/Modelohttp://es.wikipedia.org/wiki/Ciclo_de_vida_del_softwarehttp://es.wikipedia.org/wiki/Barry_Boehmhttp://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_softwarehttp://es.wikipedia.org/wiki/Espiralhttp://es.wikipedia.org/wiki/Iteraci%C3%B3nhttp://es.wikipedia.org/wiki/An%C3%A1lisis_de_riesgohttp://es.wikipedia.org/wiki/An%C3%A1lisis_de_riesgohttp://es.wikipedia.org/wiki/Iteraci%C3%B3nhttp://es.wikipedia.org/wiki/Espiralhttp://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_softwarehttp://es.wikipedia.org/wiki/Barry_Boehmhttp://es.wikipedia.org/wiki/Ciclo_de_vida_del_softwarehttp://es.wikipedia.org/wiki/Modelo
  • 7/25/2019 1. Clase 1 Ing. de Software

    19/24

    Ing. SW Ver 09/odelo en E!&iral

    VENTAJAS:

    !El anlisis del riesgo se hace de forma e;plcita y clara. Une los mejores elementos de los

    restantes modelos.!#educe riesgos del proyecto!ncorpora objetivos de calidad!ntegra el desarrollo con el mantenimiento, etc.

    !"dems es posible tener en cuenta mejoras y nuevos requerimientos sin romper con lametodologa, ya que este ciclo de vida no es rgido ni esttico

    !DESVENTAJAS:

    !

  • 7/25/2019 1. Clase 1 Ing. de Software

    20/24

    20

    Ing. SW Ver 09/odelo de (rototi&o!

    En ngeniera de softwareel desarrollo con prototipacin, tambin llamado modelo

    de prototiposque pertenece a los modelos de desarrollo evolutivo, se inicia con

    la definici$n de los objetivos globales para el software, luego se identifican los

    requisitos conocidos y las reas del esquema en donde es necesaria ms definici$n.

    Entonces se plantea con rapide) una iteraci$n de construcci$n de prototipos y se

    presenta el modelado en forma de un dise&o rpido-.

    El dise&o rpido se centra en una representaci$n de aquellos aspectos del software

    que sern visibles para el cliente o el usuario final por ejemplo, la configuraci$n de

    la interfa) con el usuario y el formato de los despliegues de salida-. El dise&o rpido

    conduce a la construcci$n de un prototipo, el cual es evaluado por el cliente o el

    usuario para una retroalimentaci$n= gracias a sta se refinan los requisitos delsoftware que se desarrollar. (a iteraci$n ocurre cuando el prototipo se ajusta para

    satisfacer las necesidades del cliente. Esto permite que al mismo tiempo el

    desarrollador entienda mejor lo que se debe hacer y el cliente vea resultados a

    corto pla)o.

    l

    http://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_softwarehttp://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software
  • 7/25/2019 1. Clase 1 Ing. de Software

    21/24

    2

    Ing. SW Ver 09/odelo de (rototi&o!

    VENTAJAS:

    !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.!7ambin ofrece un mejor enfoque cuando el responsable del desarrollo del software est

    inseguro de la eficacia de un algoritmo, de la adaptabilidad de un sistema operativo o de la

    forma que debera tomar la interacci$n humano?mquina.

    DESVENTAJAS:

    !El usuario tiende a crearse unas e;pectativas cuando ve el prototipo de cara al sistema final.

    " causa de la intenci$n de crear un prototipo de forma rpida, se suelen desatender aspectos

    importantes, tales como la calidad y el mantenimiento a largo pla)o, lo que obliga en la mayor

    parte de los casos a reconstruirlo una ve) que el prototipo ha cumplido su funci$n.

  • 7/25/2019 1. Clase 1 Ing. de Software

    22/24

    22

    Ing. SW Ver 09De!arrollo &or eta&a!

    El modelo de desarrollo de software por etapas es similar al *odelo de prototiposya

    que se muestra al cliente el software en diferentes estados sucesivos de desarrollo,

    se diferencia en que las especificaciones no son conocidas en detalle al inicio del

    royecto y por tanto se van desarrollando simultneamente con las diferentes versiones

    del c$digo.

    'ueden distinguirse las siguientes fases

    !Especificaci$n conceptual!"nlisis de requerimientos!%ise&o inicial

    !%ise&o detallado, codificaci$n, depuraci$n y liberaci$n

    http://es.wikipedia.org/wiki/Modelo_de_prototiposhttp://es.wikipedia.org/wiki/Modelo_de_prototipos
  • 7/25/2019 1. Clase 1 Ing. de Software

    23/24

    23

    Ing. SW Ver 09De!arrollo iterati#o creciente

    'ara apoyar el desarrollo de proyectos por medio de este modelo se han creado

    framewor@sentornos de trabajo-, de los cuales los dos ms famosos son el

    #ational Unified 'rocessy el %ynamic /ystems %evelopment *ethod. El desarrollo

    incremental e iterativo es tambin una parte esencial de un tipo de programaci$n

    conocido como E;treme 'rogrammingy los dems framewor@s de desarrollo rpido

    de software.

    El proceso en s mismo consiste de

    !Etapa de iniciali)aci$n!Etapa de iteraci$n

    !(ista de control de proyecto

    http://es.wikipedia.org/wiki/Frameworkhttp://es.wikipedia.org/wiki/Rational_Unified_Processhttp://es.wikipedia.org/w/index.php?title=Dynamic_Systems_Development_Method&action=edit&redlink=1http://es.wikipedia.org/wiki/Extreme_Programminghttp://es.wikipedia.org/wiki/Extreme_Programminghttp://es.wikipedia.org/w/index.php?title=Dynamic_Systems_Development_Method&action=edit&redlink=1http://es.wikipedia.org/wiki/Rational_Unified_Processhttp://es.wikipedia.org/wiki/Framework
  • 7/25/2019 1. Clase 1 Ing. de Software

    24/24

    2"

    Ing. SW Ver 09RAD Ra&id A&&lication De#elo&%ent4

    !El %esarrollo rpido de aplicaciones o Rapid Application DevelopmentRAD- es un

    proceso de desarrollo de softwareen ingls, softwaredevelopmentprocess-,

    desarrollado inicialmente por Aames*artinen 123B. El mtodo comprende el

    desarrollo iterativo, la construcci$n de prototipos y el uso de utilidades +"/E

    +omputer "ided /oftware Engineering-. 7radicionalmente, el desarrollo rpido de

    aplicaciones tiende a englobar tambin la usabilidad, utilidad y la rapide) de ejecuci$n

    .!Coy en da se suele utili)ar para referirnos al desarrollo rpido de