Desarrollo de Software: Metodologías Ágiles y Ciclo de Vida

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 8,29 KB

Lenguaje Ensamblador

Pregunta: ¿Cuál de las siguientes características no es propia del lenguaje ensamblador?

Respuesta: b. No necesita traducción al lenguaje máquina para poder ejecutarse.

Entornos de Desarrollo

Relación de componentes de un entorno de desarrollo con su principal característica:

  • Editor de textos: Para escribir el código fuente.
  • Compilador/Intérprete: Convierte el código fuente en ejecutable.
  • Depurador: Permite encontrar y corregir errores en el código.
  • Interfaz gráfica: Facilita la interacción visual del usuario con la aplicación.

Requisitos de Software

Pregunta: En un supuesto práctico, ¿qué tipo de requisito es el deseo del cliente de incluir en la aplicación el control de stock de productos en el almacén?

Respuesta: b. Funcional.

Modelos de Ciclo de Vida

Relación de cada modelo de ciclo de vida con su principal característica:

  • En cascada: No permite volver atrás en el proyecto.
  • Evolutivo incremental: Cada versión nueva es más perfecta que la anterior.
  • En espiral: El proyecto se divide en varias regiones.
  • En cascada con realimentación: El paso se realiza en etapas y permite volver atrás.

Pregunta: De los siguientes requisitos que se enumeran para una determinada aplicación, ¿cuál no es funcional?

Respuesta: c. Si se solicita el precio de un producto, se debe poder consultar de forma inmediata.

Código Fuente y Objeto

Pregunta: Solo se genera código objeto una vez que el código _____ está libre de errores sintácticos y semánticos.

Respuesta: fuente.

Entornos de Desarrollo Propietarios

Pregunta: ¿Cuáles de los siguientes entornos son propietarios?

Respuestas: b. C++ Builder, c. JCreator.

Metodologías Ágiles: Scrum

Introducción

Scrum es una de las metodologías ágiles más populares para la gestión y desarrollo de proyectos. Se centra en la entrega incremental del producto, la colaboración continua del equipo y la adaptación rápida a los cambios.

Roles

  • Product Owner (Propietario del Producto): Es el encargado de definir y priorizar las características del producto que se desarrollará. Representa los intereses del cliente y se asegura de que el equipo esté trabajando en lo más importante. Su principal responsabilidad es gestionar el Product Backlog, una lista priorizada de todo lo que se necesita en el producto.
  • Scrum Master: No es un jefe del equipo, sino un guía que asegura que el equipo siga los principios y prácticas de Scrum. El Scrum Master elimina los obstáculos que puedan afectar al equipo y ayuda a mantener un ambiente productivo.
  • Equipo de Desarrollo: Está formado por los profesionales que se encargan de crear el producto o el incremento. En el marco de Scrum, no existen jerarquías dentro del equipo, todos colaboran para alcanzar el objetivo del Sprint.

Artefactos

  • Product Backlog: Es la lista priorizada de requisitos que describen todo lo necesario para el producto. Esta lista es dinámica y evoluciona a medida que se descubren nuevas necesidades y se cambian las prioridades. El Product Owner se encarga de mantener y priorizar el Product Backlog.
  • Sprint Backlog: Es el conjunto de elementos del Product Backlog que el equipo se compromete a completar durante un Sprint.
  • Incremento: Es el resultado del trabajo completado durante el Sprint. Es una versión funcional del producto que está lista para ser entregada y que añade valor. Cada incremento debe ser potencialmente desplegable.

Eventos

  • Sprint: Ciclo de trabajo de tiempo fijo, usualmente de 2 a 4 semanas, durante el cual el equipo desarrolla un incremento del producto. Todos los elementos del trabajo se planifican y ejecutan dentro del Sprint. El Sprint comienza con una reunión de planificación y termina con una revisión y una retrospectiva.
  • Sprint Planning (Planificación del Sprint): En esta reunión se decide qué trabajo se hará durante el Sprint. El Product Owner explica qué elementos del Product Backlog tienen mayor prioridad, y el equipo colabora para planificar el trabajo que se comprometerán a realizar. Se define también el Objetivo del Sprint, que es una meta clara y precisa a lograr durante el Sprint.
  • Daily Scrum (Scrum Diario): Es una reunión diaria de 15 minutos donde el equipo se sincroniza y discute el progreso hacia el objetivo del Sprint. Cada miembro del equipo comparte lo que hizo el día anterior, lo que hará hoy y si hay algún impedimento.
  • Sprint Review (Revisión del Sprint): Esta reunión se celebra al final del Sprint para revisar el trabajo completado. El equipo presenta el incremento a los interesados y recibe retroalimentación. Esta retroalimentación es esencial para alinear el desarrollo con las expectativas del cliente y ajustar el Product Backlog.
  • Sprint Retrospective (Retrospectiva del Sprint): Después de la Revisión del Sprint, el equipo se reúne para reflexionar sobre lo que funcionó bien y lo que puede mejorar. La Retrospectiva tiene el propósito de analizar el proceso y aplicar mejoras en futuros Sprints, fomentando la mejora continua.

Metodología Kanban

La metodología Kanban se implementa por medio de tableros Kanban. Se trata de un método visual de gestión de proyectos que permite a los equipos visualizar sus flujos de trabajo y la carga de trabajo. En un tablero Kanban, el trabajo se muestra en un proyecto en forma de tablero organizado por columnas. Tradicionalmente, cada columna representa una etapa del trabajo.

Ventajas de Scrum

  • Adaptabilidad y Flexibilidad: Los equipos son capaces de adaptarse rápidamente a los cambios gracias a la estructura iterativa e incremental.
  • Entrega Continua de Valor: El equipo entrega versiones funcionales del producto de forma continua. Esto permite a los clientes obtener valor temprano y frecuentemente.
  • Transparencia: Todos los eventos aportan visibilidad al trabajo del equipo.
  • Enfoque en el Usuario Final: Con la presencia del Product Owner, se garantiza que el producto final esté alineado con las expectativas del usuario final.
  • Autoorganización del Equipo: Scrum fomenta la autoorganización y la autonomía del equipo, permitiendo que los miembros del equipo tengan el poder de decidir cómo llevar a cabo el trabajo y la responsabilidad de cumplir sus compromisos.
  • Mejora Continua: El equipo analiza constantemente sus procesos de trabajo y aplica mejoras.

Objetivos en Metodologías Ágiles

En las metodologías ágiles se suelen dividir los objetivos de lo general a lo concreto:

  • Iniciativas: Una iniciativa es un concepto más amplio que puede agrupar varias épicas que comparten un mismo objetivo general o funcionalidad. Las iniciativas suelen estar alineadas con los objetivos estratégicos de la empresa o producto y pueden abarcar un periodo de desarrollo mucho más largo que el de una épica o una historia de usuario.
  • Épicas: Una épica es una historia de usuario grande que se descompone en varias historias de usuario más pequeñas. Una épica representa un conjunto de funcionalidades relacionadas que se deben implementar para cumplir con una necesidad del cliente más amplia. No se pueden abordar en un solo Sprint.
  • Historias de Usuario: Las historias de usuario son descripciones simples y concisas de una característica desde el punto de vista del usuario. Cada historia representa una pequeña funcionalidad que aporta valor al usuario final.

Entradas relacionadas: