Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

ITBA 02 Puntos de Función

Gestión de Proyectos de SoftwareITBA - Ing. Matías Querel
by

Matias Querel

on 5 March 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of ITBA 02 Puntos de Función

Gestión de Proyectos
Técnicas de Estimación
Ing. Matias Querel
Metricas
Puntos de Función
Métricas de producto
Métricas de proceso
Son medidas del producto software durante cualquier fase de su desarrollo, desde los requisitos hasta la instalación. Pueden medir la complejidad del diseño, el tamaño del producto final (fuente u objeto) o el número de páginas de documentación producida.
Son medidas del proceso de desarrollo del software tales como el tiempo de desarrollo total, el esfuerzo en días/hombre o meses/hombre, tipo de metodología utilizada o nivel medio de experiencia de los programadores.
Ejemplos
Líneas de Código (LOC)
Especificaciones de Diseño
Predicción de la longitud
Funcionalidad
Corrección de los Programas
Fiabilidad del Software
Mantenibilidad del Software
Ejemplos
Líneas de Código (LOC)
Especificaciones de Diseño
Predicción de longitud
Permite predecir la longitud en líneas de código (NLOC) en la fase de definición de especificaciones, estableciendo una relación de expansión entre la longitud de las especificaciones o del diseño y la longitud del código en proyectos similares, para lo que deben registrarse datos históricos con definición de características y entornos específicos.
Problemas:
No tiene en cuenta el concepto de reutilización.
No tiene en cuenta el concepto de costos fijos ni tareas que se desarrollan que no producen instrucciones.

Si existe una sintaxis uniforme y se utilizan objetos o elementos atómicos representativos para los distintos diagramas y símbolos, entonces se pueden medir la longitud del texto, la cantidad de diagramas y el número de páginas para realizar análisis comparativos entre proyectos dentro de una misma organización y con los datos históricos propios.
Funcionalidad
Es la mejor aproximación existente hasta la fecha.
Evalúan el proceso de fabricación del producto.
Constituyen medidas del proceso de desarrollo:
el tiempo de desarrollo total
el esfuerzo en días/hombre o meses/hombre
tipo de metodología utilizada
nivel medio de experiencia de los programadores
La obtención de estas métricas está asociada directamente a técnicas o modelos de estimación.
Facilita la información básica del tamaño de la aplicación basándose en el diseño lógico, a partir de la funcionalidad externa.
Se centra en los valores de dominio de información y no en las funciones del software.
Una vez que se obtiene este valor se puede utilizar en los procesos de estimación de costo y esfuerzo.
El planificador del proyecto estima las entradas, salidas, peticiones, archivos e interfaces externas del software y elabora una tabla de cálculo de punto de función.
Este método permite medir independientemente de la tecnología utilizada.
01
02
03
04
05
Proporciona el tamaño del sistema medido
en Número de Instrucciones o Líneas de Código Fuente
Características
Entidades Internas (ILF)
-Grupo de datos lógicamente relacionados, identificables por los usuarios,
mantenidos y utilizados dentro de los límites de la aplicación.
-Son tablas habilitados para añadir, cambiar o borrar datos mediante
procedimientos estandarizados a traves de la aplicación.
Entidades Externas (ELF)
-Grupo de datos lógicamente relacionados, identificables por los usuarios, utilizados por la aplicación a desarrollar, pero mantenidos por otra aplicación.
Ejemplo:
*Tablas usadas por nuestra aplicación pero mantenidas por otra.
Entradas (EI)
Consultas (EQ)
Salidas (EO)
Son datos que se exportan o imprimen fuera de los límites de la aplicación.
-Son datos que se introducen en la aplicación desde fuera de sus límites.
-Mantienen un fichero lógico interno.
-Se considera única si los datos son mantenidos en un fichero lógico interno y el formato de entrada es único o la lógica del proceso es única.
-Cada unidad de mantenimiento de datos por cada entrada externa se
considera única, por ejemplo, si en una pantalla se realizan altas, bajas y
modificaciones entonces deben considerarse 3 entradas externas.

Ejemplos
*Pantallas de entrada que mantienen ficheros lógicos internos.
*Entradas por lotes de datos. Cada proceso que mantiene un fichero y cada alta, baja o modificación de datos se considera como una unidad.
*Interfaces de la aplicación que mantienen datos de un fichero lógico interno.
*Entradas externas duplicadas de distintos procesos solicitados expresamente por el usuario.
-Representan requisitos de información a la aplicación en una combinación de entrada/salida que se obtiene de una búsqueda de datos directa.
-No actualiza un fichero lógico interno. Si la consulta contiene un proceso de edición o clasificación de información ya no debe considerarse como tal.

Ejemplos
*Pantallas que permiten la búsqueda de datos
*Pantallas de conexión (pantallas de Login)
*Ayudas y tutoriales
*Gráficos generados por una consulta
Análisis de las Características del Sistema
Comunicación de datos
Funciones distribuidas
Rendimiento
Configuraciones fuertemente utilizadas
Frecuencia de transacciones
Entrada on-line de datos
Diseño para la eficiencia del usuario final
Actualización on-line
Procesos complejos
Utilización en otros sistemas
Facilidad de instalación
Facilidad de operación
Instalación de múltiples sitios
Facilidad de cambio
De acuerdo a la menor o mayor influencia que tenga cada característica en nuestro sistema se la evaluará con un valor de 0 a 5, y a continuación se calcula el TDI: Grado Total de Influencia (en inglés Total Degree of Influence) y se lo obtiene sumando los valores de cada una de las características.
Características
Con el Grado Total de
influencia se calcula el
Factor
de
Ajuste
Grado
Total de
Influencia
FA = (GTI * 0,01) + 0,65
Calculo del Factor de Ajuste
Puntos de Función Ajustados
FP Ajustados = PF Sin Ajustar * FA
Mide la longitud del código fuente.
Determina el tamaño del software.
Permite conocer la longitud de un programa, pero solo una vez que el proceso de codificación ha terminado. Por eso no puede utilizarse para estimar esfuerzo o productividad.
Una línea de código es cualquier línea de texto de un programa que no es comentario o línea en blanco, sin tener en cuenta el número de instrucciones o parte de instrucciones en la línea.
CARACTERISTICAS
Las definiciones de la longitud para las especificaciones de diseño y para la estimación del esfuerzo que requieren resulta difícilmente medible.
Los documentos que se generan incluyen texto, grafos, diagramas matemáticos y símbolos que dependen del método o notación utilizada.
CARACTERISTICAS
Permite obtener una medida del tamaño del software a partir de la funcionalidad, que pueda ser utilizada para predecir costos y esfuerzo.

