SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
Enlighten	
  your	
  software
¿Cómo	
  puedo	
  estimar	
  cuando	
  
no	
  hay	
  requerimientos	
  
detallados?
Dr.	
  Francisco	
  Valdés	
  Souto
@valdessoutofco,	
  www.spingere.com.mx/blog
Estimación
• “An	
  estimation	
  is	
  a	
  prediction	
  that	
  is	
  
equally	
  likely	
  to	
  be	
  above	
  or	
  below	
  the	
  
actual	
  result.”	
  T.	
  DeMarco
• “estimates	
  are,	
  in	
  reality,	
  guesses	
  
regarding	
  future	
  performance	
  based	
  on	
  
available	
  knowledge.	
  As	
  such,	
  their	
  
accuracy	
  is	
  affected	
  by	
  the	
  extent	
  of	
  
uncertainty	
  regarding	
  the	
  task	
  to	
  be	
  
estimated.	
  Uncertainty	
  is	
  associated,	
  inter	
  
alia,	
  with	
  definitions	
  of	
  requirements,	
  
choice	
  of	
  technological	
  solutions,	
  
innovativeness	
  of	
  needs,	
  and	
  customer	
  
characteristics”	
  (Morgenshtern,	
  2007).
Pierre	
  Bourque (May 2007)
Características	
  Estimación
• Medición	
  (GIGO	
  -­‐ Std) • Confianza
¿Qué	
  se	
  puede	
  medir	
  en	
  el	
  software?
Factores	
  
Técnicos
•Significante	
  para	
  
desarrolladores	
  pero	
  no	
  para	
  
usuarios	
  y	
  administración
•Pobre portabilidad
•Se	
  conocen	
  precisamente	
  muy	
  
tarde
•No	
  hay	
  un	
  estándar	
  	
  
internacional
Factores	
  
Funcionales
•Significativo	
  para	
  los	
  managers	
  
y	
  usuarios	
  y	
  staff técnico
•Portable
•Puede ser	
  medido temprano
•Basado en	
  estándar
internacional!
Q
Eff/$$
Método	
  COSMIC	
  (ISO	
  19761)
• Common Software	
  Measurement
International	
  Consortium
(COSMIC)	
  
• Es	
  un	
  método	
  de	
  medición	
  de	
  
tamaño	
  funcional	
  de	
  software
• Es	
  el	
  único	
  método	
  de	
  segunda	
  
generación.	
  
• Está	
  basado	
  en	
  la	
  representación	
  
del	
  software:	
  E,	
  X,	
  W,	
  R.	
  No	
  en	
  
datos	
  estadísticos	
  como	
  en	
  la	
  
primera	
  generación.	
  
• Tiene	
  su	
  equivalente	
  en	
  Norma	
  
Mexicana	
  (NMX),	
  que	
  está	
  
incluida	
  en	
  el	
  MAAGTICSI
Niveles para	
  determiner	
  el	
  tamaño del	
  
software	
  (Steve	
  McConnell)
• Count:	
  If	
  detailed	
  information	
  is	
  available,	
  the	
  
most	
  accurate	
  way	
  of	
  determining	
  the	
  size	
  is	
  to	
  
count.
• Compute:	
  If	
  not	
  enough	
  information	
  is	
  available	
  at	
  
the	
  desired	
  level	
  of	
  detail,	
  count	
  something	
  that	
  is	
  
available	
  and	
  then	
  compute	
  the	
  answer	
  by	
  using	
  
calibration	
  data.
• Judge:	
  Experts	
  can	
  give	
  an	
  approximation	
  of	
  the	
  
size,	
  based	
  on	
  a	
  mental	
  model	
  established	
  on	
  
experience.	
  This	
  expert	
  judgment	
  is	
  the	
  least	
  
accurate	
  means	
  of	
  approximation.	
  The	
  accuracy	
  
can	
  be	
  strengthened	
  if	
  the	
  expert	
  judgment	
  can	
  be	
  
tied	
  to	
  concrete	
  size	
  information.
Judge Compute Count
Aproximación	
  de	
  
Tamaño	
  Funcional
Aproximación	
  de	
  Tamaño
• Se	
  utiliza cuándo:
• No	
  hay	
  suficiente tiempo para	
  aplicar de	
  manera detallada el	
  método COSMIC
• Los	
  requerimientosno	
  están al	
  nivel de	
  detalle requerido para	
  plicar el	
  
método COSMIC
Level  of  granularity  of  the  
Functional  User  Requirements  
Measurement  
method  
Measurement  
standard  
Actual  requirements  at  a  high  level  of  
granularity  derived  from  e.g.:  
   high-­level  statement  of  actual  
requirements  for  the  software  
   architecture  artifacts  
   high-­level  view  of  existing  software  
expressed  in  locally-­defined  countable  
units  e.g.  Use  Cases,  or  in  CFP  
‘Approximate  
approach’  to  the  
COSMIC  
measurement  
method.  
  Calibrated  locally  
  
  
The  average  size  
of  the  locally  
defined  countable  
unit,  expressed  in  
local  units  or  in  
CFP  
The  functional  process  level  of  
granularity  
COSMIC  
measurement  
method  
  
The  CFP  
Needs	
  local	
  
calibration
Requirement	
  
granularity	
  level Consideration
Average	
  
Functional	
  
Process X
Functional	
  
Process
This	
  approximation	
  is	
  valid	
  as	
  long	
  as	
  there	
  is	
  sufficient	
  reason	
  to	
  assume	
  that	
  
the	
  sample	
  on	
  which	
  the	
  size	
  of	
  the	
  average	
  functional	
  process	
  is	
  calculated	
  is	
  
representative	
  for	
  the	
  software	
  of	
  which	
  the	
  functional	
  size	
  of	
  which	
  size	
  is	
  
approximated.	
  [38]
Fixed	
  Size	
  
Classification	
   X
Functional	
  
Process
This	
  approximation	
  is	
  valid	
  as	
  long	
  as	
  there	
  is	
  sufficient	
  reason	
  to	
  assume	
  that	
  
the	
  assigned	
  size	
  classification	
  is	
  representative	
  for	
  the	
  software	
  of	
  which	
  the	
  
functional	
  size	
  of	
  which	
  size	
  is	
  approximated.	
  [38]
Equal	
  Size	
  Bands	
  
approximation X
Functional	
  
Process
This	
  method	
  is	
  recommended	
  for	
  the	
  approximate	
  sizing	
  of	
  software	
  where	
  the	
  
distribution	
  of	
  the	
  functional	
  process	
  sizes	
  is	
  skewed.	
  For	
  the	
  business	
  
application	
  this	
  method	
  has	
  little	
  added	
  value	
  over	
  the	
  average	
  functional	
  
process	
  method	
  (1)	
  or	
  the	
  fixed	
  size	
  classification	
  method	
  (2).	
  [38]
Average	
  Use	
  
Case	
  
approximation X Use	
  Case
This	
  approximation	
  is	
  valid	
  as	
  long	
  as	
  there	
  is	
  sufficient	
  reason	
  to	
  assume	
  that	
  
the	
  assigned	
  size	
  classification	
  of	
  an	
  average	
  use	
  case	
  is	
  representative	
  for	
  the	
  
software	
  of	
  which	
  the	
  functional	
  size	
  of	
  which	
  size	
  is	
  approximated.	
  [38]
Early	
  &	
  Quick	
  
COSMIC	
  
approximation X
Multilevel	
  
Approach
The	
  precision	
  of	
  the	
  method	
  is	
  strongly	
  dependent	
  on	
  the	
  training	
  and	
  
capability	
  of	
  the	
  practitioners	
  who	
  use	
  it	
  to	
  understand	
  the	
  categories	
  at	
  higher	
  
levels	
  of	
  granularity.	
  [38]
EASY	
  Function	
  
Point	
  
Approximation X
Multilevel	
  
Approach	
  
Different	
  choices	
  of	
  probability	
  distributions,	
  as	
  well	
  as	
  minimum	
  and	
  
maximum	
  CFP	
  values	
  for	
  the	
  several	
  cases	
  of	
  Functional	
  Process	
  above,	
  lead	
  to	
  
different	
  instantiation	
  of	
  the	
  EASY	
  approximation	
  approach
EPCU	
  
approximation	
  
approach
Functional	
  
Process	
  &	
  Use	
  
Cases
Does	
  not	
  require	
  local	
  calibration	
  (less	
  expensive	
  )	
  and	
  is	
  useful	
  when	
  there	
  are	
  
no	
  historical	
  data	
  available.
Situación	
  Típica
Obtención	
  
Requerimientos
Estimación	
  $/EFF Validación
Ejecución	
  
