proceso del software

28
EL PROCESO DEL SOFTWARE

Upload: tensor

Post on 15-Apr-2017

411 views

Category:

Education


0 download

TRANSCRIPT

EL PROCESO DEL SOFTWARE

Ingeniería del SoftwareLa Ingeniería de Software es el establecimiento y uso de principios robustos de la ingeniería a fin de obtener económicamente software que sea fiable y que funcione eficientemente sobre máquinas reales

(Fritz Bauer) Ingeniería de

softwareObjetivos

Mejorar la calidad

Aumentar la productivida

d

Suministrar las bases para su

construcción

Facilitar el control

Definir una disciplina para

garantizar producción y

mantenimiento

Ingeniería del Software ¿Cual es nuestro trabajo como ingenieros del software..?

Realizar software de calidad en el plazo y costo establecido.

• Planificar su trabajo• Hacer su trabajo de acuerdo con el plan• Esforzarse en producir productos de

calidad

El Proceso del Software Conjunto estructurado de actividades requeridas para desarrollar un

sistema de software de alta calidad y proporciona el marco de trabajo desde el cual se puede establecer un plan detallado para el desarrollo del software.

Actividades:

Especificación.Diseño.Validación.Evolución.

El Proceso del SoftwareCombinaciones validas para formar sistemas capaces de producir resultados

Personas + Tecnología

Personas + Tecnología +

Procesos

Producción heroica

Producción Basada en Procesos

Ingeniería del software: tecnología estratificada

Un Enfoque de Calidad

Procesos

Métodos

Herramientas

Las capas de la ingeniería del software

- Base para un proceso de software completo.- Es como un libro de recetas de cocina. “Siento que una receta es sólo un tema con el que un cocinero inteligente puede jugar cada vez de una manera distinta” Madame Benoit- La adaptación es esencial.

Marco de trabajo del procesoMarco de trabajo del Proceso común

Marco de trabajo del proceso

Actividades de Protección

- Aplicables a lo largo del proceso del software.- Su objetivo la gestión, el rastreo y el control del

proyecto.- Garantizar la calidad del software.

Marco de trabajo del Proceso común

Marco de trabajo del proceso

Actividades de Protección

Marco de trabajo del Proceso común

Actividades del marco de trabajo

- Aplicables a todos los proyectos.

Actividades de Protección

Marco de trabajo del Proceso común

Actividades del marco de trabajo

Marco de trabajo del proceso- Actividades que hacen que el marco de trabajo se adapte a las

características particulares de cada proyecto de software.- Define el trabajo real a cumplirse.

Conjunto de TareasTareas

Hitos, entregas

Puntos SQA

Marco de trabajo genérico del procesoMarco de trabajo del Proceso común

Actividades del marco de trabajo Comunicación

Planeación

Modelado

Construcción

Despliegue

¿Qué involucra el desarrollo de una actividad?

Actividad

Herramienta

Actividad

Rol

Desarrollador

Producto

tiene_entrada

tiene_intermedio

tiene_salida

tiene_sub

emplea

Dirección

Actividad Recurso OrganizaciónProducto

obedecenecesitajuega

tiene_sub

Actividades SombrillaActividades de Protección Seguimiento y control

Gestión del riesgoAseguramiento de la calidad del software

Revisiones técnicas formales

MediciónGestión de la configuración del software

Gestión de la reutilización

Preparación y Producción del producto

Integración del modelo de capacidad de madurez (IMCM)

Modelo para la mejora o evaluación de los procesos de desarrollo y mantenimiento de sistemas y productos de software.Creado por el SEI en el 2000 y publicado en el 2002 con el objetivo de realizar mejoras respecto al CMM.

Incluye 4 disciplinas en función de la amplitud de procesos que cubre:

• CMMI-SW: +Software• CMMI-SE/SW : + Ingeniería de sistemas • CMMI-SE/SW/IPPD : + Desarrollo integrado de

