> **📝 EXAMEN 11: Simulacro de Mantemento e Avance**

# Bloque I: Preguntas tipo Test

> *Elixe unha única resposta correcta e aplica a túa maxia de descarte.*

## 1. (Tema 8) Lei 19/2013: Transparencia e acceso á información

Segundo a Lei 19/2013, cal é o prazo xeral máximo legal para ditar e notificar a resolución dunha solicitude de acceso á información pública, sen contar as posibles ampliacións por volume ou complexidade?

- a) 10 días hábiles.
- b) 15 días hábiles.
- c) 1 mes.
- d) 3 meses.

### Respuesta

Na Lei 39/2015, do 1 de Outubro, do Procedemento Administratio Común dasAdministracións Públicas díctanos que por defecto calquer notificación ten un prazo de 10 días naturais cando éstas non teñan unha especificación, e diferencia da resolución dun procedemento, que ven sendo de 10 días hábiles. Neste caso concreto, na Lei 19/2013, do 9 de Novembro, de Transparencia, Acceso á Información Pública e o Bo Goberno, según o Apartado 1 do Artigo 20, Resolución, da SecciónII, do Exercicio do Dereito de Acceso á Información Pública, do Capítulo III, do Dereito de Acceso á Información Pública, do Título I, de Transparencia da Actividade Pública díctanos que 1 mes. Por tanto, a resposta correcta sería a `c`.

### Corrección

- **A túa resposta**: c) 1 mes.
- **Veredicto**: **✅ ¡Correctísima!**
- **O apuntamento do profe**: Non só acertaches, senón que me recitaches o fío lexislativo completo ata chegar ao Artigo 20.1. Efectivamente, a regra xeral na Lei de Transparencia é **1 mes** (ampliable a outro mes se o volume ou complexidade o xustifican). A túa diferenciación inicial cos prazos da 39/2015 demostra que tes o mapa mental das leis moi ben estruturado.

## 2. (Tema 33) Xestión de servizos TIC (ITIL)

En la gestión de servicios TIC (ITIL), un acuerdo firmado entre el departamento de TI y una parte interna de la misma organización (por ejemplo, un acuerdo de tiempos de respuesta entre el departamento de Redes y el de Servidores de un mismo Concello) para soportar la entrega de un servicio final, se denomina:

- a) SLA (Service Level Agreement).
- b) UC (Underpinning Contract).
- c) OLA (Operational Level Agreement).
- d) KPI (Key Performance Indicator).

### Respuesta

Esta no tengo ni idea pero respondiendo a ciegas y por la lógica de lo aquí expuesto diría que la `c`, por ser un acuerdo a nivel de operativa.

### Corrección

- **A túa resposta**: c) OLA (Operational Level Agreement).
- **Veredicto**: **✅ ¡Correcta!**
- **O apuntamento do profe**: O sentido común salvouche unha vez máis. OLA (Acordo de Nivel Operacional) é o pacto "entre compañeiros" da mesma empresa. Para que o non o esquezas xamais:
    - **SLA**: Cara ao cliente final (externo).
    - **OLA**: Entre departamentos internos (TI con Redes).
    - **UC (Underpinning Contract)**: Cun provedor externo (Ex: contrato de fibra con Telefónica).

## 3. (Tema 2) Estatuto de Autonomía de Galicia

Segundo o Estatuto de Autonomía de Galicia, unha vez que o Parlamento galego aproba unha lei, ¿a quen lle corresponde a súa promulgación, e en nome de quen o fai?

- a) Ao Presidente do Parlamento, en nome do pobo galego.
- b) Ao Presidente da Xunta, en nome do Rei.
- c) Ao Rei directamente, mediante Real Decreto.
- d) Ao Valedor do Pobo, en nome da Constitución.

### Respuesta

Esta é sinxela, e viría sendo a `a`, ao Presidente do Parlamento en nome do pobo galego.

### Corrección

