ingenieria de software rs pressman capitulo 2

35
 El Proceso

Upload: manuel-rodriguez

Post on 14-Jul-2015

375 views

Category:

Documents


0 download

TRANSCRIPT

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 1/35

 

El Proceso

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 2/35

 

El proceso proporciona una interacción entre los usuarios y losdiseñadores, entre los usuarios y las herramientas de desarrollo, y entrelos diseñadores y las herramientas de desarrollo

¿Quién lo hace?

Proporciona estabilidad, control y organización a una actividad que puede, si nose controla, volverse caótica

¿Cuáles son los pasos?

Los productos obtenidos son programas, documentos y datos que se producencomo consecuencia de las actividades de ingeniería del software definidas por elproceso.

La calidad, oportunidad y viabilidad a largo plazo del producto que estáconstruyendo son los mejores indicadores de la eficiencia del proceso queestamos utilizando.

¿Qué es el proceso del software desde un punto de vista técnico?

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 3/35

 

Definición:

[La ingeniería del software] es el establecimiento y uso de

principios robustos de la ingeniería a fin de obtenereconómicamente software que sea fiable y que funcione

eficientemente sobre máquinas reales.

Fritz Bauer

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 4/35

 

La definición de Bauer nos proporciona unalínea base.

¿Cuáles son los «principios robustos de la

ingeniería» aplicables al desarrollo de softwarede computadora?

¿Cómo construimos el software«económicamente» para que sea «fiable»?

¿Qué se necesita para crear programas decomputadora que funcionen «eficientemente» noen una máquina si no en diferentes «máquinasreales»?

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 5/35

 

Ingeniería del software:

La aplicación de un enfoque sistemático,

disciplinado y cuantificable hacia eldesarrollo, operación y mantenimiento del

software; es decir, la aplicación de ingeniería

al software.

IEEE [IEE93]

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 6/35

 

La Ingeniería del software es una tecnologíamulticapa

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 7/35

El fundamento de la ingeniería del softwarees la capa de proceso.

El proceso define un marco de trabajo para un

conjunto de  Áreas clave de proceso que se debenestablecer para la entrega efectiva de la tecnologíade la ingeniería del software.

Las áreas claves del proceso forman la base delcontrol de gestión de proyectos del software y

establecen el contexto en el que se aplican losmétodos técnicos, se obtienen productos deltrabajo (modelos, documentos, datos, informes,formularios, etc.), se establecen hitos, se asegurala calidad y el cambio se gestiona adecuadamente.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 8/35

Los métodos de la ingeniería del softwareindican «cómo» construir técnicamente elsoftware.

Las tareas incluyen el análisis de requisitos, diseño,construcción de programas, pruebas ymantenimiento.

Los métodos de la ingeniería del softwaredependen de un conjunto de principios básicos quegobiernan cada área de la tecnología e incluyenactividades de modelado y otras técnicasdescriptivas.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 9/35

Las herramientas de la Ingeniería del softwareproporcionan un enfoque automático o semi-automático para el proceso y para los métodos.

Cuando se integran herramientas para que lainformación creada por una herramienta lapueda utilizar otra, se establece un sistema desoporte para el desarrollo del software llamado

ingeniería del sof tw are asistida por com putadora (CASE).

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 10/35

La Ingeniería de software comprende un proceso, métodos técnicos y de gestión, y 

herramientas.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 11/35

La ingeniería es el análisis, diseño, construcción,verificación y gestión de entidades técnicas (o sociales).

¿Cuál es el problema a resolver?

¿Cuáles son las características de la entidad que se utilizapara resolver el problema?

¿Cómo se realizará la entidad (y la solución)?

¿Cómo se construirá la entidad?

¿Qué enfoque se va a utilizar para no contemplar los errores

que se cometieron en el diseño y en la construcción de laentidad?

¿Cómo se apoyará la entidad cuando usuarios solicitencorrecciones, adaptaciones y mejoras de la entidad?

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 12/35

El software se crea aplicando tres fasesdistintas:

La definición, desarrollo y

mantenimiento.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 13/35

La fase de def inición se centra sobre elq ué Identificar qué información ha de ser procesada.

Qué función y rendimiento se desea.

Interfaces, restricciones de diseño, criterios devalidación.

En esta fase se identifican los requisitos clavedel sistema y del software. Tendrán lugar tres tareas principales: ingeniería de sistemas o de información,

planificación del proyecto del software y

análisis de los requisitos.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 14/35

La fase de desarrollo se centra en el cómo. Cómo han de diseñarse las estructuras de datos.

Cómo ha de implementarse la función dentro deuna arquitectura de software.

Cómo ha de traducirse el diseño en un lenguajede programación.

