You are on page 1of 28

SOFTWARE

 
 
EL  PROCESO  
SOFTWARE  -­‐  EL  PROCESO  

Debido  a  que  el  so>ware,  como  todo  capital,  es  conocimiento  incorporado  y  a  que  el  
conocimiento   originalmente   se   halla   disperso,   tácito,   latente   e   incompleto   en   gran  
medida,  el  desarrollo  de  so>ware  es  un  proceso  de  aprendizaje  social.  
 
El   proceso   genera   interacción   entre   usuarios   y   diseñadores,   entre   usuarios   y  
herramientas   cambiantes,   y   entre   diseñadores   y   herramientas   en   evolución  
[tecnología].  
 
Howard  Baetjer,  Jr.  [Bae98]  

DARIO  GUILLERMO  CARDACCI   2  


SOFTWARE  -­‐  EL  PROCESO  

¿Qué  es  exactamente  un  proceso  del  so>ware?    


 
Se  define  proceso  del  so>ware  como  una  estructura  para  las  
ac`vidades,  acciones  y  tareas  que  se  requieren  a  fin  de  
construir  so>ware  de  alta  calidad.  

DARIO  GUILLERMO  CARDACCI   3  


SOFTWARE  -­‐  EL  PROCESO  
Comunicación,  Planeación,  Modelado,  Construcción  
y  Despliegue.  

Seguimiento  y  control  del  proyecto.  


Administración  de  riesgos.  
Aseguramiento  de  la  calidad.  
Administración  de  la  configuración.    
Revisiones  técnicas.  

DARIO  GUILLERMO  CARDACCI   4  


SOFTWARE  -­‐  EL  PROCESO  

Un  flujo  de  proceso  lineal  ejecuta  cada  una  de  las  cinco  ac`vidades  estructurales  en  secuencia,  
comenzando  por  la  comunicación  y  terminando  con  el  despliegue.  

DARIO  GUILLERMO  CARDACCI   5  


SOFTWARE  -­‐  EL  PROCESO  

Un  flujo  de  proceso  itera`vo  repite  una  o  más  de  las  ac`vidades  antes  de  pasar  a  la  siguiente.  

DARIO  GUILLERMO  CARDACCI   6  


SOFTWARE  -­‐  EL  PROCESO  

Un  flujo  de  proceso  evolu`vo  realiza  las  ac`vidades  en  forma  “circular”.  A  través  de  las  cinco  
ac`vidades,  cada  circuito  lleva  a  una  versión  más  completa  del  so>ware.  

DARIO  GUILLERMO  CARDACCI   7  


SOFTWARE  -­‐  EL  PROCESO  

Un  flujo  de  proceso  paralelo  ejecuta  una  o  más  ac`vidades  en  paralelo  con  otras  (por  ejemplo,  
el  modelado  de  un  aspecto  del  so>ware  tal  vez  se  ejecute  en  paralelo  con  la  construcción  de  
otro  aspecto  del  so>ware).  

DARIO  GUILLERMO  CARDACCI   8  


SOFTWARE  -­‐  EL  PROCESO  

LAS  ACTIVIDADES  ESTRUCTURALES  GENERALES  AJUSTAN  SU  INTENSIDAD  DE  ACUERDO  


AL  ESENARIO  EN  EL  CUAL  SE  APLICAN  
 
ELEMPLO  DE  COMUNICACION  

EMPRESA  GRANDE  
EMPRESA  CHICA    
(UNIPERSONAL)   Concepción  
  Indagación  
  Elaboración  
POCAS  REUNIONES  
Negociación  
 
Especificación  
ALGUNAS  LLAMADAS  POR  
TELÉFONO   Validación  
 

DARIO  GUILLERMO  CARDACCI   9  


SOFTWARE  -­‐  EL  PROCESO  

PATRONES  DE  PROCESO  