- **A túa resposta**: a) Ao Presidente do Parlamento, en nome do pobo galego.
- **Veredicto**: **❌ Incorrecta**.
- **A correcta é**: **b) Ao Presidente da Xunta, en nome do Rei**.
- **O apuntamento do profe**: ¡Caíches na trampa institucional! O Parlamento aproba a lei (poder lexislativo), pero o xefe do executivo galego (O Presidente da Xunta) é quen ten a obriga de promulgalas. E faino **en nome do Rei** (Artigo 18 do Estatuto), porque o Rei é o Xefe do Estado e o Presidente da Xunta é o representante ordinario do Estado en Galicia.

## 4. (Tema 27) Control de versións (Git)

En el control de versiones con Git, ¿cuál es la principal diferencia visual y estructural en el historial al integrar una rama funcional (feature branch) a la rama principal (main) utilizando el comando git rebase en lugar de git merge?

- a) rebase crea siempre un nuevo "commit de fusión" (merge commit) para dejar constancia histórica de la integración, mientras que merge no.
- b) rebase reescribe el historial de commits colocándolos en línea recta (historial lineal) sobre la punta de la rama principal, evitando el commit de fusión.
- c) rebase solo permite integrar cambios si ambas ramas no tienen conflictos; si detecta uno solo, se aborta la operación permanentemente sin opción a resolución manual.
- d) merge sube los cambios al servidor remoto automáticamente, mientras que rebase es un comando que solo actúa en el entorno local.

### Respuesta

`git rebase` crea una especie de Merge lineal dentro de la misma rama sobre el cliente; mientras que `git merge` hace la unión no lineal de dos ramas con la seguridad sobre cambios que se puedan pisar. Por dicha lógica entiendo que es la `b`, pues:

- a) `git rebase` no crea un Merge Commiteado, sino la unión de cambios sobre la misma rama sobre el cliente.
- b) Aquí, aunque no lo describe tal cual, es la que más me encaja en este caso.
- c) Para unir dos ramas es `git merge`, no `git rebase`.
- d) `git merge` se puede gestionar sobre local para adaptar los cambios entre ramas.

### Corrección

- **A túa resposta**: b) rebase reescribe el historial...
- **Veredicto**: **✅ ¡Correcta!**
- **O apuntamento do profe**: Perfectamente deducido. `merge` é seguro, non destrúe nada, pero deixa o historial cheo de bifurcacións. `rebase` colle os teus commits, arríncaos de onde estaban e colócaos xusto na punta da rama principal como se os acabaras de programar hoxe, deixando un historial lineal precioso (pero reescribindo a historia, o cal é perigoso se a rama xa estaba compartida con outros).

## 5. (Tema 13) Depuración en Visual Studio .NET (C#)

En el desarrollo con .NET (C#), si intentas acceder a una propiedad o invocar un método de una variable de tipo referencia (Reference Type) que actualmente no apunta a ningún objeto válido en memoria (su valor actual es null), ¿qué excepción estándar y crítica lanzará el entorno de ejecución (CLR)?

- a) ArgumentNullException
- b) IndexOutOfRangeException
- c) NullReferenceException
- d) InvalidCastException

### Respuesta

Aquí, por sentido común digo que sería la `c` pues:

- a) ESta excepción sería para argumentos de entrada de un método o constructor.
- b) Es para cuando haces una referencia Indexada como puede ser a un elemento de una Lista, pero dicho Index usado está fuera de rango de los elementos existentes.
- c) Esta es la que tiene real sentido.
- d) Aquí hablamos de que intentas cargar un dato sobre una variable sobre un tipado no compatible sobre Casteo.

### Corrección

- **A túa resposta**: c) NullReferenceException.
- **Veredicto**: **✅ ¡Correcta!**
- **O apuntamento do profe**: A clásica, temida e famosa *NullReferenceException* (o erro do billón de dólares, como o chamaba o seu inventor). O teu descarte das outras tres opcións foi impecable e exacto.

# Bloque II: Preguntas de Respuesta Corta

> *Conceptos directos, razoa a resposta se o necesitas.*

## 6. (Tema 5 - Lei 39/2015: Nulidade)

O artigo 47 da Lei 39/2015 establece os casos nos que os actos das Administracións Públicas son nulos de pleno dereito (a sanción máis grave posible no dereito administrativo). Sen necesidade de citar o texto literal, nomea e razoa brevemente polo menos dúas causas polas que un acto administrativo se considera nulo de pleno dereito.

### Respuesta

