Tema 2 Boletin

7
Escuela Universitaria Politécnica Grado en Ingeniería Informática Ingeniería del Software II Tema 2: Gestión del Proyecto Boletín Ejercicios CUEST I ONE S (1) ¿Cuál es la diferencia entre medida, métrica e indicador? Apoye la explicación en algún ejemplo. • Medida: Indicación cuantitativa de un atributo Ejemplo: Un programa tiene 10.000 LDC (líneas de código). • Métrica: Medida cuantitativa del grado en que un sistema, componente o proceso posee un atributo Ejemplo: La productividadde este proyecto fue de 500 (LDC/persona-mes). • Indicador: Métrica o combinación de métricas que proporcionan una visión profunda del proceso, del proyecto o del producto. Ejemplo: La productividad media de nuestra empresa es de 500(LDC/pm) y en el último proyecto ha sido de 250(LDC/pm). (2) ¿Qué es una medida indirecta? Las medidas indirectas estan orientadas a medir aspectos como calidad, complejidad, eficiencia, funcionalidad, etc. ¿Su uso es común en el trabajo con métricas del software? Las medidas indirectas vienen determinadas por una o más métricas básicas. (3) El equipo A encontró 342 errores durante el proceso de ingeniería del software antes de la liberación. El equipo B encontró 184 errores. ¿Qué medidas adicionales tendrían que realizarse a los proyectos A y B para determinar cuál de los equipos eliminó errores de manera más eficiente? Una medida de los defectos encontrados después de liberarlos.

Transcript of Tema 2 Boletin

Page 1: Tema 2 Boletin

 

Escuela  Universitaria  Politécnica  Grado  en

Ingeniería  Informática  

Ingeniería del Software II

Tema 2: Gestión del Proyecto

Boletín Ejercicios

CUEST IONE S

(1) ¿Cuál es la diferencia entre medida, métrica e indicador? Apoye la explicación en algún ejemplo.

• Medida: Indicación cuantitativa de un atributo

Ejemplo: Un programa tiene 10.000 LDC (líneas de código).

• Métrica: Medida cuantitativa del grado en que un sistema, componente o proceso posee un atributo

Ejemplo: La productividadde este proyecto fue de 500 (LDC/persona-mes).

• Indicador: Métrica o combinación de métricas que proporcionan una visión profunda del proceso, del proyecto

o del producto.

Ejemplo: La productividad media de nuestra empresa es de 500(LDC/pm) y en el último proyecto ha sido de

250(LDC/pm).

(2) ¿Qué es una medida indirecta?

Las medidas indirectas estan orientadas a medir aspectos como calidad, complejidad, eficiencia, funcionalidad,

etc.

¿Su uso es común en el trabajo con métricas del software?

Las medidas indirectas vienen determinadas por una o más métricas básicas.

(3) El equipo A encontró 342 errores durante el proceso de ingeniería del software antes de la

liberación. El equipo B encontró 184 errores. ¿Qué medidas adicionales tendrían que realizarse a los

proyectos A y B para determinar cuál de los equipos eliminó errores de manera más eficiente?

Una medida de los defectos encontrados después de liberarlos.

¿Qué métricas propondría para ayudar a realizar esta determinación?

Una métrica errores/LDC o defectos/LDC o errores/defectos

¿Qué datos históricos pueden ser útiles?

Informes de cada una de las versiones en las que aparezcan todos los datos.

(4) Explique las similitudes y diferencias entre las medidas basadas en líneas de código

(LDC) y puntos de función (PF).

Las medidas basadas en líneas de código son medidas orientadas al tamaño, las cuales nos proporcionaran el tamaño o capacidad de nuestro software

Page 2: Tema 2 Boletin

Son medidas directas.Debido a que para implementar la misma tarea en un lenguaje de programación se necesitan más líneas de código que en otro, esta medida puede ser un poco injusta.

Las medidas basadas en puntos de función son medidas orientadas a la función, cuyo objetivo es medir aspectos que tengan que ver con la funcionalidad.Son medidas indirectas.Son más justas, a la hora de que miden la funcionalidad de un software.

(5) Justifique brevemente la veracidad o falsedad de la siguiente afirmación: “El uso de LDC como

medida del software es adecuado en proyectos que han sido desarrollados empleando diversas

tecnologías”.

Como se comentaba en la anterior pregunta, la medida de las líneas de código puede ser injusta para comparar

software desarrollado en lenguajes de programación distintos puesto que la misma tarea en un lenguaje

puede llevar muchas más líneas de código que en otro.

(6) Explique las diferencias entre método, proceso y herramienta software.Idem que boletín 1.

(7) Indique dos tipos de métricas que permitan medir la calidad de un proyecto software.- Número promedio de acciones del usuario por cada tarea- Análisis de uso de aplicación (frecuencia uso del menú “Ayuda”, tiempo medio uso, etc.)

¿Por qué son importantes este tipo de métricas?Porque hoy en dia la calidad es un marcador importante en cualquier producto y midiendo la calidad podemos construir un producto software de alta calidad que satisfaga las necesidades del cliente.

¿En qué momento debería “medirse” la calidad de un proyecto software?Debemos medir la calidad de un proyecto continuamente para poder hacer cambias que la mejoren si en algún momento empeora.

(8) Describa brevemente las diversas etapas que se deben seguir para cubrir el proceso de planificación

de un proyecto software.

Antes de planificar el proyecto debemos preveer una estimación, con ella podemos constatar cuanto esfuerzo,

cuantos recursos, cuanto capital y cuanto tiempo nos va a llevar.

Proceso de planificación de un proyecto:

1. Establecer ámbito del proyecto:

El ámbito es una descripción del problema, con el obtendremos las funciones y características de nuestro

