Presentación

Especialízate en Calidad del Software desde la perspectiva técnica y de gestión; titulándote en 12 meses, y marca la diferencia en tu entorno profesional”

##IMAGE##

El concepto de Deuda Técnica aplicándose en la actualidad, por un gran número de corporaciones y administraciones con sus proveedores, refleja la forma improvisada en la que se han desarrollado los proyectos. Generando un nuevo coste implícito al tener que rehacer un proyecto por haber adoptado una solución rápida y sencilla frente a lo que debe ser un planteamiento escalable en la evolución del proyecto. 

Y es que de unos años hasta ahora se han desarrollado los proyectos de forma muy rápida, con el objetivo de cerrarlos con el cliente bajo criterios de precio y plazos; en lugar de plantear un enfoque de calidad. Ahora esas decisiones, están pasando factura a muchos proveedores y clientes.

Este Máster de Formación Permanente capacitará al profesional informático para analizar los criterios subyacentes en la Calidad del Software, en todos los niveles. Criterios como la normalización de las bases de datos, el desacoplamiento entre componentes de un sistema de información, las arquitecturas escalables, las métricas, la documentación, tanto funcional como técnica. Además de las metodologías en la gestión y desarrollo de proyectos y otros métodos para asegurar la calidad, como las técnicas de trabajo colaborativo; incluso la denominada Pair Programming, que permite que el conocimiento resida en la empresa y no en las personas.

La inmensa mayoría de los másteres de este tipo se centran en una tecnología, en un lenguaje o en una herramienta. Este programa se hace exclusivo en la manera que conciencia al profesional en la importancia de la calidad del software, reducir la deuda técnica de los proyectos con uno de calidad en lugar de un enfoque basado en la economía y los plazos cortos; dota al alumno de conocimientos especializados, de tal modo que pueda justificarse la presupuestación de  proyectos.

Para hacer esto posible TECH Universidad Tecnológica ha reunido a un grupo de expertos en el área que transmitirán los conocimientos y experiencias más actualizados. A través de un moderno campus virtual con contenido teórico y práctico, distribuido en diferentes formatos. Serán 10 Módulos divididos en diversos temas y subtemas que harán posible el aprendizaje en 12 meses atendiendo a la metodología Relearning, que facilita la memorización y aprendizaje de forma ágil y eficiente.

El Máster de Formación Permanente en Calidad del Software analiza los criterios subyacentes al tema en todos los niveles. Amplía tu nivel de experiencia. Matricúlate ahora”

Este Máster de Formación Permanente en Calidad del Software contiene el programa educativo más completo y actualizado del mercado. Sus características más destacadas son:

  • El desarrollo de casos prácticos presentados por expertos en Desarrollo de Software
  • Los contenidos gráficos, esquemáticos y eminentemente prácticos con los que está concebido recogen una información científica y práctica sobre aquellas disciplinas indispensables para el ejercicio profesional
  • Los ejercicios prácticos donde realizar el proceso de autoevaluación para mejorar el aprendizaje
  • Su especial hincapié en metodologías innovadoras 
  • Las lecciones teóricas, preguntas al experto y trabajos de reflexión individual
  • La disponibilidad de acceso a los contenidos desde cualquier dispositivo fijo o portátil con conexión a internet

Desarrolla los criterios, tareas y metodologías avanzadas para comprender la relevancia de un trabajo orientado a la calidad, y proveer soluciones efectivas a tu empresa o cliente” 

El programa incluye, en su cuadro docente, a profesionales del sector que vierten en esta capacitación la experiencia de su trabajo, además de reconocidos especialistas de sociedades de referencia y universidades de prestigio.

Su contenido multimedia, elaborado con la última tecnología educativa, permitirá al profesional un aprendizaje situado y contextual, es decir, un entorno simulado que proporcionará una capacitación inmersiva programada para entrenarse ante situaciones reales.

El diseño de este programa se centra en el Aprendizaje Basado en Problemas, mediante el cual el profesional deberá tratar de resolver las distintas situaciones de práctica profesional que se le planteen a lo largo del curso académico. Para ello, contará con la ayuda de un novedoso sistema de vídeos interactivos realizados por reconocidos expertos.

Un programa centrado en la concienciación sobre la importancia de la calidad del software y la necesidad de implantar políticas de calidad en los software Factories"

##IMAGE##

Aprende de una manera práctica y flexible. Compartiendo tu día a día con esta capacitación 100% online exclusiva de TECH Universidad Tecnológica"

Temario

La estructura y contenidos de este Máster de Formación Permanente han sido desarrollados para abarcar los temas más importantes para el desarrollo de un Software con Calidad. Compuesto por 10 módulos de enseñanza, que van desde desarrollo de proyectos software, la documentación funcional y técnica, el test Driven Developement y las diferentes metodologías, hasta la implementación de soluciones prácticas avanzadas con DevOps e integración continua, todo fundamentado en alcanzar la calidad del software. El amplio contenido multimedia, seleccionado con rigor por los docentes expertos, será de gran apoyo para aliviar la carga lectiva y servir de material de referencia para futuras consultas.

##IMAGE##

Los casos prácticos, basados en la realidad, te servirán para afianzar y contextualizar toda la teoría aprendida durante el programa”

Módulo 1. Calidad del Software. Niveles de desarrollo TRL

1.1. Elementos que influyen en la calidad del software (I). La deuda técnica 

1.1.1. La deuda técnica. Causas y consecuencias
1.1.2. Calidad del software. Principios generales 
1.1.3. Software sin principios y con principios de calidad 

1.1.3.1. Consecuencias
1.1.3.2. Necesidad de aplicación de principios de calidad en el software 

1.1.4. Calidad del software. Tipología 
1.1.5. Software de calidad. Rasgos específicos 

1.2. Elementos que influyen en la calidad del software (II). Costes asociados 

1.2.1. Calidad del software. Elementos influyentes 
1.2.2. Calidad del software. Ideas erróneas 
1.2.3. Calidad del software. Costes asociados 

1.3. Modelos de calidad del software (I). Gestión del conocimiento 

1.3.1. Modelos de calidad generales 

1.3.1.1. Gestión de la calidad total 
1.3.1.2. Modelo Europeo de Excelencia Empresarial (EFQM) 
1.3.1.3. Modelo Seis-sigma 

1.3.2. Modelos de la Gestión del Conocimiento 

1.3.2.1. Modelo Dyba 
1.3.2.2. Modelo SEKS 

1.3.3. Factoría de experiencia y paradigma QIP 
1.3.4. Modelos de calidad en el uso (25010) 

1.4. Modelos de calidad del software (III). Calidad en datos, procesos y modelos SEI 

1.4.1. Modelo de calidad de datos 
1.4.2. Modelado del proceso software 
1.4.3. Software & Systems Process Engineering Metamodel Specification (SPEM) 
1.4.4. Modelos del SEI 

1.4.4.1. CMMI 
1.4.4.2. SCAMPI 
1.4.4.3. IDEAL 

1.5. Normas ISO de calidad del software (I). Análisis de los estándares 

1.5.1. Normas ISO 9000 

1.5.1.1. Normas ISO 9000 
1.5.1.2. Familia ISO de normas de calidad (9000) 

1.5.2. Otras normas ISO relacionadas con calidad 
1.5.3. Normas de modelado de calidad (ISO 2501) 
1.5.4. Normas de medida de la calidad (ISO 2502n) 

1.6. Normas ISO de calidad del software (II). Requisitos y evaluación 

1.6.1. Normas sobre requisitos de calidad (2503n) 
1.6.2. Normas sobre evaluación de la calidad (2504n) 
1.6.3. ISO/IEC 24744:2007 

1.7. Niveles de desarrollo TRL (I). Niveles el 1 al 4 

1.7.1. Niveles TRL 
1.7.2. Nivel 1: principios básicos 
1.7.3. Nivel 2: concepto y/o aplicación 
1.7.4. Nivel 3: función crítica analítica 
1.7.5. Nivel 4: validación de componente en entorno de laboratorio 

1.8. Niveles de desarrollo TRL (II). Niveles del 5 al 9 

1.8.1. Nivel 5: validación de componente en entorno relevante 
1.8.2. Nivel 6: modelo sistema/subsistema 
1.8.3. Nivel 7: demostración en entorno real 
1.8.4. Nivel 8: sistema completo y certificado 
1.8.5. Nivel 9: éxito en el entorno real 

1.9. Niveles de desarrollo TRL. Usos 

1.9.1. Ejemplo de empresa con entorno de laboratorio 
1.9.2. Ejemplo de empresa I+D+i 
1.9.3. Ejemplo de empresa de I+D+i industrial 
1.9.4. Ejemplo de empresa mixta laboratorio-ingeniería 

1.10. Calidad del software. Detalles clave 

1.10.1. Detalles metodológicos 
1.10.2. Detalles técnicos 
1.10.3. Detalles en la gestión de proyectos software 

1.10.3.1. Calidad de los sistemas informáticos 
1.10.3.2. Calidad del producto software 
1.10.3.3. Calidad del proceso software

Módulo 2. Desarrollo de Proyectos Software. Documentación Funcional y Técnica

2.1. Gestión de proyectos

2.1.1. Gestión de proyectos en la calidad del software
2.1.2. Gestión de proyectos. Ventajas
2.1.3. Gestión de proyectos. Tipología

2.2. Metodología en la gestión del proyecto

2.2.1. Metodología en la gestión de proyectos´
2.2.2. Metodologías de proyectos. Tipología
2.2.3. Metodologías en la gestión de proyectos. Aplicación

2.3. Fase de identificación de requisitos

2.3.1. Identificación de los requisitos de un proyecto
2.3.2. Gestión de las reuniones de un proyecto
2.3.3. Documentación a aportar

2.4. Modelo

2.4.1. Fase inicial
2.4.2. Fase de análisis
2.4.3. Fase de construcción
2.4.4. Fase de pruebas
2.4.5. Entrega

2.5. Modelo de datos a utilizar

2.5.1. Determinación del nuevo modelo de datos
2.5.2. Identificación del plan de migración de datos
2.5.3. Juego de datos

2.6. Repercusiones en otros proyectos

2.6.1. Repercusión de un proyecto. Ejemplos
2.6.2. Riesgos en el proyecto
2.6.3. Gestión del riesgo

2.7. “Must” del proyecto

2.7.1. Must de proyecto
2.7.2. Identificación de los Must del proyecto
2.7.3. Identificación de los puntos de ejecución para la entrega de un proyecto

2.8. El equipo para la construcción del proyecto

2.8.1. Roles a intervenir según el proyecto
2.8.2. Contacto con RRHH para contratación
2.8.3. Entregables y calendario del proyecto

2.9. Aspectos técnicos de un proyecto software

2.9.1. Arquitecto del proyecto. Aspectos Técnicos
2.9.2. Líderes técnicos
2.9.3. Construcción del proyecto software
2.9.4. Evaluación de la calidad del código, sonar

2.10. Entregables del proyecto

2.10.1. Análisis funcional
2.10.2. Modelo de datos
2.10.3. Diagrama de estados
2.10.4. Documentación técnica

Módulo 3. Testing de Software. Automatización de Pruebas

3.1. Modelos de calidad del software

3.1.1. Calidad de producto
3.1.2. Calidad de proceso
3.1.3. Calidad de uso

3.2. Calidad de proceso

3.2.1. Calidad de proceso
3.2.2. Modelos de madurez
3.2.3. Normativa ISO 15504

3.2.3.1. Propósitos
3.2.3.2. Contexto
3.2.3.3. Etapas

3.3. Normativa ISO/IEC 15504

3.3.1. Categorías de proceso
3.3.2. Proceso de desarrollo. Ejemplo
3.3.3. Fragmento de perfil
3.3.4. Etapas

