sábado, 12 de noviembre de 2011

Taller 6. Mejores Prácticas de la Gestión de Configuración

Cada grupo deberá sintetizar las ideas principales de cada una de las mejores prácticas y publicarlas como respuesta a este mensaje.

5 comentarios:

  1. Publicado por:
    Orlando Arrieta
    Victor Santafè

    Source code management
    Asegurar que el código no se pierda, para ello el código debe ser rastreable, debe poder realizarse la gestión de la distribución del còdigo entre los miembros del equipo, debe existir la posibilidad de retormar versiones anteriores.

    Build engineering
    Busca asegurar una forma eficiente de generar los archivos binarios a partir del código fuente. Se debe tener en cuenta los elementos necesarios para la correcta compilación en diferentes plataformas, asegurando también que todas las dependencias son agregadas.

    Environment configuration
    Define las características del entorno en que el software debe ser desplegado, esto incluye hardware y software. También debe proveer entornos de prueba que garanticen que el desarrollo puede ser realizado efcientemente y con el uso apropiado de los recursos existentes.

    Change control
    Se encarga de la gestión de los cambios que se dan en los entornos de producción. Debe darse la posibilidad de evaluar los efectos que un cambio propicie en el producto final. Va desde revisar los cambios de los entornos de producciòn hasta controlar los cambios en los procesos.

    Release management
    Crear procesos automatizados donde se identifiquen claramente los items de configuración y sus dependencias que deben ser empaquetados en una liberación del producto. Debe ser lo más automatizado posible para evitar errores humanos. Cada nuevo paquete de liberación debe poseer un identificador único que sea legible. La gestión de la liberación debe servir para conocer el estado de las liberaciones.

    Deployment
    Se encarga de tomar las liberaciones empaquetadas y llevarlas al entorno objetivo sin problemas. También se encarga de echar atrás un despliegue que no ha salido bien. Este proceso también debe conocer qué cosas están en producción y también si algún cambio no autorizado ha sido realizado.

    ResponderEliminar
  2. 1 Gestión de código:
    El objetivo de la gestión del código es garantizar que se tenga el código para su uso en sus diferentes versiones y así tomar decisiones referentes a posibles cambios.

    2 Ingeniería de la compilación:
    Garantiza que lo compilado por el grupo de desarrollo se ejecute en otras maquinas.

    3 Configuración del ambiente.
    Consiste en tener en cuenta el ambiente y posibles ambientes en el cual se va a ejecutar el software para asi incluirlo dentro del desarrollo.

    4 Control de cambios. Define un procedimiento formal a seguir para la solicitudes de cambios.

    5 Administración de la liberación:
    Consiste en definir los items de configuración pertenecientes a una versión especificas para así empaquetarlos.

    6 Despliegue:
    Consiste en asegurar de que se puede de forma fiable promover una liberacion hacia adelante o dar un paso atrás y volver a una versión que
    se ha desplegado anteriormente.

    Por: Juan Carlos Rhenales
    Juan Karlos Solorzano Benavidez

    ResponderEliminar
  3. Por Alvaro Somerson Cabarcas y Luis Fernando Benavides:

    1. Administración del código fuente: Se refiere al aseguramiento del código fuente, tenerlo en un lugar seguro y confiable, permitiendo fácil acceso y disponibilidad del código en cualquiera de las versiones del Item de configuración.
    2. Ingeniería de Compilación: Se refiere a que el código no presente ningún error, y en caso tal haya alguno sea fácilmente identificado y reparable.
    3. Configuración del Entorno: Los entornos de desarrollo y de despliegue deben ser identificados y entendidos por todas las partes o personas involucradas. La administración de entornos garantiza la calidad del proyecto realizado.
    4. Control de cambio: Los cambios deben ser planificados y no sólo de último minuto realizar estos cambios sin previas revisiones y aprobaciones.
    5. Administración de Liberaciones: El empaquetado de estas liberaciones deben ser sin intromisión humana para disminuir fallas y errores, buscando que el proceso sea lo más automatizado posible.
    6. Despliegue: Al relizar un despliegue este debe ser confiable y lo mas simple posible, de igual forma debe permitir que haya trazabilidad entre archivos. Y se debe identificar cuando se presenten cambios sin autorización.

    ResponderEliminar
  4. Tatiana Montoya
    Diego Dominguez

    1. Gestión del código fuente:
    El objetivo principal de esta practica es asegurar el código fuente, evitando perdida de datos, mejorar la productividad del equipo permitiendo editar mas de una linea de código a la vez, proporcionar completa trazabilidad y registro de control de cambios permitiendo retroceder a un estado anterior si es necesario.

    2. Ingeniería de la compilación
    Esta practica tiene como objetivo garantizar un proceso de construcción, sea seguro, fácil usando herramientas automatizadas y que sea compatible con otros entornos de despliegue.

    3. Configuración del entorno:
    Define el entorno de desarrollo y ejecución en el que el producto debe funcionar sin problemas. Las dependencias de software y los requisitos tanto de hardware como de software deben estar bien definidos para garantizar un entorno estable y solido.

    4. Control de cambios:
    En practica tiene como objetivo controlar todos los cambios haciendo una planificación profunda y evaluar el impacto que tiene cada cambio en los procesos de desarrollo y en el producto final como tal.

    5. Gestión de liberaciones
    En esta etapa se busca empaquetar el software de manera automatizada registrando todos los changelog del software y definiendo claramente las dependencias y requisitos para su ejecución en el entorno de producción.

    6. Implantación:
    .Esta practica busque que los paquetes de software generados sean desplegados en el entorno de ejecución de manera fácil de la manera mas transparente posible. Esta fase debe garantizar avanzar o retroceder en numero de versión del software sin mayores problemas. también debe tener en cuenta los cambios en el entorno de modo que se pueda dar una respuesta oportuna.

    ResponderEliminar
  5. Danny Duran Vesga
    Alberto Zapata

    1. Administración del Código Fuente

    las ideas principales de este proceso son:

    Trazabilidad del código generado. Se debe separar el código innecesario, dejando solo el código que hará parte de su compilación. Gestionar el trabajo colaborativo. Optimizar el código.

    2. Ingeniería de la Compilación
    Construir un ejecutable que pueda ser distribuido y ejecutado en maquinas de similar arquitectura.

    3. Ambiente de Configuración
    Consiste en configurar el ambiente de desarrollo del software.
    Asegurar el despliegue de una aplicación de acuerdo a los requerimientos de hardware y software mínimos.

    4. Control de Cambios
    Todos los cambios deben ser documentados antes de que sean realizados.
    Permite administrar el proceso de cambios desde la justificación del cambio hasta el impacto que causa en un ambiente de producción.
    Existe un proceso o etapas en el que se incia la solicitud del cambio como un requerimiento, luego este pasa a ser evaluado tanto el requerimiento como el impacto en el entorno, una vez es aprobado este desarrollado pasa a ser implementado.

    5. Administración de la Liberación
    Permite la administración de distintas liberaciones de un mismo proyecto, gestionando de manera automática las versiones de cada ítem de configuración que hace parte de esa liberación.

    6. Despliegue
    El despliegue de nuevas versiones debe evaluar el impacto, debido a que el cliente puede no estar familiarizado con la nueva versión que se esta desplegando.
    Esta muy relacionado a la administración de la liberación, debido a que son los encargados de poner en producción la aplicación.

    7. CONCLUSIÒN
    Cada una de estas practicas hace parte de un proceso que esta estrechamente relacionado con el ciclo de vida de un proyecto de desarrollo de software, podría iterar en diferente orden según el contexto en el que se desarrolla, es decir, según las necesidades que surjan durante el desarrollo y despliegue del proyecto.

    ResponderEliminar