TEI – Tema 16. Construcción de sistemas de información. Pruebas: tipologías. Formación. Conceptos, participantes, métodos y técnicas. Reutilización de componentes software.

Técnico/a Especialista Informática Servicio Andaluz de Salud JUNTA DE ANDALUCÍA
Tema 16 – Construcción de Sistemas de Información | SAS Técnico Especialista en Informática

📘 Tema 16

Construcción de Sistemas de Información

Pruebas: Tipologías • Formación • Reutilización de Componentes Software

📅 Actualizado 2025
🎯 Oposición SAS
⏱️ Tiempo estimado: 4-5 horas
📝 30+ Preguntas Test

🎯 Introducción y Contextualización

Cuando hablamos de construcción de sistemas de información, estamos refiriéndonos a una de las etapas más críticas y delicadas del ciclo de vida del desarrollo de software. Es aquí donde las ideas plasmadas en documentos de requisitos y diseños técnicos se materializan en código ejecutable, en aplicaciones funcionales que van a ser utilizadas por profesionales sanitarios en el contexto del Servicio Andaluz de Salud. Y aquí viene lo importante, porque no basta con escribir código que funcione. El código debe ser robusto, seguro, mantenible y, sobre todo, debe cumplir con las expectativas y necesidades reales de los usuarios finales.

Imagina por un momento que eres el responsable técnico de un proyecto para modernizar el módulo de gestión de citas del sistema Diraya. Has trabajado durante meses en el análisis de requisitos, has diseñado una arquitectura sólida, has elegido las tecnologías más adecuadas. Ahora toca construir el sistema. Pero la construcción no es simplemente ponerse a programar sin más. La construcción implica seguir metodologías rigurosas, aplicar buenas prácticas de codificación, realizar pruebas exhaustivas en cada nivel, formar adecuadamente a los usuarios finales y, cuando sea posible, reutilizar componentes ya existentes que han demostrado su fiabilidad en otros proyectos del SAS.

En el contexto de la administración pública andaluza, y específicamente en el ámbito sanitario, la construcción de sistemas de información tiene particularidades que la diferencian de otros sectores. Trabajamos con datos de salud, que son de categoría especial según el Reglamento General de Protección de Datos. Trabajamos con sistemas que deben estar disponibles las veinticuatro horas del día, los trescientos sesenta y cinco días del año, porque de ellos depende la atención sanitaria de millones de personas. Trabajamos bajo el paraguas del Esquema Nacional de Seguridad, que nos impone controles y medidas específicas. Y trabajamos con usuarios, los profesionales sanitarios, que necesitan sistemas intuitivos, fiables y que les faciliten su labor asistencial sin añadir complejidad innecesaria a sus ya de por sí complejas jornadas laborales.

💡 Relevancia para la Oposición

Este tema es especialmente importante porque conecta con múltiples áreas del temario. Vas a encontrar preguntas sobre tipologías de pruebas (unitarias, de integración, de sistema, de aceptación), sobre metodologías de desarrollo (Métrica v3, ciclo de vida en cascada, desarrollo ágil), sobre normativa aplicable (ISO/IEC 12207, ISO/IEC 25010), sobre herramientas corporativas del SAS (JIRA, Confluence, Git) y sobre casos prácticos que te pedirán identificar qué tipo de prueba aplicar en cada escenario o cómo planificar la formación de usuarios ante un despliegue de nueva funcionalidad en Diraya.

Los tribunales de la oposición SAS tienen predilección por preguntas que integren conocimientos teóricos con la realidad operativa del servicio. Por ejemplo, te pueden preguntar qué medida del Esquema Nacional de Seguridad está directamente relacionada con la formación de usuarios en materia de seguridad de la información. O te pueden plantear un caso práctico donde debes decidir si reutilizar un componente existente o desarrollar uno nuevo, justificando tu decisión desde criterios técnicos, económicos y de seguridad.

Encaje Normativo y Estratégico en el SAS

La construcción de sistemas de información en el SAS no ocurre en el vacío. Existe un marco normativo y estratégico que guía cada decisión técnica. La Ley 39/2015 de Procedimiento Administrativo Común establece los principios de la administración electrónica y el derecho de los ciudadanos a relacionarse electrónicamente con las administraciones públicas. Esto implica que los sistemas que construimos deben cumplir con estándares de accesibilidad (Real Decreto 1112/2018), interoperabilidad (Esquema Nacional de Interoperabilidad) y seguridad (Esquema Nacional de Seguridad).

El Esquema Nacional de Seguridad, en su Real Decreto 311/2022, dedica especial atención a la dimensión de seguridad en el ciclo de vida de los sistemas. Concretamente, la medida mp.per.4 sobre formación y concienciación establece que el personal debe recibir formación adecuada sobre sus responsabilidades en materia de seguridad y sobre el uso correcto de los sistemas de información. Esta medida cobra especial relevancia cuando hablamos de formar a usuarios finales tras la implantación de un nuevo sistema o de una actualización significativa de uno existente.

La norma ISO/IEC 12207, que establece los procesos del ciclo de vida del software, define la construcción como un proceso técnico que incluye la codificación y pruebas de las unidades de software. Esta norma internacional, adoptada como referencia en muchos proyectos del sector público, proporciona un marco común de procesos que facilita la gestión de proyectos complejos y mejora la comunicación entre equipos multidisciplinares.

🏗️ La Fase de Construcción en el Ciclo de Vida del Software

La construcción de sistemas de información es la fase donde el diseño se convierte en realidad tangible. Si en la fase de diseño definimos el qué y el cómo (qué arquitectura vamos a utilizar, cómo se van a comunicar los componentes, cómo se va a estructurar la base de datos), en la fase de construcción materializamos esas decisiones escribiendo el código fuente, configurando servidores, integrando sistemas y, por supuesto, probando exhaustivamente cada componente y cada integración.

En el modelo de ciclo de vida en cascada, la construcción es una fase claramente delimitada que comienza cuando el diseño ha sido aprobado y finaliza cuando el sistema pasa a la fase de pruebas de sistema. Sin embargo, en metodologías ágiles como Scrum, la construcción ocurre de forma iterativa e incremental dentro de cada sprint. En cada iteración de dos o tres semanas, el equipo de desarrollo construye un incremento de funcionalidad potencialmente desplegable, que incluye tanto el desarrollo como las pruebas correspondientes.

Cuando trabajamos con Métrica v3, la metodología de planificación y desarrollo de sistemas de información del Ministerio para la Transformación Digital y de la Función Pública, la construcción se enmarca dentro del proceso CSI (Construcción del Sistema de Información). Este proceso tiene como objetivo final la construcción y prueba de los distintos componentes del sistema de información, a partir de los modelos y especificaciones de diseño elaborados previamente. Métrica v3 es particularmente relevante en proyectos de la administración pública andaluza, incluyendo los del SAS, porque proporciona un marco metodológico común que facilita la gestión y auditoría de proyectos.

📘 Métrica v3 y el Proceso de Construcción

Métrica v3 estructura el proceso de Construcción del Sistema de Información en varias actividades principales. Entre ellas destacan la preparación del entorno de construcción, la generación del código de los componentes y procedimientos, la ejecución de las pruebas unitarias, la ejecución de las pruebas de integración y la aprobación del sistema de información construido. Cada una de estas actividades genera productos de trabajo específicos que deben documentarse adecuadamente para asegurar la trazabilidad y facilitar el mantenimiento posterior del sistema.

Una característica importante de Métrica v3 es su flexibilidad. La metodología ha sido concebida para abarcar el desarrollo completo de sistemas, sea cual sea su complejidad y magnitud. Por ello, su estructura responde a desarrollos máximos y debe adaptarse y dimensionarse en cada momento de acuerdo con las características particulares de cada proyecto. Esto significa que en un proyecto pequeño podemos simplificar ciertas actividades, mientras que en un proyecto grande y complejo del SAS, como podría ser la migración del sistema de historia clínica digital Diraya a una nueva arquitectura de microservicios, necesitaremos aplicar Métrica v3 en toda su extensión, con rigurosos procesos de control de calidad y validación.

Actividades Clave en la Construcción

Cuando nos ponemos manos a la obra para construir un sistema de información, hay una serie de actividades que debemos realizar de forma sistemática y ordenada. La primera de ellas es la preparación del entorno de construcción. Esto implica configurar los servidores de desarrollo, instalar las herramientas necesarias (entornos de desarrollo integrados, sistemas de control de versiones, herramientas de construcción automatizada), establecer los estándares de codificación que seguirá el equipo y definir las convenciones de nomenclatura para variables, funciones, clases y otros elementos del código.

Una vez preparado el entorno, comienza la codificación propiamente dicha. Aquí es donde los desarrolladores escriben el código fuente de cada componente del sistema, siguiendo las especificaciones de diseño y respetando los estándares establecidos. En el SAS, cuando se desarrollan aplicaciones que van a integrarse con sistemas corporativos como Diraya, es fundamental seguir las guías de desarrollo corporativas, utilizar las bibliotecas aprobadas y respetar los interfaces definidos para asegurar la interoperabilidad.

A medida que se va completando el código de cada componente, se realizan las pruebas unitarias. Estas pruebas verifican que cada unidad de código (típicamente una función o un método de una clase) funciona correctamente de forma aislada. Las pruebas unitarias son responsabilidad del propio desarrollador que ha escrito el código y deben ejecutarse de forma automatizada cada vez que se modifica el código. Herramientas como JUnit para Java, pytest para Python o NUnit para .NET facilitan la creación y ejecución de pruebas unitarias.

Cuando los componentes individuales han sido probados y validados, comienza la integración. Los componentes se ensamblan siguiendo la arquitectura definida en el diseño y se realizan las pruebas de integración para verificar que la comunicación entre componentes funciona correctamente. Las pruebas de integración son especialmente críticas en arquitecturas basadas en servicios o microservicios, donde múltiples componentes independientes deben colaborar para ofrecer una funcionalidad completa al usuario.

🧪 Pruebas de Software: Tipologías y Estrategias

Las pruebas de software son una actividad esencial en la construcción de sistemas de información. No basta con escribir código que compile y se ejecute sin errores. El código debe hacer exactamente lo que se espera que haga, debe manejar correctamente las situaciones excepcionales, debe ser eficiente en el uso de recursos, debe ser seguro frente a posibles ataques y debe proporcionar una experiencia de usuario satisfactoria. Todos estos aspectos se verifican mediante diferentes tipos de pruebas, cada una con sus objetivos específicos y sus técnicas particulares.

Existe una clasificación clásica de las pruebas de software que las organiza en diferentes niveles, cada uno enfocado en verificar aspectos específicos del sistema. Esta clasificación, que encontrarás en múltiples fuentes bibliográficas y que es ampliamente utilizada en la industria y en la administración pública, distingue entre pruebas unitarias, pruebas de integración, pruebas de sistema y pruebas de aceptación. Cada nivel construye sobre el anterior, de forma que las pruebas unitarias verifican los componentes más pequeños, las pruebas de integración verifican la correcta comunicación entre componentes, las pruebas de sistema verifican el sistema completo en un entorno similar al de producción y las pruebas de aceptación verifican que el sistema cumple con los requisitos del usuario y está listo para su despliegue en producción.

Pruebas Unitarias

