Want to create interactive content? It’s easy in Genially!

Over 30 million people create interactive content in Genially.

Check out what others have designed:

Transcript

Sesión 28

Ingeniería de Requerimientos

Dr Héctor Jesús Ponce Castillo.

8. Escritura, validación y administración de requerimientos. 8.4 Validación de requerimientos. 8.5 Métricas para la calidad del software.

Agenda

La validación de requerimientos es una etapa crítica en el proceso de desarrollo de software que asegura que los requisitos recopilados reflejen verdaderamente las necesidades y expectativas del cliente y otras partes interesadas. Su objetivo es identificar y corregir errores o inconsistencias en los requisitos antes de que se utilicen como base para el diseño y desarrollo del sistema.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

Importancia de la Validación de Requerimientos: Prevención de Errores Costosos: Detectar y corregir errores en etapas tempranas es mucho más económico que hacerlo en etapas posteriores. Alineación con las Necesidades del Cliente: Garantiza que el producto final cumplirá con lo que el cliente realmente necesita. Mejora de la Calidad del Software: Reduce el riesgo de fallas y retrabajo, mejorando la eficiencia del proyecto.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

Técnicas Comunes de Validación: Revisiones y Análisis de Requerimientos: Revisiones Formales: Reuniones estructuradas donde se analizan los requisitos. Revisiones Informales: Discusiones menos estructuradas para identificar problemas. Prototipos: Crear modelos funcionales del sistema para obtener retroalimentación temprana.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

Simulaciones: Usar herramientas que modelan el comportamiento del sistema. Pruebas de Consistencia y Completitud: Verificar que no haya conflictos entre requisitos y que todos los aspectos necesarios estén cubiertos. Análisis de Rastreabilidad: Asegurar que cada requisito tenga una fuente identificable y que pueda rastrearse a través del ciclo de vida del proyecto.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

Pasos en el Proceso de Validación: Preparación de la Validación: Seleccionar técnicas y planificar actividades. Realización de la Validación: Aplicar las técnicas seleccionadas para evaluar los requisitos. Documentación de Resultados: Registrar hallazgos y recomendaciones. Resolución de Problemas: Corregir errores y actualizar documentos de requisitos.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

Pasos en el Proceso de Validación: Preparación de la Validación: Seleccionar técnicas y planificar actividades. Realización de la Validación: Aplicar las técnicas seleccionadas para evaluar los requisitos. Documentación de Resultados: Registrar hallazgos y recomendaciones. Resolución de Problemas: Corregir errores y actualizar documentos de requisitos.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

1. Revisiones de Requerimientos Consisten en reuniones estructuradas o informales donde los equipos evalúan la calidad y consistencia de los requerimientos. Ejemplo: En un proyecto de desarrollo de un sistema de gestión escolar, el equipo revisa los requisitos: Requisito: "El sistema debe permitir registrar alumnos." Validación: Durante la revisión, el equipo detecta que no se especificó si los registros incluyen fotos o documentos adjuntos.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

2. Prototipos Creación de una versión preliminar o simulación del sistema para validar los requerimientos con los usuarios. Ejemplo: Para una aplicación de pedidos en línea, se diseña un prototipo interactivo donde los usuarios: Realizan pedidos simulados. Identifican funciones faltantes, como agregar notas a los pedidos.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

3. Simulación Modelar el comportamiento del sistema para evaluar si cumple con los requerimientos. Ejemplo: En un sistema bancario, se simula una transferencia internacional: Validar que los requisitos relacionados con tasas de cambio y tiempos de respuesta son correctos.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

4. Entrevistas Consultar a los interesados para verificar si los requerimientos cumplen con sus expectativas. Ejemplo: En un software de gestión de inventarios, los gerentes son entrevistados para: Confirmar si el sistema propuesto considera reportes personalizados.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

5. Análisis de Casos de Uso Revisar los casos de uso para asegurarse de que cubren los escenarios completos y detallados. Ejemplo: Un caso de uso describe cómo un cliente puede buscar productos en un sitio web: Validar si cubre búsquedas avanzadas como por categoría y precio.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

6. Pruebas de Consistencia y Completitud Evaluar si los requerimientos no son contradictorios y si están todos los necesarios. Ejemplo: En un sistema de facturación: Inconsistencia: Un requisito menciona "facturación mensual", pero otro indica "facturación diaria." Falta de completitud: No se especifica cómo se manejarán los impuestos.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

7. Análisis de Rastreabilidad Asegurar que cada requisito tiene una fuente y se puede rastrear a lo largo del desarrollo. Ejemplo: En un sistema ERP, se rastrean los requerimientos para: Verificar que la funcionalidad de "gestión de inventarios" deriva de la solicitud del cliente.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

8. Talleres de Validación Reunir a todas las partes interesadas para revisar y validar los requerimientos de manera colaborativa. Ejemplo: Para un proyecto de CRM, se realiza un taller con el equipo de ventas: Validar que los requisitos cubren necesidades específicas como "integración con redes sociales."

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

9. Checklists de Validación Utilizar listas de verificación para evaluar si los requerimientos cumplen con ciertos criterios. Ejemplo: Una checklist para un sistema de e-learning podría incluir: ¿Están definidos los roles de usuario? (Estudiante, Profesor, Administrador). ¿Se especifican los métodos de evaluación?

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

10. Pruebas Funcionales Simuladas Ejecutar pruebas en una versión inicial del sistema para verificar si los requerimientos son válidos. Ejemplo: En una aplicación de mensajería: Simular el envío de mensajes y validar que el sistema cumple con el requisito de "entrega en menos de 2 segundos."

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