Un  patrón  del  proceso  describe  un  problema  relacionado  con  el  proceso  que  se  
encuentra  durante  el  trabajo  de  ingeniería  de  so>ware,  iden`fica  el  ambiente  en  el  
que  surge  el  problema  y  sugiere  una  o  más  soluciones  para  el  mismo.  
 
 
REUTILIZACIÓN  DE  LA  EXPERIENCIA  ADQUIRIDA  

DARIO  GUILLERMO  CARDACCI   10  


SOFTWARE  -­‐  EL  PROCESO  
PATRONES  DE  PROCESO  –  ELEMENTOS  CONSTITUTIVOS  

Nombre  del  patrón  


Fuerzas  
Tipo  
Contexto  inicial    
Problema  
Solución  
Contexto  resultante  
Patrones  relacionados  
Usos  y  ejemplos  conocidos      

DARIO  GUILLERMO  CARDACCI   11  


SOFTWARE  -­‐  EL  PROCESO  
PATRONES  DE  PROCESO  –  ELEMENTOS  CONSTITUTIVOS  

Nombre  del  patrón.  El  patrón  recibe  un  nombre  significa`vo  que  lo  describe  en  el  
contexto  del  proceso  del  so>ware  (p.e.  Revisiones  Técnicas).  
 
Fuerzas.  El  ambiente  en  el  que  se  encuentra  el  patrón  y  los  aspectos  que  hacen  visible  
el  problema  y  afectan  su  solución.  
 
Tipo.  Se  especifica  el  `po  de  patrón.    
 
1.  Patrón  de  etapa:  define  un  problema  asociado  con  una  ac`vidad  estructural  
para  el  proceso.  (p.e.  Un  patrón  de  etapa  sería  Establecer  Comunicación.  Este  
patrón  incorporaría  el  patrón  de  tarea  Recabar  Requerimientos  entre  otros).  
DARIO  GUILLERMO  CARDACCI   12  
SOFTWARE  -­‐  EL  PROCESO  
PATRONES  DE  PROCESO  –  ELEMENTOS  CONSTITUTIVOS  

Tipo.  Se  especifica  el  `po  de  patrón.  


   
2.   Patrón   de   tarea:   define   un   problema   asociado   con   una   acción   o   tarea   de  
trabajo  de  la  ingeniería  de  so>ware  que  es  relevante  para  el  éxito  de  la  prác`ca  
de  ingeniería  de  so>ware  (p.e  Recabar  Requerimientos)  
 
3.   Patrón   de   fase:   define   la   secuencia   de   las   ac`vidades   estructurales   que  
ocurren  dentro  del  proceso,  aun  cuando  el  flujo  general  de  las  ac`vidades  sea  
de  naturaleza  itera`va  (p.e  Modelo  Espiral  o  Proto`pos).  

DARIO  GUILLERMO  CARDACCI   13  


SOFTWARE  -­‐  EL  PROCESO  
PATRONES  DE  PROCESO  –  ELEMENTOS  CONSTITUTIVOS  
Contexto   inicial.   Describe   las   condiciones   en   las   que   se   aplica   el   patrón.   Antes   de  
iniciar  el  patrón:    
 
1)  ¿Qué  ac`vidades  organizacionales  o  relacionadas  con  el  equipo  han  ocurrido?  
2)  ¿Cuál  es  el  estado  de  entrada  para  el  proceso?    
3)  ¿Qué  información  de  ingeniería  de  so>ware  o  del  proyecto  ya  existe?  
 
Por  ejemplo:  el  patrón  Planeación  (de  etapa)  requiere  que:    
 
1)   Los   clientes   y   los   ingenieros   de   so>ware   hayan   establecido   una   comunicación  
colaboradora.  
2)   Haya   terminado   con   éxito   cierto   número   de   patrones   de   tarea   para   el   patrón  
Comunicación.  
3)  Se  conozcan  el  alcance  del  proyecto,  los  requerimientos  básicos  del  negocio  y  las  
restricciones  del  proyecto.  
DARIO  GUILLERMO  CARDACCI   14  
SOFTWARE  -­‐  EL  PROCESO  
PATRONES  DE  PROCESO  –  ELEMENTOS  CONSTITUTIVOS  
Problema.  El  problema  específico  que  debe  resolver  el  patrón.  
 

Solución.   Describe   cómo   implementar   con   éxito   el   patrón.   Esta   sección   describe   la  
forma  en  la  que  se  modifica  el  estado  inicial  del  proceso.  También  describe  
cómo   se   transforma   la   información   hasta   su   estado   final   luego   de   la  
aplicación  del  proceso.    
 

Contexto   resultante.   Describe   las   condiciones   que   resultarán   una   vez   que   se   haya  
implementado  con  éxito  el  patrón:    
 

1)   ¿Qué   ac`vidades   organizacionales   o   relacionadas   con   el   equipo   deben  