Las pruebas unitarias son el primer nivel de pruebas y se centran en verificar el correcto funcionamiento de las unidades más pequeñas de código. En programación orientada a objetos, una unidad típicamente corresponde a un método de una clase. En programación funcional, correspondería a una función. El objetivo de las pruebas unitarias es detectar errores lo antes posible en el ciclo de desarrollo, cuando son más fáciles y económicos de corregir.

Una buena prueba unitaria tiene varias características. Debe ser independiente de otras pruebas, de forma que pueda ejecutarse de forma aislada sin depender del resultado de otras pruebas. Debe ser repetible, produciendo siempre el mismo resultado cuando se ejecuta múltiples veces sobre el mismo código. Debe ser rápida, para que pueda ejecutarse frecuentemente sin ralentizar el proceso de desarrollo. Y debe ser clara y fácil de entender, para que cuando falla, el desarrollador pueda identificar rápidamente cuál es el problema.

En el contexto del SAS, las pruebas unitarias son especialmente importantes cuando desarrollamos componentes que manejan lógica de negocio crítica. Por ejemplo, si estamos desarrollando un componente que calcula dosis de medicación en función del peso del paciente, de su función renal y de posibles interacciones con otros fármacos, las pruebas unitarias deben verificar exhaustivamente que el cálculo es correcto en todos los escenarios posibles, incluyendo casos límite y situaciones excepcionales. Un error en este tipo de componente podría tener consecuencias graves para la seguridad del paciente.

Caso Práctico SAS: Pruebas Unitarias en Diraya

El equipo de desarrollo del módulo de prescripción electrónica de Diraya está trabajando en una nueva funcionalidad que debe verificar automáticamente posibles interacciones farmacológicas cuando un facultativo prescribe un nuevo medicamento a un paciente que ya tiene tratamientos activos. El componente principal es una clase InteractionChecker con un método checkInteractions(newMedication, activeM medications) que devuelve una lista de posibles interacciones detectadas.

Pregunta: ¿Qué casos de prueba unitaria deberían implementarse como mínimo para verificar este componente?

Respuesta: Las pruebas unitarias deberían cubrir al menos los siguientes escenarios: prescripción de un medicamento sin tratamientos activos previos (debe devolver lista vacía), prescripción de un medicamento compatible con tratamientos activos (debe devolver lista vacía), prescripción de un medicamento con interacción leve conocida (debe devolver lista con una interacción), prescripción con múltiples interacciones de diferente gravedad (debe devolver lista ordenada por gravedad), medicamento no encontrado en la base de datos (debe manejar la excepción adecuadamente) y llamada con parámetros nulos (debe validar parámetros y lanzar excepción descriptiva).

Pruebas de Integración

Una vez que los componentes individuales han sido probados mediante pruebas unitarias, el siguiente paso es verificar que funcionan correctamente cuando se combinan. Las pruebas de integración se centran precisamente en esto, en verificar las interfaces entre componentes, la correcta comunicación entre módulos y la adecuada colaboración entre diferentes partes del sistema para ofrecer una funcionalidad completa.

Las pruebas de integración son especialmente críticas en arquitecturas distribuidas, como las arquitecturas de microservicios que cada vez son más comunes en los sistemas modernos del SAS. Cuando diferentes servicios se comunican mediante APIs REST o mediante mensajería asíncrona, las pruebas de integración deben verificar que los contratos de interfaz se respetan, que los mensajes se envían y reciben correctamente, que los errores se manejan adecuadamente y que el sistema se comporta de forma coherente incluso cuando algún servicio experimenta problemas de rendimiento o disponibilidad.

Según Métrica v3, las pruebas de integración forman parte del proceso de Construcción del Sistema de Información. Concretamente, dentro de la actividad CSI 5 (Ejecución de las Pruebas de Integración), se verifica que los componentes del sistema funcionan correctamente cuando se comunican entre sí. Métrica v3 no especifica pruebas de regresión como parte del proceso de construcción, sino que las considera parte del mantenimiento del sistema. Esta distinción es importante para la oposición, porque en exámenes anteriores ha aparecido una pregunta específica sobre qué tipo de pruebas NO están incluidas en el proceso de construcción según Métrica v3, siendo las pruebas de regresión la respuesta correcta.

Pruebas de Sistema

Las pruebas de sistema verifican el comportamiento del sistema completo en un entorno que simula el entorno de producción. A diferencia de las pruebas unitarias y de integración, que se centran en componentes o conjuntos de componentes específicos, las pruebas de sistema evalúan el sistema en su totalidad, verificando que cumple con los requisitos funcionales y no funcionales especificados.

Las pruebas de sistema incluyen diferentes tipos de pruebas especializadas. Las pruebas funcionales verifican que el sistema implementa correctamente todas las funcionalidades especificadas en los requisitos. Las pruebas de rendimiento evalúan si el sistema puede manejar la carga de trabajo esperada sin degradación inaceptable del tiempo de respuesta. Las pruebas de seguridad verifican que el sistema es resistente a posibles ataques y que implementa correctamente los controles de seguridad requeridos por el Esquema Nacional de Seguridad. Las pruebas de usabilidad evalúan si la interfaz de usuario es intuitiva y facilita al usuario la realización de sus tareas.

En el contexto del SAS, las pruebas de sistema para aplicaciones críticas como Diraya deben ser especialmente exhaustivas. Estas aplicaciones deben funcionar correctamente bajo alta carga (miles de profesionales accediendo simultáneamente), deben responder rápidamente (tiempos de respuesta por debajo de dos segundos en operaciones comunes), deben estar disponibles continuamente (objetivos de disponibilidad del noventa y nueve coma nueve por ciento) y deben proteger adecuadamente los datos de salud de los pacientes (cumplimiento del RGPD y del ENS en categoría ALTA para confidencialidad e integridad).

Pruebas de Aceptación

Las pruebas de aceptación son el último nivel de pruebas antes de que un sistema se despliegue en producción. Estas pruebas las realizan los propios usuarios finales o sus representantes, y su objetivo es verificar que el sistema cumple con sus expectativas y que está realmente listo para su uso en el entorno real de trabajo. Las pruebas de aceptación son el momento de la verdad, donde se comprueba si todo el esfuerzo de análisis, diseño y construcción ha dado como resultado un sistema que realmente resuelve los problemas de los usuarios y mejora sus procesos de trabajo.

En proyectos del SAS, las pruebas de aceptación suelen organizarse en dos fases. En una primera fase, llamada a veces pruebas de aceptación en usuario (UAT, por sus siglas en inglés User Acceptance Testing), un grupo reducido de usuarios representativos prueba el sistema en un entorno controlado, típicamente en un centro piloto. Durante estas pruebas, los usuarios ejecutan escenarios reales de trabajo, documentan cualquier problema o dificultad que encuentren y proporcionan feedback sobre la usabilidad y la adecuación del sistema a sus necesidades. Si las pruebas UAT son exitosas y los problemas detectados se han corregido, se pasa a una segunda fase de despliegue gradual en producción, comenzando por un número limitado de centros antes de extender el despliegue a toda la organización.

⚠️ Error Común en Oposiciones

Un error frecuente en preguntas de examen sobre pruebas de software es confundir las pruebas de regresión con otros tipos de pruebas. Las pruebas de regresión no son un nivel independiente de pruebas, sino una técnica que consiste en volver a ejecutar pruebas que habían pasado previamente para verificar que los cambios realizados en el sistema no han introducido nuevos defectos en funcionalidades que antes funcionaban correctamente. Las pruebas de regresión pueden aplicarse en cualquier nivel (unitario, integración, sistema) y son especialmente importantes en el mantenimiento del software.

Según una pregunta real del examen de 2023, Métrica v3 NO incluye las pruebas de regresión como parte del proceso de Construcción del Sistema de Información. Las pruebas de regresión se consideran parte del mantenimiento y se ejecutan cuando se modifican componentes de un sistema ya en producción.

Otras Tipologías Importantes

Además de los cuatro niveles clásicos que acabamos de ver, existen otros tipos de pruebas especializadas que son especialmente relevantes en el contexto de sistemas de información sanitarios. Las pruebas de migración y carga inicial de datos verifican que los datos existentes en sistemas legacy pueden transferirse correctamente al nuevo sistema, que la transformación de datos se realiza adecuadamente y que no se pierde información crítica durante el proceso de migración. Estas pruebas son fundamentales cuando, por ejemplo, el SAS migra un sistema antiguo de gestión de pacientes a una nueva plataforma, proceso que requiere transferir millones de registros históricos manteniendo la integridad y la trazabilidad de la información clínica.

Las pruebas de recuperación ante desastres verifican que el sistema puede recuperarse correctamente después de un fallo catastrófico. En el SAS, donde los sistemas críticos deben cumplir con requisitos estrictos de continuidad de negocio, estas pruebas son obligatorias. Se simula un fallo completo del sistema, se activa el procedimiento de recuperación y se verifica que el sistema vuelve a estar operativo en el tiempo establecido en el plan de continuidad, que los datos se han restaurado correctamente y que no se ha perdido información transaccional.

Las pruebas de interoperabilidad verifican que el sistema puede comunicarse correctamente con otros sistemas externos. En el ámbito sanitario, la interoperabilidad es crítica porque los sistemas de historia clínica deben intercambiar información con otros sistemas del Sistema Nacional de Salud, con farmacias, con laboratorios externos y con otros prestadores de servicios sanitarios. Las pruebas de interoperabilidad verifican que los estándares utilizados (HL7, FHIR, CDA, DICOM) se implementan correctamente y que los mensajes se intercambian sin pérdida de información semántica.

👨‍🏫 Formación de Usuarios: Conceptos, Participantes y Técnicas

Por muy bien diseñado y construido que esté un sistema de información, su éxito depende en gran medida de que los usuarios finales lo adopten y lo utilicen correctamente. La formación de usuarios es, por tanto, una actividad crítica que debe planificarse cuidadosamente y ejecutarse con rigor. No se trata simplemente de organizar un par de sesiones informativas, sino de diseñar un programa formativo completo que cubra diferentes perfiles de usuario, que utilice metodologías adecuadas a cada colectivo y que incluya tanto formación inicial como formación continua y de reciclaje.

La formación de usuarios en el contexto del SAS tiene algunas particularidades importantes. Los usuarios finales, típicamente profesionales sanitarios, tienen una carga de trabajo muy elevada y una disponibilidad limitada para formación. Por tanto, las sesiones formativas deben ser lo más eficientes posible, centradas en los casos de uso más comunes y en las funcionalidades que realmente van a utilizar en su día a día. Además, los profesionales sanitarios tienen diferentes niveles de competencia digital. Mientras algunos son usuarios avanzados capaces de adaptarse rápidamente a nuevas herramientas, otros necesitan formación más básica y más apoyo durante el periodo de adaptación.

Planificación de la Formación

La planificación de la formación debe comenzar mucho antes del despliegue del sistema en producción. De hecho, debería iniciarse durante la fase de diseño del sistema, cuando se definen los casos de uso y los perfiles de usuario. Esta planificación temprana permite identificar las necesidades formativas de cada perfil, diseñar los materiales formativos adecuados y organizar la logística necesaria para impartir la formación.

