SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Estimación temprana de
   proyectos Software.
           Alfonso Tienda Braulio
       Twitter: @afoone @iprocuratio
   linkedIn: http://www.linkedin.com/in/alfonsotienda
IX jornadas PMI Valencia – 29 de noviembre 2012
La estimación de software: Primeros
                 pasos
• 50’s y 60’s : Estimación manual basada en la experiencia del
  programador
• 1969: Joel Aaron de IBM [Aaron 1970] realiza una presentación
  sobre estimación de software en la Otan. Barry Boehm(TRW) y
  Larry Putnam (US Army) empiezan sus trabajos al respecto
• 1973: Charles Turk y Capers Jones construyen la primera
  herramienta automática de costes software (Interactive
  Productivity and Quality Estimator, rebautizada posteriormente
  como Development Planning System) [Jones 1977]
• 1975: Publicación de “The mythical man-month” de Frederick
  Brooks, [Brooks 1975]
   – “Asignar más programadores a un proyecto atrasado sólo lo atrasará
     más”; la fórmula de la comunicación grupal
   – El prototipado
   – Captura la necesidad de herramientas de costes de software
La estimación de software: Nacen las
                técnicas
• 1975: Allan Albrecht trabaja en la primera versión de los puntos de
  función de IBM, basados en Inputs, Outputs, Inquires, Logical Files e
  Interfaces
• 1977: PRICE-S, primera herramienta comercial de estimación de costes, de
  Frank Freiman, todavía a la venta.
• 1979: Allan Albrecht publica sus trabajos sobre puntos de función
  [Albrecht 1979]
• 1981: Barry Boehm publica su libro Software Engineering Economics
  (Boehm 1981), introduce COCOMO (así como el desarrollo espiral)
• 1982 Tom DeMarco publica su versión de puntos de función (De Marco
  1981)
• 1983 Charles Symons publica Mark II, también de puntos de función
  (Symons 1983)
• 1984-1986 Trabajos de Allan Albrecht y Capers Jones en Backfiring (LOC to
  function points), SPQR/20 y SPR (feature points)
La estimación de software: Algunos
                hechos
• Las dos principales razones para que un proyecto
  esté fuera de control son la mala estimación y la
  inestabilidad de los requerimientos. [Cole 1995]
  [Van Genuchten 1991]
• La mayoría de las estimaciones se realizan al
  principio del ciclo de vida. Tiene sentido hasta
  que nos damos cuenta que estimamos sin tener
  claros los requerimientos. La estimación se
  hace, por lo tanto, en el momento equivocado.
  [Pressman 1992]
La estimación de software: Algunos
                hechos
• La mayoría de las estimaciones de software son realizadas
  por la gerencia o por marketing/ventas, no por la gente que
  va a realizar o supervisar los trabajos. Por lo tanto, están
  hechas por la gente equivocada. [CASE 1991]
• Las estimaciones rara vez se ajustan a medida que avanza el
  proyecto, por lo que las estimaciones que fueron hechas en
  el momento equivocado por la gente equivocada no se
  corrijen.
• Dado que las estimaciones son tan defectuosas, hay pocas
  razones para preocuparse cuando los proyectos de
  software no alcanzan los objetivos previstos. Pero todo el
  mundo está preocupado de todos modos.
La estimación de software: Algunos
                hechos
• Hay una desconexión entre la dirección y sus
  programadores. En un estudio de
  investigación de un proyecto que no cumplió
  con sus estimaciones y fue visto por su gestión
  como un fracaso, los participantes técnicos lo
  veían como el proyecto más exitoso que
  habían trabajado jamás . [Linberg 1999]
• La respuesta a un estudio de viabilidad es casi
  siempre SI.
La estimación de software:
               Problemática
• La mayoría de los trabajos en base a estimaciones
  software se realizan sobre análisis completados
• En ocasiones tenemos que hacer valoraciones
  tempranas
  – Valoraciones para licitaciones públicas en las cuales se
    nos presentan datos mínimos
  – Valoraciones estratégicas
• No tenemos suficientes datos para realizar
  valoraciones mediante los modelos estándar
• ¿Influyen las metodologías empleadas?
Estimación temprana: primeros pasos
• Primer consejo: Como hemos visto
  antes, intentar no hacerla. Intentar negociar otro
  modelo si es posible. En proyectos internos, dejar
  claro el rango de error de la estimación
  estratégica.