El concepto de funcionalidad se origina a partir de una noción de la cantidad de funciones que proporciona.
Los Puntos de Función (Albrecht) y los Bang (De Marco) miden el tamaño del software en los primeros pasos del desarrollo a partir de las funcionalidades que se establecen en la etapa de especificaciones.
La funcionalidad se mide a través de documentos de especificaciones.
CARACTERISTICAS
Contexto
La gestión del proyecto consiste en la utilización de las
técnicas
y
actividades
de gestión requeridas para conseguir un producto software de alta
calidad,
de acuerdo con las
necesidades
de los usuarios, dentro de un
presupuesto
y con una planificación de
tiempos
establecidos previamente.
¿Qué entendemos por gestión del proyecto de desarrollo de software?
¿Qué es un proyecto software?
Un proyecto es una acción en la que recursos humanos, financieros y materiales se organizan de una nueva forma para acometer un trabajo único. En este trabajo, dadas unas especificaciones y dentro de unos límites de costes y tiempo, se intenta conseguir un cambio beneficioso dirigido por unos objetivos cualitativos y cuantitativos.
Tareas Críticas en la Gestión de Proyectos.
Recursos Humanos
Recursos financieros
Recursos Físicos/Materiales
limitados por...
Costos
Tiempos
01
Estimación
de duración, coste y esfuerzo necesarios para construir el producto.
03
Seguimiento,
durante la realización del trabajo, para asegurar el cumplimiento de lo planificado en cuanto a costes, fechas, etc. En caso de desviaciones del plan, se deben tomar las medidas pertinentes.
02
Planificación
de tareas a realizar, asignación de personas, tiempos, etc. para construir el producto.

Podemos definirlo también como la predicción de
personal,
del
esfuerzo,
de los
costes
y de la planificación que se requerirá para realizar todas las actividades y construir todos los productos asociados con el proyecto.
Uno de los parámetros críticos de la estimación es determinar su
exactitud.


La estimación puede realizarse a partir de
datos históricos
o con
herramientas.
La primera tarea en la gestión de proyectos es la estimación.
La estimación se define como el proceso que proporciona un valor a un conjunto de variables para la realización de un trabajo, dentro de un rango aceptable de tolerancia.
DEFINICION
Basicamente permite respondernos:
¿Cuánto costará?
¿Cuánto tiempo llevará hacerlo?
Por qué es tan complejo estimar?
Existe una tendencia aparente de los desarrolladores hacia la
subestimación.
Un estimador suele elegir una porción de software debería tomar para luego extrapolarlo al resto del sistema, normalmente se ignoran los aspectos no lineales del desarrollo de software, por ejemplo, la coordinación y la gestión.
Existen
malas interpretaciones en las relaciones lineales entre la capacidad requerida por unidad de tiempo y el tiempo disponible.
Esto significa que el software desarrollado por 25 personas en dos años podrá ser llevado a cabo por 50 personas en un año. Esta interpretación es errónea. Como ya se comentó en otra Unidad una mujer puede dar a luz un niño a lo largo de 9 meses,
pero 9 mujeres no dan a luz un niño en un mes. Añadir personal a un proyecto retrasado no tiene por qué disminuir el retraso.
01
02
El lider de proyecto estima el tiempo que le llevaría
ejecutar

personalmente
una tarea, ignorando el hecho que la persona que efectivamente realice esa tarea no tendrá los mismos conocimientos ni la misma experiencia a la hora de desarrollar la acción.
03
Las estimaciones claras, completas y precisas son
difíciles de formular al inicio del proyecto
. Los cambios, adaptaciones y ampliaciones son más la regla que la excepción: como consecuencia de ello, deben adaptarse también las planificaciones y los objetivos.
04
Pasos de la Técnica
01
Identificar los componentes
Se buscan las tablas internas, tablas externas, entradas, salidas y consultas
02
Valoración de la Complejidad
Se clasifican la complejidad de todos los componentes como Alta, Media o Baja
03
Cálculo de Puntos de Función Sin Ajustar
Se totalizan todos los puntos de función ponderados por su complejidad
04
Análisis de las Características del Sistema
Se ajustan los puntos de función en función al contexto del proyecto
05
Cálculo del Factor de Ajuste
Se calcula el valor de ajuste en función a las características del sistema.
06
Cálculo de Puntos de Función Ajustados
Se ajustan los puntos de función obtenidos en el punto 3 con el valor de ajuste.
Complejidad de las Entradas
Complejidad de Entidades Internas y Externas
Complejidad de las Salidas
Exportación a Excel
Exportación a PDF
Impresión de Comprobante
Envío de Mail
Mensajes de Error
Mensajes de Validación
Ejemplos
Complejidad de las Consultas
Fase de Entrada
Fase de Salida
Full transcript