Proyecto
Enfoque	
  Actual
Recolección	
  e	
  
Integración
Problemas:
• Solo	
  pasan	
  los	
  
requerimientos	
  	
  a	
  los	
  
CDS’s,	
  no	
  tienen	
  
referencia
• Los	
  artefactos	
  mínimos	
  
no	
  son	
  homologados
Problemas:
• No	
  hay	
  datos	
  históricos	
  confiables
• Las	
  validaciones	
  se	
  hacen	
  
principalmente	
  por	
  Juicio	
  de	
  Experto	
  
• No	
  hay	
  sustentos	
  robustos	
  para	
  
enfrentar	
  una	
  auditoría
• No	
  hay	
  certeza	
  de	
  que	
  se	
  paga	
  lo	
  
mismo	
  por	
  funcionalidades	
  iguales
Caso	
  Práctico
1.Requerimientos	
  (CU) 2.	
  Analistas	
  de	
  Negocio 3.	
  www.mepe.com.mx
10	
  Módulos
86	
  CU
Proceso	
  Funcional	
  /	
  Casos	
  
de	
  Uso
Tamaño	
  del	
  
Proceso	
  
Funcional	
  (0	
  
Nivel	
  de	
  
Presencia	
  
de	
  Objetos	
  
Alta	
  de	
  Establecimiento	
   3.3 3.5
Baja 2.1 3.3
Actualizacion 2.3 2.3
Consulta 2.1 2.1
Alta	
   3.8 2.3
Baja 3.3 2.0
Actualizacion 3.4 1.3
Consulta 3.1 1.1
Consulta	
  de	
  Información	
  
del	
  Establecimiento 2.6 2.5
Proceso	
  Funcional	
  /	
  Casos	
  
de	
  Uso
Tamaño	
  del	
  
Proceso	
  
Funcional	
  (0	
  
Nivel	
  de	
  
Presencia	
  
de	
  Objetos	
  
ESTIMACIÓ
N
Alta	
  de	
  Establecimiento	
   3.3 3.5 14.58
Baja 2.1 3.3 12.02
Actualizacion 2.3 2.3 8.16
Consulta 2.1 2.1 7.01
Alta	
   3.8 2.3 9.32
Baja 3.3 2.0 8.41
Actualizacion 3.4 1.3 6.78
Consulta 3.1 1.1 6.56
Consulta	
  de	
  Información	
  
del	
  Establecimiento 2.6 2.5 9.84
Caso	
  Práctico…
MMRE 44.7%
DESV	
  STD 18.0%
Sigma Variación Confidencialidad Min Max Unidad
1 126.35 68.26% 575.60 828.30 CFP
2 252.70 95.46% 449.25 954.65 CFP
3 379.05 99.73% 322.90 1081.00 CFP
Caso	
  Práctico
1.Requerimientos	
  (CU) 2.	
  Analistas	
  de	
  Negocio 3.	
  www.mepe.com.mx 4.	
  Estimación	
  Esfuerzo/Costo
10	
  Módulos
86	
  CU
Proceso	
  Funcional	
  /	
  Casos	
  
de	
  Uso
Tamaño	
  del	
  
Proceso	
  
Funcional	
  (0	
  
Nivel	
  de	
  
Presencia	
  
de	
  Objetos	
  
Alta	
  de	
  Establecimiento	
   3.3 3.5
Baja 2.1 3.3
Actualizacion 2.3 2.3
Consulta 2.1 2.1
Alta	
   3.8 2.3
Baja 3.3 2.0
Actualizacion 3.4 1.3
Consulta 3.1 1.1
Consulta	
  de	
  Información	
  
del	
  Establecimiento 2.6 2.5
Proceso	
  Funcional	
  /	
  Casos	
  
de	
  Uso
Tamaño	
  del	
  
Proceso	
  
Funcional	
  (0	
  
Nivel	
  de	
  
Presencia	
  
de	
  Objetos	
  
ESTIMACIÓ
N
Alta	
  de	
  Establecimiento	
   3.3 3.5 14.58
Baja 2.1 3.3 12.02
Actualizacion 2.3 2.3 8.16
Consulta 2.1 2.1 7.01
Alta	
   3.8 2.3 9.32
Baja 3.3 2.0 8.41
Actualizacion 3.4 1.3 6.78
Consulta 3.1 1.1 6.56
Consulta	
  de	
  Información	
  
del	
  Establecimiento 2.6 2.5 9.84
Caso	
  Práctico…
MMRE 34.2%
DESV	
  STD 26.8%
2,927.98HH
Sigma Variación Confidencialidad Min Max Unidad
1 785.33 68.26% 2,142.65 3,713.30 HH
2 1570.65 95.46% 1,357.32 4,498.63 HH
3 2355.98 99.73% 572.00 5,283.95 HH
Caso	
  Práctico…
1.Requerimientos	
  (CU) 2.	
  Analistas	
  de	
  Negocio 3.	
  www.mepe.com.mx 4.	
  Estimación	
  Esfuerzo/Costo
10	
  Módulos
86	
  CU
4.	
  Distribución	
  Esfuerzo/Costo
MIS Outsourcing MIS	
  Effort Outsourcing	
  Effort MIS	
  Effort Outsourcing	
  Effort
1 7.5% 9.0% 219.60 263.52 396.30 475.56
2 2.0% 2.5% 58.56 73.20 105.68 132.10
3 0.5% 1.0% 14.64 29.28 26.42 52.84
4 1.0% 1.5% 29.28 43.92 52.84 79.26
5 8.0% 7.0% 234.24 204.96 422.72 369.88
6 7.0% 8.0% 204.96 234.24 369.88 422.72
7 0.0% 0.5% 0.00 14.64 0.00 26.42
8 20.0% 16.0% 585.60 468.48 1,056.79 845.43
9 0.0% 2.0% 0.00 58.56 0.00 105.68
10 1.0% 1.0% 29.28 29.28 52.84 52.84
11 0.0% 0.0% 0.00 0.00 0.00 0.00
12 0.0% 0.0% 0.00 0.00 0.00 0.00
13 3.0% 3.0% 87.84 87.84 158.52 158.52
14 2.0% 2.0% 58.56 58.56 105.68 105.68
15 7.0% 9.0% 204.96 263.52 369.88 475.56
16 4.0% 3.5% 117.12 102.48 211.36 184.94
17 6.0% 5.0% 175.68 146.40 317.04 264.20
18 5.0% 5.0% 146.40 146.40 264.20 264.20
19 7.0% 5.0% 204.96 146.40 369.88 264.20
20 0.0% 0.0% 0.00 0.00 0.00 0.00
21 5.0% 3.0% 146.40 87.84 264.20 158.52
22 0.0% 0.0% 0.00 0.00 0.00 0.00
23 0.0% 1.0% 0.00 29.28 0.00 52.84
24 2.0% 3.0% 58.56 87.84 105.68 158.52
25 12.0% 12.0% 351.36 351.36 634.07 634.07
100.0% 100.0% 2,927.98 2,927.98 5,283.95 5,283.95
Installation/training
Project	
  Management
Aproximado Max
Integration	
  Testing
System	
  Testing
Field	
  Testing
Acceptance	
  Testing
Independent	
  Testing
Quality	
  Assurance
Independent	
  
Verification	
  and	
  
Validation
Configuration	
  Management
Formal	
  Integration
User	
  Documentation
Unit	
  Testing
Functional	
  Testing
Detail	
  Design
Design	
  Review
Coding
Reuse	
  Acquisition
Package	
  Purchase
Code	
  Inspections
Initial	
  Design
Actividades
Requirements
Prototyping
Architecture
Project	
  Plans
Caso	
  Práctico…
1.Requerimientos	
  (CU) 2.	
  Analistas	
  de	
  Negocio 3.	
  www.mepe.com.mx 4.	
  Estimación	
  Esfuerzo/Costo
10	
  Módulos
86	
  CU
4.	
  Distribución	
  Esfuerzo/Costo5.	
  Documentar
Propuesta
Obtención	
  
Requerimientos
Estimación	
  $/EFF Validación
Ejecución	
  
Proyecto
Enfoque	
  ActualEnfoque	
  Propuesto Recolección	
  e	
  
Integración
Obtención	
  
Requerimientos
Estimación	
  $/EFF Validación
Ejecución	
  
Proyecto
Recolección	
  e	
  
Integración
¿Porqué	
  es	
  importante?
• Efectividad Operacional: conlleva
cualquier número de PRÁCTICAS que le
permiten a la empresa utilizar de mejor
manera los insumos de producción
% Mejora
Tiempo
u Barrera	
  de	
  Productividad:	
  Máximo valor	
  
que una compañía puede entregar sobre un	
  
producto o	
  servicio a	
  un	
  costo dado.
Situación	
  Actual	
  Industria	
  de	
  Software	
  
Figura1.  Chaos  Manifesto 2013
¿Preguntas?
Dr.	
  Francisco	
  Valdés	
  Souto
@valdessoutofco
francisco.valdes@spingere.com.mx
@mxspingere,	
  
www.spingere.com.mx/blog,
@ammsmx
Dimensionamiento	
  y	
  Estimación	
  Profesional	
  de	
  Software!	
  

Más contenido relacionado

Similar a Estimacion requerimientos vagos

IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWAREIMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
Cristhian Rodriguez
 
Métricas de Proceso y proyecto de software
Métricas de Proceso y proyecto de softwareMétricas de Proceso y proyecto de software
Métricas de Proceso y proyecto de software
Lorena Quiñónez
 
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWAREIMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
Cristhian Rodriguez
 

Similar a Estimacion requerimientos vagos (20)

Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
 
09 Atos
09 Atos09 Atos
09 Atos
 
Estimación de Proyectos de Software
Estimación de Proyectos de SoftwareEstimación de Proyectos de Software
Estimación de Proyectos de Software
 
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWAREIMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
 
Eje tematico 6
Eje tematico 6Eje tematico 6
Eje tematico 6
 
Métricas de Proceso y proyecto de software
Métricas de Proceso y proyecto de softwareMétricas de Proceso y proyecto de software
Métricas de Proceso y proyecto de software
 
Equipos a verificar R.A 1.1
Equipos a verificar R.A 1.1Equipos a verificar R.A 1.1
Equipos a verificar R.A 1.1
 
Ingenieria software
Ingenieria softwareIngenieria software
Ingenieria software
 
DevOps Cap 5: Test
 DevOps Cap 5: Test DevOps Cap 5: Test
DevOps Cap 5: Test
 
15-Auditoria
15-Auditoria15-Auditoria
15-Auditoria
 
Clase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptClase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.ppt
 
Procesos de Ingenieria de Software
Procesos de Ingenieria de SoftwareProcesos de Ingenieria de Software
Procesos de Ingenieria de Software
 
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWAREIMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
IMPLANTACIÓN, ADMINISTRACION, DEL DESARROLLO Y SELECCIÓN DE HARDWARE Y SOFTWARE
 
EVALUACIÓN DE PROYECTOS Y APLICACIONES COMPUTARIZADAS
EVALUACIÓN DE PROYECTOS Y APLICACIONES COMPUTARIZADASEVALUACIÓN DE PROYECTOS Y APLICACIONES COMPUTARIZADAS
EVALUACIÓN DE PROYECTOS Y APLICACIONES COMPUTARIZADAS
 
Lexi herrera fundamentos del diseno de software
Lexi herrera  fundamentos del diseno de softwareLexi herrera  fundamentos del diseno de software
Lexi herrera fundamentos del diseno de software
 
Estimación de software basada en puntos de casos de uso
Estimación de software basada en puntos de casos de usoEstimación de software basada en puntos de casos de uso
Estimación de software basada en puntos de casos de uso
 
metodologias de desarrollo.ppt
metodologias de desarrollo.pptmetodologias de desarrollo.ppt
metodologias de desarrollo.ppt
 
Administracion de Proyectos de TI - Trabajo Final
Administracion de Proyectos de TI - Trabajo FinalAdministracion de Proyectos de TI - Trabajo Final
Administracion de Proyectos de TI - Trabajo Final
 
Unidad1_EMDS.pptx
Unidad1_EMDS.pptxUnidad1_EMDS.pptx
Unidad1_EMDS.pptx
 
S4-CDSQA.pptx
S4-CDSQA.pptxS4-CDSQA.pptx
S4-CDSQA.pptx
 

Más de Software Guru

Más de Software Guru (20)

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las Cosas
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso reales
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environments
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador Senior
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto ideal
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache Airflow
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learning
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDi
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJS
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stress
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goals
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseño
 

Estimacion requerimientos vagos

  • 1. Enlighten  your  software ¿Cómo  puedo  estimar  cuando   no  hay  requerimientos   detallados? Dr.  Francisco  Valdés  Souto @valdessoutofco,  www.spingere.com.mx/blog
  • 2. Estimación • “An  estimation  is  a  prediction  that  is   equally  likely  to  be  above  or  below  the   actual  result.”  T.  DeMarco • “estimates  are,  in  reality,  guesses   regarding  future  performance  based  on   available  knowledge.  As  such,  their   accuracy  is  affected  by  the  extent  of   uncertainty  regarding  the  task  to  be   estimated.  Uncertainty  is  associated,  inter   alia,  with  definitions  of  requirements,   choice  of  technological  solutions,   innovativeness  of  needs,  and  customer   characteristics”  (Morgenshtern,  2007). Pierre  Bourque (May 2007)
  • 3. Características  Estimación • Medición  (GIGO  -­‐ Std) • Confianza
  • 4. ¿Qué  se  puede  medir  en  el  software? Factores   Técnicos •Significante  para   desarrolladores  pero  no  para   usuarios  y  administración •Pobre portabilidad •Se  conocen  precisamente  muy   tarde •No  hay  un  estándar     internacional Factores   Funcionales •Significativo  para  los  managers   y  usuarios  y  staff técnico •Portable •Puede ser  medido temprano •Basado en  estándar internacional! Q Eff/$$
  • 5. Método  COSMIC  (ISO  19761) • Common Software  Measurement International  Consortium (COSMIC)   • Es  un  método  de  medición  de   tamaño  funcional  de  software • Es  el  único  método  de  segunda   generación.   • Está  basado  en  la  representación   del  software:  E,  X,  W,  R.  No  en   datos  estadísticos  como  en  la   primera  generación.   • Tiene  su  equivalente  en  Norma   Mexicana  (NMX),  que  está   incluida  en  el  MAAGTICSI
  • 6. Niveles para  determiner  el  tamaño del   software  (Steve  McConnell) • Count:  If  detailed  information  is  available,  the   most  accurate  way  of  determining  the  size  is  to   count. • Compute:  If  not  enough  information  is  available  at   the  desired  level  of  detail,  count  something  that  is   available  and  then  compute  the  answer  by  using   calibration  data. • Judge:  Experts  can  give  an  approximation  of  the   size,  based  on  a  mental  model  established  on   experience.  This  expert  judgment  is  the  least   accurate  means  of  approximation.  The  accuracy   can  be  strengthened  if  the  expert  judgment  can  be   tied  to  concrete  size  information. Judge Compute Count Aproximación  de   Tamaño  Funcional
  • 7. Aproximación  de  Tamaño • Se  utiliza cuándo: • No  hay  suficiente tiempo para  aplicar de  manera detallada el  método COSMIC • Los  requerimientosno  están al  nivel de  detalle requerido para  plicar el   método COSMIC Level  of  granularity  of  the   Functional  User  Requirements   Measurement   method   Measurement   standard   Actual  requirements  at  a  high  level  of   granularity  derived  from  e.g.:     high-­level  statement  of  actual   requirements  for  the  software     architecture  artifacts     high-­level  view  of  existing  software   expressed  in  locally-­defined  countable   units  e.g.  Use  Cases,  or  in  CFP   ‘Approximate   approach’  to  the   COSMIC   measurement   method.    Calibrated  locally       The  average  size   of  the  locally   defined  countable   unit,  expressed  in   local  units  or  in   CFP   The  functional  process  level  of   granularity   COSMIC   measurement   method     The  CFP  
  • 8. Needs  local   calibration Requirement   granularity  level Consideration Average   Functional   Process X Functional   Process This  approximation  is  valid  as  long  as  there  is  sufficient  reason  to  assume  that   the  sample  on  which  the  size  of  the  average  functional  process  is  calculated  is   representative  for  the  software  of  which  the  functional  size  of  which  size  is   approximated.  [38] Fixed  Size   Classification   X Functional   Process This  approximation  is  valid  as  long  as  there  is  sufficient  reason  to  assume  that   the  assigned  size  classification  is  representative  for  the  software  of  which  the   functional  size  of  which  size  is  approximated.  [38] Equal  Size  Bands   approximation X Functional   Process This  method  is  recommended  for  the  approximate  sizing  of  software  where  the   distribution  of  the  functional  process  sizes  is  skewed.  For  the  business   application  this  method  has  little  added  value  over  the  average  functional   process  method  (1)  or  the  fixed  size  classification  method  (2).  [38] Average  Use   Case   approximation X Use  Case This  approximation  is  valid  as  long  as  there  is  sufficient  reason  to  assume  that   the  assigned  size  classification  of  an  average  use  case  is  representative  for  the   software  of  which  the  functional  size  of  which  size  is  approximated.  [38] Early  &  Quick   COSMIC   approximation X Multilevel   Approach The  precision  of  the  method  is  strongly  dependent  on  the  training  and   capability  of  the  practitioners  who  use  it  to  understand  the  categories  at  higher   levels  of  granularity.  [38] EASY  Function   Point   Approximation X Multilevel   Approach   Different  choices  of  probability  distributions,  as  well  as  minimum  and   maximum  CFP  values  for  the  several  cases  of  Functional  Process  above,  lead  to   different  instantiation  of  the  EASY  approximation  approach EPCU   approximation   approach Functional   Process  &  Use   Cases Does  not  require  local  calibration  (less  expensive  )  and  is  useful  when  there  are   no  historical  data  available.
  • 9. Situación  Típica Obtención   Requerimientos Estimación  $/EFF Validación Ejecución   Proyecto Enfoque  Actual Recolección  e   Integración Problemas: • Solo  pasan  los   requerimientos    a  los   CDS’s,  no  tienen   referencia • Los  artefactos  mínimos   no  son  homologados Problemas: • No  hay  datos  históricos  confiables • Las  validaciones  se  hacen   principalmente  por  Juicio  de  Experto   • No  hay  sustentos  robustos  para   enfrentar  una  auditoría • No  hay  certeza  de  que  se  paga  lo   mismo  por  funcionalidades  iguales
  • 10. Caso  Práctico 1.Requerimientos  (CU) 2.  Analistas  de  Negocio 3.  www.mepe.com.mx 10  Módulos 86  CU Proceso  Funcional  /  Casos   de  Uso Tamaño  del   Proceso   Funcional  (0   Nivel  de   Presencia   de  Objetos   Alta  de  Establecimiento   3.3 3.5 Baja 2.1 3.3 Actualizacion 2.3 2.3 Consulta 2.1 2.1 Alta   3.8 2.3 Baja 3.3 2.0 Actualizacion 3.4 1.3 Consulta 3.1 1.1 Consulta  de  Información   del  Establecimiento 2.6 2.5 Proceso  Funcional  /  Casos   de  Uso Tamaño  del   Proceso   Funcional  (0   Nivel  de   Presencia   de  Objetos   ESTIMACIÓ N Alta  de  Establecimiento   3.3 3.5 14.58 Baja 2.1 3.3 12.02 Actualizacion 2.3 2.3 8.16 Consulta 2.1 2.1 7.01 Alta   3.8 2.3 9.32 Baja 3.3 2.0 8.41 Actualizacion 3.4 1.3 6.78 Consulta 3.1 1.1 6.56 Consulta  de  Información   del  Establecimiento 2.6 2.5 9.84
  • 11. Caso  Práctico… MMRE 44.7% DESV  STD 18.0% Sigma Variación Confidencialidad Min Max Unidad 1 126.35 68.26% 575.60 828.30 CFP 2 252.70 95.46% 449.25 954.65 CFP 3 379.05 99.73% 322.90 1081.00 CFP
  • 12. Caso  Práctico 1.Requerimientos  (CU) 2.  Analistas  de  Negocio 3.  www.mepe.com.mx 4.  Estimación  Esfuerzo/Costo 10  Módulos 86  CU Proceso  Funcional  /  Casos   de  Uso Tamaño  del   Proceso   Funcional  (0   Nivel  de   Presencia   de  Objetos   Alta  de  Establecimiento   3.3 3.5 Baja 2.1 3.3 Actualizacion 2.3 2.3 Consulta 2.1 2.1 Alta   3.8 2.3 Baja 3.3 2.0 Actualizacion 3.4 1.3 Consulta 3.1 1.1 Consulta  de  Información   del  Establecimiento 2.6 2.5 Proceso  Funcional  /  Casos   de  Uso Tamaño  del   Proceso   Funcional  (0   Nivel  de   Presencia   de  Objetos   ESTIMACIÓ N Alta  de  Establecimiento   3.3 3.5 14.58 Baja 2.1 3.3 12.02 Actualizacion 2.3 2.3 8.16 Consulta 2.1 2.1 7.01 Alta   3.8 2.3 9.32 Baja 3.3 2.0 8.41 Actualizacion 3.4 1.3 6.78 Consulta 3.1 1.1 6.56 Consulta  de  Información   del  Establecimiento 2.6 2.5 9.84
  • 13. Caso  Práctico… MMRE 34.2% DESV  STD 26.8% 2,927.98HH Sigma Variación Confidencialidad Min Max Unidad 1 785.33 68.26% 2,142.65 3,713.30 HH 2 1570.65 95.46% 1,357.32 4,498.63 HH 3 2355.98 99.73% 572.00 5,283.95 HH
  • 14. Caso  Práctico… 1.Requerimientos  (CU) 2.  Analistas  de  Negocio 3.  www.mepe.com.mx 4.  Estimación  Esfuerzo/Costo 10  Módulos 86  CU 4.  Distribución  Esfuerzo/Costo
  • 15. MIS Outsourcing MIS  Effort Outsourcing  Effort MIS  Effort Outsourcing  Effort 1 7.5% 9.0% 219.60 263.52 396.30 475.56 2 2.0% 2.5% 58.56 73.20 105.68 132.10 3 0.5% 1.0% 14.64 29.28 26.42 52.84 4 1.0% 1.5% 29.28 43.92 52.84 79.26 5 8.0% 7.0% 234.24 204.96 422.72 369.88 6 7.0% 8.0% 204.96 234.24 369.88 422.72 7 0.0% 0.5% 0.00 14.64 0.00 26.42 8 20.0% 16.0% 585.60 468.48 1,056.79 845.43 9 0.0% 2.0% 0.00 58.56 0.00 105.68 10 1.0% 1.0% 29.28 29.28 52.84 52.84 11 0.0% 0.0% 0.00 0.00 0.00 0.00 12 0.0% 0.0% 0.00 0.00 0.00 0.00 13 3.0% 3.0% 87.84 87.84 158.52 158.52 14 2.0% 2.0% 58.56 58.56 105.68 105.68 15 7.0% 9.0% 204.96 263.52 369.88 475.56 16 4.0% 3.5% 117.12 102.48 211.36 184.94 17 6.0% 5.0% 175.68 146.40 317.04 264.20 18 5.0% 5.0% 146.40 146.40 264.20 264.20 19 7.0% 5.0% 204.96 146.40 369.88 264.20 20 0.0% 0.0% 0.00 0.00 0.00 0.00 21 5.0% 3.0% 146.40 87.84 264.20 158.52 22 0.0% 0.0% 0.00 0.00 0.00 0.00 23 0.0% 1.0% 0.00 29.28 0.00 52.84 24 2.0% 3.0% 58.56 87.84 105.68 158.52 25 12.0% 12.0% 351.36 351.36 634.07 634.07 100.0% 100.0% 2,927.98 2,927.98 5,283.95 5,283.95 Installation/training Project  Management Aproximado Max Integration  Testing System  Testing Field  Testing Acceptance  Testing Independent  Testing Quality  Assurance Independent   Verification  and   Validation Configuration  Management Formal  Integration User  Documentation Unit  Testing Functional  Testing Detail  Design Design  Review Coding Reuse  Acquisition Package  Purchase Code  Inspections Initial  Design Actividades Requirements Prototyping Architecture Project  Plans
  • 16. Caso  Práctico… 1.Requerimientos  (CU) 2.  Analistas  de  Negocio 3.  www.mepe.com.mx 4.  Estimación  Esfuerzo/Costo 10  Módulos 86  CU 4.  Distribución  Esfuerzo/Costo5.  Documentar
  • 17. Propuesta Obtención   Requerimientos Estimación  $/EFF Validación Ejecución   Proyecto Enfoque  ActualEnfoque  Propuesto Recolección  e   Integración Obtención   Requerimientos Estimación  $/EFF Validación Ejecución   Proyecto Recolección  e   Integración
  • 18. ¿Porqué  es  importante? • Efectividad Operacional: conlleva cualquier número de PRÁCTICAS que le permiten a la empresa utilizar de mejor manera los insumos de producción % Mejora Tiempo u Barrera  de  Productividad:  Máximo valor   que una compañía puede entregar sobre un   producto o  servicio a  un  costo dado.
  • 19. Situación  Actual  Industria  de  Software   Figura1.  Chaos  Manifesto 2013
  • 20. ¿Preguntas? Dr.  Francisco  Valdés  Souto @valdessoutofco francisco.valdes@spingere.com.mx @mxspingere,   www.spingere.com.mx/blog, @ammsmx Dimensionamiento  y  Estimación  Profesional  de  Software!