Anda di halaman 1dari 18

Sesin II: Visin General

El proceso del software


Ing. Luis Alfredo Fernndez Vizcarra
lfernandez@speedy.com.pe
lfernandez@coesi.com.pe
Vistazo rpido: Software
Qu es?
Una serie de pasos predecibles que ayude
a crear un resultado de alta calidad y a
tiempo.
Es un conjunto estructurado de
actividades para: Especificar, disear,
implementar y probar software.

Quin lo hace?
Los ingenieros de software y sus jefes
adaptan el proceso a sus necesidades y
despus lo siguen.
La gente que ha solicitado el software
deben definir, construir y probar el
proceso.

Por qu es importante?
Ofrece estabilidad, control y organizacin
a una actividad que puede volverse
catica si no se controla.
Un enfoque de ingeniera del software
moderno debe ser gil.
Cules son los pasos?
El proceso que se adopte depende del
software que se est construyendo.
Cul es el producto
obtenido?
Programas, documentos y datos que se
producen como consecuencia de las
actividades y tareas definidas por el
proceso.

Cmo puedo estar seguro
de que lo he hecho
correctamente?
La calidad, el tiempo requerido, la
viabilidad a largo plazo del producto que
se construye son los mejores indicadores
de la eficacia del proceso que se utiliza.
Un enfoque de calidad
Proceso
La Ingeniera de Software es el establecimiento y uso de principios robustos
de la ingeniera a fin de obtener econmicamente software que sea fiable y
que funcione eficientemente sobre mquinas reales. (Fritz Bauer)
Ingeniera del Software: Una Tecnologa Estratificada
Mtodos
Herramientas
La ingeniera del software es
una tecnologa estratificada
Es la base que soporta la ingeniera
del software
Proporcionan el soporte
automatizado o semi automatizado
para el proceso y los mtodos.
Proporcionan los cmo tcnicos para
construir software (comunicacin, anlisis de
requisitos, modelado del diseo, la
construccin del programa, la realizacin de
pruebas y el soporte)
Es el elemento que mantiene juntos los
estratos de la tecnologa y que permite el
desarrollo racional y a tiempo del
software de computadora.
Marco de Trabajo para el Proceso
MARCO DE TRABAJO DEL PROCESO
Actividades sombrilla
Actividad del marco de trabajo # 1
accin de la ingeniera de software #1.1
Conjunto
de tareas
Tareas del trabajo - productos del trabajo - puntos de aseguramiento
de la calidad - fundamentos del proyecto
accin de la ingeniera de software # 1.k
Conjunto
de tareas
Tareas del trabajo - productos del trabajo - puntos de aseguramiento
de la calidad - fundamentos del proyecto
Actividad del marco de trabajo # n
accin de la ingeniera de software #n.1
Conjunto
de tareas
Tareas del trabajo - productos del trabajo - puntos de aseguramiento
de la calidad - fundamentos del proyecto
accin de la ingeniera de software # n.m
Conjunto
de tareas
Tareas del trabajo - productos del trabajo - puntos de aseguramiento
de la calidad - fundamentos del proyecto
Actividades del marco del trabajo
COMUNICACIN
Colaboracin y comunicacin
con los clientes. Investigacin de
requisitos y otras actividades
relacionadas.
PLANEACIN
Tareas tcnicas, riesgos
probables, los recursos que
sern requeridos, los productos
y un programa de trabajo.
MODELADO
Determinar un modelo o
esquema compartido entre
desarrollador y cliente, para
tener una orientacin de lo que
se va a crear.
CONSTRUCCIN
Generacin de cdigo + pruebas
del software
DESPLIEGUE
Es la entrega al cliente para su
prueba con el fin de obtener
informacin que permita
mejorar el producto.
Actividades Sombrillas
Ocurren a lo largo del
proceso de software y se
enfocan de modo
principal en la gestin, el
rastreo y el control del
proyecto.
Gestin del
riesgo
Seguimiento y
control del
proyecto de
software
Aseguramiento
de la calidad del
software
Revisiones
tcnicas
formales
Medicin
Gestin de la
configuracin
del software
Gestin de la
reutilizacin
Preparacin y
produccin del
producto de
trabajo
Integracin del modelo de capacidad de
madurez (IMCM)
Modelo para la mejora o evaluacin 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.
La IMCM representa un modelo completo de proceso en dos formas diferentes:
Como modelo continuo: 05 niveles de capacidad
NIVEL 0
Incompleto
NIVEL 1
Realizado
NIVEL 2
Administrado
NIVEL 3
Definido
NIVEL 4
Administrado en
forma
cuantitativa
NIVEL 5
Mejorado
El rea del
proceso an
no se realiza
o no alcanza
todas las
metas y
objetivos.
Las metas
especficas
han sido
satisfechas.
Todas las tareas
de trabajo y
productos estn
monitoreados,
controlados y
revisados; y son
evaluados de
acuerdo a la
descripcin del
proceso.
Criterios del
nivel 2
cumplidos. El
proceso est
adaptado al
conjunto de
procesos
estndar de la
organizacin.

Criterios del nivel
3 cumplidos. El
rea del proceso
se controla y
mejora mediante
mediciones y
evaluacin
cuantitativa.

Criterios del
nivel 4
satisfechos. El
rea del
proceso se
adapta y
mejora
mediante el
uso de medios
cuantitativos
para conocer
las
necesidades
cambiantes del
cliente.

Integracin del modelo de capacidad de
madurez (IMCM)
Como modelo discreto: 05 niveles de madurez
Ejecutado
Gestionado
Definido
Gestionado de
manera cuantitativa
Optimizado
5
4
3
2
1
Gestin bsica del
proyecto
Estandarizacin del
proceso
Ejecucin del proceso
organizacional
Mejora continua del proceso

