View
1.576
Download
0
Category
Preview:
Citation preview
Rol de mediciones formales en proyectos de tecnología
Alejandra Lemos
alemos@genexusconsulting.com
Irene Pazos
ipazos@ieee.org
Rol de mediciones formalesen proyectos de tecnología
RESUMEN • La especialización en servicios tecnológicos es una
realidad que introduce hoy actores tercerizados, ejecutando actividades de ingeniería en los proyectos de software. Contar con elementos formales y objetivos de control y monitoreo del proyecto, es una necesidad -de negocio- ineludible.
Agenda
• Dónde estamos
• Caso: Fábrica de Software Genexus
• Conclusiones
Agenda
• Dónde estamos
• Caso: Fábrica de Software Genexus
• Conclusiones
Dónde estamos
• Sofware Product Line
• Métricas
Software Product Line
XVIII : Revolución
CARACTERIZACIÓN
• Economía industrial desplaza economía de trabajo manual.
• Mecanización de industrias textiles y desarrollo de procesos del hierro.
• Expansión de comercio favorecida por mejora de las rutas de transportes (el ferrocarril).
• Innovación tecnológica (máquina de vapor), genera enormes incrementos de producción.
Automatización
soportados con tecnología
(information higway)
(todas)
industrial !?
artesanal
érase una vez … (los “tiempos modernos”)
cuando en los garages de sillicon valley ya no cabían coches
Software Product Line
Organización científica del trabajo
• Frederick Taylor pretende eliminar por completo los movimientos innecesarios de los obreros para maximizar el potencial productivo de la industria.Cronometró tiempo de cada tarea, con el objetivo de eliminar los movimientos inútiles.
érase una vez … (los “tiempos modernos”)
Software Product Line
baby boomers: managers are born
• El sistema de Taylor bajó costos de producción (incluso se pagaba menos dinero por pieza para que los obreros se diesen más prisa)
• Para que esto funcionara era imprescindible supervisar a los trabajadores, y así surgió un grupo especial de empleados, encargado de supervisión, organización y dirección.
érase una vez … (los “tiempos modernos”)
Software Product Line
1er. Línea de Montaje1913 - volante del Ford T • aumento productividad 55%
(1 pieza =20min 1 pieza = 9min)
CONSECUENCIA …
• a fines de 1923 había dos automóviles por cada tres familias -en una ciudad norteamericana típica-.
érase una vez … (los “tiempos modernos”)
muestra de 123 familias: 49% tenía coche, 21% tenía coche viviendo en casa maltrecha, 17% tenía coche y casa maltrecha sin bañera.
Software Product Line
Information TechnologySoftware factory
especializacióntercerizaciónautomatización - generadores de código - robots de pruebas
*
tecnología como vehículo de negocio,
disparador de cambios económicos & sociales
valga la (gruesa) expresión !
los “tiempos modernos” post-Chaplin …
PROYECTOS
roles, procesos, biblioteca de activos …
Software Product Linetiempos modernos actuales: otra dimensión ortogonal
Software Product Linetiempos modernos actuales: otra dimensión ortogonal
ciclo de vida de proyectos …
*
consultora
A
consultora
B
consultora
Cconsultora
D
ortonormal
Software Product Line
conceptos
“A software product line (SPL) is a set of software-intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way.”
• A product line succeeds because the commonalities shared by the software products can be exploited to achieve economies of production. The products are built from common assets in a prescribed way.
• Product lines are, of course, nothing new in manufacturing
http://www.sei.cmu.edu/productlines
ISO 9000:2000 7.4CMMI-DEV: SAMCMMI-ACQ
Software Product Line
• desarrollar vs comprar
adquirir sistemas como un producto desarrollado por una línea de producción, representa una mejora económica en tiempo de entrega, capacitación y costo.
• comprar: riesgos
El enfoque de adquirir constituye una nueva estrategia, con nuevos problemas y riesgos institucionales y de gestión, nada obvios.
Software Product Line
• definición de objetivos en proyecto, y qué mediciones ayudarán a controlarlos
• identificación de criterios de éxito con indicadores por objetivo
• definición de métricas apropiadas
• desarrollar un plan para instrumentar y verificar métricas.
FIJAR ALCANCE
DESVIO< 15 %
PUNTOSFUNCIONALES
ESTÁNDAR (IFPUG)ISO/IEC 20926:2003
*
medición & seguimientoFramework Version 5.0 – practice area: technical management - Measurement and Tracking
Métricas
• VALIDEZ (validity)
se está midiendo lo que se pretende medir?
• FIDELIDAD (reliability)
el proceso de medición genera resultados consistentes y estables?
criterios de evaluación de métricas
Métricas
F -> VALTABAJA
datos inconsistentes y fuera de targetBAJABAJA
eureka !ALTAALTA
Consistencia en obtener datos malos o fuera de alcance
BAJAALTA
CASOVALIDEZFIDELIDAD
tamaño en# obj (tecnología)
caso: balanza de feria …
*
medición: validez & fiabilidad
Métricas
• criterio: tome seriamente la validez & fiabilidad
• métricas básicas: no ignore el poder de las métricas simples
• líneas de código: haga buen uso de los datos LOC, con todas las garantías y recaudos posibles
• normalizar o no hacerlo?: no “normalice” cualquier cosa contra cualquier otra
riesgo de generar información “creíble”
control, calibración(son casi-gratis)
LOC en JAVA cvt a PF
Mantenimientode 1 sistema
*
IBM-SEPG do's and don'ts
Métricas
Líneas de código (LOC)• puede introducir incertidumbre de orden de magnitud
(incluir: código ejecutable –líneas físicas/delimitadas?-, declaraciones?, comentarios? ...)
Caper Jones: afirma que usar LOC en estudios de productividad involucrando múltiples lenguajes, y actividades cubriendo todo el ciclo de vida, debe ser visto como mala práctica profesional.
Puntos Funcionales (FP)• Confiable, buena aceptación en contratos de software• Comité de estandarización internacional• Requiere capacitación y recursos para conteo y seguimiento
*
normalización
Agenda
• Dónde estamos
• Caso: Fábrica de Software Genexus
• Conclusiones
Fábrica de Sofware Genexus
• Entorno y especificaciones
• Estimación inicial
• Metodología y criterios
• Resultado
Entorno
Estimación Inicial
6000PF
140 meses/hombre
DIRECTOR
GERENTE
EXPERTO EN TECNOLOGÍA
ANALISTA SENIOR
ANALISTA JUNIOR
Estándar IFPUG
Equipo de Fábrica
Entorno InteracciónFábrica – Equipo Funcional
Especificaciones
•Procesos
•Casos de Uso
Especificaciones
Modelo de datos lógico
Casos de prueba
Metodología y Criterios
• Fijar alcance
• Modelos de medición
• Fijar factores de ajuste (VAF)
Puntos de función sin ajustar (UFPC)
Metodología y Criterios
• Fijar alcance– La regla para fijar los limites consiste en tomar
perspectiva de lo que el usuario percibe como funcionalidad
• Modelos de medición– Conteo de Caja Negra
– Conteo de Caja Blanca (Piloto de validación)
Conteo de Caja Negra
• Conteo bottom-up de objetos GX
• Necesidad de Filtros– Reusabilidad
– Uso de patterns
– Tecnología web
• Mapeos – Reporte – EO/EQ
– Transacción - EI
Nucleo,"<WebPanel>","ABMContenido","2007-08-03 18:57:22","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMContenidoBckp","2007-08-03 18:57:46","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMPalabrasClave","2006-09-04 18:32:46","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMTemplate","2006-12-11 18:38:40","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMTipoContenido","2007-06-04 12:52:26","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<Procedure>","afterconnecthandler","2007-05-25 16:14:06","/Nucleo/EstructurasBasicas",""Nucleo,"<Procedure>","AltaDefinicionFormulario","2007-05-03 19:17:36","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","ArmarDocumento","2007-07-10 21:23:04","/Nucleo/InstanciadorDocumentos",""Nucleo,"<WebPanel>","AsociarDocumento","2007-08-03 19:01:32","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","BajarOrdenCampo","2007-06-22 13:06:46","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","BajarOrdenElemento","2007-05-29 13:06:28","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","BajarOrdenFila","2007-04-12 19:11:42","/Nucleo/FormulariosDinamicos/Dominio",""Nucleo,"<Procedure>","BorrarDocumentosAsociados","2007-06-13 19:36:14","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<WebPanel>","BorrarDocumentosAsociados","2007-05-09 17:36:44","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","BuscarDocumentosNConTexto","2007-08-07 13:35:30","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","BuscarInstanciasFormulario","2007-05-04 12:53:04","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","BuscarStringWriter","2007-08-07 13:40:32","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","CAApiApp","2006-08-21 17:58:18","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiAtc","2004-03-23 16:23:18","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCfe","2004-02-04 19:37:50","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCon","2007-06-08 18:37:46","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConKw","2004-02-21 17:37:34","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConKwDlt","2004-02-21 14:33:52","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConMd","2004-02-04 19:38:02","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConMdV","2004-02-04 19:38:08","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConUpdCtyp","2005-03-11 22:03:04","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCtyp","2007-03-12 18:35:08","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCtypMd","2004-02-06 20:21:52","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiEst","2005-02-24 18:31:34","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiFex","2004-02-06 14:00:40","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiMt","2006-07-13 13:10:12","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiTpl","2004-02-09 14:27:12","/Workflow/CAContentAdministration/CAAPIs",""
Conteo de Caja Blanca • Opción de menú
• Pantalla
• Objeto
• Tablas
• Atributos
Trazabilidad
Nucleo,"<WebPanel>","ABMContenido","2007-08-03 18:57:22","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMContenidoBckp","2007-08-03 18:57:46","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMPalabrasClave","2006-09-04 18:32:46","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMTemplate","2006-12-11 18:38:40","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<WebPanel>","ABMTipoContenido","2007-06-04 12:52:26","/Workflow/CAContentAdministration/CAClient/ExpedientesProyectos",""Nucleo,"<Procedure>","afterconnecthandler","2007-05-25 16:14:06","/Nucleo/EstructurasBasicas",""Nucleo,"<Procedure>","AltaDefinicionFormulario","2007-05-03 19:17:36","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","ArmarDocumento","2007-07-10 21:23:04","/Nucleo/InstanciadorDocumentos",""Nucleo,"<WebPanel>","AsociarDocumento","2007-08-03 19:01:32","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","BajarOrdenCampo","2007-06-22 13:06:46","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","BajarOrdenElemento","2007-05-29 13:06:28","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","BajarOrdenFila","2007-04-12 19:11:42","/Nucleo/FormulariosDinamicos/Dominio",""Nucleo,"<Procedure>","BorrarDocumentosAsociados","2007-06-13 19:36:14","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<WebPanel>","BorrarDocumentosAsociados","2007-05-09 17:36:44","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","BuscarDocumentosNConTexto","2007-08-07 13:35:30","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","BuscarInstanciasFormulario","2007-05-04 12:53:04","/Nucleo/FormulariosDinamicos/DefinicionFormularios",""Nucleo,"<Procedure>","BuscarStringWriter","2007-08-07 13:40:32","/Nucleo/ConfiguradorDocumentos",""Nucleo,"<Procedure>","CAApiApp","2006-08-21 17:58:18","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiAtc","2004-03-23 16:23:18","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCfe","2004-02-04 19:37:50","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCon","2007-06-08 18:37:46","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConKw","2004-02-21 17:37:34","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConKwDlt","2004-02-21 14:33:52","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConMd","2004-02-04 19:38:02","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConMdV","2004-02-04 19:38:08","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiConUpdCtyp","2005-03-11 22:03:04","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCtyp","2007-03-12 18:35:08","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiCtypMd","2004-02-06 20:21:52","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiEst","2005-02-24 18:31:34","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiFex","2004-02-06 14:00:40","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiMt","2006-07-13 13:10:12","/Workflow/CAContentAdministration/CAAPIs",""Nucleo,"<Procedure>","CAApiTpl","2004-02-09 14:27:12","/Workflow/CAContentAdministration/CAAPIs",""
keywords
539 total SONDA [2007-10] primer Informe v2.xls 972 17 total
Id Tipo Nombre Descripcion Realiza cálculos ?ObservacionesTablas Utilización de tablas en objetosTIPO tbl pega
ID a
tabl
ael
im. I
D t
ag s
in
cant
. atr
ibut
os
tabl
a
cuen
ta ta
blas
po
r ID
ATR
IBU
TOS
FUN
CIO
N -
MAN
UAL
tipo
agre
gar
alta
asoc
iar
crea
r
elim
ina
mod
ifica
r
copi
ar
tipoE
I
abrir
sele
c
quer
y
dato
s
utili
zar
repo
rte
tipoE
O
trab
ajar
tipoE
Q 17 control
IR150 Web Panel HAccionAccionParametroWCTrabajar con parámetros de la acción EQ IR150-- 1 8 L EQL ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 1 EQ ##AccionAccionParametro TB TABLA IR150IR1508 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR149 Web Panel HAccionGeneral Abrir acción EO IR149-- 1 8 L EOL ## ## ## ## ## ## ## ## 1 EO ## ## ## ## ## ## ## ##AccionAccionParametro TB TABLA IR149IR1498 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR7 Web Panel HAdministrarDocsNormalizadosHitosComponentesTrabajar con documentos normalizados de hitos y componentes EQ IR7-- 4 34 H EQH ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 1 EQ ##TB IR7-- ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##FK IR7-- ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##S IR7-- ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
Ambito FK TABLA IR7IR7 4 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##DocumentoNormalizado S TABLA IR7IR7 5 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Componente S TABLA IR7IR7 10 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Hito TABLA IR7IR7 15 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR138 Web Panel HAmbitoAmbitoServicioWCTrabajar con servicios asociados a ámbito EQ IR138-- 3 11 L EQL ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 1 EQ ##AmbitoServicio TB TABLA IR138IR1384 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Servicio FK TABLA IR138IR1385 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##TipoOperador FK TABLA IR138IR1382 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR137 Web Panel HAmbitoGeneral Abrir ámbito EO IR137-- 2 6 L EOL ## ## ## ## ## ## ## ## 1 EO ## ## ## ## ## ## ## ##Ambito TB TABLA IR137IR1374 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##TipoAmbito FK TABLA IR137IR1372 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR143 Web Panel HAmbitoServicioAmbitoServicioParametroWCTrabajar con Servicios asoc. al ámbito-Asoc. Parámetros EQ IR143-- 2 13 L EQL ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 1 EQ ##AmbitoServicioParanetro TB TABLA IR143IR1438 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##ServicioParametro FK TABLA IR143IR1435 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR142 Web Panel HAmbitoServicioGeneral Abrir asociación ámbito servicio EO IR142-- 4 13 H EOH ## ## ## ## ## ## ## ## 1 EO ## ## ## ## ## ## ## ##Ambito FK TABLA IR142IR1424 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Servicio FK TABLA IR142IR1425 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##TipoOperador FK TABLA IR142IR1422 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Clasificacion FK TABLA IR142IR1422 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR122 Web Panel HClasificacionSubclasificacionGeneralAbrir clasificación y subclasificación EO IR122-- 3 9 L EOL ## ## ## ## ## ## ## ## 1 EO ## ## ## ## ## ## ## ##ClasificacionSubclasificacion TB TABLA IR122IR1224 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Clasificacion FK TABLA IR122IR1222 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##ClasificacionDocumentoNormalizado FK TABLA IR122IR1223 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR75 Web Panel HComboComponentes Trabajar con combos de componentes de hito ámbito EQ IR75-- 5 36 H EQH ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 1 EQ ##Hito S TABLA IR75IR7515 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Ambito S TABLA IR75IR75 4 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##ComboComponentes FK TABLA IR75IR75 4 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##DefinicionHitoAmbitoComponente TB TABLA IR75IR75 3 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Componente FK TABLA IR75IR7510 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR82 Web Panel HComponenteComponenteConsecuenciaWCTrabajar con consecuencias asociadas a componente EQ IR82-- 2 13 L EQL ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 1 EQ ##ComponenteConsecuencia TB TABLA IR82IR8210 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Consecuencia FK TABLA IR82IR82 3 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
IR87 Web Panel HComponenteComponenteGiroWCTrabajar con giros asociados a componente EQ IR87-- 5 29 H EQH ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 1 EQ ##ComponenteGiro TB TABLA IR87IR8710 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##Componente FK TABLA IR87IR8710 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##DocumentoNormalizado FK TABLA IR87IR87 5 ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
EI EQEO
SIM
PLE
ME
DIO
CO
MP
LE
JO
UFP escenario REQ clas
ifica
cion
plie
go
plig
o: fa
ltant
es
3 4 6 EQ 1 TOTAL 285 299 278 -8% 2,6 promedio4 5 7 EO 2 REQ c/UC 209 1,2 min3 4 6 EI 3 pend REQ s/UC 76 4,1 max7 10 15 ILF 1 REQ s/UC 27% 337% dispersión
5 7 10 EIF 0 UC reuso 4% 1,2 Tomas
SIMPLE 27 UC listados pend reuso 3,2 Nanciela
MEDIO 36 UC x REQ min 365 257 94 -14 4,1 Leti
COMPLEJO 53 UC x REQ media 765 551 200 -30 1,8 MaElena
UC x REQ max 1.196 867 315 -48 2,9 Nathalia
escenario UC 96% 2% 2% 1,7 Rodolfo
PATTERN GNX UC en escenario: UFP SIMPLE MEDIO COMPLEJO 3,5 Evelyn
EQ Trabajar UC min 10.110 9.460 263 387
EI Crear UC medio 21.193 19.831 551 811
EI Modificar UC max 33.133 31.004 861 1.268
EI Borrar
EO VisualizarEO Reporte
PF 1734 RFF012 - Infraestructura Jurídica
UC x REQ prom
total 1.832103 721
204 286 286 1111ID VENTANA I O FTR DET TIPO ufpc complejidad
1 TRABAJAR CON HITOS 5 7 3 12 EQ 4 medio
2 Reporte hitos 2 1 2 EO 4 simple
3 Nuevo hito 9 1 4 10 EI 6 complejo
4 Seleccionar clasificación y subclasificación 2 2 3 4 EO 4 simple
5 Agregar subclasificación de una clasificación 3 4 3 EI 4 medio
modificar 3 0 4 3 EI 4 medio
eliminar 3 0 4 3 EI 4 medio
6 Seleccionar documento normalizado 3 4 3 7 EO 5 medio
7 Trabajar con documentos normalizados de hito y componentes 8 1 8 EQ 3 simple
8 Abrir hito (general) 10 1 10 EO 4 simple
9 Abrir hito (Restricciones internas) 8 1 8 EO 4 simple
10 Agregar restricciones internas asociadas al hito 5 2 6 7 EI 6 complejo
modificar 5 2 6 7 EI 6 complejo
eliminar 5 2 6 7 EI 6 complejo
datostransacciones
Piloto
Agenda
• Dónde estamos
• Caso: Fábrica de Software Genexus
• Conclusiones
Conclusiones
• Obtuvimos la aprobación del cliente
• Medimos la productividad de nuestro equipo – 80PF m/h
• Herramienta automática de medida
Puntos de función
01020
3040
5060
708090
Esperada Obtenida
Puntos de función
conclusiones
• costó 171hs. (22 días) medir piloto: 1.734 FP (1.845 UFPC)2 x módulo: 3.417 FP (3.254 UFPC)(hs. incluyen total de esfuerzo en proceso de medición, no sólo conteo estricto)
• resultado de medición resultó elemento clave en determinar diferencia de orden presupuestado para alcance original.o sea: costo de 171hs. vs. costo de …??
*
en números
conclusiones
una necesidad de negocio
*
métricas hoy
referencias
• Software Product Lines Essentials - Linda Northrop. Software Engineering Institute - Carnegie Mellon UniversitySPL-essentials_7_08.pdf
• Basics in Software Measurement and Analysis -Some Do's and Don'tsSEPG 2006 March 3 -6, Nashville, TennesseeSteve Kan IBM Rochester, MN
• http://www.columbia.edu/ccnmtl/projects/qmss/meas_valrel.htmlKish, Leslie. 1987. Statistical Design for Research. New York: John Wiley and Sons.
• 3-Tiered Software Product Line Methodology - Report #200709261. September 26, 2007. www.biglever.com
• SOFTWARE_QUALITY_IN_2002_CAPERS_JONES.pdfCritical Problems in Software Measurement (April 1993)Caper Jones
• http://es.wikipedia.org
*
muchas gracias
preguntas?
Irene Pazos
ipazos@ieee.org
Alejandra Lemos
Alemos@genexusConsulting.com
Recommended