Investigación Profesional
Investigación Profesional
Investigación Profesional
SOFTWARE
INVESTIGACIÓN PROFESIONAL
Son una de las métricas de tamaño de software más utilizadas. La base de los puntos
función es la “función del sistema”; lo que realiza el sistema.
Los puntos función fuero desarrollados por Allan Albrecht a finales de los 70 mientras
trabajaban en IBM. Su idea era desarrollar un método que pudiera describir la funcionalidad
del software para no caer en medidas muy utilizadas en aquella época como las líneas de
código.
Uno de los principales beneficios que tienen los puntos función para los proyectos de
desarrollo de software es que sirven como medida de lo que el software puede hacer en
términos de tareas y servicios. Esto según ISO es la definición de los requisitos funcionales.
Al igual que los requisitos funcionales definen el que tiene que hacer un software los
requisitos no funcionales definen el cómo. Esta parte no se mide a través de los puntos
función, sino a través de la productividad de desarrollo de software asociada a un
equipo/tecnología de desarrollo y a través de medidas complementarias.
Al ser una medida sobre la funcionalidad ofrecida al usuario y no sobre cómo se ofrezca la
misma, la principal ventaja de los puntos función es que son independientes del equipo que
realice el desarrollo, independientes de la tecnología que se utilice e independientes del
paradigma de desarrollo que se emplee.
De acuerdo con el enfoque del punto de función, estos cinco parámetros capturan la
funcionalidad completa del sistema.
Sin embargo, dos elementos del mismo tipo pueden diferir en complejidad y, por lo tanto,
no deberían aportar la misma cantidad de "función" del sistema. Para dar cuenta de la
complejidad, cada parámetro en su tipo se clasifica como simple, promedio o complejo.
Cada tipo de entrada único (datos o control) que se proporciona externamente como
entrada a la aplicación se considera un tipo de entrada externa y se cuenta. Las fuentes de
entrada externas pueden ser archivos de usuario u otros archivos de aplicación.
Un tipo de entrada externa se considera simple si tiene algunos elementos de datos y afecta
solo a algunos campos internos de la aplicación.
Se considera complejo si tiene muchos elementos de datos y puede tener archivos lógicos
internos necesarios para procesarlos.
Si tiene muchos elementos de datos y necesita muchos archivos lógicos internos para
procesarlos, entonces la complejidad es promedio. Si está en el medio, la complejidad es
media.
De manera similar, cada salida única que sale del límite del sistema se cuenta como un tipo
de salida externa. Los informes o mensajes al usuario u otras aplicaciones se consideran
tipos de entrada externa.
Los criterios de complejidad son similares a los tipos de entrada externa. Un informe se
considera simple si contiene pocas columnas, promedio si tiene muchas columnas y
promedio si contiene estructuras de datos complejas y hace referencia a muchos archivos
o producciones complicadas.
Cada aplicación se mantiene internamente información para realizar su función. Cada grupo
de datos lógicos o control generado, utilizado y mantenido por una aplicación, cuenta como
un tipo de archivo interno lógico.
Un archivo interno lógico es simple si contiene varios tipos de registro, complejo si tiene
muchos tipos y promedio si está en algún punto intermedio.
Una vez que se conocen los recuentos de los cinco tipos diferentes para las tres clases de
complejidad diferentes, los puntos de función brutos o no ajustados se pueden calcular
como una suma ponderada de la siguiente manera:
Yo=5 j=3
UFP=? ? wyoCyo
Yo=1 j=1
Una vez obtenida una UFP, se ajusta según la complejidad del entorno.
(0) ausente
Luego se suman las 14 influencias del sistema para obtener el N total (N varía de 0 a 14*5
= 70). Esta N se utiliza para obtener el factor de ajuste de complejidad (CAF) de la siguiente
manera: CAF = 0,65 + 0,01N. Utilizando esta ecuación, el valor de CAF está entre 0,65 y
1,35.
Los puntos de función entregados (DFP) se calculan simplemente multiplicando UFP por
CAF. Eso es, puntos de función entregados = CAF * Puntos de función no ajustados.
La estimación con UCP requiere que todos los casos de uso se escriban con un objetivo y
aproximadamente al mismo nivel, dando la misma cantidad de detalles. Por lo tanto, antes
de la estimación, el equipo del proyecto debe asegurarse de haber escrito sus casos de uso
con objetivos definidos y en un nivel detallado. El caso de uso normalmente se completa en
una sola sesión y una vez que se alcanza el objetivo, el usuario puede continuar con alguna
otra actividad.
El método de estimación de puntos de casos de uso fue introducido por Gustav Karner en
1993. Posteriormente, el trabajo fue licenciado por Rational Software que se fusionó con
IBM.
Primero se calcula los puntos de casos de uso no ajustados mediante los siguientes pasos:
Si los casos de uso se escriben con niveles de objetivo de usuario, una transacción
equivale a un paso en el caso de uso. Encuentre el número de transacciones
contando los pasos en el caso de uso.
Clasifique cada caso de uso como simple, promedio o complejo en función del
número de transacciones en el caso de uso. Además, asigne el peso del caso de
uso como se muestra en la siguiente tabla:
Repita para cada caso de uso y obtenga todos los pesos de casos de uso. El peso
de caso de uso no ajustado (UUCW) es la suma de todos los pesos de caso de uso.
Un actor en un caso de uso puede ser una persona, otro programa, etc. Algunos
actores, como un sistema con API definida, tienen necesidades muy simples y
aumentan la complejidad de un caso de uso solo ligeramente.
Otros actores, como un usuario que interactúa a través de la GUI, tienen un impacto
significativo en la complejidad de un caso de uso. Con base en estas diferencias,
puede clasificar a los actores como simples, promedio y complejos.
Dónde,
Los siguientes pasos son ajustar los puntos de casos de uso no ajustados (UUCP)
para la complejidad técnica y la complejidad ambiental.
Calcule el impacto del factor a partir del peso de impacto del factor y el valor nominal
del proyecto como
Calcular la suma del Impacto de todos los Factores. Esto da el factor técnico total
(TFactor) como se indica en la tabla a continuación:
Calcule el factor de complejidad técnica (TCF) como -
Considere los 8 Factores Ambientales que podrían afectar la ejecución del proyecto
y sus correspondientes Pesos como se indica en la siguiente tabla:
Para cada uno de los 8 Factores, evalúe el proyecto y califique de 0 (irrelevante) a
5 (muy importante).
Calcule el impacto del factor a partir del peso de impacto del factor y el valor nominal
del proyecto como
Calcular la suma del Impacto de todos los Factores. Esto da el factor ambiental total
(EFactor) como se indica en la siguiente tabla:
Ventajas:
Los UCP se basan en casos de uso y se pueden medir muy temprano en el ciclo de
vida del proyecto.
Los casos de uso se utilizan ampliamente como método de elección para describir
requisitos. En tales casos, UCP es la técnica de estimación más adecuada.
Desventajas:
UCP se puede usar solo cuando los requisitos están escritos en forma de casos de
uso.
Los factores técnicos y ambientales tienen un alto impacto en las UCP. Se debe
tener cuidado al asignar valores a los factores técnicos y ambientales.
UCP es útil para la estimación inicial del tamaño general del proyecto, pero es
mucho menos útil para impulsar el trabajo de iteración a iteración de un equipo.
(Velázquez, 2020)
EJEMPLO:
Método hibrido
Proyecto: Se busca tener una herramienta capaz de estimar el esfuerzo, la duración y el
costo de proyectos de software creados por los estudiantes. Además de que también se
busca crear un software que brinde la comparación y unión de dos diferentes métodos de
estimación para que el estudiante conozca cual es la mejor opción a la hora de limitar y
escatimar tiempo y esfuerzo
El método hibrido de estimación de software surgió tras la idea de asociar dos importantes
técnicas conocidas a nivel mundial como lo son el análisis de Puntos de Función (PF) y
Puntos de Casos de Uso (UCP).
Los puntos de Casos de Uso (UCP) y los Puntos de Función tienen la misma estructura, lo
cual es una gran ventaja a la hora de crear el método hibrido. Esta estructura se divide en
tres fases:
Valores Ajustados
Calculo del valor en horas por cada Punto ajustado del hibrido.
Análisis Comparativo entre los métodos FP y UCP:
La primera etapa para la construcción del método hibrido fue crear un cuadro comparativo
de ambas técnicas de estimación en donde se puedan observar las fortalezas, debilidades
y se puede ver detalladamente la estructura de cada una.
Construcción de la fase Hibrido Sin ajustar
La fase “Hibrido Sin ajustar” es la mezcla de “Puntos de Función sin ajustar” y “Casos de
Uso Sin ajustar” ya que se tiene en cuenta las funcionalidades evaluadas por el método
UCP como lo son los actores y los casos de uso, pero los parámetros de calificaciones y
ponderación de la complejidad son de PF. Para ser más precisos, la evaluación de los
actores no varía con respecto a UCP.
La idea fundamental del método hibrido desarrollado es tener en cuenta todos estos
factores y la evaluación que el usuario ha dado en la estimación por PF y UCP, es por eso
que en esta técnica hibrida se ha desarrollado un término denominado “Porcentaje de
Variación ponderado (% ponderado)” que se calcula entre los resultados sin ajustar y
ajustados de cada uno de los resultados de las estimaciones realizadas por cada método.
Se hicieron pruebas con seis proyectos de diferente índole desarrollados para el cálculo del
porcentaje de variación ponderado (% ponderado) para ser aplicado en el método hibrido.
El valor estándar en horas de cada Puntos de Función ajustado está establecido en 8 horas
por cada uno de ellos, y en Puntos de Casos de Uso su valor esta dado en 20 horas. Para
calcular la cantidad de horas de cada punto ajustado del hibrido se creó un promedio
ponderado en donde se tenga en cuenta los resultados de las estimaciones del proyecto
evaluado.
Para ver el resultado de cuantas horas por Puntos ajustado del hibrido de los proyectos
prueba.