Patrones del Proceso
T
I
P
O

D
E

P
A
T
R
O
N
E
S

Patrones de Tarea: Definen una accin de la
ingeniera de software o una tarea de trabajo
importante.
Patrones de Escenario: Definen una actividad
del marco de trabajo para el proceso.
Patrones de fase: Definen la secuencia de
actividades del marco de trabajo que ocurre
junto con el proceso.
Un patrn de proceso ofrece una plantilla: un mtodo consistente para describir
una caracterstica importante del proceso de software. Se definen en cualquier
grado de abstraccin (un proceso completo o una actividad del marco de trabajo
importante o una tarea dentro de una actividad del marco de trabajo).
Plantilla para describir un patrn de proceso
Usos conocidos/Ejemplos: Se indican los ejemplos especficos en los cuales el
patrn es aplicable.
Patrones relacionados: lista de todos los patrones de proceso directamente
relacionados con ste.
Contexto resultante: Se describen las condiciones que habr una vez que el
patrn haya sido implementado con xito. Definen una accin de la ingeniera
de software o una tarea de trabajo importante.
Solucin: Se describe la implementacin del patrn
Contexto inicial: Se describen las condiciones en las cuales se aplica el patrn.
Tipo: De tarea, de escenario o de fase
Propsito: Objetivo del patrn
Nombre del patrn: Describe su funcin dentro del software
Plantilla para describir un patrn de proceso
EJEMPLO:

Nombre del patrn
Propsito
Tipo
Contexto inicial
Problema
Solucin
Contexto resultante
Patrones relacionados
Usos conocidos/ejemplos

En la evaluacin se pretende comprender el estado actual del proceso de
software y se intenta mejorarlo.
Evaluacin del Proceso
Proceso del
software
Mejoramiento
del proceso de
software
Evaluacin del
proceso de software
Determinacin
de la capacidad
Identifica
modificaciones a
Es examinado
por
Identifica capacidades
y riesgos de
Conduce a Conduce a
Motiva
Enfoques para la evaluacin del proceso de
software
Mtodo de
evaluacin de la
IMCM para el
mejoramiento del
proceso
(MEIEMP):
iniciacin,
diagnstico,
establecimiento,
accin y
aprendizaje.
Apreciacin
basada en el
CMM para el
mejoramiento
del proceso
interno (ABC
MPI).
SPICE (ISO/IEC
15504)

ISO 9001:2000 para
software:
Serie de normas
internacionales
establecidas para
sistemas de calidad, las
mismas pueden
aplicarse
prcticamente en
cualquier compaa, y
cuyo objetivo final es
satisfacer al
consumidor.
CICLOS: Planear hacer
revisar - actuar
Modelos de Proceso Personales y en Equipo
1. PROCESO DE SOFTWARE PERSONAL (PSP): Destaca la necesidad de registrar y
analizar los tipos de errores que se cometen para desarrollar estrategias
encaminadas a eliminarlos.
REQUIERE ACTIVIDADES DEL MARCO DE TRABAJO
Planificar el trabajo
Esforzarse por cumplir la
planificacin
Esforzarse por obtener productos
de la mejor calidad

a) Planeacin: Seleccionar requisitos,
establecer el tamao del proyecto y
estimar recursos.
b) Diseo de alto nivel: elaborar las
especificaciones externas para el diseo
de cada componente.
c) Revisin del diseo de alto nivel: los
mtodos formales de verificacin se
aplican a errores descubiertos en el
diseo.
d) Desarrollo: el diseo al nivel del
componente se refina y revisa.
e) Anlisis de resultados: Se determina la
efectividad del proceso mediante las
mediciones y medidas recolectadas.
Modelos de Proceso Personales y en Equipo
2. PROCESO DE SOFTWARE EN EQUIPO: La meta del PSE es construir un
equipo de proyecto autodirigido que se organice para producir un
software de alta calidad.
A
c
t
i
v
i
d
a
d
e
s

Lanzamiento: con una secuencia de tareas
como base slida para iniciar el proyecto.
Diseo de alto nivel
Implementacin
Integracin y prueba
Anlisis de resultados
Tecnologa del Proceso
HERRAMIENTAS DE TECNOLOGA DEL PROCESO:

Permiten que una organizacin de software construya un modelo
automatizado del marco de trabajo comn del proceso, tareas y actividades
sombrilla.

Puede aprovecharse para coordinar el uso de las herramientas de ingeniera de
software asistida por computadora
Herramientas de
tecnologa de proceso
Ayudan
Analizar procesos
actuales
Organizar sus
tareas
Administrar su
calidad tcnica
Controlar y
monitorear su
progreso
Producto y Proceso
Si el proceso es dbil, sin duda el producto final sufrir las consecuencias.
Una confianza excesiva en el proceso es peligrosa.
Las personas obtienen tanta satisfaccin del proceso creativo que del
producto final.
Un profesional creativo del software debera tambin obtener tanta
satisfaccin de la programacin como del producto final.
La dualidad del producto y proceso es un elemento importante para
mantener ocupada a la gente creativa hasta que se finalice la transicin de
la programacin a la ingeniera del software.
Bruegge, B., Dutoit, A.H., Ingeniera del Software Orientado a Objetos, cap. 1

Jacobson, I., Booch, G., Rumbaugh, J., El Proceso Unificado de Desarrollo de
Software, cap. 1

Pressman, R.S., Ingeniera del Software. Un enfoque prctico, cap. 1 y 2

Sommerville, I., Ingeniera de Software, cap. 1, 2 y 3


Referencias

Anda mungkin juga menyukai