Capítulo 2
Cuerpo del conocimiento de Ciencia de la Computación–Computer Science
Las 17 áreas de conocimiento en Ciencia de la Computación–Computer Science son:
2.1 Inteligencia Artificial (AI)
- 2.1.1 Introducción a la IA: Conceptos y Comportamiento Inteligente
- 2.1.2 Características del Problema y Naturaleza de los Agentes
- 2.1.3 Estado y Búsqueda No Informada
- 2.1.4 Búsqueda Heurística y CSP
- 2.1.5 Búsqueda Adversarial y Optimización Estocástica
- 2.1.6 Representación del Conocimiento y Razonamiento Probabilístico Básico
- 2.1.7 Independencia, Modelos de Markov y Toma de Decisiones
- 2.1.8 Aprendizaje Automático I: Fundamentos
- 2.1.9 Aprendizaje Automático II: Datos, Representaciones y Evaluación
- 2.1.10 Aprendizaje Automático III: Redes Neuronales y Ética
- 2.1.11 Formulación del Aprendizaje Automático y Evaluación
- 2.1.12 Aprendizaje Profundo, RL y Ética
- 2.1.13 Aplicaciones e Impacto Social (Parte I)
- 2.1.14 Aplicaciones e Impacto Social (Parte II)
- 2.1.15 Representación Lógica y Razonamiento
- 2.1.16 Representación Probabilística y Razonamiento
- 2.1.17 Planificación
- 2.1.18 Agentes y Sistemas Cognitivos
- 2.1.19 Procesamiento del Lenguaje Natural
- 2.1.20 Robótica
- 2.1.21 Percepción y Visión por Computadora
2.2 Fundamentos Algorítmicos (AL)
- 2.2.1 Estructuras de Datos Fundamentales
- 2.2.2 Algoritmos Fundamentales
- 2.2.3 Algoritmos Avanzados
- 2.2.4 Estrategias Algorítmicas
- 2.2.5 Marco de Análisis de Complejidad
- 2.2.6 Notación Asintótica y Clases de Complejidad
- 2.2.7 Análisis de Complejidad II: Recursión, Amortización y Cotas Ajustadas
- 2.2.8 Teoría de la Complejidad Computacional
- 2.2.9 Lenguajes Formales y Autómatas
- 2.2.10 Computabilidad y Decidibilidad
- 2.2.11 Sociedad, ética y la Profesión
2.3 Arquitectura y Organización (AR)
- 2.3.1 Lógica Digital y Sistemas Digitales
- 2.3.2 Representación de Datos a Nivel de Máquina
- 2.3.3 Organización de Máquina a Nivel de Ensamblador
- 2.3.4 Jerarquía de Memoria
- 2.3.5 Interconexión y Comunicación
- 2.3.6 Organización Funcional
- 2.3.7 Rendimiento y Eficiencia Energética
- 2.3.8 Arquitecturas Heterogéneas
- 2.3.9 Arquitecturas de Procesador Seguras
- 2.3.10 Arquitecturas Cuánticas
- 2.3.11 Problemas de Sostenibilidad
2.4 Gestión de Datos (DM)
- 2.4.1 El Rol de los Datos y el Ciclo de Vida de los Datos
- 2.4.2 Conceptos Fundamentales de Sistemas de Bases de Datos
- 2.4.3 Modelado de Datos
- 2.4.4 Bases de Datos Relacionales
- 2.4.5 Construcción de Consultas
- 2.4.6 Procesamiento de Consultas
- 2.4.7 Internos de DBMS
- 2.4.8 Sistemas NoSQL
- 2.4.9 Seguridad y Privacidad de Datos
- 2.4.10 Análisis de Datos
- 2.4.11 Bases de Datos Distribuidas/Computación en la Nube
- 2.4.12 Bases de Datos Semiestructuradas y No Estructuradas
- 2.4.13 Sociedad, ética y Profesión
2.5 Fundamentos de los Lenguajes de Programación (FPL)
- 2.5.1 Programación Orientada a Objetos I: Fundamentos
- 2.5.2 Programación Orientada a Objetos II: Encapsulación, Subtipado y Reflexión
- 2.5.3 Programación Funcional
- 2.5.4 Programación Lógica
- 2.5.5 Scripting de Shell
- 2.5.6 Programación Dirigida por Eventos y Reactiva
- 2.5.7 Computación Paralela y Distribuida
- 2.5.8 Programación Orientada a Aspectos
- 2.5.9 Sistemas de Tipos I: Fundamentos
- 2.5.10 Sistemas de Tipos II: Polimorfismo y Tipado Complementario
- 2.5.11 Teoría de Tipos Avanzada
- 2.5.12 Modelo de Ejecución y Memoria de Sistemas
- 2.5.13 Gestión de Memoria
- 2.5.14 Traducción y Ejecución de Lenguajes
- 2.5.15 Abstracción y Representación de Programas
- 2.5.16 Análisis Sintáctico
- 2.5.17 Análisis Semántico del Compilador
- 2.5.18 Análisis de Programas y Analizadores
- 2.5.19 Generación de Código
- 2.5.20 Comportamiento en Tiempo de Ejecución y Sistemas
- 2.5.21 Construcciones de Programación Avanzadas
- 2.5.22 Pragmática del Lenguaje
- 2.5.23 Semántica Formal
- 2.5.24 Metodologías de Desarrollo Formal
- 2.5.25 Principios de Diseño de Lenguajes de Programación
- 2.5.26 Sociedad, ética y Profesión
2.6 Gráficos y Técnicas Interactivas (GIT)
- 2.6.1 Conceptos Fundamentales de Gráficos y Técnicas Interactivas
- 2.6.2 Visualización
- 2.6.3 Renderizado Aplicado y Técnicas
- 2.6.4 Modelado Geométrico
- 2.6.5 Sombreado y Renderizado Avanzado
- 2.6.6 Animación por Computadora
- 2.6.7 Simulación
- 2.6.8 Inmersión
- 2.6.9 Interacción
- 2.6.10 Procesamiento de Imágenes
- 2.6.11 Computación Tangible/Física
- 2.6.12 Sociedad, ética y Profesión
2.7 Interacción Humano-Computadora (HCI)
- 2.7.1 Comprender al Usuario: Objetivos individuales e interacciones con otros
- 2.7.2 Responsabilidad y Rendición de Cuentas en el Diseño
- 2.7.3 Accesibilidad y Diseño Inclusivo
- 2.7.4 Evaluación del Diseño
- 2.7.5 Diseño de Sistemas
- 2.7.6 Sociedad, ética y Profesión
2.8 Fundamentos Matemáticos y Estadísticos (MSF)
- 2.8.1 Matemáticas Discretas
- 2.8.2 Matemáticas Discretas Avanzadas
- 2.8.3 Probabilidad
- 2.8.4 Estadística
- 2.8.5 álgebra Lineal
- 2.8.6 Cálculo
2.9 Redes y Comunicaciones (NC)
-
2.9.1 Fundamentos de Redes y Comunicaciones
- 2.9.2 Aplicaciones en Red
- 2.9.3 Soporte de Fiabilidad
- 2.9.4 Enrutamiento y Reenvío
- 2.9.5 Comunicación de un solo salto
- 2.9.6 Seguridad de Red
- 2.9.7 Soporte de Movilidad
- 2.9.8 Temas Emergentes
2.10 Sistemas Operativos (OS)
- 2.10.1 Rol y Propósito de los Sistemas Operativos
- 2.10.2 Principios del Sistema Operativo
- 2.10.3 Concurrencia
- 2.10.4 Protección y Seguridad
- 2.10.5 Planificación
- 2.10.6 Modelo de Proceso
- 2.10.7 Gestión de Memoria
- 2.10.8 Gestión de Dispositivos
- 2.10.9 API de Sistemas de Archivos e Implementación
- 2.10.10 Sistemas de Archivos Avanzados
- 2.10.11 Virtualización
- 2.10.12 Sistemas en Tiempo Real y Embebidos
- 2.10.13 Tolerancia a fallos
- 2.10.14 Sociedad, ética y Profesión
2.11 Computación Paralela y Distribuida (PDC)
- 2.11.1 Programas: Paralelismo Declarativo
- 2.11.2 Programas: Inicio de Actividades
- 2.11.3 Programas: Propiedades de Ejecución
- 2.11.4 Programas: Distribución
- 2.11.5 Programas: Mapeos de Implementación
- 2.11.6 Programación GPU
- 2.11.7 Comunicación
- 2.11.8 Comunicación: Propiedades y Extensiones
- 2.11.9 Memoria y Consistencia
- 2.11.10 Coordinación
- 2.11.11 Coordinación: Sincronización y Atomicidad
- 2.11.12 Coordinación: Propiedades Avanzadas
- 2.11.13 Evaluación
- 2.11.14 Evaluación: Métodos Formales
- 2.11.15 Evaluación: Pruebas y Medición
- 2.11.16 Algoritmos
- 2.11.17 Algoritmos: Dominios de Aplicación
- 2.11.18 Algoritmos: Dominios Algorítmicos
2.12 Fundamentos de Desarrollo de Software (SDF)
- 2.12.1 Fundamentos de Programación I
- 2.12.2 Fundamentos de Programación II
- 2.12.3 Estructuras de Datos Fundamentales
- 2.12.4 Algoritmos
- 2.12.5 Prácticas de Desarrollo de Software
- 2.12.6 Sociedad, ética y la Profesión
2.13 Ingeniería de Software (SE)
- 2.13.1 Colaboración y Dinámica de Equipo
- 2.13.2 Diversidad, Stakeholders y Equipos Distribuidos
- 2.13.3 Control de Versiones y CI/CD
- 2.13.4 Entorno de Desarrollo e IDE
- 2.13.5 Ingeniería de Requisitos
- 2.13.6 Evolución y Estimación de Requisitos
- 2.13.7 Principios y Arquitectura de Software
- 2.13.8 Diseño de API y Modelado
- 2.13.9 Calidad y Evaluación del Diseño
- 2.13.10 Prácticas de Codificación
- 2.13.11 Construcción a Escala y Proceso
- 2.13.12 Conceptos de verificación y validación
- 2.13.13 Planificación y Tipos de Pruebas
- 2.13.14 Prácticas Avanzadas de Pruebas
- 2.13.15 Herramientas y Análisis de Pruebas
- 2.13.16 Pruebas de Rendimiento y Evaluación Comparativa
- 2.13.17 Compatibilidad y Versionado de API
- 2.13.18 Técnicas de Refactorización
- 2.13.19 Conceptos de Confiabilidad
- 2.13.20 Ingeniería de Confiabilidad
- 2.13.21 Métodos Formales
2.14 Seguridad (SEC)
- 2.14.1 Principios y Mentalidad de Seguridad
- 2.14.2 Control de Acceso y Aplicaciones
- 2.14.3 Seguridad en IA y Hardware
- 2.14.4 Ética, Ley y Sociedad en Seguridad
- 2.14.5 Privacidad y Seguridad por Diseño
- 2.14.6 Inyección y Validación de Entrada
- 2.14.7 Seguridad de Memoria y Tipos
- 2.14.8 Flujo de Información y No Interferencia
- 2.14.9 Análisis de Malware y Seguridad Avanzada
- 2.14.10 Fundamentos de Criptografía
- 2.14.11 Algoritmos Criptográficos
- 2.14.12 Protocolos, Aplicaciones y Criptografía Avanzada
- 2.14.13 Análisis de Amenazas e Ingeniería de Seguridad
- 2.14.14 Diseño e Ingeniería de Controles de Seguridad
- 2.14.15 Computación Confiable e Ingeniería de Privacidad
- 2.14.16 Técnicas de Informática Forense
- 2.14.17 Aspectos Legales y Manejo de Incidentes
- 2.14.18 Gobierno, Gestión y Política de Seguridad
- 2.14.19 Gestión de Riesgos y Datos
2.15 Sociedad, ética y la Profesión (SEP)
- 2.15.1 Impacto Social e IA
- 2.15.2 Equidad Digital y Accesibilidad
- 2.15.3 Fundamentos y Marcos del Análisis Ético
- 2.15.4 Métodos y Herramientas de Análisis Ético
- 2.15.5 Valores, Naturaleza y Actualización Profesional
- 2.15.6 Códigos de Ética y Responsabilidad Legal
- 2.15.7 Responsabilidad Profesional y Política Pública
- 2.15.8 Disidencia Ética y Contexto Cultural
- 2.15.9 Ética en el Lugar de Trabajo
- 2.15.10 Fundamentos de la Propiedad Intelectual
- 2.15.11 Licencias, Plagio y Autoría
- 2.15.12 Derechos de PI Digital y Derechos de Autor
- 2.15.13 Open Source, Piratería y DRM
- 2.15.14 Datos, Vigilancia y Tecnología de Privacidad
- 2.15.15 Fundamentos Filosóficos y Legislación de Privacidad
- 2.15.16 Libertades Civiles y Expresión
- 2.15.17 Comunicación Técnica y Profesional
- 2.15.18 Comunicación en Equipo y Cultura
- 2.15.19 Huella Ambiental de los Sistemas Informáticos
- 2.15.20 Efectos Sistémicos y Contexto Social
- 2.15.21 Diseño Sostenible y Computación Ubicua
- 2.15.22 Fundamentos e Historia Temprana de la Informática
- 2.15.23 Historia Moderna: PC, Internet e IA
- 2.15.24 Modelos y Estrategias Económicas
-
2.15.25 Automatización, IA y Ética Económica
- 2.15.26 Delitos y Ataques Informáticos
- 2.15.27 Leyes, Políticas y Responsabilidad en Seguridad
- 2.15.28 Identidad y Diversidad en la Informática
- 2.15.29 Contexto Histórico e Intercultural de DEIA
- 2.15.30 Inclusión y Prácticas en Informática
- 2.15.31 Diseño Accesible
2.16 Fundamentos de Sistemas (SF)
- 2.16.1 Componentes Hardware y Lógica
- 2.16.2 Capas, Abstracciones y Escalabilidad
- 2.16.3 Sistemas Digitales y Lógica
- 2.16.4 Máquinas de Estado
- 2.16.5 Procesamiento Secuencial y Paralelo
- 2.16.6 Gestión de Recursos
- 2.16.7 Latencia, Caché y Jerarquía de Memoria
- 2.16.8 Virtualización y Aislamiento
- 2.16.9 Métricas y Benchmarks de Rendimiento
- 2.16.10 Modelos Analíticos de Rendimiento
- 2.16.11 Eventos, Herramientas y Experimentación
- 2.16.12 Confiabilidad del Sistema
- 2.16.13 Seguridad del Sistema
- 2.16.14 Diseño del Sistema
- 2.16.15 Sociedad, ética y la Profesión
2.17 Desarrollo de Plataformas Especializadas (SPD)
- 2.17.1 Aspectos Comunes I: Plataformas, APIs y Restricciones
- 2.17.2 Aspectos Comunes II: Lenguajes de Plataforma y Patrones Web
- 2.17.3 Frontend, Frameworks y Estándares Web
- 2.17.4 Arquitectura Cloud y Gestión de Datos
- 2.17.5 Plataformas Móviles I: Fundamentos del Desarrollo
- 2.17.6 Plataformas Móviles: Arquitectura y Restricciones
- 2.17.7 Plataformas Móviles: Capacidades y Computación Asíncrona
- 2.17.8 Plataformas Robóticas
- 2.17.9 Características y Arquitecturas Embebidas
- 2.17.10 Sistemas, Programación y Sensores
- 2.17.11 Tiempo Real, Memoria y Verificación
- 2.17.12 Historia, Tipos y Características de Plataformas
- 2.17.13 Sensores, Controladores y Ecosistemas eSports
- 2.17.14 Arquitecturas y Renderizado
- 2.17.15 Algoritmos, Medios y Mundos Virtuales
- 2.17.16 Lenguajes, APIs y Herramientas de Desarrollo
- 2.17.17 Motores de Juego
- 2.17.18 Fundamentos del Diseño de Juegos
- 2.17.19 Géneros, Audiencias y Alcance Social
- 2.17.20 Plataformas Interactivas de Datos y Análisis
- 2.17.21 Programación con IA y Plataformas Cuánticas
- 2.17.22 SPD-SEP/Móvil
- 2.17.23 SPD-SEP Web
- 2.17.24 Propiedad Intelectual en los Juegos
- 2.17.25 Accesibilidad e Interfaz del Juego
- 2.17.26 Salud, Seguridad y Sostenibilidad
- 2.17.27 Representación, Inclusión e Igualdad
- 2.17.28 SPD-SEP/Robótica
- 2.17.29 SPD-SEP/Interactiva