El primer paso en la planificación es la identificación de los diferentes perfiles de usuario. En un sistema de historia clínica como Diraya, por ejemplo, tendríamos perfiles muy diversos, desde médicos de atención primaria que necesitan consultar y actualizar historias clínicas rápidamente durante las consultas, hasta personal administrativo que gestiona citas y admisiones, pasando por enfermería que registra constantes vitales y administra tratamientos. Cada uno de estos perfiles tiene necesidades formativas diferentes y requiere formación específica adaptada a sus tareas habituales.

Una vez identificados los perfiles, se diseñan los itinerarios formativos. Un itinerario formativo es un conjunto estructurado de actividades de aprendizaje que guía al usuario desde un nivel inicial de conocimiento hasta el nivel de competencia requerido para utilizar el sistema de forma efectiva. Típicamente, un itinerario incluye formación presencial o virtual sincrónica para conceptos fundamentales y casos de uso básicos, materiales de autoaprendizaje (manuales, vídeos tutoriales, simuladores) para profundización y práctica individual, y sesiones de soporte y resolución de dudas durante las primeras semanas de uso real del sistema.

✅ Buena Práctica en el SAS

El SAS utiliza la plataforma corporativa GESFORMA-SSPA para la gestión de la formación continuada de sus profesionales. Esta plataforma permite organizar cursos de formación, gestionar inscripciones, distribuir materiales formativos y realizar seguimiento del progreso de los participantes. GESFORMA-SSPA tiene un diseño responsive que permite acceder desde ordenadores, tabletas y teléfonos inteligentes, facilitando que los profesionales puedan realizar formación desde cualquier dispositivo y en cualquier momento.

Los requisitos técnicos de GESFORMA-SSPA son mínimos, pudiendo utilizarse con cualquier navegador moderno, aunque se recomienda Mozilla Firefox o Google Chrome para una mejor experiencia. La resolución de pantalla mínima recomendada es 1024×768. Los profesionales acceden a la plataforma con sus credenciales corporativas de DMSAS (Dominio Multi-Servicio Andaluz de Salud), lo que facilita la gestión de identidades y permite una experiencia de autenticación única (Single Sign-On).

Metodologías y Técnicas de Formación

Existen diferentes metodologías formativas que pueden aplicarse según las características del sistema, del público objetivo y de los recursos disponibles. La formación presencial tradicional, donde un instructor imparte contenidos a un grupo de usuarios en un aula física, sigue siendo válida y efectiva para introducir conceptos fundamentales y resolver dudas en tiempo real. Sin embargo, tiene limitaciones importantes en términos de escalabilidad, porque requiere desplazar a los usuarios a un centro de formación y porque limita el número de participantes que pueden formarse simultáneamente.

La formación virtual sincrónica, mediante videoconferencia, se ha popularizado enormemente en los últimos años y ofrece ventajas importantes. Permite formar a usuarios distribuidos geográficamente sin necesidad de desplazamientos, facilita la grabación de las sesiones para consulta posterior y permite compartir pantalla para demostrar el uso del sistema en tiempo real. En el SAS se utiliza Skype for Business integrado con Office 365 para impartir formación virtual. Los profesionales se autentican con sus credenciales de DMSAS y, si están en un equipo dentro del dominio corporativo, la autenticación es transparente mediante Single Sign-On.

El e-learning o formación virtual asíncrona permite a cada usuario aprender a su propio ritmo, accediendo a materiales formativos (documentos, presentaciones, vídeos, simuladores interactivos) cuando más le convenga. Esta modalidad es especialmente útil para profesionales con horarios irregulares o que trabajan a turnos, porque les permite realizar la formación en sus momentos de menor carga de trabajo. Sin embargo, requiere un diseño instruccional cuidadoso para que los materiales sean realmente autoexplicativos y para que el usuario mantenga la motivación sin la presencia de un instructor.

Una técnica que ha demostrado ser muy efectiva en la formación de usuarios de sistemas de información es el aprendizaje basado en escenarios. En lugar de explicar todas las funcionalidades del sistema una por una, se diseñan escenarios realistas que el usuario puede encontrarse en su trabajo diario y se muestra cómo resolver esos escenarios utilizando el sistema. Por ejemplo, en la formación de Diraya para médicos de atención primaria, un escenario típico sería cómo registrar una consulta completa, desde acceder a la historia del paciente, revisar sus antecedentes y tratamientos actuales, registrar la anamnesis y la exploración, solicitar pruebas diagnósticas complementarias, emitir receta electrónica y programar cita de seguimiento.

Participantes en el Proceso Formativo

La formación de usuarios no es responsabilidad exclusiva del equipo de formación. Es un proceso complejo en el que participan diferentes perfiles con roles específicos. Los diseñadores instruccionales analizan las necesidades formativas, diseñan los itinerarios y los materiales formativos y definen las metodologías más adecuadas para cada perfil de usuario. Su trabajo requiere tanto conocimientos pedagógicos como conocimientos técnicos del sistema que se va a implantar.

Los formadores o instructores son los encargados de impartir la formación presencial o virtual sincrónica. Deben tener un conocimiento profundo del sistema, capacidad de comunicación y habilidades docentes. En proyectos del SAS, los formadores suelen ser una combinación de personal técnico de la Dirección General de Tecnologías de la Información (que conoce a fondo los aspectos técnicos del sistema) y de usuarios clave (profesionales sanitarios que han participado en el diseño del sistema y que pueden aportar la perspectiva de usuario real).

Los usuarios clave o superusuarios son profesionales que, además de recibir formación inicial más intensiva, actúan como referentes en sus unidades o centros de trabajo. Durante el periodo de implantación y estabilización del sistema, los usuarios clave proporcionan soporte de primer nivel a sus compañeros, resuelven dudas básicas, detectan problemas recurrentes y canalizan hacia el equipo técnico los problemas que no pueden resolver. La figura del usuario clave es fundamental para el éxito de implantaciones de gran escala, porque multiplica la capacidad de soporte del equipo técnico y porque proporciona apoyo en el contexto real de trabajo del usuario.

Los responsables de las unidades o servicios también juegan un papel importante en el proceso formativo. Son quienes deben facilitar que sus profesionales dispongan del tiempo necesario para realizar la formación, quienes deben comunicar la importancia de la formación y del uso correcto del sistema, y quienes deben dar ejemplo utilizando ellos mismos el sistema de forma adecuada. El compromiso de los responsables con el proceso formativo es uno de los factores críticos de éxito en la adopción de nuevos sistemas.

Formación en Seguridad de la Información

Cuando hablamos de formación de usuarios en el contexto de sistemas de información del SAS, no podemos olvidar un aspecto fundamental: la formación en seguridad de la información. El Esquema Nacional de Seguridad, en su medida mp.per.4, establece la obligación de proporcionar formación y concienciación apropiada al personal en materia de seguridad de la información. Esta medida busca precisamente que los usuarios sean la primera línea de defensa efectiva frente a amenazas de seguridad y que sean menos susceptibles a manipulaciones de ingeniería social.

La formación en seguridad debe cubrir aspectos como la gestión segura de contraseñas (complejidad, renovación periódica, no reutilización, no compartición), el reconocimiento de intentos de phishing o vishing (suplantación de identidad mediante correos electrónicos falsos o llamadas telefónicas fraudulentas), el uso seguro de dispositivos móviles y de accesos remotos, la protección de datos personales y datos de salud, y los procedimientos de notificación de incidentes de seguridad.

Un caso real que ilustra la importancia de esta formación ocurrió en un hospital del SAS donde varios profesionales recibieron llamadas telefónicas de personas que se identificaban como técnicos de soporte informático. Los falsos técnicos solicitaban las credenciales de usuario con el pretexto de resolver un problema urgente en el sistema. Algunos profesionales, sin formación adecuada en seguridad, proporcionaron sus credenciales, lo que permitió a los atacantes acceder ilegítimamente al sistema. Si estos profesionales hubieran recibido formación específica sobre técnicas de ingeniería social y sobre los procedimientos corporativos de soporte (donde NUNCA se solicitan las contraseñas de usuario), este incidente se habría evitado.

Caso Práctico: Plan de Formación para Nueva Funcionalidad de Diraya

El SAS va a desplegar una nueva funcionalidad en Diraya para gestión de teleconsultas, que permitirá a los facultativos realizar consultas no presenciales con sus pacientes mediante videoconferencia integrada en la historia clínica. Esta funcionalidad es especialmente importante después de la experiencia de la pandemia COVID-19, que demostró la necesidad de canales de atención telemática.

Situación: Debes diseñar el plan de formación para esta nueva funcionalidad, que será utilizada inicialmente por médicos de atención primaria en los centros de salud de la provincia de Sevilla.

Cuestiones a resolver:

  • ¿Qué perfiles de usuario necesitan formación?
  • ¿Qué metodología formativa es más adecuada?
  • ¿Qué contenidos debe incluir la formación?
  • ¿Cómo organizarías el despliegue de la formación?
  • ¿Qué materiales de apoyo necesitarías preparar?
  • ¿Cómo evaluarías la efectividad de la formación?

Solución propuesta: El plan de formación debería incluir formación específica para médicos de atención primaria (perfil principal que utilizará la funcionalidad), personal administrativo de centros de salud (que agendará las teleconsultas) y personal de soporte técnico (que deberá resolver incidencias). Se utilizaría formación mixta: sesiones virtuales sincrónicas mediante Skype for Business para introducir la funcionalidad y demostrar casos de uso, materiales de e-learning en GESFORMA-SSPA para profundización y práctica individual, y un piloto en tres centros de salud con presencia de formadores y personal de soporte durante las dos primeras semanas. Los contenidos incluirían aspectos técnicos (cómo iniciar una teleconsulta, compartir documentos, grabar la sesión), aspectos normativos (RGPD aplicado a teleconsultas, consentimiento informado, privacidad) y aspectos asistenciales (buenas prácticas en teleconsulta, comunicación efectiva por vídeo, limitaciones de la valoración telemática). Como materiales de apoyo se prepararían guías rápidas en PDF, vídeos cortos de casos de uso típicos, preguntas frecuentes (FAQ) y un simulador interactivo. La efectividad se evaluaría mediante cuestionarios de satisfacción post-formación, métricas de uso real del sistema (número de teleconsultas realizadas, problemas reportados) y encuestas a pacientes sobre su experiencia con la teleconsulta.

♻️ Reutilización de Componentes Software

La reutilización de componentes software es una práctica fundamental en el desarrollo moderno de sistemas de información. Consiste en utilizar componentes software que ya han sido desarrollados, probados y validados en proyectos anteriores, en lugar de desarrollar nuevos componentes desde cero para cada proyecto. Esta práctica aporta múltiples beneficios: reduce el tiempo y coste de desarrollo, mejora la calidad del software (porque reutilizamos componentes que ya han demostrado su fiabilidad), facilita el mantenimiento (porque un mismo componente se utiliza en múltiples sistemas) y promueve la estandarización.

En el contexto de la administración pública en general, y del SAS en particular, la reutilización de componentes cobra una importancia especial. La Ley 40/2015 del Régimen Jurídico del Sector Público establece principios de eficiencia en el uso de recursos públicos que favorecen la reutilización. El Esquema Nacional de Interoperabilidad (Real Decreto 4/2010) promueve el uso de estándares abiertos y la reutilización de soluciones disponibles en el Centro de Transferencia de Tecnología de la Administración Pública. Y desde una perspectiva práctica, tiene todo el sentido aprovechar soluciones que ya funcionan en otros centros sanitarios o en otras consejerías de la Junta de Andalucía, en lugar de reinventar la rueda en cada proyecto.