proceso • CMMI-SE/SW/IPPD/SS : + Gestión de proveedores

Integración del modelo de capacidad de madurez (IMCM)

CMMI

Continuo Discreto

Incompleto

Realizado

Administrado

Definido

Adminis.Cuantitativamen

te

Mejorado

Optimizado

Gestionado Cuantitativam

ente

Definido

Ejecutado

Niveles de capacidad

Niveles de madurez

Patrones del Proceso

Proceso de Software

De Tarea De Escenario De Fase

- Principios Abstractos

- Específicos a una situación.

- Ofrece una plantilla.

- Describe un problema.

- Define una posible solución .

- Es reusable.- Permite

organización.- Evita la reiteración- Formalizar un

vocabulario común

Plantilla de un PatrónNombre del patrónPropósitoTipoContexto inicialProblemaSoluciónContexto resultantePatrones relacionadosUsos conocidos/ejemplos

Un ejemplo sencillo:

Evaluación del proceso La existencia de un proceso no es garantía de que se elabora un

producto de alta calidad, por lo mismo el proceso debe ser evaluado. Se pretende comprender el estado actual del proceso de software y se

intenta mejorarlo.Evaluación del proceso de

softwareProceso del

software AumentaElevación de la

calidad del producto

Mejoramiento del Proceso de

softwareLa eficiencia de costes y

tiempoPosibilidad de tener éxito en el

proyectoDominación de los riesgos del

procesoConfianza y Satisfacción del

cliente

ISO 9001serie normas internacionales establecidas para sistemas de calidad, las mismas pueden aplicarse prácticamente en cualquier compañía, y cuyo objetivo final es satisfacer al consumidor.

Beneficios:

• Mejor documentación.• Información actualizada y efectiva.• Carta de presentación para abrir nuevos mercados.• Disminución de costos y procesos.

ISO 9001ISO

Ciclos

Planear Hacer Revisar Actuar

ISO 9001

CERTIFICACION:

Documento con validad legal que certifica, que usted cumple las mas estrictas normas de calidad.

Tipos de Certificaciones:

Certificación

Empresa

Producto

Modelos de proceso personales y en equipo

PSP

PSEProceso de software Personal

Proceso de Software en Equipo

Según Watts Humphrey:

Proceso Software Personal (PSP)

Trabajo efectivo

Requiere

1)Planificar el trabajo2)Esforzarse por cumplir la planificación3)Esforzarse por obtener productos de la mejor calidad

¿Cómo?

Trabajo efectivo

Proceso Software Personal (PSP)

Software de alta calidad

PlaneaciónSe define el trabajo y cómo hacerlo, en base a selección de requisitos.

Diseño Se crea un diseño del componente, cuando existe incertidumbre se crean prototipos.

Revisión del diseñoSe aplican métodos formales para verificar errores en el diseño.

Desarrollo

El componente se refina y revisa.Se genera, revisa, compila y prueba el códiga.

Análisis de Resultados

Proceso de Software en equipo (PSE)

Actividades:- Lanzamiento- Diseño de alto nivel- Implementación- Integración y prueba- Análisis de resultados.

- Construir un equipo de proyecto “auto dirigido” que se organicen.

Tecnología del proceso:Herramientas de modelado de proceso:

Permiten que una organización de software construya un modelo automatizado del marco de trabajo común del proceso, tareas y actividades sombrilla.

Puede aprovecharse para coordinar el uso de las herramientas de ingeniería de software asistida por computadora

Tecnología del proceso:Herramientas de modelado de proceso:

Herramientas de tecnología de

proceso

Ayudan

Analizar procesos actuales

Organizar sus tareas

Administrar su calidad técnica

Controlar y mitotear su

progreso

PRODUCTO VS PROCESOEn las agencias de publicidad el producto final es tan importante que se convierte en una pesadilla. No existe proceso, solo el briefing y la fecha de entrega.

¿Debería existir una dualidad?