• Recabar la mayor cantidad de datos posible:
  – Hacer preguntas a los clientes, internos o externos. A
    los licitadores. Solicitar documentación.
  – Intentar que los técnicos aporten información
    (personas correctas)
Estimación temprana: mantenimiento
           de aplicaciones
• Un consejo en cuanto al código legado:
  – Existen dos formas de evolucionar el código de otro:
     • Code & Pray
     • Make Tests & Modify
  – El dato más importante para evaluar la complejidad
    de evolucionar un sistema legado NO es la
    documentación (que suele estar obsoleta) sino la
    cobertura de TESTS (suele ser un dato objetivo)->
    Pidámosla
     • Unitarios (imprescindibles)
     • Integración
Costes en PMI
Tras la EDT
• Realizar una EDT tan precisa como nos sea
  posible, basada en el producto, no en las fases de
  desarrollo
• Utilizar las técnicas de estimación que nos
  convengan en el desarrollo que hacemos (excels
  internas, tres puntos…). Realizarla de forma
  realista, descomponiendo el proyecto, no sus
  fases.
• Corregir la estimación con factores de ajustes
• Descomponer
Técnicas de estimación
• Juicio de expertos
  – Agile – Planning Poker
  – Ascendente, en la medida de lo posible
• Estimación Análoga: LOC’s
  – Cuando tenemos un sistema con el que
    compararnos
    Tamaño en
     líneas de   LOC por    Esfuerzo de                                 Esfuerzo de no     Esfuerzo total
       código     hora      codificación           Esfuerzo en Test %   codificación %        (horas)        LOC netas por hora

   100              15,15                   6,60                 40%                 40%             11,88                        8,42

   1.000            13,26                  75,41                 50%                 80%            173,45                        5,77

   10.000           11,36              880,28                    75%                100%          2.420,77                        4,13

   100.000           9,09           11.001,10                   100%                150%         38.503,85                        2,60

   1.000.000         7,58          131.926,12                   125%                150%       494.722,96                         2,02
Técnicas de estimación
– Tres valores. Según mi experiencia, le daría más
  peso al caso peor, especialmente en entornos de
  incertidumbre.
– Mínima información: Estimación super-rápida de
  Puntos de Función

   • (Alcance + Clase + Tipo)2.35
Técnicas de estimación
Alcance                                 Clase                                    Tipo

– Tres valores. Según mi experiencia, le daría más
           1 Subrutina, método, clase            1 Software individual                   1 No procedural
           2 Módulo                              2 Shareware                             2 Web applet
           3 Módulo reutilizable                 3 Software académico                    3 Batch
  peso al caso peor, especialmente en entornos de
           4 Prototipo desechable
           5 Prototipo evolucionable
                                                 4 Interno - Ubicación única
                                                 5 Interno - Multilocalización
                                                                                         4 Interactivo
                                                                                         5 GUI interactivo o basado en Web

  incertidumbre.
           6 Programa independiente
           7 Componente de sistema
                                                 6 Proyecto contratado - Civil
                                                 7 Time Sharing
                                                                                         6 Batch - DB
                                                                                         7 BD - Interactivo
           8 Versión del sistema                 8 Militar                               8 Cliente / Servidor
– Mínima información: Estimación super-rápida de
           9 Nuevo sistema
          10 Sistema Compuesto
                                                 9 Internet
                                                10 SaaS
                                                                                         9 Matemático
                                                                                        10 Sistemas

  Puntos de Función                             11 Bundle
                                                12 Comercial a la venta
                                                                                        11 Comunicaciones
                                                                                        12 Control de proceso
                                                13 Contrato de outsourcing              13 Sistema fiable
                                                14 Contrato gubernamental               14 Embebido
                                                15 Contrato militar                     15 Procesamiento de imagen
                                                                                        16 Multimedia
   Programa independiente = 6                                                           17 Robótica
                                                                                        18 Inteligencia Artificial
   Interno, ubicación única = 4                                                         19 Red neuronal
       Cliente servidor = 6                                                             20 Híbrido
         (6+4+6)2,35 = 891
La “A” de Ajustes
– Todos los ajustes han de ser tenidos en cuenta y
  corregidos especialmente teniendo en cuenta el
  cliente finalç
– Líneas de código <-> PF
   • Java 50:1
   • SmallTalk, Ruby 15:1
