Estimación de Proyectos - Modelos de Estimación

3 - Modelos de Estimación

[editar]
Artículo creado por Lian Lisette Hurtado.
16 de Febrero de 2006
Líneas de código

La métrica de tamaño tradicional para estimar el esfuerzo de desarrollo y productividad ha sido LOC (Lines Of Code) o SLOC (Source Lines Of Code). Se han propuesto varios modelos de estimación, la mayoría de ellos son funciones de las líneas de código o de las miles de líneas de código que tendrá el software a desarrollar. Generalmente, el modelo de estimación de esfuerzo consiste de dos partes. La primera provee una base de estimación como una función del tamaño del software, y es de la siguiente forma:

donde E es el esfuerzo estimado en meses hombre, A, B y C son constantes y KLOC es el tamaño estimado del sistema final en miles de líneas de código. La segunda parte del modelo modifica esta estimación en base a cuantificar la influencia de factores de ambiente, por ejemplo la utilización de diferentes metodologías, habilidad del equipo de desarrollo y restricciones de hardware.

La definición de KLOC es importante si se quiere comparar los distintos modelos que se han propuesto en la literatura. Algunos de ellos incluyen líneas de comentarios, y otros no. Del mismo modo, la definición del esfuerzo estimado E es también importante., ya que E puede representar sólo el esfuerzo de codificación, o en el otro extremo, el esfuerzo total del análisis, diseño, codificación, test y mantención. Por estas razones, comparar estos modelos se torna complejo.

Los principales problemas de utilizar líneas de código como métrica para estimación del esfuerzo son la falta de una definición universal de línea de código, su dependencia con el lenguaje de desarrollo y la dificultad de estimar en fases tempranas del desarrollo la cantidad de líneas que tendrá una aplicación.

Puntos de función

El análisis por puntos de función es un método para cuantificar el tamaño y la complejidad de un sistema software en términos de las funciones de usuario que este desarrolla (o desarrollará). Esto hace que la medida sea independiente del lenguaje o herramienta utilizada en el desarrollo del proyecto [1].

El análisis por puntos de función está diseñado para medir aplicaciones de negocios; no es apropiado para otro tipo de aplicaciones como aplicaciones técnicas o científicas. Esas aplicaciones generalmente median con algoritmos complejos que el método de puntos de función no está diseñado para manejar[5].

El enfoque de puntos de función tiene características que permiten superar los principales problemas de utilizar líneas de código como métrica del tamaño del software. Primero, los puntos de función son independientes del lenguaje, herramientas o metodologías utilizadas en la implementación; por ejemplo, no tienen que considerar lenguajes de programación, sistemas de administración de bases de datos, hardware, o cualquier otra tecnología de procesamiento de datos[4]. Segundo, los puntos de función pueden ser estimados a partir de la especificación de requisitos o especificaciones de diseño, haciendo posible de este modo la estimación del esfuerzo de desarrollo en etapas tempranas del mismo. Como los puntos de función están íntimamente relacionados con la declaración de requisitos, cualquier modificación a ésta, puede ser reflejada sin mayor dificultad en una re estimación.

Tercero, como los puntos de función están basados en una visión externa del usuario del sistema, los usuarios no técnicos del software poseen un mejor entendimiento de lo que los puntos de función están midiendo. El método resuelve muchas de las inconsistencias que aparecen cuando se utiliza líneas de código como métrica del tamaño del software.

En resumen, los puntos de función aparecen con ventajas substanciales por sobre las líneas de código, para fines de estimación temprana del tamaño del software, y por ende, del esfuerzo de desarrollo. Además es una medida ampliamente utilizada, y con éxito, en muchas organizaciones que desarrollan software en forma masiva.

Puntos de Característica.

Debido a que el análisis por Puntos de Función fue diseñado para software de negocios y no es fácil de generalizar a aplicaciones científicas, de tiempo real y otras, Caper Jones [18] propuso ampliaciones a este método, generando una métrica que denominó Puntos de Característica. Ésta da cabida a aplicaciones cuya complejidad algorítmica es alta.

Este método considera los mismos elementos que considera Albrecht [1] en su análisis por puntos de función, sólo que añade la variable "número de algoritmos" y elimina los niveles de complejidad, así, cada cuenta es pesada por un valor único para ese componente (es decir, se le asigna complejidad media).
[editar]

5 opiniones

Estimacion de proyectos.

El contenido de este documento es muy bueno. Me gustaria conocer más sobre el tema, si dispones de más material por favor vuelcalo en el curso.
Interesante.

Sirve de iniciación en el tema. La estimación de proyectos de software es un área muy compleja. Se han desarrollado muchos métodos de estimación de proyectos de software, por cuanto el desarrollo de software es una actividad que se describe por muchos aspectos. Son muy diversos los métodos, procedimientos, y técnicas aplicados para desarrollar el software, elemento este que además, posee caracteristicas únicas y que tiene una tipología muy basta.
Bueno.

Falta complementar mas informacion, solo hay un abre bocas pero a pesar de eso la informacion que se entrega es buena para enfocarse en le tema



gracias.
Genial.

Un gran recurso para estudiantes de informática.
Muy buen contenido.

El contenido de este documento es muy bueno. Me gustaria conocer más sobre el tema, si dispones de más material por favor vuelcalo en el curso.

Artículos relacionados con 'Estimación de Proyectos'

Es un artículo que describe las métricas y requerimientos que se necesitan para confeccionar un... Más »
Tarat acerca de como estimar proyectos de softwares, Brinda además métodos y métricas de estas... Más »
Es un artículo que trata acerca de la estimacion correcta y precisa de Proyectos de... Más »
Es un articulo que describe la importancia y sobre todo como desarrollar una buena planificacion... Más »
Para la mejor comprensión de los recursos humanos en el ámbito laboral, es importante conocer... Más »