proyecto, los datos que usaremos, el rendimiento, la fiabilidad…

2. Determinar la factibilidad

Hay que comprobar que realizar el proyecto es factible, ya que puede no ser viable por falta de medios o por ser

un proyecto inviable en la época actual.

3. Analizar riesgos

También debemos comprobar los riesgos que vamos a asumir al realizar el proyecto.

4. Definir recursos requeridos

Debemos hacer un listado de nuestros recursos (personal, entorno, software…) y de las necesidades del proyecto

(descripción, disponibilidad, fechas,..)

5. Estimar costo y esfuerzo

Por supuesto hay que estimar el coste y el esfuerzo para poder organizarse de forma coherente.

Page 3: Tema 2 Boletin

6. Desarrollar un calendario

Por último debemos desarrollar un calendario según el cual basarnos en nuestros plazos de proyecto y entregas.

(9) Argumente la veracidad o falsedad de la siguiente afirmación: “Una entrevista con el

cliente es fundamental para recabar información sobre el problema. Ésta debe ser flexible,

abierta y dinámica, pues que es difícil saber qué nos encontraremos.”

Por supuesto que las entrevistas con el/los cliente/s son fundamentales, ellos son los que deben proporcionar toda la información sobre el proyecto ya que dependerá de ellos. La entrevista deberá tener una serie de puntos, si fuera demasiado abierta y flexible nos perderíamos en cosas que no nos interesan, por tanto debemos tener muy claros los puntos a tratar.

(10)Explique en qué consisten las técnicas de estimación de esfuerzo proyectos software.Las técnicas de estimación de esfuerzo de proyectos software nos darán una medida del esfuerzo y coste. Aunque no es una ciencia exacta nos pueden proporcionar valores confiables.Se recomienda realizar la estimación una vez comenzado el proyecto ya que se conocerán más detalles.

¿Cuál es la unidad de medida más común?El esfuerzo se suele medir como personas-mes (PM).

¿Qué tipos de mecanismos conoce?• Tipos de mecanismos de estimación de esfuerzo:– Técnicas de descomposición para generar estimaciones de coste y esfuerzo• Estimación basada en problema• Estimación basada en proceso– Modelos empíricos para cálculos de costes y esfuerzo• COCOMO (COnstructive COst MOdel)

Boletín ejercicios tema 2 Ingeniería del Software II

Page 4: Tema 2 Boletin

EJERCICIO S PRÁCTICO S

(1) A partir de la descripción que se proporciona a continuación de un sistema software, se pide calcular los

puntos de función (PF) asociados al mismo.

Se trata de un sistema de telepago para automóviles, destinado principalmente al pago automático en los peajes de las autopistas. Dentro de un peaje de una autopista, se destinan uno o más puestos de control al telepago.Para efectuar el telepago, el vehículo debe disponer de un dispositivoespecial, al que denominaremos “Gizmo”. Par adquirir un “Gizmo”, el dueño de un vehículo debe solicitarlo vía web, proporcionando sus datos personales, bancarios y matrícula del vehículo. A continuación, el cliente recibe el GizMo en su domicilio.Cada vez que el cliente entra en un peaje automático, los sensores detectan la entrada del vehículo y a continuación, otros sensores tratan de leer lainformación del GizMo. Si el vehículo está autorizado, se enciende una luz verde, se levanta la barrera de control y se carga el correspondiente importe en la cuenta del cliente. Esta información también se guarda en la base de datos del sistema, así como una foto del conductor, con objeto de evitar posibles fraudes y poder atender debidamente potenciales reclamaciones. El importe del peaje se muestra al conductor en una pantalla luminosa adyacente a la barrera de control del peaje.

Si el vehículo no estuviese autorizado, se enciende una luz roja y se toman fotografías tanto del conductor como de la matrícula del vehículo. En este caso se toman 5 fotografías en 5 instantes diferentes de tiempo y no se levanta la barrera de control. En caso de que los sensores de la barrera detectan que esta se ha atravesado, y posiblemente destrozados, se informa del hecho a la policía.

(2) El ingeniero software responsable del proyecto de desarrollo del sistema de telepago para automóviles

(descrito en el ejercicio anterior) se encuentra en una fase temprana de ejecución del proyecto y debe

asumir cierta inestabilidad en los requisitos de la aplicación. Respecto al valor PF que se puede calcular a

partir de las actuales especificaciones (probable) se considera que, en el mejor de los casos, los valores de

dominio (parámetros PF) pueden reducirse un 30% (optimista). En el peor de los casos, pueden

incrementarse un 20% (pesimista). Dada esta problemática, se pide realizar una estimación basada en

problema de PF del proyecto.

Page 5: Tema 2 Boletin

(3) Suponga que usted es el gerente de proyecto de una compañía que construye software para robots

caseros. Tras realizar una primera entrevista con el cliente, determina que la aplicación estará integrada

por 5 módulos, teniendo cada uno el coste

(en líneas de código - LDC) que se indica en la siguiente tabla:

Módulo LDC

Visión (VI) 5000

Control Movimiento (CM) 2500

Planificador de Tareas (PT) 5000

Monitorización (MO) 3000

Coordinación (CO) 8700

Se pide:

a. Realizar una estimación del esfuerzo (PM) necesario para llevar a cabo el proyecto, empleando

la técnica de estimación basada en problema. Aunque las anteriores estimaciones de coste se

consideran las más probables, en el peor y mejor de los casos éstas podrían variar un

10% y 20%, respectivamente. Además, asuma que una persona puede producir 150 LDC al

mes.

b. Realizar una estimación de esfuerzo (PM) y tiempo (en meses) aplicando el modelo COCOMO

I, según el modelo básico. En este caso, asumiremos que se trata de un proyecto de tipo

“Empotrado”.