– Scope Creep: 2% mensual. Mínimo 15%
– Documentación: FP1,15
– Número de casos de TEST: FP1,2
Bibliografía
•   [Aaron 1970] Aaron, JD “Estimating Resources for large programming systems”,
    Software Engineering Techinques, NATO Conference Report, October 1969, April
    1970 p.68-84
•   [Brooks, 1975] Brooks, Fred The mythical man-month, Addison-Weley, Reading,
    Mass. 1975 rev. 1995
•   [CASE, 1991] "CASE/CASM Industry Survey Report." HCS, Inc., P.O. Box 40770,
    Portland, OR.
•   [Cole 1995] Cole, Andy. 1995. "Runaway Projects—Causes and Effects." Software
    World (UK) 26, no. 3.
•   [Jones 1977] Jones, Capers. “Program Quality and Programmer Productivity. IBM
    Technical Report TR 02.766. San Jose, CA, Jan 1977
•   [Linberg 1999] Linberg, K. R. 1999. "Software Developer Perceptions about
    Software Project Failure: A Case Study." Journal of Systems and Software 49, nos.
    2/3, Dec. 30
•   [Pressman 1992] Pressman, Roger S. 1992. "Software Project Management: Q and
    A." American Programmer, Dec.
•   [Van Genuchten 1991]Van Genuchten, Michiel. 1991. "Why Is Software Late?" IEEE
    Transactions on Software Engineering, June.

Weitere ähnliche Inhalte

Andere mochten auch

Casos practicos puntos_de_funcion1
Casos practicos puntos_de_funcion1Casos practicos puntos_de_funcion1
Casos practicos puntos_de_funcion1
Homero Jimenez
 
Estimación por puntos de función
Estimación por puntos de funciónEstimación por puntos de función
Estimación por puntos de función
Luisa Sanchez
 

Andere mochten auch (13)

Cocomo
CocomoCocomo
Cocomo
 
CNMES'15 : Presentación AMMS - Francisco Valdès Souto
CNMES'15 : Presentación AMMS - Francisco Valdès SoutoCNMES'15 : Presentación AMMS - Francisco Valdès Souto
CNMES'15 : Presentación AMMS - Francisco Valdès Souto
 
Cocomo
CocomoCocomo
Cocomo
 
Casos practicos puntos_de_funcion1
Casos practicos puntos_de_funcion1Casos practicos puntos_de_funcion1
Casos practicos puntos_de_funcion1
 
Cocomo basico
Cocomo basicoCocomo basico
Cocomo basico
 
Procesos de Ingenieria de Software
Procesos de Ingenieria de SoftwareProcesos de Ingenieria de Software
Procesos de Ingenieria de Software
 
Estimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de usoEstimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de uso
 
Puntos de caso de uso
Puntos de caso de usoPuntos de caso de uso
Puntos de caso de uso
 
Estimación por puntos de función
Estimación por puntos de funciónEstimación por puntos de función
Estimación por puntos de función
 
Gestion de proyectos - Estimación del Esfuerzo
Gestion de proyectos - Estimación del EsfuerzoGestion de proyectos - Estimación del Esfuerzo
Gestion de proyectos - Estimación del Esfuerzo
 
Estimación de Proyectos de Software
Estimación de Proyectos de SoftwareEstimación de Proyectos de Software
Estimación de Proyectos de Software
 
Estimación Software por Puntos de Función
Estimación Software por Puntos de FunciónEstimación Software por Puntos de Función
Estimación Software por Puntos de Función
 
Tecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareTecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto software
 

Ähnlich wie Estimación temprana de proyectos software #pmot #pmlat

Administración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de softwareAdministración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de software
jose_macias
 
Ibm industria
Ibm industriaIbm industria
Ibm industria
guba93
 
Oportunidad de negocio con Windows 7
Oportunidad de negocio con Windows 7Oportunidad de negocio con Windows 7
Oportunidad de negocio con Windows 7
MICProductivity
 
Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...
Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...
Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...
GeneXus
 
2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...
2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...
2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...
Visure Solutions
 
Diapositivas guia 1 de software.melissa burgos
Diapositivas guia 1 de software.melissa burgosDiapositivas guia 1 de software.melissa burgos
Diapositivas guia 1 de software.melissa burgos
Melissa Burgos
 

Ähnlich wie Estimación temprana de proyectos software #pmot #pmlat (20)

Administración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de softwareAdministración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de software
 
Ingenieria software
Ingenieria softwareIngenieria software
Ingenieria software
 
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOpsMeetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
 
Ibm industria
Ibm industriaIbm industria
Ibm industria
 
