Upload
software-guru
View
120
Download
0
Tags:
Embed Size (px)
Citation preview
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)
¿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ándarinternacional!
Q
Eff/$$
Método COSMIC (ISO 19761)• Common Software MeasurementInternational 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 CountAproximació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ódulos86 CU
Proceso Funcional / Casos de Uso
Tamaño del Proceso
Funcional (0
Nivel de Presencia de Objetos
Alta de Establecimiento 3.3 3.5Baja 2.1 3.3Actualizacion 2.3 2.3Consulta 2.1 2.1Alta 3.8 2.3Baja 3.3 2.0Actualizacion 3.4 1.3Consulta 3.1 1.1Consulta 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.58Baja 2.1 3.3 12.02Actualizacion 2.3 2.3 8.16Consulta 2.1 2.1 7.01Alta 3.8 2.3 9.32Baja 3.3 2.0 8.41Actualizacion 3.4 1.3 6.78Consulta 3.1 1.1 6.56Consulta 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 Unidad1 126.35 68.26% 575.60 828.30 CFP2 252.70 95.46% 449.25 954.65 CFP3 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ódulos86 CU
Proceso Funcional / Casos de Uso
Tamaño del Proceso
Funcional (0
Nivel de Presencia de Objetos
Alta de Establecimiento 3.3 3.5Baja 2.1 3.3Actualizacion 2.3 2.3Consulta 2.1 2.1Alta 3.8 2.3Baja 3.3 2.0Actualizacion 3.4 1.3Consulta 3.1 1.1Consulta 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.58Baja 2.1 3.3 12.02Actualizacion 2.3 2.3 8.16Consulta 2.1 2.1 7.01Alta 3.8 2.3 9.32Baja 3.3 2.0 8.41Actualizacion 3.4 1.3 6.78Consulta 3.1 1.1 6.56Consulta 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 Unidad1 785.33 68.26% 2,142.65 3,713.30 HH2 1570.65 95.46% 1,357.32 4,498.63 HH3 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ódulos86 CU
4. Distribución Esfuerzo/Costo
MIS Outsourcing MIS Effort Outsourcing Effort MIS Effort Outsourcing Effort1 7.5% 9.0% 219.60 263.52 396.30 475.562 2.0% 2.5% 58.56 73.20 105.68 132.103 0.5% 1.0% 14.64 29.28 26.42 52.844 1.0% 1.5% 29.28 43.92 52.84 79.265 8.0% 7.0% 234.24 204.96 422.72 369.886 7.0% 8.0% 204.96 234.24 369.88 422.727 0.0% 0.5% 0.00 14.64 0.00 26.428 20.0% 16.0% 585.60 468.48 1,056.79 845.439 0.0% 2.0% 0.00 58.56 0.00 105.6810 1.0% 1.0% 29.28 29.28 52.84 52.8411 0.0% 0.0% 0.00 0.00 0.00 0.00
12 0.0% 0.0% 0.00 0.00 0.00 0.0013 3.0% 3.0% 87.84 87.84 158.52 158.5214 2.0% 2.0% 58.56 58.56 105.68 105.6815 7.0% 9.0% 204.96 263.52 369.88 475.5616 4.0% 3.5% 117.12 102.48 211.36 184.9417 6.0% 5.0% 175.68 146.40 317.04 264.2018 5.0% 5.0% 146.40 146.40 264.20 264.2019 7.0% 5.0% 204.96 146.40 369.88 264.2020 0.0% 0.0% 0.00 0.00 0.00 0.0021 5.0% 3.0% 146.40 87.84 264.20 158.5222 0.0% 0.0% 0.00 0.00 0.00 0.0023 0.0% 1.0% 0.00 29.28 0.00 52.8424 2.0% 3.0% 58.56 87.84 105.68 158.5225 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/trainingProject Management
Aproximado Max
Integration TestingSystem TestingField Testing
Acceptance TestingIndependent TestingQuality Assurance
Independent Verification and
ValidationConfiguration Management
Formal IntegrationUser Documentation
Unit TestingFunctional Testing
Detail DesignDesign Review
CodingReuse AcquisitionPackage PurchaseCode Inspections
Initial Design
ActividadesRequirementsPrototypingArchitectureProject Plans
Caso Práctico…
1.Requerimientos (CU) 2. Analistas de Negocio 3. www.mepe.com.mx 4. Estimación Esfuerzo/Costo
10 Módulos86 CU
4. Distribución Esfuerzo/Costo5. Documentar
Propuesta
Obtención Requerimientos Estimación $/EFF Validación
Ejecución Proyecto
Enfoque Actual
Enfoque 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: conllevacualquier número de PRÁCTICAS que lepermiten a la empresa utilizar de mejormanera 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.
¿Preguntas?Dr. Francisco Valdés [email protected]@spingere.com.mx
@mxspingere, www.spingere.com.mx/blog,@ammsmx
Dimensionamiento y Estimación Profesional de Software!