Procedimientos e interfaces.

Las tres tareas específicas técnicas: Diseño del software,

Generación de código

Prueba del software.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 15/35

La fase de mantenimiento se centra en elcambio que va asociado a la corrección deerrores.

Cuando utiliz amos el tér mino «mantenimiento»reconocemos q ue es mucho más q ue una sim plecorrección de errores.

Durante la fase de mantenimiento se encuentrancuatro tipos de cambios:

Corrección. El mantenimiento correctivo cambia el software para

corregir los defectos.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 16/35

Adaptación. El mantenimiento adaptativo produce modificación

en el software para acomodarlo a los cambios de suentorno externo.

Mejora. El mantenimiento perfectivo lleva al software más

allá de sus requisitos funcionales originales.

Prevención. El mantenimiento preventivo hace cambios en

programas de computadora a fin de que se puedancorregir, adaptar y mejorar más fácilmente.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 17/35

la ingeniería del software se complementacon activ idades protectoras.

Seguimiento y control del proyecto de software

Revisiones técnicas formales Garantía de calidad del software

Gestión de configuración del software

Preparación y producción de documentos

Gestión de reutilización Mediciones

Gestión de riesgos

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 18/35

Marco de trabajo común del proceso

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 19/35

El enfoque del SE1 (Softwate Engineering Institute)proporciona una medida de la efectividad global de lasprácticas de ingeniería del software de una compañía yestablece cinco niveles de madurez del proceso, que se

definen de la forma siguiente: Nivel 1: Inicial.

Nivel 2: Repetible.

Nivel 3: Definido.

Nivel 4: Gestionado.

Nivel 5: Optimización.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 20/35

Modelo Lineal Secuencial

Modelo de Prototipos

Modelo DR A

Modelo incremental

Modelo espiral

Modelo espiral WIN WIN

Modelo de desarrollo concurrenteDesarrollo Basado en Componenentes

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 21/35

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 22/35

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 23/35

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 24/35

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 25/35

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 26/35

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 27/35

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 28/35 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 29/35

El desarrollo de modelos formales actualmente es bastantecaro y lleva mucho tiempo.

Se requiere un estudio detallado porque pocos

responsables del desarrollo de software tienen losantecedentes necesarios para aplicar métodos formales.

Es difícil utilizar los modelos como un mecanismo decomunicación con clientes que no tienen muchos

conocimientos técnicos.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 30/35

Facilitan al ingeniero del software laespecificación de algunas características delsoftware de alto nivel

La herramienta genera automáticamente elcódigo fuente basándose en la especificacióndel técnico

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 31/35

Lenguajes no procedimentales de consulta abases de datos, generación de informes, manejode datos, interacción y definición de pantallas,generación de códigos, capacidades gráficas dealto nivel y capacidades de hoja de cálculo, ygeneración automatizada de HTML y lenguajessimilares utilizados para la creación de sitiosweb usando herramientas de software avanzado

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 32/35

El uso de T4G es un enfoque viable para

muchas de las diferentes áreas de aplicación

el tiempo requerido para producir software

se reduce mucho para aplicaciones pequeñasy de tamaño medio

el uso de T4G para grandes trabajos de

desarrollo de software exige el mismo o más

tiempo de análisis, diseño y prueba.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 33/35

Incluso cuando utilice una T4G, tiene quedestacar claramente la Ingeniería del

software haciendo el análisis, el diseño y laspruebas.

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 34/35

Si el proceso es débil, el producto final va asufrir indudablemente.

Dualidad

Si se desarrolla sin pensar y se aplicadescuidadamente, el proceso puedeconvertirse en la muerte del sentido común.

Philip K. Howard

 

5/12/2018 Ingenieria de Software Rs Pressman Capitulo 2 - slidepdf.com

http://slidepdf.com/reader/full/ingenieria-de-software-rs-pressman-capitulo-2 35/35

¿Hay algún caso en que no se apliquen fases genéricas del proceso deingeniería del software? Si es así, descríbalo.

¿Qué paradigmas de ingeniería del software de los presentados en estecapítulo piensa que sería el más eficaz? ¿Por qué?

Proporcione cinco ejemplos de proyectos de desarrollo del software quesean adecuados para construir prototipos. Nombre dos o tres aplicacionesque fueran más difíciles para construir prototipos.

Proponga un proyecto específico de software que sea adecuado para elmodelo incremental. Presente un escenario para aplicar el modelo alsoftware.

A medida que vaya hacia afuera por el modelo en espiral, ¿qué puede

decir del software que se está desarrollando o manteniendo?

Proporcione tres ejemplos de técnicas de cuarta generación.

¿Qué es más importante, el producto o el proceso?