Software Productos y Procesos

Post on 01-Feb-2016

227 views 0 download

description

Software Productos y ProcesosIngeniería de Software

Transcript of Software Productos y Procesos

INGENIERÍA DE SOFTWARE INF 3241

Primera Unidad Productos y Procesos de Software

¿CUÁLES SON LAS CARACTERÍSTICAS DEL SW?

.

CARACTERÍSTICAS DEL SOFTWARE

a) Intangible, se desarrolla (no se fabrica), tampoco se desgasta pero queda obsoleto en poco tiempo (pressman,2010).

b) Confiable, eficiente y mantenible, para perdurar en el tiempo deben adaptarse a los cambios operacionales y del entorno (sommerville, 2005).

CATACTERÍSTICAS DEL SOFTWARE

• La importancia relativa de las características depende del tipo de producto y del ambiente en el que será utilizado.

• En algunos casos, algunos atributos pueden dominar.

• En sistemas de seguridad críticos de tiempo real, los atributos clave pueden ser la confiabilidad y la eficiencia.

• Los costos tienden a crecer exponencialmente si se requieren altos niveles de alguna característica.

INTRODUCCIÓN

LA CRISIS DEL SOFTWARE

Término acuñado en los años 70 para explicar los problemas del desarrollo de software asociado a su creciente demanda :

Producto excede estimación de

costos

Retrasos en las entregas

Mantenimiento complicado

Baja calidad del Software obtenido

Problemas

INTRODUCCIÓN

LA CRISIS DEL SOFTWARE

Las causa principal a la que se atribuyeron los problemas fue la falta de un proceso de desarrollo o un proceso escaso o malo: ● 1/4 de tiempo dedicado a las fases de análisis, diseño, codificación y prueba. ● ¾ de tiempo en corrección y mantención

INTRODUCCIÓN

LA CRISIS DEL SOFTWARE

El informe Chaos del 2009 muestra que los proyectos considerados 100% exitosos suben de un 16% (año 1985) a un 32%, mientras que los cancelados han bajado de un 31% a un 24%. ¿ Cuando se considera que un proyecto de desarrollo de sw es exitoso?.

INGENIERÍA DE SOFTWARE

¿QUÉ ES LA INGENIERÍA DE SOFTWARE?

El IEE define la ingeniería del software como “La aplicación de un enfoque sistemático, disciplinado y cuantificable en el desarrollo, la operación y el mantenimiento del software”. La Ingeniería de Software concierne teorías, métodos y herramientas para el desarrollo profesional del software (sommerville 2005).

COSTOS DEL SOFTWARE

A menudo dominan los costos de un sistema computacional. Los costos de software en un PC son a menudo mayores que el costo del hardware. Cuesta más el mantenimiento del software que el desarrollo del mismo. A la Ingeniería de Software le compete el desarrollo de software rentable.

INGENIERÍA DE SOFTWARE

Disciplina que se encarga de la producción y mantenimiento

sistemático de productos de software con tiempo y costos

estimados.

Además de lo anterior la ingeniería de software contempla aspectos de gestión de proyectos.

Omar Vera Moya

PRODUCTOS Y PROCESOS DE SOFTWARE

PRODUCTOS Y PROCESOS DE SOFTWARE

Objetivos de la Unidad: • Discutir los conceptos de producto de software y proceso de

software.

• Explicar la importancia de la visibilidad de los procesos.

PRODUCTOS DE SOFTWARE

Existen dos tipos de productos de software: •Productos genéricos. Son sistemas aislados producidos por una organización de desarrollo y que se venden al mercado abierto a cualquier cliente que le sea posible comprarlos. Ej.: software para restaurants http://www.gour-net.cl/, software para control de compras: mysap SRM, bases de datos entre otros.

PRODUCTOS DE SOFTWARE

Existen dos tipos de productos de software: •Productos personalizados (hechos a medida). Desarrollado para un cliente particular acorde a sus requerimientos y especificaciones. Ej.: sistemas de control para instrumentos electrónicos, sitio web de yahoo respuestas, sistema de control de navegación para un aeropuerto.

Omar Vera Moya

PRODUCTOS DE SOFTWARE

• Una diferencia importante entre estos diferentes tipos de software es que, en los productos genéricos, la organización que desarrolla el software controla su especificación. •La especificación de los productos a medida, por lo general, es desarrollada y controlada por la organización que compra el software.

PRODUCTOS DE SOFTWARE

• Los sw genéricos pueden ser parametrizables como los gestores de contenidos educativos (moodle, https://moodle.org/) o no parametrizables como el software de diseño autocad.

• La mayor parte del gasto del software es en productos genéricos, pero hay más esfuerzo en el desarrollo de los sistemas hechos a medida.

¿QUÉ ENTENDEMOS POR PROCESO DE SOFTWARE?

.

¿QUÉ ENTENDEMOS POR PROCESO DE SOFTWARE?

.

Sommerville: “Un proceso de desarrollo de software es un conjunto de actividades y resultados asociados que conducen a la creación de un producto de software” Pressman: “Marco de trabajo de las tareas que se requieren para construir software de alta calidad”

.

Un proceso de desarrollo de software describe normalmente: • Qué tareas y en qué orden se deben llevar a cabo. • Qué roles deben tener las diferentes personas que participan en el desarrollo, cuál es la responsabilidad de cada rol y qué tareas deben llevar a cabo. • Qué artefactos (documentos, programas, etc.) deben usarse como punto de partida para cada tarea y qué se debe generar como resultado.

¿QUÉ ENTENDEMOS POR PROCESO DE SOFTWARE?

PROCESO DE SW

.

Las actividades genéricas de un proceso de desarrollo son (pressman, 2010): • Especificación: Definición del software a producir y las restricciones de

su operación. Abarca investigación de requisitos y actividades relacionadas.

• Planeación: Plan de trabajo de la Ingeniería de Software. • Modelado: Creación de modelos de análisis y diseño. • Construcción: Generación de código/pruebas. • Despliegue: El software se entrega para evaluación.

Las actividades varían dependiendo de la organización y del tipo de sistema a desarrollarse.

CARACTERISTICAS DEL DESARROLLO DE SW

.

• Entendible : ¿Se encuentra el proceso bien definido y es entendible ?.

• Visible : ¿El proceso es visible al exterior ?

• Soportable : ¿Puede el proceso ser soportado por herramientas CASE ?.

• Aceptable : ¿El proceso es aceptado por aquellos involucrados en el ?.

CARACTERISTICAS DEL DESARROLLO DE SW

.

• Robusto: ¿Puede continuar el proceso a pesar de problemas inesperados ?.

• Confiable : ¿Los errores del proceso son descubiertos antes de que se conviertan en errores del producto ?. • Mantenible: Puede el proceso evolucionar para cumplir con los

objetivos organizacionales ?.

• Rápido : Que tan rápido puede producirse el sistema ?.