3.4. CMMI (Capability Maturity Model Integration

3.4.1. CMMI. Integración de modelos de madurez de capacidades
3.4.2. Modelos y áreas. Tipología
3.4.3. Áreas de proceso
3.4.4. Niveles de capacidad
3.4.5. Administración de procesos
3.4.6. Administración de proyectos

3.5. Gestión de cambios y repositorios

3.5.1. Gestión de cambios en software

3.5.1.1. Ítem de configuración. Integración continua
3.5.1.2. Líneas
3.5.1.3. Flujogramas
3.5.1.4. Branches

3.5.2. Repositorio

3.5.2.1. Control de versiones
3.5.2.2. Equipo de trabajo y uso del repositorio
3.5.2.3. Integración continua en el repositorio

3.6. Team Foundation Server (TFS)

3.6.1. Instalación y configuración
3.6.2.  Creación de un proyecto de equipo
3.6.3. Incorporación de contenido al control de código fuente
3.6.4. TFS on Cloud

3.7. Testing

3.7.1. Motivación para la realización de pruebas
3.7.2. Pruebas de verificación
3.7.3. Pruebas beta
3.7.4. Implementación y mantenimiento

3.8. Pruebas de carga

3.8.1. Load testing
3.8.2. Pruebas con LoadView
3.8.3. Pruebas con K6 Cloud
3.8.4. Pruebas con Loader

3.9. Pruebas unitarias, de stress y de resistencia

3.9.1. Motivación de las pruebas unitarias
3.9.2. Herramientas para Unit Testing
3.9.3. Motivación de las pruebas de stress
3.9.4. Pruebas usando StressTesting
3.9.5. Motivación para las pruebas de resistencia
3.9.6. Pruebas usando LoadRunner

3.10. La Escalabilidad. Diseño de software escalable

3.10.1. La escalabilidad y la arquitectura del software
3.10.2. La independencia entre capas
3.10.3. El acoplamiento entre capas. Patrones de arquitectura

Módulo 4. Metodologías de Gestión de Proyectos Software. Metodologías Waterfall frente a Metodologías Agiles

4.1. Metodología Waterfall

4.1.1. Metodología Waterfall
4.1.2. Metodología Waterfall. Influencia en la calidad del software
4.1.3. Metodología Waterfall. Ejemplos

4.2. Metodología Agile

4.2.1. Metodología Agile
4.2.2. Metodología Agile. Influencia en la calidad del software
4.2.3. Metodología Agile. Ejemplos

4.3. Metodología Scrum

4.3.1. Metodología Scrum
4.3.2. Manifiesto Scrum
4.3.3. Aplicación de Scrum

4.4. Panel Kanban

4.4.1. Método Kanban
4.4.2. Panel Kanban
4.4.3. Panel Kanban. Ejemplo de aplicación

4.5. Gestión de proyecto en Waterfall

4.5.1. Fases en un proyecto
4.5.2. Visión en un proyecto Waterfall
4.5.3. Entregables a tener en cuenta

4.6. Gestión de proyecto en Scrum

4.6.1. Fases en un proyecto Scrum
4.6.2. Visión en un proyecto Scrum
4.6.3.  Entregables a considerar

4.7. Waterfall vs. Scrum Comparativa

4.7.1. Planteamiento de un proyecto piloto
4.7.2. Proyecto aplicando Waterfall. Ejemplo
4.7.3. Proyecto aplicando Scrum. Ejemplo

4.8. Visión del cliente

4.8.1. Documentos en un Waterfall
4.8.2. Documentos en un Scrum
4.8.3. Comparativa

4.9. Estructura de Kanban

4.9.1. Historias de usuario
4.9.2. Backlog
4.9.3. Análisis de Kanban

4.10. Proyectos híbridos

4.10.1. Construcción del proyecto
4.10.2. Gestión proyecto
4.10.3. Entregables a considerar

Módulo 5. TDD (Test Driven Developement). Diseño de Software Guiado por las Pruebas

5.1. TDD. Test Driven Development

5.1.1. TDD. Test Driven Development
5.1.2. TDD. Influencia del TDD en la calidad
5.1.3.  Diseño y desarrollo basado en pruebas. Ejemplos

5.2. Ciclo de TDD

5.2.1. Elección de un requisito
5.2.2. Realización de pruebas. Tipologías

5.2.2.1. Pruebas unitarias
5.2.2.2. Pruebas de integración
5.2.2.3. Pruebas End To End

5.2.3. Verificación de la prueba. Fallos
5.2.4. Creación de la implementación
5.2.5. Ejecución de las pruebas automatizadas
5.2.6. Eliminación de la duplicación
5.2.7. Actualización de la lista de requisitos
5.2.8. Repetición del ciclo TDD
5.2.9. Ciclo TDD. Ejemplo teórico-práctico

5.3. Estrategias de implementación de TDD

5.3.1. Implementación falsa
5.3.2. Implementación triangular
5.3.3. Implementación obvia

5.4. TDD. Uso. Ventajas e inconvenientes

5.4.1. Ventajas de uso
5.4.2. Limitaciones de uso
5.4.3. Balance de calidad en la implementación

5.5. TDD. Buenas prácticas

5.5.1. Reglas TDD
5.5.2. Regla 1: tener un test previo que falle antes de codificar en producción
5.5.3. Regla 2: no escribir más de un test unitario
5.5.4. Regla 3: no escribir más código de lo necesario
5.5.5. Errores y anti patrones a evitar en una TDD

5.6. Simulación de proyecto real para usar TDD (I)

5.6.1. Descripción general del proyecto (Empresa A)
5.6.2. Aplicación de la TDD
5.6.3. Ejercicios propuestos
5.6.4. Ejercicios. Feedback

5.7. Simulación de proyecto real para usar TDD (II)

5.7.1. Descripción general del proyecto (Empresa B)
5.7.2. Aplicación de la TDD
5.7.3. Ejercicios Propuestos
5.7.4. Ejercicios. Feedback

5.8. Simulación de proyecto real para usar TDD (III)

5.8.1. Descripción general del proyecto (Empresa C)
5.8.2. Aplicación de la TDD
5.8.3. Ejercicios Propuestos
5.8.4. Ejercicios. Feedback

5.9. Alternativas a TDD. Test Driven Development

5.9.1. TCR (Test Commit Revert)
5.9.2. BDD (Behavior Driven Development)
5.9.3. ATDD (Acceptance Test Driven Development)
5.9.4. TDD. Comparativa teórica

5.10. TDD TCR, BDD y ATDD. Comparación práctica

5.10.1. Definición del problema
5.10.2. Resolución con TCR
5.10.3. Resolución con BDD
5.10.4. Resolución con ATDD

Módulo 6. DevOps. Gestión de Calidad del Software

6.1. DevOps. Gestión de calidad del software

6.1.1. DevOps
6.1.2. DevOps y calidad del software
6.1.3. DevOps. Beneficios de la cultura DevOps

6.2. DevOps. Relación con Agile

6.2.1. Entrega acelerada
6.2.2. Calidad
6.2.3. Reducción de costes

6.3. Puesta en marcha de DevOps

6.3.1. Identificación de problemas
6.3.2. Implantación en una compañía
6.3.3. Métricas de implantación

6.4. Ciclo de entrega de software

6.4.1. Métodos de diseño
6.4.2. Convenios
6.4.3. Hoja de ruta

6.5. Desarrollo de código libre de errores

6.5.1. Código mantenible
6.5.2. Patrones de desarrollo
6.5.3. Testing de código
6.5.4. Desarrollo de software a nivel de código. Buenas prácticas

6.6. Automatización

6.6.1. Automatización. Tipos de pruebas
6.6.2. Coste de la automatización y mantenimiento
6.6.3. Automatización. Mitigando errores

6.7. Despliegues

6.7.1. Valoración de objetivos
6.7.2. Diseño de un proceso automático y adaptado
6.7.3. Retroalimentación y capacidad de respuesta

6.8. Gestión de incidentes

6.8.1. Preparación para incidentes
6.8.2. Análisis y resolución del incidente
6.8.3. Cómo evitar futuros errores

6.9. Automatización de despliegues

6.9.1. Preparación para despliegues automáticos
6.9.2. Evaluación de la salud del proceso automático
6.9.3. Métricas y capacidad de vuelta atrás

6.10. Buenas prácticas. Evolución de DevOps

6.10.1. Guía de buenas prácticas aplicando DevOps
6.10.2. DevOps. Metodología para el equipo
6.10.3. Evitando nichos

Módulo 7. DevOps e Integración Continua. Soluciones Prácticas Avanzadas en Desarrollo de Software

7.1. Flujo de la entrega del software

7.1.1. Identificación de actores y artefactos
7.1.2. Diseño del flujo de entrega de software
7.1.3. Flujo de entrega del software. requisitos entre etapas

7.2. Automatización de procesos

7.2.1. Integración continua
7.2.2. Despliegue continuo
7.2.3. Configuración de entornos y gestión de secretos

7.3. Pipelines declarativos

7.3.1. Diferencias entre pipelines tradicionales, como código y declarativos
7.3.2. Pipelines declarativos
7.3.3. Pipelines declarativos en Jenkins
7.3.4. Comparación de proveedores de integración continua

7.4. Puertas de calidad y retroalimentación enriquecida

7.4.1. Puertas de calidad
7.4.2. Estándares de calidad con puertas de calidad. Mantenimiento
7.4.3. Requisitos de negocio en las solicitudes de integración

7.5. Gestión de artefactos

7.5.1. Artefactos y ciclo de vida
7.5.2. Sistemas de almacenamiento y gestión de artefactos
7.5.3. Seguridad en la gestión de artefactos

7.6. Despliegue continuo

7.6.1. Despliegue continuo como contenedores
7.6.2. Despliegue continuo con PaaS
7.6.3. Despliegue continuo de aplicaciones móviles

7.7. Mejora del tiempo de ejecución del pipeline: análisis estático y Git Hooks

7.7.1. Análisis estático
7.7.2. Reglas de estilo del código
7.7.3. Git Hooks y tests unitarios
7.7.4. El impacto de la infraestructura

7.8. Vulnerabilidades en contenedores

7.8.1. Vulnerabilidades en contenedores
7.8.2. Escaneo de imágenes
7.8.3. Informes periódicos y alertas

Módulo 8. Diseño de Bases de Datos (BD). Normalización y Rendimiento. Calidad del Software

8.1. Diseño de bases de datos

8.1.1. Bases de datos. Tipología
8.1.2. Bases de datos usados actualmente

8.1.2.1. Relacionales
8.1.2.2. Clave-Valor
8.1.2.3. Basadas en grafos

8.1.3. La calidad del dato

8.2. Diseño del modelo entidad-relación (I)

8.2.1. Modelo de entidad-relación. Calidad y documentación
8.2.2. Entidades

8.2.2.1. Entidad fuerte
8.2.2.2. Entidad débil

8.2.3. Atributos
8.2.4. Conjunto de relaciones

8.2.4.1. 1 a 1
8.2.4.2. 1 a muchos
8.2.4.3. Muchos a 1
8.2.4.4. Muchos a muchos

8.2.5. Claves

8.2.5.1. Clave primaria
8.2.5.2. Clave foránea
8.2.5.3. Clave primaria entidad débil

8.2.6. Restricciones
8.2.7. Cardinalidad
8.2.8. Herencia
8.2.9. Agregación

8.3. Modelo entidad-relación (II). Herramientas

8.3.1. Modelo entidad-relación. Herramientas
8.3.2. Modelo entidad-relación. Ejemplo práctico
8.3.3. Modelo entidad-relación factible

8.3.3.1. Muestra visual
8.3.3.2. Muestra en representación de tablas

8.4. Normalización de la base de datos (BD) (I). Consideraciones en calidad del software

8.4.1. Normalización de la BD y calidad
8.4.2. Dependencias

8.4.2.1. Dependencia funcional
8.4.2.2. Propiedades de la dependencia funcional
8.4.2.3. Propiedades deducidas

8.4.3. Claves

8.5. Normalización de la base de datos (BD) (II). Formas normales y reglas de Codd

8.5.1. Formas normales

8.5.1.1. Primera forma normal (1FN)
8.5.1.2. Segunda forma normal (2FN)
8.5.1.3. Tercera forma normal (3FN)
8.5.1.4. Forma normal de Boyce-Codd (FNBC)
8.5.1.5. Cuarta forma normal (4FN)
8.5.1.6. Quinta forma normal (5FN)

8.5.2. Reglas de Codd

8.5.2.1. Regla 1: información
8.5.2.2. Regla 2: acceso garantizado
8.5.2.3. Regla 3: tratamiento sistemático de los valores nulos
8.5.2.4. Regla 4: descripción de la base de datos
8.5.2.5. Regla 5: sub-lenguaje integral
8.5.2.6. Regla 6: actualización de vistas
8.5.2.7. Regla 7: insertar y actualizar
8.5.2.8. Regla 8: independencia física
8.5.2.9. Regla 9: independencia lógica
8.5.2.10. Regla 10: independencia de la integridad

8.5.2.10.1. Reglas de integridad

8.5.2.11. Regla 11: distribución
8.5.2.12. Regla 12: no-subversión

8.5.3. Ejemplo práctico

8.6. Almacén de datos / sistema OLAP

8.6.1. Almacén de datos
8.6.2. Tabla de hechos
8.6.3. Tabla de dimensiones
8.6.4. Creación del sistema OLAP. Herramientas

8.7. Rendimiento de la base de datos (BD)

8.7.1. Optimización de índices
8.7.2. Optimización de consultas
8.7.3. Particionado de tablas

8.8. Simulación del proyecto real para diseño BD (I)

8.8.1. Descripción general del proyecto (Empresa A)
8.8.2. Aplicación del diseño de bases de datos
8.8.3. Ejercicios propuestos
8.8.4. Ejercicios propuestos. Feedback

8.9. Simulación de proyecto real para diseño BD (II)

8.9.1. Descripción general del proyecto (Empresa B)
8.9.2. Aplicación del diseño de bases de datos
8.9.3. Ejercicios propuestos
8.9.4. Ejercicios propuestos. Feedback

8.10. Relevancia de la optimización de BBDD en la Calidad del Software

8.10.1. Optimización del diseño
8.10.2. Optimización del código de consultas
8.10.3. Optimización del código de procedimientos almacenados
8.10.4. Influencia de los Triggers en la calidad del software. Recomendaciones de uso

Módulo 9. Diseño de Arquitecturas Escalables. La Arquitectura en el Ciclo de Vida del Software

9.1. Diseño de arquitecturas escalables (I)

9.1.1. Arquitecturas escalables
9.1.2. Principios de una arquitectura escalable

9.1.2.1. Confiable
9.1.2.2. Escalable
9.1.2.3. Mantenible

9.1.3. Tipos de escalabilidad

9.1.3.1. Vertical
9.1.3.2. Horizontal
9.1.3.3. Combinado

9.2. Arquitecturas DDD (Domain-Driven Design)

9.2.1. El Modelo DDD. Orientación al dominio
9.2.2. Capas, reparto de responsabilidad y patrones de diseño
9.2.3. Desacoplamiento como base de la calidad

9.3. Diseño de arquitecturas escalables (II). Beneficios, limitaciones y estrategias de diseño

9.3.1. Arquitectura escalable. Beneficios
9.3.2. Arquitectura escalable. Limitaciones
9.3.3. Estrategias para el desarrollo de arquitecturas escalables (Tabla descriptiva)

9.4. Ciclo de vida del software (I). Etapas

9.4.1. Ciclo de vida del software

9.4.1.1. Etapa de planificación
9.4.1.2. Etapa de análisis
9.4.1.3. Etapa de diseño
9.4.1.4. Etapa de implementación
9.4.1.5. Etapa de pruebas
9.4.1.6. Etapa de instalación/despliegue
9.4.1.7. Etapa de uso y mantenimiento

9.5. Modelos de ciclos de vida del software

9.5.1. Modelo en cascada
9.5.2. Modelo repetitivo
9.5.3. Modelo en espiral
9.5.4. Modelo Big Bang

9.6. Ciclo de vida del software (II). Automatización

9.6.1. Ciclos de vida de desarrollo de software. Soluciones

9.6.1.1. Integración y desarrollo continuos (CI/CD)
9.6.1.2. Metodologías Agile
9.6.1.3. DevOps / operaciones de producción

9.6.2. Tendencias futuras
9.6.3. Ejemplos prácticos

9.7. Arquitectura software en el ciclo de vida del software

9.7.1. Beneficios
9.7.2. Limitaciones
9.7.3. Herramientas

9.8. Simulación de proyecto real para diseño de arquitectura software (I)

9.8.1. Descripción general del proyecto (Empresa A)
9.8.2. Aplicación del diseño de arquitectura del software
9.8.3. Ejercicios Propuestos
9.8.4. Ejercicios Propuestos. Feedback

9.9. Simulación de proyecto real para el diseño de la arquitectura del software (II)

9.9.1. Descripción general del proyecto (Empresa B)
9.9.2. Aplicación del diseño de arquitectura del software
9.9.3. Ejercicios Propuestos
9.9.4. Ejercicios Propuestos. Feedback

9.10. Simulación de proyecto real para el diseño de la arquitectura del software (III)

9.10.1. Descripción general del proyecto (Empresa C)
9.10.2. Aplicación del diseño de arquitectura del software
9.10.3. Ejercicios Propuestos
9.10.4. Ejercicios Propuestos. Feedback

Módulo 10. Criterios de Calidad ISO, IEC 9126. Métrica de Calidad del Software

10.1. Criterios de calidad. Norma ISO, IEC 9126

10.1.1. Criterio de calidad
10.1.2. Calidad del software. Justificación. Norma ISO, IEC 9126
10.1.3. La medición de la calidad del software como Indicador clave

10.2. Criterios de la calidad del software. Características

10.2.1. Fiabilidad
10.2.2. Funcionalidad
10.2.3. Eficiencia
10.2.4. Usabilidad
10.2.5. Mantenibilidad
10.2.6. Portabilidad
10.2.7. Seguridad

10.3. Norma ISO, IEC 9126 (I). Presentación

10.3.1. Descripción de la Norma ISO, IEC 9126
10.3.2. Funcionalidad
10.3.3. Fiabilidad
10.3.4. Usabilidad
10.3.5. Mantenibilidad
10.3.6. Portabilidad
10.3.7. Calidad en uso
10.3.8. Métricas de calidad del software
10.3.9. Métricas de calidad en ISO 9126

10.4. Norma ISO, IEC 9126 (II). Modelos McCall y Boehm

10.4.1. Modelo McCall: factores de Calidad
10.4.2. Modelo Boehm
10.4.3. Nivel intermedio. Características

10.5. Métrica de calidad del software (I). Elementos

10.5.1. Medida
10.5.2. Métrica
10.5.3. Indicador

10.5.3.1. Tipos de indicadores

10.5.4. Medidas y modelos
10.5.5. Alcance de las métricas del software
10.5.6. Clasificación de las métricas del software

10.6. Medición de calidad del software (II). Práctica de la medición

10.6.1. Recogida de datos métricos
10.6.2. Medición de atributos internos del producto
10.6.3. Medición de atributos externos del producto
10.6.4. Medición de recursos
10.6.5. Métricas para sistemas orientados a objetos

10.7. Diseño de un indicador único de calidad del software

10.7.1. Indicador único como calificador global
10.7.2. Desarrollo del indicador, justificación y aplicación
10.7.3. Ejemplo de aplicación. Necesidad de conocer el detalle

10.8. Simulación de proyecto real para medición de calidad (I)

10.8.1. Descripción general del proyecto (Empresa A)
10.8.2. Aplicación de la medición de calidad
10.8.3. Ejercicios Propuestos
10.8.4. Ejercicios Propuestos. Feedback

10.9. Simulación de proyecto real para medición de calidad (II)

10.9.1. Descripción general del proyecto (Empresa B)
10.9.2. Aplicación de la medición de calidad
10.9.3. Ejercicios Propuestos
10.9.4. Ejercicios Propuestos. Feedback

10.10. Simulación de proyecto real para medición de calidad (III)

10.10.1. Descripción general del proyecto (Empresa C)
10.10.2. Aplicación de la medición de calidad
10.10.3. Ejercicios Propuestos
10.10.4. Ejercicios Propuestos. Feedback

##IMAGE##

Accederás a un contenido único y especializado. Seleccionado por docentes expertos para una titulación que hará trascender tu perfil profesional”

Máster en Calidad del Software

El creciente ritmo de la industria tecnológica y las exigencias del mercado han dado lugar a una elevada deuda técnica en los proyectos de software. La necesidad de dar respuestas rápidas a los requerimientos de los clientes o empresas ha llevado a descuidar los detalles propios de la calidad del sistema. Es aquí donde se hace indispensable tener en cuenta la escalabilidad del proyecto a lo largo de su ciclo de vida, lo que requiere conocimientos informáticos enfocados en la calidad desde un enfoque top-down.El Máster en Calidad del Software es un programa diseñado para desarrollar criterios, tareas y metodologías avanzadas que permitan comprender la relevancia de un trabajo orientado a la necesidad de implantar políticas de calidad en las Software Factories. Este curso está diseñado para ser completamente online, con una duración de 12 meses y una metodología adaptada a las necesidades de los alumnos de la mayor universidad digital del mundo.

Especialízate en proyectos de software

Este programa de máster te permitirá adquirir conocimientos especializados en la calidad del software, desde una perspectiva integral. Aprenderás a aplicar metodologías y técnicas para evaluar y mejorar la calidad del software en todas las fases del ciclo de vida del proyecto. Además, podrás identificar y solucionar problemas de calidad en los proyectos de software, y aplicar herramientas de testing y análisis para evaluar y garantizar la calidad del producto final.El máster está liderado por expertos en la materia, que te brindarán una capacitación de altísima calidad en la calidad del software. Con este curso, estarás preparado para desempeñarte en cualquier ámbito de la industria tecnológica, ya sea en el sector público o privado. Podrás aplicar tus conocimientos y habilidades en la gestión de proyectos de software, y contribuir a la mejora continua de la calidad en las Software Factories.