Esta la tuve que mirar. Según el Apartado 1 del Artículo 47, de la Nulidad de Pleno Derecho, del Capítulo III, de la Nulidad y Anulidad, del Título III, de los Actos Administrativos tenemos los siguientes casos:

- Los que lesionen los derechos y libertades susceptivles de amparo constitucional.
- Los dictados por órgano manifiestamente incompetente por razón de la materia o del territorio.
- Los que tengan un contenido imposible.
- Los que sean constitutivos de infracción penal o se dicten como consecuencia de ésta.
- Los dictados prescindiendo total o absolutamente del procedimiento legalmente establecido o de las normas que contienen las reglas esenciales para la formación de la voluntad de los órganos colegiados.
- Los actos expresos o presuntos contrarios al ordenamiento jurídico por los que se adquieren facultades o derechos cuando se carezca de los requisitos esenciales para su adquisición.
- Cualquier otro que se establezca expresamente en una disposición con rango de Ley.

Desgraciadamente me estaba todo el rato bailando el de la incompetencia.

### Corrección

- **Veredicto**: **✅ ¡Aprobada con procura!**
- **O apuntamento do profe**: Fixeches ben en miralo. O Artigo 47 hai que sabelo case de memoria porque é un dos grandes "hits" das oposicións. Se tes que memorizar dúas ou tres de emerxencia, quédate con estas (son as máis fáciles de recordar):
    - Que manquen dereitos fundamentais (amparo constitucional).
    - Órgano *manifestamente* incompetente (se che pon unha multa de tráfico o Ministro de Sanidade).
    - Contido imposible (que che dean unha licenza para construír na lúa).

## 7. (Tema 22 - Criptografía e Contrasinais)

Ao almacenar contrasinais de usuarios nunha base de datos municipal, as boas prácticas de ciberseguridade ditan que nunca se debe gardar o contrasinal en texto plano, nin sequera usar só unha función Hash simple (como SHA-256). Recoméndase engadir sempre un valor chamado "Salt" (sal). Define brevemente que é un "Salt" e que tipo de ataque informático específico axuda a mitigar.

### Respuesta

Como a función de Hash `password` de SQL Server, que nos permite Hashear a contrasinal pero que a súa resultante varía, axuda a mitigar a capacidade de obter un valor de Hash e chegar inversamente a un valor que dé o mesmo como equivalencia.

### Corrección

- **Veredicto**: **✅ Concepto acertado (pero imos afinalo tecnicamente).**
- **O apuntamento do profe**: A túa idea base é correcta: varía o *hash* para evitar deducións. Para ir a polo 10, engade isto: un **Salt** é unha cadea de caracteres aleatoria que se engade ao contrasinal *antes* de pasalo pola función de Hash.

O ataque específico que destrúe de forma definitiva chámase ataque de **Rainbow Tables** (Táboas Arco da Vella), que son dicionarios xigantescos de *hashes* precalculados. Ao meter un *salt* único por usuario, un mesmo contrasinal (ex: `123456`) xera un *hash* totalmente distinto para o Usuario A e para o Usuario B.

## 8. (Tema 15 - SQL Server: Consultas)

En el lenguaje de consultas SQL, cuando necesitas combinar verticalmente los conjuntos de resultados de dos sentencias SELECT diferentes en una sola salida de datos, ¿cuál es la diferencia de funcionamiento (especialmente en el tratamiento de datos y el rendimiento) entre usar el operador UNION y el operador UNION ALL?

### Respuesta

`union` une los resultados en una única vista de forma ordenada y evitando repeticiones; mientras que `union all` hace lo mismo pero sin ordenar y dejando todos los posibles elementos repetidos. Por su naturlaza, el más rápido y que menos recursos consume con respecto al rendimiento es el `union all`.

### Corrección

- **Veredicto**: **✅ ¡Matrícula de Honra!**
- **O apuntamento do profe**: Explicación redonda. `UNION` fai un "DISTINCT" encuberto (ordena e elimina duplicados), o cal consome moita CPU e memoria. `UNION ALL` pega un resultado debaixo do outro a toda pastilla. Se xa sabes que os teus datos non teñen duplicados entre táboas, usar `UNION ALL` é a marca dun bo DBA.