11. Role-Playing Simular interacciones de usuarios con el sistema para validar los requerimientos. Ejemplo: En un sistema de reservas de hoteles, el equipo actúa como usuarios para: Detectar problemas en el flujo de reservaciones.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

12. Diagramas de Modelado Utilizar diagramas como UML para representar los requerimientos y validarlos visualmente. Ejemplo: En un sistema de logística, un diagrama de casos de uso muestra que: Faltan interacciones entre el transportista y el administrador.

8.4 Validación de requerimientos.

Dr Héctor Jesús Ponce Castillo.

Las métricas para la calidad del software son herramientas esenciales que permiten medir y evaluar de manera objetiva atributos específicos de un software. Ayudan a asegurar que el producto cumple con los requisitos funcionales y no funcionales, y que satisface las expectativas de los usuarios y partes interesadas.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

Principales Categorías de Métricas de Calidad del Software 1. Métricas de Fiabilidad La fiabilidad mide la capacidad del software para realizar sus funciones sin fallos durante un período de tiempo. Ejemplos: MTBF (Mean Time Between Failures): Caso práctico: En un sistema bancario, el MTBF se calcula como el promedio de tiempo (en horas) entre fallos que interrumpen las operaciones, como la falla en la ejecución de transferencias internacionales. Tasa de Fallos: Caso práctico: En una aplicación de videollamadas, se mide el número de desconexiones por cada 1000 sesiones.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

Principales Categorías de Métricas de Calidad del Software MTBF (Mean Time Between Failures): Caso práctico: En un sistema bancario, el MTBF se calcula como el promedio de tiempo (en horas) entre fallos que interrumpen las operaciones, como la falla en la ejecución de transferencias internacionales. Disponibilidad = (Tiempo Total - Tiempo de Inactividad) / Tiempo Total × 100% Ejemplo 1 (en horas): Tiempo Total = 720 horas (un mes) Tiempo de Inactividad = 2 horas Cálculo: (720 - 2) / 720 × 100% = 99.72% de disponibilidad

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

2. Métricas de Usabilidad Evalúan la facilidad con la que los usuarios pueden aprender y utilizar el sistema. Ejemplos: Tiempo de Aprendizaje: Caso práctico: Para una herramienta de diseño gráfico, se mide cuánto tiempo toma a un nuevo usuario crear un diseño básico. Satisfacción del Usuario: Caso práctico: Encuestas post-uso en un sistema de reservas en línea, donde los usuarios califican su experiencia en una escala de 1 a 10.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

3. Métricas de Eficiencia Miden la capacidad del software para hacer un uso óptimo de los recursos del sistema. Ejemplos: Tiempo de Respuesta: Caso práctico: Un sistema de búsqueda de productos en un e-commerce debe devolver resultados en menos de 2 segundos. Consumo de Recursos: Caso práctico: Un videojuego móvil debe funcionar en dispositivos con 2 GB de RAM sin comprometer la experiencia del usuario.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

4. Métricas de Mantenibilidad Determinan la facilidad con la que el software puede ser corregido o mejorado. Ejemplos: Complejidad Ciclomática: Mide el número de rutas independientes a través del código. Caso práctico: Un módulo de cálculo en un software de contabilidad con alta complejidad (>15) requerirá más esfuerzo para depuración y cambios. Tiempo de Reparación: Caso práctico: Para un sistema crítico de monitoreo médico, el tiempo promedio para corregir errores debe ser inferior a 1 hora.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

5. Métricas de Portabilidad Evalúan la capacidad del software para adaptarse a diferentes entornos. Ejemplos: Esfuerzo de Adaptación: Caso práctico: Una aplicación móvil que puede ser adaptada a otro sistema operativo en menos de 2 semanas. Pruebas de Compatibilidad: Caso práctico: Un sistema ERP debe ejecutarse correctamente en navegadores como Chrome, Firefox y Safari.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

5. Métricas de Portabilidad Evalúan la capacidad del software para adaptarse a diferentes entornos. Ejemplos: Esfuerzo de Adaptación: Caso práctico: Una aplicación móvil que puede ser adaptada a otro sistema operativo en menos de 2 semanas. Pruebas de Compatibilidad: Caso práctico: Un sistema ERP debe ejecutarse correctamente en navegadores como Chrome, Firefox y Safari.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

MOPROSOFT es un modelo de procesos diseñado específicamente para las micro, pequeñas y medianas empresas (MiPyMEs) de desarrollo de software en México. Surge como una iniciativa para mejorar la calidad y competitividad del software mexicano, proporcionando un marco de referencia para la gestión, operación y mejora de procesos.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

Estructura: Alta Dirección:

  • Definición de políticas, objetivos y planificación estratégica.
  • Supervisión de la implementación del modelo.
Gestión de Procesos Organizacionales:
  • Incluye procesos como la administración de recursos humanos, gestión de infraestructura y mejora continua.
Gestión de Procesos de Desarrollo:
  • Enfocado en la ingeniería de software y actividades relacionadas con la entrega de productos y servicios.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

Beneficios:

  • Mejora la calidad del software producido.
  • Incrementa la eficiencia operativa.
  • Facilita la certificación en estándares internacionales.
Ejemplo de Aplicación: Una empresa desarrolladora de software utilizó MOPROSOFT para implementar mejores prácticas, reduciendo los defectos en productos finales en un 30% y aumentando la satisfacción del cliente.

8.5 Métricas para la Calidad del Software

Dr Héctor Jesús Ponce Castillo.

Dr Héctor Jesús Ponce Castillo.

¿ Dudas ?

Dr Héctor Jesús Ponce Castillo.

Gracias