Tipos de Componentes Reutilizables

Cuando hablamos de reutilización de componentes software, debemos distinguir diferentes niveles de granularidad. En el nivel más básico tenemos las bibliotecas de funciones, que son colecciones de funciones reutilizables para tareas comunes. Por ejemplo, una biblioteca de validación de datos podría incluir funciones para validar DNI, NIE, número de tarjeta sanitaria, direcciones de correo electrónico, números de teléfono o fechas en diferentes formatos. Esta biblioteca podría reutilizarse en cualquier aplicación del SAS que necesite validar estos tipos de datos.

En un nivel intermedio encontramos los componentes o módulos, que encapsulan funcionalidad más compleja. Un componente de autenticación y autorización, por ejemplo, podría encargarse de verificar las credenciales del usuario contra el directorio activo DMSAS, de gestionar la sesión del usuario, de verificar sus permisos para acceder a cada funcionalidad y de registrar todos los accesos en un log de auditoría. Este componente podría reutilizarse en múltiples aplicaciones corporativas del SAS, asegurando una gestión uniforme y segura del acceso a los sistemas.

En el nivel más alto de abstracción encontramos los frameworks y plataformas, que proporcionan una estructura completa sobre la que construir aplicaciones. Por ejemplo, en el SAS se utiliza una plataforma corporativa de desarrollo que incluye componentes reutilizables, servicios comunes (autenticación, auditoría, notificaciones), guías de arquitectura y estándares de desarrollo. Cualquier nueva aplicación que se desarrolle sobre esta plataforma puede aprovechar todos estos elementos, reduciendo significativamente el esfuerzo de desarrollo y asegurando la coherencia arquitectónica con el resto de sistemas corporativos.

Estrategias de Reutilización

Existen diferentes estrategias para implementar la reutilización de componentes en una organización. La reutilización ad-hoc es la más simple pero la menos eficiente. Consiste en que cada equipo de desarrollo busque por su cuenta componentes que puedan ser útiles para su proyecto, los adapte según sus necesidades y los integre en su sistema. Esta aproximación es mejor que no reutilizar nada, pero tiene limitaciones importantes: no hay garantía de calidad de los componentes reutilizados, no hay mantenimiento centralizado, cada equipo puede acabar adaptando los componentes de formas incompatibles entre sí y se pierde la oportunidad de aprovechar economías de escala en el desarrollo y mantenimiento de componentes.

Una estrategia más estructurada es la creación de repositorios corporativos de componentes reutilizables. En esta aproximación, la organización mantiene uno o varios repositorios donde se publican componentes que han demostrado su utilidad y calidad. Cada componente está documentado, tiene un responsable de mantenimiento, tiene un proceso de control de cambios y viene con garantías de soporte. Los equipos de desarrollo consultan estos repositorios antes de iniciar el desarrollo de nueva funcionalidad y, si encuentran un componente que se ajuste a sus necesidades, lo reutilizan tal cual o con adaptaciones menores. En el SAS se utiliza esta aproximación con herramientas como Confluence (para documentación de componentes) y repositorios Git corporativos (para el código fuente de los componentes).

La estrategia más avanzada es el desarrollo orientado a la reutilización o desarrollo basado en líneas de producto software. En esta aproximación, desde el inicio del ciclo de vida se diseñan y construyen componentes pensando explícitamente en su reutilización en múltiples productos. Se identifican las funcionalidades comunes a toda una familia de productos (el núcleo común o core) y las funcionalidades específicas de cada producto (los puntos de variación). Los componentes del núcleo se desarrollan una sola vez con la máxima calidad y se reutilizan en todos los productos de la familia. Esta aproximación requiere una inversión inicial mayor en diseño y arquitectura, pero a largo plazo proporciona beneficios muy significativos en términos de productividad, calidad y time-to-market.

🔧 Herramientas de Gestión de Componentes en el SAS

En el SAS se utilizan varias herramientas para facilitar la gestión y reutilización de componentes software. El control de versiones se realiza con Git, el sistema de control de versiones distribuido más utilizado actualmente en la industria. Git permite gestionar el historial completo de cambios del código, trabajar en ramas paralelas para desarrollar nuevas funcionalidades sin afectar al código estable, y fusionar cambios de múltiples desarrolladores de forma controlada. Los repositorios Git del SAS están integrados con herramientas de integración continua que automatizan la construcción, las pruebas y el despliegue de componentes.

Para la gestión de proyectos y el seguimiento de tareas se utiliza JIRA, una herramienta muy popular en metodologías ágiles que permite organizar el trabajo en sprints, gestionar el backlog de producto, realizar seguimiento de issues (incidencias y peticiones de mejora) y generar informes de progreso. JIRA soporta tanto Scrum como Kanban, las dos metodologías ágiles más utilizadas en el SAS.

Para la gestión del conocimiento y la documentación técnica se utiliza Confluence, que permite crear páginas de documentación organizadas en espacios (cada proyecto o equipo tiene su espacio), vincular documentos con issues de JIRA, incrustar diagramas y código, y mantener un historial de versiones de cada página. Confluence es especialmente útil para documentar componentes reutilizables, porque permite explicar qué hace el componente, cómo utilizarlo, qué dependencias tiene, ejemplos de uso y FAQ.

Patrones de Diseño y Reutilización

Los patrones de diseño son soluciones reutilizables a problemas comunes en el diseño de software. Un patrón de diseño describe un problema que ocurre frecuentemente en el desarrollo de software y propone una solución genérica que ha demostrado ser efectiva. Los patrones de diseño no son componentes de código que se puedan reutilizar directamente, sino plantillas o guías que facilitan el diseño de soluciones robustas y mantenibles.

Uno de los patrones de diseño más utilizados en aplicaciones empresariales es el patrón Modelo-Vista-Controlador (MVC), que separa claramente la lógica de negocio (modelo), la presentación de información al usuario (vista) y el control del flujo de la aplicación (controlador). Esta separación facilita la evolución independiente de cada capa, permite reutilizar la lógica de negocio con diferentes interfaces de usuario y simplifica las pruebas de la aplicación. En el SAS, muchas aplicaciones web siguen el patrón MVC o variantes como MVVM (Modelo-Vista-VistaModelo) utilizadas en frameworks modernos como Angular o Vue.js.

Otro patrón muy relevante en arquitecturas distribuidas es el patrón de Microservicios. En lugar de construir una aplicación monolítica donde toda la funcionalidad reside en un único ejecutable, el patrón de microservicios propone descomponer la aplicación en servicios pequeños e independientes, cada uno responsable de una capacidad de negocio específica. Cada microservicio puede desarrollarse, desplegarse y escalarse independientemente, puede utilizar la tecnología más adecuada para su propósito específico y puede reutilizarse desde múltiples aplicaciones cliente. Este patrón es especialmente útil en organizaciones grandes como el SAS, donde diferentes equipos trabajan en diferentes sistemas que necesitan compartir funcionalidades comunes.

Reutilización y Escalabilidad en la Nube

La adopción de tecnologías cloud está transformando la forma en que se reutilizan componentes software. Las plataformas de orquestación de contenedores como Kubernetes permiten desplegar componentes software empaquetados en contenedores (típicamente contenedores Docker) y gestionarlos de forma automatizada. Kubernetes se encarga de distribuir los contenedores entre los servidores disponibles, de escalar automáticamente el número de instancias en función de la carga, de reiniciar contenedores que fallan y de enrutar el tráfico hacia los contenedores disponibles.

Esta aproximación facilita enormemente la reutilización de componentes, porque cada componente se empaqueta una vez con todas sus dependencias y se puede desplegar en cualquier entorno (desarrollo, pruebas, producción) de forma idéntica. No hay sorpresas debido a diferencias en las versiones de bibliotecas o en la configuración del sistema operativo, porque el contenedor incluye todo lo necesario para ejecutar el componente. Además, Kubernetes facilita la implementación de arquitecturas de microservicios, donde decenas o cientos de servicios pequeños e independientes colaboran para proporcionar la funcionalidad completa del sistema.

En el contexto del SAS, la migración hacia arquitecturas cloud y hacia la utilización de contenedores y Kubernetes está permitiendo modernizar sistemas legacy, mejorar la escalabilidad de servicios críticos y facilitar el desarrollo y despliegue de nuevas funcionalidades. Sin embargo, esta transformación requiere nuevas competencias técnicas en los equipos de desarrollo y operaciones (movimiento DevOps), requiere adaptar los procesos de seguridad a este nuevo entorno y requiere una inversión significativa en infraestructura y formación.

🎓 Integración de Conceptos: Construcción, Pruebas, Formación y Reutilización

Los conceptos que hemos desarrollado a lo largo de este tema no son elementos aislados, sino piezas de un sistema integrado. La construcción de un sistema de información de calidad requiere aplicar sistemáticamente buenas prácticas en cada una de estas áreas. Necesitamos escribir código limpio y bien estructurado, pero también necesitamos probar exhaustivamente ese código en múltiples niveles. Necesitamos reutilizar componentes ya validados siempre que sea posible, pero también necesitamos asegurarnos de que esos componentes se integran correctamente con el resto del sistema. Y necesitamos formar adecuadamente a los usuarios finales, porque incluso el mejor sistema técnicamente será un fracaso si los usuarios no lo adoptan o lo utilizan incorrectamente.

Pensemos en un proyecto real del SAS: la evolución del sistema de receta electrónica para incluir nueva funcionalidad de prescripción de productos sanitarios (material ortoprotésico, productos dietéticos especiales). Este proyecto requiere desarrollar nuevos componentes software para gestionar el catálogo de productos sanitarios, para validar prescripciones según las indicaciones autorizadas, para integrar con el sistema de facturación de oficinas de farmacia y para generar los documentos oficiales de prescripción. Algunos de estos componentes pueden reutilizarse de otros módulos de Diraya (componentes de autenticación, de acceso a base de datos, de auditoría de accesos). Otros son específicos de esta nueva funcionalidad y deben desarrollarse desde cero.

Durante la fase de construcción, cada componente nuevo se desarrolla siguiendo estándares de codificación corporativos, se documenta adecuadamente en Confluence, se versiona en Git y se prueba exhaustivamente con pruebas unitarias automatizadas. A medida que los componentes se completan, se realizan pruebas de integración para verificar que se comunican correctamente entre sí y con los componentes reutilizados. Cuando el sistema completo está construido, se realizan pruebas de sistema en un entorno de preproducción que replica el entorno de producción real. Estas pruebas incluyen pruebas funcionales (el sistema hace lo que debe hacer), pruebas de rendimiento (el sistema responde adecuadamente bajo carga) y pruebas de seguridad (el sistema es resistente a ataques comunes y cumple con el ENS).

Paralelamente al desarrollo técnico, se prepara el plan de formación. Se identifican los perfiles de usuario (médicos prescriptores, personal administrativo de farmacia hospitalaria, farmacéuticos comunitarios, personal de facturación), se diseñan itinerarios formativos específicos para cada perfil, se preparan materiales formativos (guías de usuario, vídeos tutoriales, casos prácticos) y se organizan sesiones de formación. La formación se imparte en oleadas, empezando por usuarios clave que luego actuarán como formadores internos en sus respectivos centros. Durante las primeras semanas tras el despliegue en producción, se proporciona soporte reforzado para resolver dudas y detectar problemas que no se hubieran identificado durante las pruebas.