haber  ocurrido?    

2)  ¿Cuál  es  el  estado  de  salida  del  proceso?    

3)   ¿Qué   información   sobre   la   ingeniería   de   so>ware   o   sobre   el   proyecto   se  


ha  desarrollado?  
DARIO  GUILLERMO  CARDACCI   15  
SOFTWARE  -­‐  EL  PROCESO  
PATRONES  DE  PROCESO  –  ELEMENTOS  CONSTITUTIVOS  

Patrones   relacionados.   Proporciona   una   lista   de   todos   los   patrones   de   proceso  


directamente   relacionados   con   éste.   Puede   representarse   como   una   jerarquía   o   en  
alguna   forma   de   diagrama.   Por   ejemplo,   el   patrón   de   etapa   Comunicación   incluye   los  
patrones  de  tarea:  
Equipo  del  Proyecto  
Lineamientos  de  Colaboración  
Definición  de  Alcances  
Recabar  Requerimientos  
Descripción  de  Restricciones  
Creación  de  Escenarios  

DARIO  GUILLERMO  CARDACCI   16  


SOFTWARE  -­‐  EL  PROCESO  
PATRONES  DE  PROCESO  –  ELEMENTOS  CONSTITUTIVOS  

Usos  y  ejemplos  conocidos.  Indica  las  instancias  específicas  en  las  que  es  aplicable  el  
patrón.   Por   ejemplo,   Comunicación   es   obligatoria   al   principio   de   todo   proyecto   de  
so>ware,   es   recomendable   a   lo   largo   del   proyecto   y   de   nuevo   obligatoria   una   vez  
alcanzada  la  ac`vidad  de  despliegue.  

AmbySo>  
hvp://www.ambyso>.com\processPavernsPage.html  
 

DARIO  GUILLERMO  CARDACCI   17  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  

LA  EXISTENCIA  DE  UN  PROCESO  NO  GARANTIZA  EL  PRODUCTO,  DEBIDO  A  QUE  
PUEDEN  EXISTIR  ELEMENTOS  NO  OPTIMIZADOS  EN  EL  PROCESO  MISMO.  

SE  PUEDE  MEJORAR  ESTE  PROBLEMA  CONSIDERANDO  LA  APLICACIÓN  DE  UN  


ENFOQUE  DE  EVALUACIÓN  Y  MEJORA  CONTINUA  AL  PROCESO  DEL  SOFTWARE  

¿QUÉ  MODELOS  DE  EVALUACIÓN  Y  MEJORA  CONTINUA  EXISTEN?  

DARIO  GUILLERMO  CARDACCI   18  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
CMM  
Modelo  de  Madurez  
de  la  Capacidad  

DARIO  GUILLERMO  CARDACCI   19  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
CMM  
1.  Inicial:    
El   proceso   de   so>ware   está   caracterizado   como   ad   hoc,   y   a   veces   caó`co.   Pocos   procesos   están  
definidos  y  el  éxito  depende  de  esfuerzos  individuales  y  heroicos.  
 