Operational Data Graph: Un enfoque innovador para optimizar las operaciones d...
Operational Data Graph: Un enfoque innovador para optimizar las operaciones d...Operational Data Graph: Un enfoque innovador para optimizar las operaciones d...
Operational Data Graph: Un enfoque innovador para optimizar las operaciones d...
 
Nerdear.la 2018 | Journey to Stability - Cómo reducimos costos y aumentamos l...
Nerdear.la 2018 | Journey to Stability - Cómo reducimos costos y aumentamos l...Nerdear.la 2018 | Journey to Stability - Cómo reducimos costos y aumentamos l...
Nerdear.la 2018 | Journey to Stability - Cómo reducimos costos y aumentamos l...
 
Oportunidad de negocio con Windows 7
Oportunidad de negocio con Windows 7Oportunidad de negocio con Windows 7
Oportunidad de negocio con Windows 7
 
Desarrollo de Software por www.jasoftsolutions.com
Desarrollo de Software por www.jasoftsolutions.comDesarrollo de Software por www.jasoftsolutions.com
Desarrollo de Software por www.jasoftsolutions.com
 
Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...
Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...
Incorporación de procesos de Ingeniería de Performance dentro de su Organizac...
 
Administracion de proyectos de software
Administracion de proyectos de softwareAdministracion de proyectos de software
Administracion de proyectos de software
 
2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...
2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...
2012 The Requirements Week Visure Solutions Jose Manuel Muñoz Ingeniería de r...
 
Monitoreo de redes
Monitoreo de redesMonitoreo de redes
Monitoreo de redes
 
Estimación de proyectos de software
Estimación de proyectos de softwareEstimación de proyectos de software
Estimación de proyectos de software
 
Soluciones Innovation Strategies
Soluciones Innovation StrategiesSoluciones Innovation Strategies
Soluciones Innovation Strategies
 
Gestion de proyectos de SW
Gestion de proyectos de SWGestion de proyectos de SW
Gestion de proyectos de SW
 
Gestión de Proyectos Informáticos
Gestión de Proyectos InformáticosGestión de Proyectos Informáticos
Gestión de Proyectos Informáticos
 
Diapositivas guia 1 de software.melissa burgos
Diapositivas guia 1 de software.melissa burgosDiapositivas guia 1 de software.melissa burgos
Diapositivas guia 1 de software.melissa burgos
 
Software Project Management EAN
Software Project Management EANSoftware Project Management EAN
Software Project Management EAN
 
La Práctica : Una visión general
La Práctica : Una visión generalLa Práctica : Una visión general
La Práctica : Una visión general
 
La Práctica : Una visión general
La Práctica : Una visión generalLa Práctica : Una visión general
La Práctica : Una visión general
 

Kürzlich hochgeladen

UNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIA
UNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIAUNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIA
UNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIA
sonapo
 
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdfSENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
JaredQuezada3
 
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
Evafabi
 
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
MIGUELANGELLEGUIAGUZ
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
AJYSCORP
 

Kürzlich hochgeladen (20)

implemenatcion de un data mart en logistica
implemenatcion de un data mart en logisticaimplemenatcion de un data mart en logistica
implemenatcion de un data mart en logistica
 
UNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIA
UNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIAUNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIA
UNIDAD DIDACTICA DE CUARTO BIMESTRE DOCENTES SECUNDARIA
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industral
 
2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
 
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADADECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
 
Manual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformesManual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformes
 
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdfSENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
 
liderazgo guia.pdf.............................
liderazgo guia.pdf.............................liderazgo guia.pdf.............................
liderazgo guia.pdf.............................
 
Presentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdfPresentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdf
 
2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx
 
Empresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercadoEmpresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercado
 
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJODERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
 
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxSostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
 
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
 
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxINTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
 
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
 
modulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdfmodulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdf
 
Fabricación de Cremas en Industria Farmacéutica
Fabricación de Cremas en Industria FarmacéuticaFabricación de Cremas en Industria Farmacéutica
Fabricación de Cremas en Industria Farmacéutica
 
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
 