Este ejemplo ilustra cómo construcción, pruebas, formación y reutilización son actividades complementarias que deben coordinarse cuidadosamente. El éxito del proyecto depende de que todas estas piezas funcionen correctamente. Un código perfectamente construido pero mal probado fallará en producción. Un sistema técnicamente impecable pero sin formación adecuada de usuarios no será utilizado correctamente. Una reutilización mal planificada de componentes puede introducir dependencias problemáticas o incompatibilidades. Solo con una visión integrada de todo el proceso podemos entregar sistemas de información que realmente aporten valor a la organización y mejoren la calidad de la atención sanitaria.

🗺️ Mapa Conceptual: Construcción de Sistemas de Información

┌─────────────────────────────────────────────────────────────────────┐
│                  CONSTRUCCIÓN DE SISTEMAS DE INFORMACIÓN             │
│                                                                       │
│  ┌────────────────────┐                                             │
│  │  CICLO DE VIDA     │                                             │
│  │  DEL SOFTWARE      │                                             │
│  └────────┬───────────┘                                             │
│           │                                                          │
│           ├──► Modelo en Cascada ──► Análisis → Diseño → Construcción
│           │                          → Pruebas → Despliegue         │
│           │                                                          │
│           ├──► Metodologías Ágiles ──► Sprints iterativos          │
│           │    (Scrum, Kanban)         (desarrollo + pruebas)       │
│           │                                                          │
│           └──► Métrica v3 ──► CSI: Construcción del Sistema        │
│                                                                      │
├──────────────────────────────────────────────────────────────────────┤
│                                                                       │
│  ┌────────────────────────────────────────────────────────────────┐ │
│  │                    PRUEBAS DE SOFTWARE                          │ │
│  │                                                                  │ │
│  │  ┌─────────────────┐                                           │ │
│  │  │ UNITARIAS       │──► Verifican componentes individuales    │ │
│  │  │ (desarrollador) │    Rápidas, automatizadas, aisladas      │ │
│  │  └─────────────────┘                                           │ │
│  │           ↓                                                     │ │
│  │  ┌─────────────────┐                                           │ │
│  │  │ INTEGRACIÓN     │──► Verifican interfaces entre componentes│ │
│  │  │ (equipo QA)     │    Comunicación, contratos de API        │ │
│  │  └─────────────────┘                                           │ │
│  │           ↓                                                     │ │
│  │  ┌─────────────────┐                                           │ │
│  │  │ SISTEMA         │──► Verifican sistema completo            │ │
│  │  │ (equipo QA)     │    Funcional, rendimiento, seguridad     │ │
│  │  └─────────────────┘                                           │ │
│  │           ↓                                                     │ │
│  │  ┌─────────────────┐                                           │ │
│  │  │ ACEPTACIÓN      │──► Verifican cumplimiento requisitos     │ │
│  │  │ (usuarios)      │    UAT, piloto, despliegue gradual       │ │
│  │  └─────────────────┘                                           │ │
│  │                                                                  │ │
│  │  OTRAS TIPOLOGÍAS:                                              │ │
│  │  • Regresión → Re-ejecutar tras cambios                        │ │
│  │  • Migración → Transferencia datos legacy                      │ │
│  │  • Recuperación → Planes continuidad negocio                   │ │
│  │  • Interoperabilidad → Comunicación sistemas externos          │ │
│  └──────────────────────────────────────────────────────────────────┘│
│                                                                       │
├──────────────────────────────────────────────────────────────────────┤
│                                                                       │
│  ┌────────────────────────────────────────────────────────────────┐ │
│  │                 FORMACIÓN DE USUARIOS                           │ │
│  │                                                                  │ │
│  │  PLANIFICACIÓN:                                                 │ │
│  │  1. Identificar perfiles usuario                               │ │
│  │  2. Diseñar itinerarios formativos                             │ │
│  │  3. Preparar materiales (manuales, vídeos, simuladores)        │ │
│  │  4. Organizar logística (aulas, formadores, calendario)        │ │
│  │                                                                  │ │
│  │  METODOLOGÍAS:                                                  │ │
│  │  ┌──────────────┐     ┌──────────────┐     ┌──────────────┐  │ │
│  │  │ PRESENCIAL   │     │ VIRTUAL      │     │ E-LEARNING   │  │ │
│  │  │ • Instructor │     │ SINCRÓNICA   │     │ (asíncrono)  │  │ │
│  │  │ • Aula física│     │ • Videoconf. │     │ • GESFORMA   │  │ │
│  │  │ • Interacción│     │ • Skype4Biz  │     │ • Autoestudio│  │ │
│  │  └──────────────┘     └──────────────┘     └──────────────┘  │ │
│  │                                                                  │ │
│  │  PARTICIPANTES:                                                 │ │
│  │  • Diseñadores instruccionales                                 │ │
│  │  • Formadores / Instructores                                   │ │
│  │  • Usuarios clave / Superusuarios                              │ │
│  │  • Responsables de unidades                                    │ │
│  │                                                                  │ │
│  │  FORMACIÓN EN SEGURIDAD (ENS mp.per.4):                        │ │
│  │  • Gestión contraseñas  • Phishing/Vishing                     │ │
│  │  • Dispositivos móviles • Protección datos                     │ │
│  │  • Notificación incidentes                                     │ │
│  └──────────────────────────────────────────────────────────────────┘│
│                                                                       │
├──────────────────────────────────────────────────────────────────────┤
│                                                                       │
│  ┌────────────────────────────────────────────────────────────────┐ │
│  │            REUTILIZACIÓN DE COMPONENTES SOFTWARE                │ │
│  │                                                                  │ │
│  │  NIVELES DE GRANULARIDAD:                                       │ │
│  │  • Bibliotecas de funciones                                     │ │
│  │  • Componentes / Módulos                                        │ │
│  │  • Frameworks / Plataformas                                     │ │
│  │                                                                  │ │
│  │  ESTRATEGIAS:                                                   │ │
│  │  1. Ad-hoc → Cada equipo busca componentes                     │ │
│  │  2. Repositorios corporativos → Catálogo centralizado          │ │
│  │  3. Líneas producto software → Diseño para reutilización       │ │
│  │                                                                  │ │
│  │  HERRAMIENTAS SAS:                                              │ │
│  │  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐      │ │
│  │  │   GIT    │  │  JIRA    │  │CONFLUENCE│  │KUBERNETES│      │ │
│  │  │ Control  │  │ Gestión  │  │  Docum.  │  │Orquestac.│      │ │
│  │  │ versiones│  │proyectos │  │ técnica  │  │contenedor│      │ │
│  │  └──────────┘  └──────────┘  └──────────┘  └──────────┘      │ │
│  │                                                                  │ │
│  │  PATRONES DE DISEÑO:                                            │ │
│  │  • MVC (Modelo-Vista-Controlador)                               │ │
│  │  • Microservicios + Event-Driven Architecture                   │ │
│  │  • Repository, Factory, Observer, Singleton...                  │ │
│  └──────────────────────────────────────────────────────────────────┘│
│                                                                       │
└───────────────────────────────────────────────────────────────────────┘

NORMATIVA Y ESTÁNDARES APLICABLES:
═══════════════════════════════════
• ISO/IEC 12207 → Procesos ciclo vida software
• ISO/IEC 25010 → Calidad producto software (SQuaRE)
• Métrica v3 → Metodología desarrollo administración pública
• ENS (RD 311/2022) → Medida mp.per.4 (Formación seguridad)
• RGPD + LOPDGDD → Protección datos categoría especial
• Ley 40/2015 → Principios eficiencia sector público
• RD 4/2010 → Esquema Nacional Interoperabilidad
• RD 1112/2018 → Accesibilidad sitios web sector público
                

📝 Cuestionario de Autoevaluación

A continuación encontrarás treinta preguntas tipo test que abarcan todos los conceptos desarrollados en este tema. Estas preguntas están basadas en los cuestionarios reales de exámenes del SAS de años anteriores y te ayudarán a consolidar tus conocimientos y a identificar áreas que necesites repasar. Recuerda que en el examen real deberás responder con rapidez pero también con precisión, así que practica identificando las respuestas correctas y, lo que es igualmente importante, comprendiendo por qué las otras opciones son incorrectas.

Pregunta 1

Según Métrica v3, ¿cuál de las siguientes NO es una tarea dentro del proceso de construcción de un sistema de información?

A) Realización y evaluación de las pruebas unitarias.
B) Realización y evaluación de las pruebas de integración.
C) Realización y evaluación de las pruebas de regresión.
D) Realización y evaluación de las pruebas de migración y carga inicial de datos.
✓ Respuesta Correcta: C
Explicación:

Métrica v3 define el proceso de Construcción del Sistema de Información (CSI) con actividades específicas que incluyen preparación del entorno, generación de código, pruebas unitarias (CSI 4), pruebas de integración (CSI 5) y pruebas de migración y carga inicial de datos (CSI 8). Sin embargo, las pruebas de regresión no están incluidas en el proceso de construcción según Métrica v3, sino que se consideran parte del mantenimiento del sistema, cuando se realizan cambios en un sistema ya en producción y es necesario verificar que dichos cambios no han introducido nuevos defectos en funcionalidades que antes funcionaban correctamente.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2023, Pregunta 21.

Pregunta 2

¿Cuál es el objetivo principal de la Norma ISO/IEC 12207?

A) Definir un marco para la gestión de la infraestructura de hardware.
B) Establecer un conjunto de procesos para el ciclo de vida del software.
C) Regular únicamente la fase de pruebas de software.
D) Proveer directrices exclusivas para la validación del software en operación.
✓ Respuesta Correcta: B
Explicación:

La norma ISO/IEC 12207 tiene como objetivo principal establecer un conjunto de procesos comunes para el ciclo de vida del software, cubriendo desde la adquisición hasta la operación y el mantenimiento. Esta norma internacional proporciona un marco común que facilita la gestión de proyectos software complejos, mejora la comunicación entre equipos multidisciplinares y permite evaluar la madurez de los procesos de desarrollo de software de una organización.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 40.

Pregunta 3

El ciclo de vida en cascada o ciclo de vida clásico exige un enfoque sistemático y secuencial del desarrollo de software. ¿Cuáles son todas sus fases?

A) Análisis, diseño, codificación, pruebas, utilización.
B) Diseño, codificación, pruebas, utilización, mantenimiento, sustitución.
C) Ingeniería del software, análisis, diseño, codificación, pruebas, utilización, mantenimiento, sustitución.
D) Ninguna de las respuestas es correcta.
✓ Respuesta Correcta: C
Explicación:

El modelo de ciclo de vida en cascada completo incluye todas las fases desde la ingeniería del sistema hasta la sustitución del sistema al final de su vida útil. Las fases son: Ingeniería del Software (análisis del sistema a nivel general), Análisis de requisitos (qué debe hacer el sistema), Diseño (cómo se construirá), Codificación (escritura del código), Pruebas (verificación), Utilización (explotación en producción), Mantenimiento (correcciones y mejoras) y finalmente Sustitución (retirada del sistema y migración a uno nuevo). La opción C es la única que recoge todas estas fases de forma completa.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 59.

Pregunta 4

En relación con el desarrollo ágil de software, indique la afirmación INCORRECTA:

A) Adoptar una estrategia de desarrollo incremental, en lugar de la planificación y ejecución completa del producto.
B) Basar la calidad del resultado más en el conocimiento tácito de las personas en equipos auto-organizados, que en la calidad de los procesos empleados.
C) La planificación se realiza una tras otra en un ciclo secuencial o en cascada.
D) Las herramientas mejoran la eficiencia, pero sin personas con conocimiento técnico y actitud adecuada, no producen resultados.
✓ Respuesta Correcta: C
Explicación:

La opción C es incorrecta porque describe precisamente lo contrario del desarrollo ágil. Las metodologías ágiles se caracterizan por el desarrollo iterativo e incremental, donde la planificación y ejecución ocurren en ciclos cortos (sprints) con entregas frecuentes de funcionalidad. La planificación en cascada secuencial es característica de las metodologías tradicionales predictivas, no de las ágiles. El Manifiesto Ágil valora «responder ante el cambio más que seguir un plan», lo que implica una planificación adaptativa en lugar de secuencial y rígida.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 60.

Pregunta 5

¿Cuál de los siguientes NO es un principio del Manifiesto Ágil?

A) Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor.
B) Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.
C) El software funcionando es la medida principal de progreso.
D) El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es el intercambio de documentos formales, a ser posible, firmados.
✓ Respuesta Correcta: D
Explicación:

La opción D contradice frontalmente uno de los principios del Manifiesto Ágil, que establece que «la forma más eficiente y efectiva de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara». El Manifiesto Ágil valora la interacción directa y la comunicación informal por encima de la documentación exhaustiva. Las opciones A, B y C son principios auténticos del Manifiesto Ágil que enfatizan la entrega de valor al cliente, la adaptabilidad ante cambios y la priorización del software funcionando sobre la documentación extensiva.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2023, Pregunta 18.

Pregunta 6

El desarrollo de software ágil tiene 12 principios. Dos de ellos son: «El software que funciona es la principal medida del progreso» y «Las personas del negocio y los desarrolladores deben trabajar juntos de forma cotidiana a través del proyecto». Respecto a esta afirmación:

A) Es falsa, el desarrollo ágil no tiene principios definidos.
B) Es parcialmente correcta, solo el primer principio es correcto.
C) Es parcialmente correcta, solo el segundo principio es correcto.
D) Es completamente correcta.
✓ Respuesta Correcta: D
Explicación:

El Manifiesto Ágil para el Desarrollo de Software efectivamente define 12 principios que guían las prácticas ágiles. Los dos principios mencionados en la pregunta son auténticos. El principio número 7 establece que «el software funcionando es la medida principal del progreso», enfatizando que los resultados tangibles son más importantes que los artefactos intermedios como documentos o diagramas. El principio número 4 establece que «los responsables de negocio y los desarrolladores deben trabajar juntos de forma cotidiana durante todo el proyecto», promoviendo la colaboración continua entre stakeholders técnicos y de negocio.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 62.

Pregunta 7

¿Cómo se llama al resultado de un sprint de SCRUM?

A) Incremento.
B) Producto.
C) Sprint backlog.
D) Pila del sprint.
✓ Respuesta Correcta: A
Explicación:

En la terminología de Scrum, el resultado de un sprint se denomina «Incremento». Un incremento es una pieza de funcionalidad de software potencialmente desplegable que cumple con la definición de «Hecho» (Definition of Done) establecida por el equipo. Cada sprint debe producir al menos un incremento, y los incrementos son acumulativos (el incremento del sprint N incluye el incremento del sprint N-1 más la nueva funcionalidad desarrollada). El Sprint Backlog (opción C) es el conjunto de elementos del Product Backlog seleccionados para el sprint, junto con el plan para completarlos, pero no es el resultado final del sprint.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2023, Pregunta 19.

Pregunta 8

Indique cuál de las siguientes afirmaciones NO es correcta en relación a los métodos de desarrollo ágil:

A) En Scrum durante el Sprint no se realizan cambios que puedan afectar al objetivo del Sprint.
B) Los elementos de la Lista de Producto seleccionados para el Sprint, más el plan para terminarlos, recibe el nombre de Lista de Pendientes del Sprint (Sprint Backlog).
C) El tiempo que se tarda en terminar cada tarea se debe medir, a ese tiempo se le llama lead time y cuenta desde que se hace una petición hasta que se hace la entrega.
D) El diagrama de Gantt es uno de los elementos fundamentales de un tablero de Kanban.
✓ Respuesta Correcta: D
Explicación:

La opción D es incorrecta porque el diagrama de Gantt no es un elemento fundamental de Kanban. Los tableros Kanban utilizan columnas que representan estados del flujo de trabajo (Por Hacer, En Progreso, Hecho, etc.) y tarjetas que representan elementos de trabajo que se mueven entre columnas. Los diagramas de Gantt son típicos de la gestión de proyectos tradicional y representan tareas en un eje temporal horizontal. Las otras opciones son correctas: en Scrum se protege el objetivo del sprint evitando cambios disruptivos (A), el Sprint Backlog es efectivamente la lista de elementos seleccionados más el plan (B), y el lead time en Kanban mide el tiempo total desde que se solicita algo hasta que se entrega (C).

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 41.

Pregunta 9

La metodología de planificación y desarrollo de sistemas de información MÉTRICA:

A) La estructura de los datos es jerárquica y la estructura de control del programa que se deriva del estudio de los datos también es jerárquica.
B) Ha sido concebida para abarcar el desarrollo completo de sistemas sea cual sea su complejidad y magnitud, por lo cual su estructura responde a desarrollos máximos y deberá adaptarse y dimensionarse en cada momento de acuerdo a las características particulares de cada proyecto.
C) Es un tipo de desarrollo de software ágil.
D) Para definir procesos y flujos de información se utilizan diagramas de Gantt.
✓ Respuesta Correcta: B
Explicación:

Métrica v3 efectivamente ha sido diseñada como una metodología completa que puede aplicarse a proyectos de cualquier tamaño y complejidad. Por ello, describe procesos, actividades y tareas correspondientes al desarrollo más exhaustivo posible, pero establece expresamente que debe adaptarse a las características concretas de cada proyecto. En proyectos pequeños se simplifican o eliminan ciertas actividades, mientras que en proyectos grandes y críticos se aplican todos los controles y verificaciones. Las opciones A, C y D son incorrectas: la A describe metodologías estructuradas antiguas como Jackson, la C es falsa porque Métrica es una metodología tradicional predictiva (aunque incluye interfaces para ágiles), y la D confunde herramientas de planificación temporal con técnicas de modelado de procesos.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 64.

Pregunta 10

¿En qué fase del ciclo de vida de un sistema de información se definen la arquitectura del sistema, el entorno tecnológico que lo soportará y se especifican detalladamente sus componentes?

A) Análisis del sistema.
B) Estudio de viabilidad.
C) Diseño del sistema.
D) Construcción del sistema.
✓ Respuesta Correcta: C
Explicación:

La fase de Diseño del sistema es donde se traduce el «qué» (definido en el análisis de requisitos) en un «cómo». Aquí se establecen la arquitectura general del sistema, se seleccionan las tecnologías, se definen los módulos, las interfaces y se detallan los componentes individuales antes de la implementación real. El Análisis del sistema (A) se enfoca en comprender los requisitos del usuario, el Estudio de viabilidad (B) evalúa si el proyecto es viable técnica y económicamente, y la Construcción del sistema (D) es donde se materializa el diseño escribiendo código real. Solo en el Diseño se toman las decisiones arquitectónicas y tecnológicas fundamentales.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta Reserva 151.

Pregunta 11

Seleccione la respuesta correcta en relación a la gestión de configuración del software:

A) Son un conjunto de actividades desarrolladas para gestionar los cambios a lo largo del ciclo de vida.
B) Es una actividad de garantía de calidad de software que se aplica exclusivamente en la fase de diseño del proceso de ingeniería del software.
C) Es un método de desarrollo ágil.
D) Es un control de versiones que se aplica en la fase de desarrollo.
✓ Respuesta Correcta: A
Explicación:

La gestión de configuración del software es efectivamente un conjunto de actividades diseñadas para gestionar y controlar los cambios en los artefactos de software a lo largo de todo su ciclo de vida. Incluye identificación de elementos de configuración, control de cambios, auditorías y generación de informes. La opción B es incorrecta porque la gestión de configuración se aplica durante todo el ciclo de vida, no solo en diseño. La opción C es incorrecta porque no es un método de desarrollo sino una disciplina de soporte. La opción D es parcialmente correcta pero incompleta, porque el control de versiones es solo una parte de la gestión de configuración, que también incluye gestión de cambios, builds, releases y auditorías.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 44.

Pregunta 12

¿Qué comando permite verificar el estado de un repositorio en Git?

A) git status
B) git situation
C) git check
D) git verify
✓ Respuesta Correcta: A
Explicación:

El comando git status es el comando estándar de Git para mostrar el estado del árbol de trabajo y del área de staging. Muestra qué archivos han sido modificados, cuáles están preparados para el próximo commit (staged) y cuáles no están siendo rastreados por Git. Es uno de los comandos más utilizados en el flujo de trabajo diario con Git, junto con git add, git commit y git push. Los comandos de las opciones B, C y D no existen en Git.

Fuente: Cuestionario Teórico-Práctico SAS Informática Libre OEP 2025, Pregunta 12.

Pregunta 13

Para el control de versiones de manera eficiente y colaborativa, el equipo de desarrollo utiliza GIT. ¿Qué comando deben usar para enviar cambios locales a un repositorio remoto?

A) git add
B) git pull
C) git commit
D) git push
✓ Respuesta Correcta: D
Explicación:

El comando git push se utiliza para enviar los cambios (commits) que se han realizado localmente en una rama a un repositorio remoto, sincronizando así el historial de versiones. git add (A) se usa para añadir cambios al área de staging, git pull (B) se usa para traer cambios desde el repositorio remoto y fusionarlos con la rama local, y git commit (C) se usa para confirmar cambios en el repositorio local, pero ninguno de ellos envía cambios al repositorio remoto.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 112.

Pregunta 14

¿Cuál es la principal herramienta que se utiliza en la Dirección General de Sistemas de Información y Comunicaciones (DGSIC) para la gestión del conocimiento, utilizada como repositorio y gestor documental orientado a los usuarios TIC?

A) Portal AyudaDigital.
B) JIRA.
C) Confluence.
D) Web Técnica.
✓ Respuesta Correcta: C
Explicación:

Confluence es la herramienta corporativa utilizada por la DGSIC del SAS para la gestión del conocimiento, funcionando como repositorio y gestor documental orientado a los usuarios TIC. Permite crear páginas de documentación técnica organizadas en espacios, vincular documentos con issues de JIRA, incrustar diagramas y código, y mantener un historial de versiones. El Portal AyudaDigital (A) es una interfaz de servicio al usuario final, JIRA (B) es para seguimiento de proyectos e incidencias, y la Web Técnica (D) puede ser un canal pero Confluence es el sistema específico para el repositorio de conocimiento.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 38.

Pregunta 15

¿Cómo se organiza la información en Confluence?

A) Por proyectos y tareas.
B) Por espacios y páginas.
C) Por issues y comentarios.
D) Por sprints y épicas.
✓ Respuesta Correcta: B
Explicación:

Confluence organiza la información mediante una jerarquía de espacios y páginas. Un espacio es un contenedor lógico que típicamente corresponde a un proyecto, un equipo o un área de conocimiento. Dentro de cada espacio se crean páginas que contienen la documentación, y estas páginas pueden organizarse en una jerarquía de padres e hijos. La opción A describe mejor a herramientas de gestión de proyectos como JIRA, la C describe elementos de sistemas de seguimiento de issues, y la D describe elementos de Scrum típicamente gestionados en JIRA.

Fuente: Cuestionario Teórico-Práctico SAS Informática Libre OEP 2025, Pregunta 10.

Pregunta 16

¿Qué tipos de metodologías ágiles se pueden gestionar en JIRA?

A) Solo Business.
B) Scrum y Kanban.
C) Business y Software.
D) SGI y SGA.
✓ Respuesta Correcta: B
Explicación:

JIRA soporta principalmente dos metodologías ágiles: Scrum y Kanban. Para Scrum, JIRA proporciona funcionalidad para gestionar el product backlog, planificar sprints, realizar daily standups virtuales, sprint reviews y retrospectivas. Para Kanban, proporciona tableros con columnas configurables, límites WIP (Work In Progress) y métricas de flujo como lead time y cycle time. Aunque JIRA se puede adaptar a otras metodologías híbridas, Scrum y Kanban son las dos principales soportadas de forma nativa con plantillas específicas.

Fuente: Cuestionario Teórico-Práctico SAS Informática Libre OEP 2025, Pregunta 11.

Pregunta 17

¿Qué herramienta corporativa del Servicio Andaluz de Salud se utiliza para hacer una distribución masiva de software y aplicación de parches sobre los equipos de puesto de usuario?

A) Altiris.
B) Terminal Server.
C) SCCM.
D) Telémaco.
✓ Respuesta Correcta: A
Explicación:

Altiris es la herramienta corporativa utilizada por el SAS para la distribución masiva de software y la aplicación de parches en los equipos de puesto de usuario, facilitando la gestión centralizada de actualizaciones y despliegues de aplicaciones. Terminal Server (B) es para acceso remoto a servidores, SCCM (C) es otra herramienta de gestión de Microsoft pero en el SAS se utiliza Altiris, y Telémaco (D) es la herramienta de asistencia remota utilizada por el personal técnico de AyudaDigital para dar soporte a usuarios.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 39.

Pregunta 18

¿Cuál de las siguientes opciones es una plataforma de contenedores administrada en la nube que permite escalado automático?

A) Kubernetes (K8s).
B) AWS RDS (Amazon Relational Database Service).
C) Azure DevOps.
D) GitLab CI/CD.
✓ Respuesta Correcta: A
Explicación:

Kubernetes (K8s) es una plataforma de orquestación de contenedores de código abierto, ampliamente adoptada en entornos de nube, que permite el despliegue, escalado automático y gestión de aplicaciones en contenedores, facilitando la reutilización y la escalabilidad de componentes. AWS RDS (B) es un servicio de base de datos relacional, Azure DevOps (C) y GitLab CI/CD (D) son herramientas para la automatización del ciclo de vida del desarrollo de software, pero no son plataformas de contenedores en sí mismas.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 111.

Pregunta 19

El principio de programación orientada a objetos que se refiere al hecho de que objetos de diferentes clases, pero con una interfaz común, se puedan usar de manera indistinta sin tener que saber de qué clase exacta son para poder hacerlo, se llama:

A) Abstracción.
B) Herencia.
C) Polimorfismo.
D) Encapsulación.
✓ Respuesta Correcta: C
Explicación:

El polimorfismo es el principio de programación orientada a objetos que permite que objetos de diferentes clases se comporten de manera diferente al recibir el mismo mensaje o llamada, usando una interfaz común. Por ejemplo, diferentes tipos de vehículos (Coche, Moto, Camión) pueden implementar todos el método acelerar(), pero cada uno lo hace de forma específica a su naturaleza. La Abstracción (A) oculta complejidad mostrando solo lo esencial, la Herencia (B) permite que una clase adquiera propiedades de otra, y la Encapsulación (D) agrupa datos y métodos en una unidad ocultando detalles internos.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 45.

Pregunta 20

¿Cuál de los siguientes lenguajes NO está fundamentalmente basado en el paradigma de la programación orientada a objetos?

A) Java.
B) Ruby.
C) Python.
D) Scratch.
✓ Respuesta Correcta: D
Explicación:

Scratch es un lenguaje de programación visual y educativo diseñado para principiantes, especialmente niños, que no está fundamentalmente basado en el paradigma de la programación orientada a objetos. Utiliza bloques visuales que se ensamblan como piezas de puzzle para crear scripts, pero su enfoque es más bien procedimental y basado en eventos que orientado a objetos. Java (A), Ruby (B) y Python (C) son lenguajes ampliamente reconocidos que soportan y, en gran medida, promueven la programación orientada a objetos como paradigma principal.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 43.

Pregunta 21

El mantenimiento «perfectivo» de software consiste en:

A) Mantenimiento y corrección de los errores no detectados previamente y que deben solventar defectos en el sistema detectados.
B) Adaptaciones requeridas por la evolución del entorno tecnológico o cambios normativos.
C) Modificaciones, mejoras o ampliaciones solicitadas por los usuarios, aumentando las funcionalidades.
D) Modificaciones en la documentación entregada.
✓ Respuesta Correcta: C
Explicación:

El mantenimiento perfectivo consiste en modificaciones, mejoras o ampliaciones solicitadas por los usuarios que aumentan o mejoran las funcionalidades del sistema, sin que exista un defecto que corregir ni un cambio en el entorno que obligue a la adaptación. Por ejemplo, añadir un nuevo informe estadístico que los usuarios solicitan, mejorar el rendimiento de una funcionalidad existente, o incorporar una nueva opción de filtrado en una consulta. La opción A describe el mantenimiento correctivo, la B describe el mantenimiento adaptativo, y la D sería mantenimiento de documentación pero no es una categoría estándar de mantenimiento de software.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 63.

Pregunta 22

Las fases principales del Modelo Corporativo Marco de Implantaciones del Servicio Andaluz de Salud son:

A) Análisis Preliminar de Situación, Reingeniería de Procesos, Preimplantación, Implantación, Arranque, Consolidación y Extensión.
B) Planificación, Desarrollo, Implantación, Monitorización y Extensión.
C) Análisis de requerimientos, Diseño, Desarrollo, Implantación y Mantenimiento.
D) Inicio de proyecto, Desarrollo, Gestión de entregas, Puesta en producción y Cierre de proyecto.
✓ Respuesta Correcta: A
Explicación:

El Modelo Corporativo Marco de Implantaciones del SAS define siete fases específicas para gestionar el proceso de implantación de nuevos sistemas o funcionalidades en el entorno sanitario: Análisis Preliminar de Situación (evaluar el contexto actual), Reingeniería de Procesos (rediseñar procesos adaptándolos al nuevo sistema), Preimplantación (preparar el entorno y formar a usuarios clave), Implantación (desplegar el sistema en el centro piloto), Arranque (puesta en marcha con soporte intensivo), Consolidación (estabilizar el funcionamiento) y Extensión (desplegar en el resto de centros). Las opciones B, C y D presentan ciclos genéricos pero no corresponden específicamente al modelo del SAS.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 37.

Pregunta 23

En relación con las pruebas de software, ¿cuál de las siguientes afirmaciones es CORRECTA?

A) Las pruebas unitarias las realiza el equipo de calidad después de la integración de componentes.
B) Las pruebas de sistema verifican únicamente la funcionalidad del software, no aspectos de rendimiento o seguridad.
C) Las pruebas de aceptación las realizan los usuarios finales o sus representantes para verificar que el sistema cumple sus expectativas.
D) Las pruebas de regresión se ejecutan exclusivamente antes del primer despliegue en producción.
✓ Respuesta Correcta: C
Explicación:

Las pruebas de aceptación son efectivamente realizadas por los usuarios finales o sus representantes (usuarios clave) para verificar que el sistema cumple con sus expectativas y está listo para su uso en el entorno real. La opción A es incorrecta porque las pruebas unitarias las realiza el propio desarrollador sobre sus componentes antes de la integración. La B es incorrecta porque las pruebas de sistema deben incluir tanto aspectos funcionales como no funcionales (rendimiento, seguridad, usabilidad). La D es incorrecta porque las pruebas de regresión se ejecutan precisamente durante el mantenimiento, cuando se hacen cambios en un sistema ya en producción para verificar que no se han introducido nuevos defectos.

Pregunta 24

CASO PRÁCTICO: En un hospital del SAS se ha detectado que varios profesionales han recibido llamadas de personas que se identificaban como técnicos de soporte informático solicitando sus credenciales de acceso. ¿Qué medida del Esquema Nacional de Seguridad está directamente relacionada con la formación que habría evitado este incidente?

A) [mp.per.1] Medidas contra ataques.
B) [mp.per.4] Formación.
C) [mp.per.2] Deberes y obligaciones.
D) [mp.s.1] Segregación de funciones.
✓ Respuesta Correcta: B
Explicación:

La medida [mp.per.4] Formación del ENS establece la obligación de proporcionar formación y concienciación apropiada al personal en materia de seguridad de la información. Esta medida busca que los usuarios sean la primera línea de defensa efectiva frente a ataques de ingeniería social como el vishing (phishing telefónico) descrito en el caso. Si los profesionales hubieran recibido formación específica sobre técnicas de ingeniería social y sobre los procedimientos corporativos de soporte (donde NUNCA se solicitan contraseñas), habrían reconocido el intento de fraude y lo habrían notificado sin comprometer sus credenciales.

Fuente: Cuestionario SAS Técnico Titulado Medio Informática 2025, Pregunta 145.

Pregunta 25

Durante la EIPD (Evaluación de Impacto en la Protección de Datos) se ha encontrado la siguiente amenaza que implica un riesgo alto: «Pérdidas económicas y daños reputacionales derivados del incumplimiento de la legislación sobre protección de datos personales». ¿Cuál de las siguientes medidas de seguridad podría reducir la probabilidad de ocurrencia de la amenaza?

A) Recoger el consentimiento del afectado para el tratamiento de los datos.
B) Formación apropiada del personal sobre protección de datos.
C) Usar datos disociados siempre que sea posible y no implique un esfuerzo desproporcionado.
D) Informar al afectado sobre el tratamiento de datos y sus riesgos.
✓ Respuesta Correcta: B
Explicación:

La formación apropiada del personal sobre protección de datos es la medida que más directamente reduce la probabilidad de incumplimientos derivados de errores humanos o desconocimiento de las obligaciones legales. Muchos incidentes de protección de datos ocurren porque el personal no conoce adecuadamente los requisitos del RGPD, no sabe cómo aplicar el principio de minimización de datos, comete errores al configurar permisos de acceso, o responde inadecuadamente ante brechas de seguridad. Las opciones A, C y D son medidas técnicas u organizativas importantes, pero no reducen la probabilidad de incumplimiento por desconocimiento del personal, que es una de las causas más frecuentes de sanciones.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 131.

