Monografias.com > Computación > General
Descargar Imprimir Comentar Ver trabajos relacionados

Planeación de Proyectos Hipermedia. Estimación de costos




Enviado por vanessaxy



    1. Técnicas de
      estimación
    2. Métricas de
      estimación para software hipermedia
    3. Conclusión
    4. Bibliografía
    5. Anexo

    Introducción

    La administración efectiva de un proyecto de
    software depende
    de planear completamente el progreso del proyecto. El
    administrador
    del proyecto debe anticiparse a los problemas que
    podrían surgir, así como preparar soluciones
    tentativas a esos problemas.

    La planeación
    es un proceso
    iterativo que solamente se completa cuando el proyecto mismo se
    termina. Conforme la información se hace disponible, el plan debe
    revisarse regularmente. Las metas globales del negocio son un
    factor importante que debe considerarse cuando se formula el
    plan del
    proyecto. Conforme esto cambie, los cambios en el proyecto
    serán necesarios.

    El proceso de
    planeación del proyecto inicia con una
    valoración de las restricciones que afectan el proyecto
    (fecha de entrega requerida, personal
    disponible, presupuesto
    global, etc.). Ésta se lleva a cabo con una
    estimación de los parámetros del proyecto como su
    estructura,
    tamaño y distribución de funciones.
    Entonces se definen los hitos de progreso y productos a
    entregar. En ese momento, el proceso entra en un ciclo. Se
    prepara un calendario para el proyecto y las actividades
    definidas en el calendario inician o continúan.
    Después de algún tiempo (por lo
    general 2 o 3 semanas), se revisa el proyecto y señalan
    las discrepancias. Debido a que las estimaciones iniciales de los
    parámetros del proyecto son tentativas, el plan siempre
    deberá actualizarse.

    Las estimaciones están asociadas con el esfuerzo
    y el tiempo con las
    actividades identificadas del proyecto. Los administradores del
    proyecto deben estimar las respuestas a las siguientes
    preguntas:

    1. ¿Cuánto esfuerzo (personal
      necesario) se requiere para completar una
      actividad?
    2. ¿Cuánto tiempo se necesita para
      completar una actividad?
    3. ¿Cuál es el costo total
      de una actividad?

    La estimación y la realización del
    cronograma del proyecto se llevan a cabo de forma conjunta. Sin
    embargo, en las primeras etapas del proyecto se requieren algunas
    estimaciones de costos, antes que
    se tenga el cronograma detallado. Estas estimaciones son
    necesarias para establecer un presupuesto para
    el proyecto o para asignar un precio para el
    software de un
    cliente.

    Una vez que el proyecto se comienza a ejecutar, las
    estimaciones se actualizan de forma regular. Esto ayuda al
    proceso de planeación y permite la utilización
    efectiva de los recursos. Si el
    gasto real es significativamente más grande que las
    estimaciones, entonces el administrador del
    proyecto debe tomar algunas acciones.
    Éstas pueden ser: solicitar recursos
    adicionales para el proyecto o modificar el trabajo a
    realizar.

    Existen tres parámetros involucrados en el
    cálculo
    del costo total de un
    proyecto de desarrollo de
    software:

    Para muchos proyectos, el
    costo dominante es el costo del esfuerzo. Las computadoras
    que son suficientemente poderosas como para desarrollar el
    software son relativamente baratas. Aunque los costos de viajes pueden
    ser importantes si un proyecto se desarrolla en sitios distintos,
    son relativamente bajos para muchos proyectos. Además, el
    uso de correo
    electrónico, los chat, fax y
    teleconferencias reduce los viajes requeridos.

    Los costos del esfuerzo no son simplemente los
    relacionados a los salarios de los
    ingenieros de software involucrados en el proyecto. Las organizaciones
    calculan los costos de esfuerzo en función de
    los costos de sobrecarga donde se toma en cuenta el costo total
    de hacer funcionar la
    organización y dividen éste entre el
    número de personas productivas. Por lo tanto, los
    siguientes costos son parte de los costos de esfuerzo
    totales:

    1. los costos de proveer, calentar e iluminar las
      oficinas;
    2. los costos del personal de apoyo como los contadores,
      secretarias, limpiadores y técnicos;
    3. los costos de las redes y comunicaciones;
    4. los costos de los recursos centralizados como las
      bibliotecas,
      los recursos recreativos, etc.;
    5. los costos de seguridad
      social y de beneficio de empleados como las pensiones y los
      seguros de
      salud.

    Debido a las consideraciones organizacionales
    involucradas, asignar precio del
    proyecto por lo general le concierne al administrador principal
    de la organización, así como a los
    administradores del proyecto de software.

    El proceso de desarrollo de
    aplicaciones hipermedia al igual que el de cualquier producto de
    software, requiere la aplicación de métricas de
    estimación para garantizar resultados más precisos
    en su ciclo de
    vida.

    El objetivo de
    este trabajo es investigar acerca de las técnicas
    de estimación que existen para los productos
    hipermedia, presentando métricas para estimación de
    costos dadas por varios autores de artículos,
    especialistas en el asunto de aplicaciones hipermedia y web.

    1. Técnicas
    de estimación

    No existe una forma simple de calcular el esfuerzo
    requerido para desarrollar un sistema
    informático. Las estimaciones iniciales se hacen bajo la
    base de la definición de requisitos de usuario de alto
    nivel.

    Pero en una primera etapa del proyecto es difícil
    producir una estimación precisa de los costos de
    desarrollo del sistema.

    Por ese motivo la estimación se utiliza para
    definir si el presupuesto del proyecto y el producto se
    ajusta para que las cifras del presupuesto se cumplan. No se
    conocen informes de
    experimentos
    controlados sobre los costos de los proyectos donde los costos
    estimados no se utilicen para ajustar el experimento. Un
    experimento controlado no revelaría la estimación
    del costo al administrador del proyecto. Los costos reales
    tendrían que compararse con los estimados del
    proyecto.

    A pesar de esto, las organizaciones
    necesitan calcular esfuerzos de software y estimaciones de los
    costos. Para hacerlo, se utilizan una o más de las
    técnicas descritas en la tabla 1 (Boehm, 1981).

    Estos enfoques para la estimación del costo se
    pueden abordar utilizando enfoque descendente o ascendente. Un
    enfoque descendente inicia en el nivel de sistema. La
    estimación comienza examinando la funcionalidad total del
    producto y cómo es que esa funcionalidad se propaga al
    interactuar con las subfunciones. Se toman en cuenta los costos
    de las actividades del nivel del sistema tales como la integración, la
    administración de la configuración y la
    documentación.

    El enfoque ascendente, en contraste, inicia en el nivel
    de componente. El sistema se divide en componentes y se calcula
    el esfuerzo requerido para desarrollar cada uno de éstos.
    Estos costos se suman para dar el esfuerzo requerido del
    desarrollo del sistema completo.

    Las desventajas del enfoque descendente son las ventajas
    del ascendente y viceversa. La estimación descendente
    subestima los costos de resolver problemas técnicos
    difíciles asociados con componentes específicos
    como las interfaces para hardware no estándar.
    No existe justificación detallada de la estimación
    que se produce. En contraste, la estimación ascendente
    produce tal justificación y considera cada componente. Sin
    embargo, este enfoque tiende a subestimar los costos de las
    actividades del sistema como la integración. La estimación
    ascendente también es más costosa. Debe haber un
    diseño
    inicial del sistema para identificar los componentes a
    evaluar.

    Tabla 1 – Técnicas de estimación de
    costos

    Técnica

    Descripción

    Modelado del algoritmo de costos

    Se desarrolla un modelo
    utilizando información histórica de
    costos que relaciona alguna métrica de software
    (por lo general, su tamaño) con el costo del
    proyecto. Se hace una estimación de esa
    métrica y el modelo
    predice el esfuerzo requerido.

    Opinión de expertos

    Se consultan varios expertos en las
    técnicas de desarrollo de software propuestas y en
    el dominio de aplicación. Cada uno de
    ellos estima el costo del proyecto. Estas estimaciones se
    comparan y discuten. El proceso de estimación se
    itera hasta que se acuerda una
    estimación.

    Estimación por
    analogía

    Esta técnica es aplicable cuando otros
    proyectos en el mismo dominio de aplicación se han
    completado. Se estima el costo de un nuevo proyecto por
    analogía con estos proyectos completados. Myers
    (1989) da una descripción muy clara de este
    enfoque.

    Ley de Parkinson

    La Ley de
    Parkinson establece que el
    trabajo se extiende para llenar el tiempo disponible.
    El costo se determina por los recursos disponibles
    más que por los objetivos logrados. Si el software se
    tiene que entregar en 12 meses y se dispone de cinco
    personas, el esfuerzo requerido se estima en 60
    personas-mes.

    Asignar costos para ganar

    El costo del software se estima dependiendo de
    lo que el cliente esté dispuesto a pagar por
    el proyecto. El esfuerzo estimado depende del presupuesto
    del cliente y no de la funcionalidad del
    software.

    Cada técnica de estimación tiene sus
    propias fortalezas y debilidades. Para proyectos grandes, se
    deben utilizar varias técnicas de estimación de
    costos y comparar sus resultados. Si éstos predicen costos
    radicalmente diferentes, esto indica que no se tiene suficiente
    información para generar los costos. Se debe buscar
    más informaciones y repetir el proceso hasta que la
    estimación converja.

    Estas dos técnicas de estimación son
    aplicables cuando existe un documento de requisitos para el
    sistema. Éste define a todos los usuarios y los requisitos
    del sistema. Por lo tanto, se puede generar una estimación
    razonable de la amplitud de la funcionalidad del sistema a
    desarrollar. En general, los proyectos grandes de ingeniería
    de sistemas normalmente tendrán tal documento de
    requisitos.

    Sin embargo, en muchos casos, los costos de muchos
    proyectos se tienen que estimar utilizando solamente un borrador
    de solicitudes del usuario del sistema. El análisis y la especificación de
    requisitos son costosos y los administradores de la
    compañía necesitan de una estimación inicial
    del costo del sistema antes de que puedan generar un presupuesto
    aprobado para este proceso.

    Bajo estas circunstancias, "asignar costos para ganar"
    es una estrategia
    utilizada comúnmente. La noción de "asignar
    precios para
    ganar" parece no ser ética y
    poco apropiada para los negocios. Sin
    embargo, tiene algunas ventajas. Un costo del proyecto se acuerda
    en base a un borrador de la propuesta. Entonces, las
    negociaciones se llevan a cabo con el cliente para determinar una
    especificación detallada del proyecto. Esta
    especificación se restringe por el costo acordado. El
    comprador y el vendedor deben acordar la funcionalidad aceptable
    del sistema. El factor clave en muchos proyectos no son los
    requisitos del proyecto, sino el costo. Los requisitos se cambian
    de tal forma que no se exceda el costo.

    Cuando se estiman los costos de software, los
    administradores deben tomar en cuenta que existen diferencias
    importantes entre los proyectos anteriores y los futuros. Una
    gran variedad de nuevos métodos y
    técnicas de desarrollo han aparecido en los últimos
    diez años. Muchos administradores tienen poca experiencia
    en estas técnicas o poco conocimiento
    de cómo éstas afectan los costos de los proyectos.
    Algunos ejemplos de los cambios que afectan las estimaciones de
    acuerdo con la experiencia son:

    • Desarrollo orientado a objetos en lugar de desarrollo
      orientado a funciones;
    • Sistemas cliente-servidor en
      lugar de sistemas
      basados en "mainframes";
    • Utilización de componentes de software
      comerciales en lugar de desarrollo de componentes;
    • Desarrollar y reutilizar en lugar de desarrollar
      todas las partes del sistema;
    • La utilización de herramientas
      CASE (Ingeniería
      de Software Asistida por Computadora)
      y generadores de programas en
      lugar de desarrollar software sin ayuda.

    Todos estos factores hacen más difícil que
    los administradores produzcan estimaciones precisas de los
    costos de
    producción del software. Su experiencia previa no es
    relevante para ayudarles a estimar los costos del proyecto de
    software.

    2. Métricas de estimación para
    software hipermedia

    Un proyecto hipermedia reúne diversos
    profesionales con distinta formación, interés y
    visión, tales como ingenieros, diseñadores,
    publicistas, fotógrafos,
    escritores, locutores, productores, artistas, programadores,
    psicólogos, etc. Todos tienen su propio lenguaje
    técnico, sus propias prioridades y cada uno debe usar
    herramientas
    ad hoc a sus funciones dentro del proyecto
    [Solar2000].

    Las aplicaciones hipermedia son centradas en tres
    pilares: datos,
    funcionalidad y navegación en perspectivas diferentes de
    acuerdo con la aplicación que está siendo
    desarrollada [Mendes2002].

    Las empresas
    desarrolladoras de softwares reconocen la importancia de la
    utilización de métricas de estimación para
    el desarrollo de los proyectos. Para los productos hipermedia no
    se tiene excepciones. Una estimación realista en las
    etapas tempranas del ciclo de vida
    de un proyecto hipermedia garantiza a gerentes y desarrolladores
    en una organización manejar la información
    de manera efectiva.

    Este trabajo reúne una revisión
    bibliográfica en materiales
    publicados en la internet acerca de las
    estimaciones y métricas que existen para los productos
    hipermedia, como los libros
    electrónicos, sitios web para cursos, softwares
    educativos, etc. Para la comprensión de algunos trabajos
    se hizo necesaria una explicación de modelos e
    investigaciones previas a la utilización de
    las métricas.

    2.1 – Guión
    (Storyboard)

    Solar en su artículo "Un Modelo Para
    Diseñar Storyboard en Proyectos Multimedia"
    propone un modelo para apoyar el diseño
    de guiones basado en métodos
    generados a partir de modelos de
    proceso de Ingeniería de Software, utilizando grafos
    dirigidos y describe sus componentes genéricos a
    través de un modelo de objetos. Aprovechando la
    información contenida en el grafo diseñado, es
    presentado un modelo para obtener reportes sobre los medios
    descritos en cada nodo, resumen sobre la totalidad de la
    aplicación, así como también el cálculo de
    una aproximación del tiempo de desarrollo de una
    aplicación, el costo de desarrollo del proyecto, y el
    espacio de almacenamiento
    requerido para el producto final, información de gran
    utilidad en la
    toma de
    decisiones en la fase de diseño de un producto con
    tecnología
    Multimedia.

    El modelo denominado Generación Gráfica de
    Guiones (GGG o G3) se basa en la propuesta de Verdugo (1997),
    basado en los métodos desarrollados por Jadue (1993) y
    Montilva (1996), define formalmente una aplicación
    multimedia (MM) utilizando grafos dirigidos y describe sus
    componentes genéricos a través de un modelo de
    objetos (figura 1), independiente de las herramientas
    de autoría existentes para implementar y desarrollar
    aplicaciones MM [Nemetz, 1995]. Emplea técnicas de
    análisis y diseño orientado a
    objetos, que permiten el modelado de estructura y
    contenido más natural, elegante y de fácil
    comprensión que aquel alcanzado con métodos
    imperativos convencionales [Nielsen, 1990].

     Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    Figura 1: Descripción de una aplicación MM
    empleando grafos dirigidos

    Se define formalmente un grafo dirigido G(N, E), donde N
    es el conjunto de nodos de descripción de
    información y E es el conjunto de arcos (llamados
    enlaces), donde cada uno conecta dos nodos {n1,
    n2}Î
    N. Los nodos de información describen o se refieren
    a un objeto del dominio de la aplicación.

    Estructuralmente, un nodo es un objeto compuesto por un
    conjunto de ítems de descripción de
    información MM (i.e. texto,
    gráfico, imagen, pistas de
    audio, clips de videos, etc.).

    Un enlace conecta un nodo inicio a otro de destino. Este
    enlace es un objeto que describe el tipo de interacción
    que debe existir para pasar del nodo inicio al de destino.
    Interacciones posibles son click sobre un botón, presionar
    una tecla, una variable, un tiempo transcurrido, etc. Al ocurrir
    la interacción se indica que debe activarse el objeto o
    unidad de destino, produciendo la presentación o
    despliegue visual, según los medios que lo
    compongan.

    2.1.1. Estimación de
    Costos, Tiempo de Desarrollo y Almacenamiento

    Tal vez, ésta es una de las estimaciones
    más difíciles en la definición de un
    proyecto MM y en Ingeniería de
    Software en general. Se aprecia que las tareas no son pocas
    ni triviales, y la cantidad y perfil profesional de los
    integrantes del equipo de producción son multidisciplinarios, por lo
    que es necesario coordinar las tareas y el personal de producción en forma
    óptima.

    Para estas estimaciones se emplea como base la
    información contenida en el grafo G(N, E) generado por el
    storyboard del modelo Generación Gráfica de Guiones
    (GGG). Cada nodo nÎ G(N, E) define una cantidad de medios y
    tiene asociado valores de
    tiempo de desarrollo y espacio de almacenamiento
    según naturaleza y
    complejidad.

    Al recorrer el grafo en su totalidad, se puede obtener
    el total de los medios contenidos en la aplicación
    diseñada, y se puede deducir a partir de esto, el tiempo
    de desarrollo del proyecto, su costo asociado, como
    también el almacenamiento total requerido por el producto
    final. A continuación, se presenta la obtención de
    esta información, añadida a la información
    contenida en el grafo G(N, E) generado en el diseño con
    las tablas de costos asociadas a cada uno de los
    medios.

    2.1.2. Pesos Asociados a los
    Medios

    Cada medio tiene asociado tareas y un profesional que
    las realiza, para lo cual se define una tabla que contiene los
    tiempos de producción de cada medio (tabla 2), junto con
    el valor hora del
    tipo de profesional asociado. También, se define una tabla
    para almacenar ponderadores que afectan el tiempo de desarrollo
    de cada medio de acuerdo a la pericia o experiencia del
    profesional a cargo (tabla 3). Ambas tablas poseen valores
    expresados en unidades numéricas.

    Con la tabla 3 se puede asignar a cada medio,
    profesionales con mayor o menor pericia en el tema. A nivel de
    software, es un módulo complementario al de diseño,
    donde se puede agrupar los medios, y a su vez, dividir estos
    grupos por
    capítulos o subtemas. Así, el coordinador del
    proyecto puede asignar a cada medio, uno o varios profesionales
    (uno por capítulo) con distintos niveles, definidos por su
    pericia o por el hardware utilizado. Por ejemplo, si el grafo
    diseñado indica un total de diez ambientaciones(secuencias
    de medios) por desarrollar, el tiempo total de producción
    dependerá de la capacidad del profesional a cargo, que
    puede ser de nivel medio, que según la tabla 3, aplica un
    ponderador p6 al tiempo definido en tabla 2.
    Así, el tiempo total de desarrollo del medio
    "ambientación" será de
    t6×
    k6× p6 horas/hombre. Este
    nivel medio puede definirse a un profesional altamente
    capacitado, pero con hardware no apropiado que le produce
    retrasos, por ejemplo, un "scanner" de tres
    pasadas y baja resolución.

    Tabla 2: Medios y valores
    asociados

    Medio

    Tiempo (H.H)

    Costo HH

    Espacio promedio

    Texto

    t1

    k1

    a1

    Video

    t2

    k2

    a2

    Música

    t3

    k3

    a3

    Locución

    t4

    k4

    a4

    Efectos

    t5

    k5

    a5

    Ambientación

    t6

    k6

    a6

    Esquemas

    t7

    k7

    a7

    Fotografías

    t8

    k8

    a8

    Animación 2D

    t9

    k9

    a9

    Animación 3D

    t10

    k10

    a10

    Tabla 3: Ponderadores
    según conjunto Profesional/Hardware

    Medio

    Desarrollador

    Ponderador

    Texto

    Alto

    p1

    Texto

    Medio

    p2

    Video

    Alto

    p3

    Video

    Medio

    p4

    Ambientación

    Alto

    p5

    Ambientación

    Medio

    p6

    Locución

    Alto

    p7

    Animaciones 3D

    Alto

    pn-1

    Animaciones 3D

    Medio

    pn

    Es posible asignar más de un profesional por
    medio, pero se debe considerar que la mínima
    división es por capítulos o temas, fundamentalmente
    porque las labores son usualmente artísticas, las que son
    altamente sensibles al cambio de
    creador. Así, es recomendable contar con un experto
    encargado de la producción de uno o varios medios, pero no
    varios expertos para un solo medio.

    2.1.3. Recorrido del Grafo

    Para calcular los costos nodo por nodo se debe recorrer
    el grafo en profundidad. A medida que se avanza se calculan
    los valores de
    acuerdo al reporte deseado, el que tiene las modalidades (que se
    aprecian en la tabla 4. Se puede obtener reportes sobre tiempos
    de desarrollo y costos por temas o por medios. Para reportes por
    temas se definen los nodos niÎ G(N, E), que
    representan el punto de partida de cada tema para iniciar la
    búsqueda y cálculos. Para reportes por medios, el
    cálculo comienza desde la raíz del grafo,
    recorriéndolo en forma exhaustiva.

    Tabla 4: Tabulación de tiempos

     

    Medio 1

    Medio 2

    Medio 3

    ….

    Medio N

    t por capítulo

    Tema 1

    T11

    T12

    T13

    T1N

    Tema 2

    T21

    T 22

    T 23

    T2N

    Tema 3

    T 31

    T 32

    T 33

    T 3N

    Tema C

    T C1

    T C2

    T C3

    T CN

     

    t por medio

    2.1.4. Formalización del Cálculo de
    Tiempo y Costos

    El cálculo de horas-hombre
    Ti para el medio i (Mi) en una
    aplicación es el producto entre cantidad de elementos
    Mi y tiempo ti para realizarlo, aplicando
    el ponderador pi dependiente del conjunto
    profesional/hardware (ec. 1).

    (1)

    Para el cálculo por capítulos se divide la
    cantidad Mi en tantos grupos como temas
    hayan. El término Mi (total de medios i) se
    convierte en Mij, que representa cantidad de medios i
    en capítulo j. En el cálculo de tiempo de
    desarrollo Tij del capítulo j para el medio i
    (ec. 2) aparece el término pij (ponderador de
    Mi en capítulo j) posibilitando asignar
    distintos profesionales a diferentes temas.

    (2)

    De ecuación 2 se deduce la ecuación
    general para calcular el tiempo total Tim
    para el medio i, reflejada en ecuación 3, donde C es el
    número de capítulos en la
    aplicación.

    (3)

    Al organizar el proyecto por capítulos, el
    análisis de tiempo y costo de capítulos se enfoca
    desde otro punto de vista. El punto de partida es el mismo, dado
    que a contar de la ecuación 1 y 2, se desarrolla de manera
    horizontal los medios, que serán barridos en el
    término i, que corresponde al medio, manteniendo constante
    el término j que es el capítulo (ec. 4). El tiempo
    total TjC del capítulo j es el
    producto entre cantidad Mi en capítulo j y
    tiempo ti asociado a Mi, por el ponderador
    pij de tiempo de Mi en el capítulo
    j. La ec. 4 recorre todos los medios del capítulo j, donde
    M es el número total de medios definidos en el
    modelo.

    (4)

    Para el cálculo de
    horas TP totales para desarrollar el proyecto (no
    implica tiempo lineal) se suma totales obtenidos por
    capítulos o por medios (ec. 5), deduciéndose la
    ecuación 6.

    (5)

    (6)

    Al contar con las horas-hombre para realizar las tareas
    del proyecto, el cálculo de costo de éste no es
    complejo, dado que puede traducirse éstas horas-hombre en
    costo. No toda la mano de obra tiene el mismo costo
    (diseñador, cineasta e ingenieros son distintos), por lo
    tanto para obtener costo del proyecto se calcula las horas-hombre
    por medio (igual valor), luego
    se suman los medios del proyecto. En ecuación 7 se observa
    incorporación de costo de hora-hombre ki para
    obtener el costo de producir Mi en el
    proyecto.

    (7)

    Análogamente para obtener costo por
    capítulos (costo de capítulo j) en ecuación
    8 se incorpora el valor hora-hombre ki según
    Mi. El costo total del proyecto queda definido por la
    ecuación 9.

    (8)

    (9)

    2.1.5. Cálculo del
    Almacenamiento

    El cálculo del espacio de almacenamiento es
    también una medida estimativa, dado que no es posible
    conocer a priori el tamaño de medios que tienen asociado
    los métodos de compresión. Por ejemplo, un
    tamaño y cantidad de "frames" dada en un video posee un
    tamaño fijo, pero comprimido, su tamaño final
    depende del método de
    compresión y las características del video.

    Considerando lo anterior, el espacio de almacenamiento
    requerido por el producto final de la aplicación, se
    obtiene en forma similar a los tiempos. Se requiere la tabla 2,
    que contiene el tamaño promedio de cada medio. Así,
    al recorrer el grafo se obtiene el tamaño (ec. 10), donde
    el espacio de almacenamiento Ap del producto final se
    define como la suma de los medios de todos los capítulos
    multiplicados por cada espacio según
    Mi.

    2.2 – Estimación de
    métricas para Hipermedia Web y Esfuerzo de
    autoría

    Mendes en su artículo "Measurement, prediction
    and risk analysis for web applications" presenta un modelo de
    predicción para aplicaciones hipermedia de autoría
    y web durante un estudio de casos realizado con un proyecto
    asignado a los estudiantes en el curso de hipermedia y multimedia
    de la Universidad de
    Auckland. Reúne una serie de métricas de la
    literatura de
    ingeniería de software y multimedia con
    adaptaciones.

    Fueron aplicados dos cuestionarios (ver Anexo) para
    recolectar los datos. El primero
    cualifica la experiencia de los diseñadores en cinco
    escalas que va de ninguna experiencia (1) hasta muy buena
    experiencia (5). El segundo cuestionario
    mide las características de las aplicaciones
    desarrolladas y el esfuerzo involucrado en el diseño y
    autoría de estas aplicaciones.

    El proceso utilizado sigue los pasos del diagrama 1. El
    análisis de los requisitos no fue considerada en este
    modelo.

    Para ver el gráfico seleccione la
    opción "Descargar" del menú superior

    Fijaremos nuestra atención en el conjunto de métricas
    utilizadas para el trabajo que reúne bibliografías de diversos
    autores sobre aplicación de métricas a los
    productos hipermedia.

    Las métricas colectadas durante el estudio de
    caso representan atributos de 4 tipos de Entidades:

    1. Aplicaciones Web
    2. Procesos de diseño Web y
      autoría
    3. Desarrollador
    4. Herramientas de autoría.

    Cada tipo de entidad tiene un conjunto de
    métricas organizadas en 5 categorías de acuerdo con
    las tablas que siguen: métricas de tamaño,
    reusabilidad, complejidad, esfuerzo y factores de
    confusión, siendo que esta última consiste en
    verificar los factores que, si no son controlados, pueden influir
    en la validez de la evaluación.

    2.2.1. Métricas de
    tamaño (Size Metrics)

    Tabla 5 Metric
    Description

    Tipo de entidad

    Métrica

    Descripción

    Aplicaciones Web

    Cantidad de Páginas

    (Page Count *)

    Número de html o
    shtml utilizados en la aplicación Web.

    Cantidad de "Media"

    (Media Count *)

    Número de "media" utilizadas en la
    aplicación.

    Cantidad de Programa

    (Program Count)

    Número scripts CGI, Archivos
    Javascript,
    applets de Java usados
    en la aplicación.

    Espacio total usado por las paginas (Total Page
    Allocation *)

    El espacio total (Mbytes) asignado para todos los
    html o
    páginas shtml usadas en la
    aplicación.

    Memoria o espacio total de "media"

    (Total Media Allocation *)

    El espacio total (Mbytes) asignado para todos los
    archivos de
    "media" usados en la aplicación.

    Total de líneas de código

    (Total Code Length)

    El número total de líneas de
    código para todos los programas
    usados por una aplicación.

    2.2.2. Métricas de
    reusabilidad (Reusability Metrics)

    Tabla 6ption

    Tipo de entidad

    Métrica

    Descripción

    Aplicaciones Web

    Cantidad de "media" reutilizable *

    Número de archivos de "media"
    reutilizadas/modificadas en la
    aplicación.

    Cantidad de programa
    reutilizable

    Número de programa
    reutilizado/modificado en la aplicación.

    Memoria "media" reutilizada

    Reused Media Allocation *)

    El espacio total (Mbytes) asignado para todos los
    archivos de "media" reutilizadas usados en la
    aplicación.

    Total de líneas de código reutilizable

    (Total Reused Code Length)

    El número total de líneas de
    código para todos los programas reutilizados por una
    aplicación.

    2.2.3. Métricas de
    Complejidad (Complexity Metrics)

    Tabla 7pe

    Tipo de entidad

    Métrica

    Descripción

    Aplicaciones Web

    Conectividad*

    (Connectivity *)

    Numero total de links internos. No incluye links
    generados dinámicamente.

    Densidad de la Conectividad

    (Connectivity Density [2] *)

    Conectividad/Cantidad de
    páginas.

    Total de Complejidad de la
    Página

    (Total Page Complexity *)

    Complejidad Ciclomática

    (Cyclomatic Complexity [2] *)

    (Conectividad – Cantidad Paginas) + 2.

    (Connectivity – Page Count) + 2.

    Estructura *

    Mide como la estructura principal (backbone) de la
    aplicación está organizada: secuencia,
    jerarquia, o red.

    2.2.4. Métricas de
    Esfuerzo (Effort Metrics)

    Tabla 8

    Tipo de entidad

    Métrica

    Descripción

    Diseño de Aplicaciones Web y
    procesos
    de autoría

    Esfuerzo Total

    (Total Effort)

    Sumatoria de todas las métricas aplicadas
    para medir el esfuerzo.

    SE + IE + IP + IB
    + LTE + MTE

    (Esfuerzo de Estructuración + Esfuerzo de
    Conectividad + Planeación de la Interfaz + Construcción de la Interfaz +
    Esfuerzo en los Tests de Links + Esfuerzo en los Tests de
    "Media")

    Esfuerzo de Estructuración

    Structuring Effort (SE)

    Tiempo estimado (numero de horas) que lleva para
    estructurar una aplicación.

    Esfuerzo de Conectividad (enlaces)

    InterLinking Effort (IE) *

    Tiempo estimado (numero de horas) que lleva una
    persona
    para conectar las páginas a través de los
    enlaces (links) para construir la estructura de la
    aplicación.

    Planeación de la Interfaz

    Interface Planning (IP)

    Tiempo estimado (numero de horas) que lleva una
    persona
    para planear la interfaz de la
    aplicación.

    Construcción de la Interfaz

    Interface Building (IB)

    Tiempo estimado (numero de horas) que lleva una
    persona para implementar la interfaz de la
    aplicación.

    Esfuerzo en los Tests de Links

    Link Testing Effort (LTE) *

    Tiempo estimado (numero de horas) que lleva una
    persona para probar todos los enlaces (links) en la
    aplicación.

    Esfuerzo en los Tests de "Media"

    Media Testing Effort (MTE) *

    Tiempo estimado (numero de horas) que lleva una
    persona para probar toda la "media" en la
    aplicación.

    E2.2.5. Factores de confusion
    (Confounding Factors)

    Tabla 9

    Tipo de entidad

    Métrica

    Descripción

    Desarrollador

    Experiencia

    Mide la experiencia del autor/diseñador
    utilizando una escala
    de 0 (ninguna experiencia) a 4 (muy buena
    experiencia).

    Herramienta

    Tipo

    Mide, a través de cuestionarios (ver
    Anexo), el tipo de herramienta utilizada por el
    autor/diseñador de la página: WYSIWYG,
    semi-WYSIWYG o basada en texto.

    Conclusión

    Las empresas de
    informática de todo el mundo desarrollan
    aplicaciones comerciales y educativas con características
    que las clasifican en productos hipermedia o aplicaciones Web.
    Pero, desarrollar estos tipos de productos es caro, exige mucho
    tiempo y personal calificado.

    Analizando la literatura existente sobre
    el asunto se concluye no existir un estándar para la
    planificación de costos de los productos
    hipermedia. Pero los especialistas ya se dieron cuenta de la
    extrema necesidad de una investigación más profunda en este
    tema bien como una adecuada utilización de las
    métricas para las características especiales que
    poseen los softwares hipermedia y las aplicaciones
    Web.

    Bibliografía

    [Verdugo, 1997] P. Verdugo, "Definición de un
    Modelo para el Desarrollo de Proyectos de Tecnología
    Multimedia." Tesis de
    Magister, DPTO. Ing. Informática, de Chile,
    Universidad de
    Santiago, 1997.

    [Jadue, 1993] J. Jadue, "Implementación de
    Laboratorio de
    Multimedios orientado a mejorar calidad de
    docencia en Universidad de Santiago de Chile."
    Trabajo de Título, Ing. de Ejecución en Computación e Informática, DPTO.
    Ing. Informática, Universidad de Santiago de Chile,
    1993.

    [Montilva, 1996] J. Montilva, "Aplicando Modelos de
    procesos de
    software al desarrollo de aplicaciones hipermedia." XXII
    CLEI-Panel 96, Santafé de Bogotá, Colombia,
    1996.

    [Solar, 2000] Solar, M., Verdugo, P., Parada, P., "Un
    Modelo para Diseñar Storyboard en Proyectos Multimedia" –
    International Journal on Computer Applications in Engineering
    Education, Vol. 8, num. 3 and 4, pp. 221-228, 2000.

    [Mendes, 2001] Mendes, E., Fewster, R., "Web
    Metrics-Estimating Design and Authoring Effort", IEEE MultiMedia,
    special issue on Web Engineering, January-March 2001, pp. 50-57,
    2001.

    [Mendes, 2001] Mendes, E., Fewster, R., "Measurement,
    prediction and risk analysis for web applications", Proceedings
    of IEEE Metrics Symposium -7th International Software metrics
    Symposium, IEEE CS Press, 2001.

    [Mendes, 2002] Mendes, E., Mosley, N., Counsell, S.,
    "The Application of Case-Based Reasoning to Early Web Project
    Cost Estimation", IEEE 26th Annual International
    Computer Software and Applications Conference – COMPSAC,
    2002.

    [Mendes, 2002] Mendes, E., Mosley, N., Counsell, S., "A
    Comparison of Size Measures for Predicting Web Design and
    Authoring Effort", Jornal Paper IEE Proc. Software,
    2002.

    [Hihn, 1991] Hihn, J., Habid-agahi, H., "Cost Estimation
    of software intensive projects: a survey of current practices",
    Proc. 13th Int. Conf. On Software Engineering. Austin
    TX, ACM Press. (cap. 23), 1991.

    [Boehm, 1981] Boehm, B., "Software Engineering
    Economics", Englewood Cliffs, NJ: Prentice Hall. (cap.23),
    1981.

    Anexo

    Cuestionario
    1

    http://www.cs.auckland.ac.nz/~emilia/Assignments/exp-questionnaire.html

    415.708 – Hypermedia
    and Multimedia Systems

    Experience
    Questionnaire used for Assignment 2

    The objective of this questionnaire is
    to gather information about your Web authoring experience
    before developing the Web application in assignment
    2.

    Accuracy is a key
    component to completing this form correctly.

    Top of Form 1

    Id: spacee-mail:

    Name: spaceSurname:

    Rate your authoring experience
    before developing the Web application given in assignment
    2:

    spaceNone

    spaceLittle

    spaceAverage

    spaceGood

    spaceVery
    good

    Bottom of Form
    1

    GLOSSARY

    No experience – group
    zero

    This level of experience means that you
    have not had any previous contact with using or authoring on the
    Web.

    back

    Little experience – group
    one

    This level of experience means that you
    have used the Web for browsing and have authored a Web page using
    basic HTML: images, links, paragraphs, lists

    back

    Average experience – group
    two

    This level of experience means that you
    have used everything described for group one plus: use of frames,
    tables, colors, background, bookmarks, animated gifs, and
    knowledge of difference between jpg, gif98a.

    back

    Very Good experience – group
    three

    This level of experience means that you
    have used everything described for group two plus: use of image
    maps (client/server), meta tags, knowledge of HTTP, HTTPS,
    FTP, etc,
    basic java Applets and
    Javascript.

    back

    Very good experience – group
    four

    This level of experience means that you
    have use everything described for group three plus: use of
    complex meta-tags, special characters (e.g., ), cgi scripts, java
    Applets, Javascript, DHTML and XML.

    Cuestionario
    2

    http://www.cs.auckland.ac.nz/~emilia/Assignments/questionnaire.html.

    415.708 – Hypermedia
    and Multimedia Systems

    Questionnaire used for
    Assignment 2

    The objective of this questionnaire is
    to gather information about your Web authoring experience and
    also information about the Web application that you have
    developed as part of assignment 2.

    Accuracy is a key
    component to completing this form correctly.

    Note: All the
    time-related questions should be answered using
    number of hours.

    Please use decimals
    for fractions (e.g. 1.5 hours).

    Top of Form 1

    IDENTIFICATION

    Id: spacee-mail:

    Name: spaceSurname:

    EXPERIENCE

    Rate your perceived
    authoring experience (refer to
    Glossary) after
    developing the Web application given in
    assignment 2:

    spaceNone

    spaceLittle

    spaceAverage

    spaceGood

    spaceVery
    good

    AUTHORING THE
    APPLICATION

    Structuring the
    Application:

    How long did it take you to plan
    the Structure?

    hours

    How long did it take you to inter-link
    (link) the pages in order to build the structure? hours

    Designing the
    interface:

    How long did it take you to
    plan the
    interface
    ? hours

    How long did it take you to
    implement the
    interface
    ? hours

    Testing the
    application:

    How long did it take you to
    test the
    links
    ? hours

    How long did it take you to
    test the media?
    hours

    AUTHORING
    TOOLS

    What authoring
    tools did you use?

    spaceWord for Windows

    spaceNotepad
    or a similar text editor

    spaceFirstPage

    spaceArachnophilia

    Graphics editor:

    Audio editor:

    Video editor:

    Animation editor

    STRUCTURE OF THE
    APPLICATION

    Would you classify
    the structure
    of your application as mainly:

    spaceSequential

    spaceHierarchical

    spaceNetwork

    FILES TO
    DOWNLOAD

    Download the file
    media-file.xls
    (Microsoft
    excel) and fill in the information about each media type,
    other than text, created or reused

    Download the file page-file.xls
    (Microsoft
    excel) and
    fill in the information about each html page you created or
    reused

    Download the file language-file.xls
    (Microsoft
    excel) and fill in the information about each programming
    language (other than html) used

    Finally, draw on an A3 sheet a graph
    representing the structure of your application and hand it in to
    Emilia with your name and id-number.

    Bottom of Form
    1

    GLOSSARY

    Authoring
    Experience

    No experience – group
    zero

    This level of experience means that you
    have not had any previous contact with using or authoring on the
    Web.

    back

    Little experience – group
    one

    This level of experience means that you
    have used the Web for browsing and have authored a Web page using
    basic HTML: images, links, paragraphs, lists

    back

    Average experience – group
    two

    This level of experience means that you
    have used everything described for group one plus: use of frames,
    tables, colors, background, bookmarks, animated gifs, and
    knowledge of difference between jpg, gif98a.

    back

    Very Good experience – group
    three

    This level of experience means that you
    have used everything described for group two plus: use of image
    maps (client/server), meta tags, knowledge of HTTP, HTTPS,
    FTP, etc,
    basic java Applets and Javascript.

    back

    Very good experience – group
    four

    This level of experience means that you
    have use everything described for group three plus: use of
    complex meta-tags, special characters (e.g., ), cgi scripts, java
    Applets, Javascript, DHTML and XML.

    back

    Structuring the
    application

    Structuring the application represents
    organising the information collected into nodes (what content to
    include on each Web page) and identifying the appropriate links
    and where to create them.

    back

    • Structure

    The structure represents the way in
    which the nodes are linked when considering the backbone (core)
    of the application. The structure can be sequential, hierarchical
    or in a network shape, corresponding respectively to nodes
    linearly (sequentially) linked, nodes linked in a tree shape and
    nodes linked in a net shape.

    back

    Design the
    Interface

    Deciding what sort of layout the Web
    pages should have, where information should be included, what
    html templates to use, what colors to use, what types of media to
    include and how to organise it without cluttering the page.
    Involves planning the interface and implementing it.

    back

    • Plan the Interface

    Organise the interface of each page in
    order to keep the "look and feel" as similar as possible
    throughout the application (use of templates). Where to include
    different types of media, which colors to use, font size, any
    appearance considerations would also be part of
    planning.

    back

    • Implement the
      Interface

    Adds the content to the templates
    developed. The decision regarding what content to include on
    each Web page
    is accomplished at the phase entitled
    "Structuring the Application"

    back

    Test the
    application

    Checks if links and different types os
    media work. Testing occurs after the application has been
    developed.

    back

    • Test Links

    Test whether the links are dangling or
    if they are still valid

    back

    • Test Media

    Test whether the different types of
    media work

    back

     

     

    Lic. Vanessa Teixeira de Oliveira
    Sandi

    Aspirante al título de Máster
    por el Instituto Superior Politécnico José Antonio
    Echeverría –

    Havana – Cuba

    Prof: Dra. Sofia Alvarez
    Cárdenas

    Categoria: Ingeniería de
    Software

    CIUDAD UNIVERSITARIA

    "JOSÉ ANTONIO ECHEVERRÍA"

    CUJAE

    CEIS – Centro de Estudios de Ingeniería de
    Sistemas

    Ciudad de La Habana. Cuba.

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter