190 likes | 358 Views
Puntos de función. Integrantes de X Soft: - Carlos Retana - Javier Ramírez - Sing Ng - Pedro Ortiz - Roberto Quesada. ¿Qué es estimación de tiempo?.
E N D
Puntos de función Integrantes de X Soft: - Carlos Retana - Javier Ramírez - Sing Ng - Pedro Ortiz - Roberto Quesada
¿Qué es estimación de tiempo? • Se refiere a la medida del grado que posee un atributo dado de un producto, sistema o componente. Necesariamente se habla de la planeación para desarrollar el proyecto. Esto para tener una idea del producto final. • Se han desarrollado varias técnicas de estimación para el desarrollo de software, aunque cada una tiene sus puntos fuertes y sus puntos débiles; todas tienen en común los siguientes 3 atributos: • Se han de establecer de antemano el ámbito del proyecto. • Como bases para la realización de estimaciones se usan métricas del software de proyectos pasados. • El proyecto se desglosa en partes más pequeñas que se estiman individualmente.
Planeación del proyecto • La planeación efectiva de un proyecto de software depende de la planeación detallada de su avance, anticipando problemas que puedan surgir y preparando con anterioridad soluciones tentativas a ellos. • En una buena planeación se toman en cuenta puntos como el panorama y planes de: a. Fases. b. Organización. c. Pruebas. d. Modificaciones e. Documentación. f. Capacitación g. Revisión e informes h. Instalación y operación l i. Recursos y entregas j. Mantenimiento
Técnicas más importantes (1) • Desde que se inventaron estos tipos de herramientas se han dado diferentes modos de precisar el desarrollo de proyectos; por lo que veremos algunas de las más conocidas y sobresalientes. • Métricas técnicas: Se basa en las características de software por ejemplo: complejidad lógica, grado de modularidad; además mide la estructura del sistema, el cómo está realizado el mismo. • Métricas de calidad:Indica cómo se ajusta un software a los requisitos implícitos y explícitos brindados por el cliente. Es decir cómo voy a medir para que el sistema se adapte a lo que me pide el cliente. • Métricas de productividad: Rendimiento del software; es decir que tan productivo va a ser el software.
Técnicas más importantes (2) • Métricas orientadas a la persona: Son las medidas que se hacen de las personas que trabajaran en el sistema, sobre todo el punto de vista humano de la efectividad de las herramientas y métodos utilizados. • Métricas orientadas al tamaño: Es para saber en qué tiempo voy a terminar el software y cuántas personas voy a necesitar. • Métricas orientadas a la función: Son medidas indirectas del software y del proceso por el cual se desarrolla, las métricas orientadas a la función se centran en la funcionalidad o utilidad del programa. Al principio se sugirió un acercamiento a la medida de la productividad, denominado método del punto de función.
Métrica de puntos de función • Creada por J. Albrecht. • Permite estimar el tamaño del software. • Facilita la posibilidad de tener datos más precisos para: - El valor comercial de un sistema para el usuario. - Tamaño, costo y tiempo del desarrollo del proyecto. - Calidad y productividad del programador. - Esfuerzo.
Cálculo de puntos de función • Para realizar el cálculo se deben seguir una serie de 4 pasos muy importantes, los cuales se mencionan y explican a continuación:
Paso 1: Obtener los componentes del sistema • Aquí se deben identificar los componentes del sistema; de estos se requiere la cantidad y la complejidad (alta, media o baja) de cada uno: • Entradas. • Salidas. • Consultas a la base de datos (peticiones de usuario). • Ficheros lógicos internos. • Interfaces externas.
Paso 2: Calcular los puntos de función sin ajustar (PFSA) • Existen números constantes para cada parámetro de medición, dependiendo de su complejidad. El subtotal de cada fila es, la suma de los productos de cada complejidad de esa fila. Finalmente, se obtienen los PFSA al sumar los subtotales.
Paso 3: Obtener el ajuste de complejidad técnica (ACT) Valores 0 = Sin influencia, factor no presente. 1 = Influencia insignificante, muy baja. 2 = Influencia moderada o baja. 3 = Influencia media, normal. 4 = Influencia alta, significativa. 5 = Influencia muy alta, esencial. La suma de los 14 valores da como resultado el ACT
Paso 4: Obtener los puntos de función ajustados (PFA) • Este es el último paso a seguir, para esto se necesita de los PFSA y el ACT, y aplicar la siguiente fórmula: PFA = PFSA * [0.65 + (0.01 * ACT)] • Gracias a los PFA, se puede calcular otros valores, tales como el presupuesto o la duración que tendrá el proyecto. A continuación, se explicará el obtener conseguir este último:
Cálculo de la duración del proyecto (1) • Para esto se necesita las horas que las personas utilizan para desarrollar el proyecto y los PFA, teniendo esos valores, se aplican en la siguiente ecuación: Esfuerzo = PFA / (1 / Horas productivas por persona) • El esfuerzo es la cantidad de horas por persona que se requierenpara el desarrollo del proyecto.
Cálculo de la duración del proyecto (2) • Con el esfuerzo conseguido, se necesitan además la cantidad de personas y la cantidad de horas productivas por mes, finalmente se realiza el siguiente cálculo: Duración total en horas = (Esfuerzo / Cantidad de personas) / Horas productivas por mes • Como resultado se tiene una aproximación de las horas que durará el desarrollo del sistema.
Ventajas • Ayuda a entender rangos de productividad amplios; esto ya que si la productividad es menos a la deseada significa que no se están siguiendo los estándares. • Permite estimar el costo de proyectos, la programación y el esfuerzo; una vez que el tamaño del proyecto se ha determinado en puntos función, el estimado de horas, costo y programa se puede calcular. • Mejora las negociaciones de contrato; el análisis de puntos función provee el mejor método para medir los proyectos de software, y para manejar su tamaño durante su desarrollo. • Es el mejor método de manejar el riesgo; primero, el cliente puede aceptar más fácilmente el riesgo para un determinado tamaño de proyecto de software; segundo, el desarrollador puede más fácilmente aceptar los riesgos para el costo de producción. Adherirse a un conteo consistente de puntos función optimiza esta relación y facilita el desarrollo en línea y bajo presupuesto.
Desventajas • La implantación de un sistema como este implica un gran trabajo de parte de la dirección. • En ocasiones los desarrolladores lo ven como un mecanismo para controlar su trabajo. • En los proyectos pequeños carece de una buena precisión. • Las estimaciones varían de una persona a otra según su experiencia y conocimiento.
Recomendaciones • Indagar suficiente sobre el tema antes de quererse implantar en una organización o proyecto, una buena opción puede ser consultar a personas u organizaciones sobre las experiencias vividas. • Establecer un buen estándar antes de ponerlo en práctica, tomando en cuenta diversos factores a la hora de la recopilación de métricas. • Es aconsejable tomar los requerimientos lo mejor que se pueda para realizar una buena estimación de acuerdo a los puntos de función.
Conclusiones • La estimación de tiempos es esencial para comenzar correctamente el desarrollo de algún sistema informático, ya que sirve como una base en la que irá éste. • Los puntos de función son de suma utilidad, pues no solamente ayudan a darnos un valor aproximado de la duración del proyecto, sino se analiza más a fondo nuestro sistema y se extraen datos como el presupuesto y la complejidad. • Entre más reales sean nuestros datos, más exactas serán las estimaciones. • Los resultados pocas veces serán iguales, ya que varían de una persona a otra.