Pregunta 26

Las unidades de Formación Continuada de la provincia van a organizar cursos de formación para sus profesionales utilizando la plataforma GESFORMA SSPA. ¿Qué requisitos técnicos necesita la plataforma para su funcionamiento?

A) Se puede utilizar cualquier navegador, aunque se recomienda el uso de Mozilla Firefox y Google Chrome.
B) Al ser un diseño Web se ha intentado aplicar un diseño que no cumpla los requisitos de ser adaptativo.
C) Resolución de pantalla mínima 1024 x 768.
D) Las opciones A) y C) son correctas.
✓ Respuesta Correcta: D
Explicación:

GESFORMA-SSPA requiere mínimamente una resolución de pantalla de 1024×768 píxeles y puede utilizarse con cualquier navegador moderno, aunque se recomienda Mozilla Firefox o Google Chrome para una mejor experiencia. La opción B es incorrecta porque GESFORMA-SSPA sí tiene un diseño responsive adaptativo que permite su uso desde diferentes dispositivos (ordenadores, tabletas, smartphones). Los requisitos técnicos mínimos facilitan que la mayoría de profesionales puedan acceder a la formación sin necesidad de equipamiento especial.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 145 (implícita en contexto combinado con pregunta 146).

Pregunta 27

Los profesionales que van a utilizar GESFORMA-SSPA podrán acceder:

A) Mediante dispositivos como tabletas (Android o iPad) y teléfonos inteligentes (Android, iOS, Windows Phone).
B) Se conectarán a la web de su centro de trabajo para matricularse, modificar sus datos personales y cambiar sus credenciales de acceso de usuario DMSAS.
C) Con usuario y contraseña USER-GESFORMA específicos.
D) Las opciones A) y B) son correctas.
✓ Respuesta Correcta: A
Explicación:

Los profesionales pueden acceder a GESFORMA-SSPA desde múltiples dispositivos (tabletas y smartphones con diferentes sistemas operativos) gracias a su diseño responsive. Sin embargo, la opción B es incorrecta porque los usuarios se autentican con sus credenciales corporativas de DMSAS (Single Sign-On), no mediante una web específica de su centro. La opción C también es incorrecta porque no hay usuarios específicos «USER-GESFORMA», sino que se utilizan las credenciales corporativas estándar de DMSAS. Por tanto, solo la opción A es completamente correcta.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 146.

Pregunta 28

En el aula de formación se van a realizar videoconferencias entre profesionales. El cliente que se utilizará será Skype For Business en el entorno de la red corporativa del SAS. Indique la respuesta INCORRECTA:

A) Se necesita Licencias de Office Pro-Plus (O365).
B) Autenticación de usuarios en DMSAS, así como la activación de la suscripción en el tenant Piloto de Skype.
C) En caso de que el usuario se encuentre en un PC en dominio DMSAS no le pedirá nuevas credenciales y será transparente para el usuario.
D) Skype For Business es un programa por excelencia gratis y no necesita ningún tipo de licencia.
✓ Respuesta Correcta: D
Explicación:

La opción D es incorrecta porque Skype for Business no es gratuito, requiere licencias de Office 365 (específicamente Office Pro-Plus o superiores) para su uso en entornos corporativos. Las opciones A, B y C son correctas: se necesitan licencias O365 (A), los usuarios deben estar dados de alta en DMSAS y en el tenant de Skype (B), y si el equipo está en el dominio DMSAS la autenticación es transparente mediante SSO (C). Skype for Business está siendo reemplazado por Microsoft Teams, pero durante el periodo de transición muchas organizaciones como el SAS mantienen ambos servicios.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 132.

Pregunta 29

En colaboración con el Área de Sistemas del Equipo Provincial TIC, para que la red del aula de formación funcione adecuadamente, se realiza una serie de tareas. Señale la opción INCORRECTA:

A) Comprobación del parcheo en el armario de comunicaciones.
B) Tirar el cable de red del armario de comunicaciones hasta el punto de red de conexión del PC.
C) Comprobación de comunicación de los equipos.
D) Comprobación de reglas del firewall definidas para el aula de formación.
✓ Respuesta Correcta: B
Explicación:

La opción B describe una tarea de cableado estructurado que normalmente se habría realizado durante la construcción o adaptación inicial del aula, no durante la preparación para uso de un aula ya existente. En un aula de formación preparada, el cableado hasta los puntos de red ya debe estar instalado. Las tareas habituales de preparación son verificar que el parcheo en el armario de comunicaciones es correcto (A), comprobar que hay comunicación efectiva desde los equipos (C) y verificar que las reglas de firewall permiten el acceso necesario para las actividades formativas (D), especialmente si se van a utilizar servicios como videoconferencia o acceso a sistemas corporativos.

Fuente: Cuestionario SAS Técnico Especialista en Informática 2019, Pregunta 147.

Pregunta 30

CASO PRÁCTICO INTEGRADOR: El SAS va a desplegar una nueva versión de Diraya que incluye un módulo de teleconsulta integrado. Antes del despliegue en todos los centros de salud de Andalucía, se realizará un piloto en tres centros de Sevilla durante dos meses. Considerando las buenas prácticas en construcción de sistemas, pruebas, formación y reutilización de componentes, ¿cuál de las siguientes estrategias es la MÁS ADECUADA?

A) Desplegar directamente en los tres centros piloto sin formación previa, recopilando feedback de usuarios para formar al resto después, y utilizar componentes completamente nuevos para asegurar la calidad.
B) Realizar pruebas exhaustivas de sistema y aceptación antes del piloto, formar a usuarios clave que actuarán como formadores internos, reutilizar componentes de autenticación y auditoría de Diraya, y establecer soporte reforzado durante el piloto.
C) Realizar solo pruebas unitarias antes del piloto, formar a todos los profesionales de los tres centros simultáneamente mediante e-learning asíncrono, desarrollar todos los componentes desde cero y desplegar en todos los centros si el piloto funciona una semana.
D) No realizar piloto sino desplegar directamente en todos los centros con formación presencial obligatoria para todos los profesionales, utilizar solo componentes reutilizados sin desarrollar ninguno nuevo.
✓ Respuesta Correcta: B
Explicación:

La opción B representa la estrategia más adecuada porque integra todas las mejores prácticas vistas en el tema. Realizar pruebas exhaustivas de sistema y aceptación antes del piloto asegura que el módulo es estable y funcional. Formar a usuarios clave que luego actuarán como formadores internos (modelo de cascada formativa) es eficiente y efectivo. Reutilizar componentes ya validados de Diraya (autenticación, auditoría) reduce riesgos y esfuerzo de desarrollo. Establecer soporte reforzado durante el piloto permite resolver problemas rápidamente y capturar lecciones aprendidas. La opción A carece de formación previa y rechaza reutilización innecesariamente. La C es insuficiente en pruebas y formación, y no aprovecha componentes existentes. La D no realiza piloto (perdiendo oportunidad de detectar problemas antes del despliegue masivo) y va a un extremo impracticable en formación presencial obligatoria para toda la organización.

📚 Referencias Normativas y Bibliográficas

Normativa Aplicable

Real Decreto 311/2022, de 3 de mayo, por el que se regula el Esquema Nacional de Seguridad. Especialmente relevante la medida mp.per.4 sobre formación y concienciación en seguridad de la información.
Reglamento (UE) 2016/679 del Parlamento Europeo (RGPD) y Ley Orgánica 3/2018 de Protección de Datos Personales y garantía de los derechos digitales. Artículos sobre tratamiento de datos de categoría especial (datos de salud).
Ley 39/2015, de 1 de octubre, del Procedimiento Administrativo Común de las Administraciones Públicas. Principios de administración electrónica.
Real Decreto 1112/2018, de 7 de septiembre, sobre accesibilidad de los sitios web y aplicaciones para dispositivos móviles del sector público.
Real Decreto 4/2010, de 8 de enero, por el que se regula el Esquema Nacional de Interoperabilidad en el ámbito de la Administración Electrónica.
Ley 40/2015, de 1 de octubre, de Régimen Jurídico del Sector Público. Principios de eficiencia en el uso de recursos públicos que favorecen la reutilización de componentes.

Estándares Internacionales

ISO/IEC 12207:2017 – Systems and software engineering — Software life cycle processes. Marco completo de procesos para el ciclo de vida del software.
ISO/IEC 25010:2011 – Systems and software Quality Requirements and Evaluation (SQuaRE). Modelo de calidad del producto software.
ISO/IEC 20000-1:2018 – Information technology — Service management. Sistema de gestión de servicios TI, incluye aspectos de formación de usuarios y gestión de cambios.
ISO/IEC 27001:2013 – Information technology — Security techniques — Information security management systems. Incluye controles relativos a concienciación y formación en seguridad.

Metodologías y Marcos de Trabajo

Métrica v3 – Metodología de Planificación, Desarrollo y Mantenimiento de Sistemas de Información. Ministerio para la Transformación Digital y de la Función Pública.
ITIL 4 – Information Technology Infrastructure Library. Marco de mejores prácticas para la gestión de servicios TI, incluye prácticas de gestión de despliegues y cambios.
Scrum Guide – Ken Schwaber y Jeff Sutherland. Definición oficial del marco de trabajo Scrum.
Manifesto for Agile Software Development – Valores y principios del desarrollo ágil de software (2001).

Documentación Específica del SAS

Modelo Corporativo Marco de Implantaciones del SAS – Fases específicas para gestionar implantaciones de sistemas en el entorno sanitario andaluz.
Política de Seguridad de la Información del SSPA – Directrices corporativas en materia de seguridad de la información aplicables al Servicio Andaluz de Salud.
Guías de desarrollo corporativas del SAS – Estándares de codificación, arquitecturas de referencia y componentes reutilizables para desarrollo de aplicaciones corporativas.

Bibliografía Complementaria

Sommerville, Ian (2015). «Ingeniería de Software» (10ª edición). Pearson. Capítulos sobre pruebas de software y gestión de configuración.
Pressman, Roger S. (2014). «Ingeniería del Software: Un enfoque práctico» (7ª edición). McGraw-Hill. Especialmente los capítulos sobre construcción y pruebas.
Beck, Kent (2002). «Test Driven Development: By Example». Addison-Wesley. Sobre desarrollo dirigido por pruebas.
Fowler, Martin (2018). «Refactoring: Improving the Design of Existing Code» (2ª edición). Addison-Wesley. Sobre mejora continua del código y reutilización.
Gamma, Erich et al. (1994). «Design Patterns: Elements of Reusable Object-Oriented Software». Addison-Wesley. Los patrones de diseño clásicos para reutilización.
Construcción sistemas información
Pruebas software SAS
Formación usuarios sanitarios
Reutilización componentes
Métrica v3
ISO/IEC 12207
ENS mp.per.4 formación
GESFORMA SSPA
Diraya implantación
Git control versiones
JIRA Confluence
Kubernetes contenedores
Scrum Kanban
Pruebas unitarias integración

Tema 16 – Construcción de Sistemas de Información

Preparación Oposición Técnico/a Especialista en Informática

Servicio Andaluz de Salud (SAS) – 2025

💪 Tu esfuerzo de hoy es tu éxito de mañana. ¡Ánimo, opositor!