Estimación temprana de proyectos software #pmot #pmlat

  • 1. Estimación temprana de proyectos Software. Alfonso Tienda Braulio Twitter: @afoone @iprocuratio linkedIn: http://www.linkedin.com/in/alfonsotienda IX jornadas PMI Valencia – 29 de noviembre 2012
  • 2. La estimación de software: Primeros pasos • 50’s y 60’s : Estimación manual basada en la experiencia del programador • 1969: Joel Aaron de IBM [Aaron 1970] realiza una presentación sobre estimación de software en la Otan. Barry Boehm(TRW) y Larry Putnam (US Army) empiezan sus trabajos al respecto • 1973: Charles Turk y Capers Jones construyen la primera herramienta automática de costes software (Interactive Productivity and Quality Estimator, rebautizada posteriormente como Development Planning System) [Jones 1977] • 1975: Publicación de “The mythical man-month” de Frederick Brooks, [Brooks 1975] – “Asignar más programadores a un proyecto atrasado sólo lo atrasará más”; la fórmula de la comunicación grupal – El prototipado – Captura la necesidad de herramientas de costes de software
  • 3. La estimación de software: Nacen las técnicas • 1975: Allan Albrecht trabaja en la primera versión de los puntos de función de IBM, basados en Inputs, Outputs, Inquires, Logical Files e Interfaces • 1977: PRICE-S, primera herramienta comercial de estimación de costes, de Frank Freiman, todavía a la venta. • 1979: Allan Albrecht publica sus trabajos sobre puntos de función [Albrecht 1979] • 1981: Barry Boehm publica su libro Software Engineering Economics (Boehm 1981), introduce COCOMO (así como el desarrollo espiral) • 1982 Tom DeMarco publica su versión de puntos de función (De Marco 1981) • 1983 Charles Symons publica Mark II, también de puntos de función (Symons 1983) • 1984-1986 Trabajos de Allan Albrecht y Capers Jones en Backfiring (LOC to function points), SPQR/20 y SPR (feature points)
  • 4. La estimación de software: Algunos hechos • Las dos principales razones para que un proyecto esté fuera de control son la mala estimación y la inestabilidad de los requerimientos. [Cole 1995] [Van Genuchten 1991] • La mayoría de las estimaciones se realizan al principio del ciclo de vida. Tiene sentido hasta que nos damos cuenta que estimamos sin tener claros los requerimientos. La estimación se hace, por lo tanto, en el momento equivocado. [Pressman 1992]
  • 5. La estimación de software: Algunos hechos • La mayoría de las estimaciones de software son realizadas por la gerencia o por marketing/ventas, no por la gente que va a realizar o supervisar los trabajos. Por lo tanto, están hechas por la gente equivocada. [CASE 1991] • Las estimaciones rara vez se ajustan a medida que avanza el proyecto, por lo que las estimaciones que fueron hechas en el momento equivocado por la gente equivocada no se corrijen. • Dado que las estimaciones son tan defectuosas, hay pocas razones para preocuparse cuando los proyectos de software no alcanzan los objetivos previstos. Pero todo el mundo está preocupado de todos modos.
  • 6. La estimación de software: Algunos hechos • Hay una desconexión entre la dirección y sus programadores. En un estudio de investigación de un proyecto que no cumplió con sus estimaciones y fue visto por su gestión como un fracaso, los participantes técnicos lo veían como el proyecto más exitoso que habían trabajado jamás . [Linberg 1999] • La respuesta a un estudio de viabilidad es casi siempre SI.
  • 7. La estimación de software: Problemática • La mayoría de los trabajos en base a estimaciones software se realizan sobre análisis completados • En ocasiones tenemos que hacer valoraciones tempranas – Valoraciones para licitaciones públicas en las cuales se nos presentan datos mínimos – Valoraciones estratégicas • No tenemos suficientes datos para realizar valoraciones mediante los modelos estándar • ¿Influyen las metodologías empleadas?
  • 8. Estimación temprana: primeros pasos • Primer consejo: Como hemos visto antes, intentar no hacerla. Intentar negociar otro modelo si es posible. En proyectos internos, dejar claro el rango de error de la estimación estratégica. • Recabar la mayor cantidad de datos posible: – Hacer preguntas a los clientes, internos o externos. A los licitadores. Solicitar documentación. – Intentar que los técnicos aporten información (personas correctas)
  • 9. Estimación temprana: mantenimiento de aplicaciones • Un consejo en cuanto al código legado: – Existen dos formas de evolucionar el código de otro: • Code & Pray • Make Tests & Modify – El dato más importante para evaluar la complejidad de evolucionar un sistema legado NO es la documentación (que suele estar obsoleta) sino la cobertura de TESTS (suele ser un dato objetivo)-> Pidámosla • Unitarios (imprescindibles) • Integración
  • 11. Tras la EDT • Realizar una EDT tan precisa como nos sea posible, basada en el producto, no en las fases de desarrollo • Utilizar las técnicas de estimación que nos convengan en el desarrollo que hacemos (excels internas, tres puntos…). Realizarla de forma realista, descomponiendo el proyecto, no sus fases. • Corregir la estimación con factores de ajustes • Descomponer
  • 12. Técnicas de estimación • Juicio de expertos – Agile – Planning Poker – Ascendente, en la medida de lo posible • Estimación Análoga: LOC’s – Cuando tenemos un sistema con el que compararnos Tamaño en líneas de LOC por Esfuerzo de Esfuerzo de no Esfuerzo total código hora codificación Esfuerzo en Test % codificación % (horas) LOC netas por hora 100 15,15 6,60 40% 40% 11,88 8,42 1.000 13,26 75,41 50% 80% 173,45 5,77 10.000 11,36 880,28 75% 100% 2.420,77 4,13 100.000 9,09 11.001,10 100% 150% 38.503,85 2,60 1.000.000 7,58 131.926,12 125% 150% 494.722,96 2,02
  • 13. Técnicas de estimación – Tres valores. Según mi experiencia, le daría más peso al caso peor, especialmente en entornos de incertidumbre. – Mínima información: Estimación super-rápida de Puntos de Función • (Alcance + Clase + Tipo)2.35
  • 14. Técnicas de estimación Alcance Clase Tipo – Tres valores. Según mi experiencia, le daría más 1 Subrutina, método, clase 1 Software individual 1 No procedural 2 Módulo 2 Shareware 2 Web applet 3 Módulo reutilizable 3 Software académico 3 Batch peso al caso peor, especialmente en entornos de 4 Prototipo desechable 5 Prototipo evolucionable 4 Interno - Ubicación única 5 Interno - Multilocalización 4 Interactivo 5 GUI interactivo o basado en Web incertidumbre. 6 Programa independiente 7 Componente de sistema 6 Proyecto contratado - Civil 7 Time Sharing 6 Batch - DB 7 BD - Interactivo 8 Versión del sistema 8 Militar 8 Cliente / Servidor – Mínima información: Estimación super-rápida de 9 Nuevo sistema 10 Sistema Compuesto 9 Internet 10 SaaS 9 Matemático 10 Sistemas Puntos de Función 11 Bundle 12 Comercial a la venta 11 Comunicaciones 12 Control de proceso 13 Contrato de outsourcing 13 Sistema fiable 14 Contrato gubernamental 14 Embebido 15 Contrato militar 15 Procesamiento de imagen 16 Multimedia Programa independiente = 6 17 Robótica 18 Inteligencia Artificial Interno, ubicación única = 4 19 Red neuronal Cliente servidor = 6 20 Híbrido (6+4+6)2,35 = 891
  • 15. La “A” de Ajustes – Todos los ajustes han de ser tenidos en cuenta y corregidos especialmente teniendo en cuenta el cliente finalç – Líneas de código <-> PF • Java 50:1 • SmallTalk, Ruby 15:1 – Scope Creep: 2% mensual. Mínimo 15% – Documentación: FP1,15 – Número de casos de TEST: FP1,2
  • 16. Bibliografía • [Aaron 1970] Aaron, JD “Estimating Resources for large programming systems”, Software Engineering Techinques, NATO Conference Report, October 1969, April 1970 p.68-84 • [Brooks, 1975] Brooks, Fred The mythical man-month, Addison-Weley, Reading, Mass. 1975 rev. 1995 • [CASE, 1991] "CASE/CASM Industry Survey Report." HCS, Inc., P.O. Box 40770, Portland, OR. • [Cole 1995] Cole, Andy. 1995. "Runaway Projects—Causes and Effects." Software World (UK) 26, no. 3. • [Jones 1977] Jones, Capers. “Program Quality and Programmer Productivity. IBM Technical Report TR 02.766. San Jose, CA, Jan 1977 • [Linberg 1999] Linberg, K. R. 1999. "Software Developer Perceptions about Software Project Failure: A Case Study." Journal of Systems and Software 49, nos. 2/3, Dec. 30 • [Pressman 1992] Pressman, Roger S. 1992. "Software Project Management: Q and A." American Programmer, Dec. • [Van Genuchten 1991]Van Genuchten, Michiel. 1991. "Why Is Software Late?" IEEE Transactions on Software Engineering, June.