2.  Repe-ble:    
Se  establecen  procesos  administra`vos  básicos  en  los  proyectos  para  el  seguimiento  de  costos,  `empos  
y   funcionalidades.   La   disciplina   necesaria   en   los   procesos   es   acorde   para   repe`r   éxitos   anteriores   de  
proyectos  con  aplicaciones  similares.  
 
3.  Definido:    
El   proceso   de   so>ware,   tanto   administra`vo   como   ingenieril,   está   documentado,   estandarizado   e  
integrado   en   un   proceso   estándar   para   la   organización.   Todos   los   proyectos   usan   una   versión   aprobada  
y  ajustada  del  proceso  estándar  de  so>ware  de  la  organización  para  desarrollar  y  mantener  so>ware.  
 
4.  Administrado:    
Se  toman  decisiones  del  proceso  de  so>ware  y  de  la  calidad  del  producto.  Tanto  el  proceso  de  so>ware  
como  los  productos  se  conocen  cuan`ta`vamente  y  se  controlan.  
 
5.  Op-mizado:    
Existe  retroalimentación  cuan`ta`va  del  proceso,  lo  que  permite  una  mejora  con`nua  del  proceso.  Al  
mismo  `empo  se  manejan  ideas  y  tecnologías  innovadoras.      
DARIO  GUILLERMO  CARDACCI   20  
SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
CMMI  
Modelo  de  Madurez  de  la  Capacidad  Integrado  
 

DARIO  GUILLERMO  CARDACCI   21  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
CMMI  
Modelo  de  Madurez  de  la  Capacidad  Integrado  
 

DARIO  GUILLERMO  CARDACCI   22  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
CMMI  
Modelo  de  Madurez  de  la  Capacidad  Integrado  
 

DARIO  GUILLERMO  CARDACCI   23  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
CMMI  
Modelo  de  Madurez  de  la  Capacidad  Integrado  
 

DARIO  GUILLERMO  CARDACCI   24  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
CMMI  
Modelo  de  Madurez  de  la  Capacidad  Integrado  
 

DARIO  GUILLERMO  CARDACCI   25  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
SCAMPI  
Método  Estándar  CMMI  para  la  Evaluación  y  Mejora  de  Procesos  

El   SCAMPI   (Standard   CMMI   Appraisal   Method   for   Process   Improvement)   es   un  


método   desarrollado   por   Ins`tuto   de   Ingeniería   de   So>ware   (SEI)   para   evaluar   el  
estado   de   los   procesos   de   so>ware   de   una   organización   basado   en   los   modelos  
CMMI.    
 
Existen  tres  `pos  de  SCAMPI:  A,  B,  C,  en  donde  la  profundidad  de  la  evaluación,  la  
duración,  costo  y  uso  varían.    
 
Estas  evaluaciones  son  hechas  por  un  Asesor  Líder  acreditado  por  el  SEI.  

DARIO  GUILLERMO  CARDACCI   26  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
SCAMPI  
Método  Estándar  CMMI  para  la  Evaluación  y  Mejora  de  Procesos  

DARIO  GUILLERMO  CARDACCI   27  


SOFTWARE  -­‐  EL  PROCESO  
EVALUACIÓN  Y  MEJORA  DEL  PROCESO  
SPICE  (ISO/IEC  15504)   (So>ware  Process  Improvement  and  Capability  dEtermina`on)  
  es   un   modelo   de   evaluación   y   mejora   de   los   procesos   de  
  desarrollo   y   mantenimiento   de   sistemas   y   productos   de  
so>ware.   El   estándar   ISO   15504   es   una   herramienta   que  
  ayuda   a   reducir   costes   y   mejorar   la   calidad   evitando  
  problemas.  

 
Estándar  que  define  un  conjunto  de  requerimientos  para  la  evaluación  del  proceso  
del  so>ware.    
 
El   obje`vo   del   estándar   es   ayudar   a   las   organizaciones   a   desarrollar   una   evaluación  
obje`va  de  cualquier  proceso  del  so>ware  definido.  

DARIO  GUILLERMO  CARDACCI   28  

You might also like