Рекомендації зі складання навчального плану з комп'ютерних наук
Області знань
Фундаментальні дисципліни навчального плану (CS2013 Body of Knowledge) організовані як набір з 18 областей знань (Knowledge Areas – KA) у відповідності з основними областями досліджень в комп’ютерних науках. Кожна область знань являє собою набір одиниць знань (Knowledge Units – KU).
Виділяють такі області знань:
• AL - Algorithms and Complexity |
Алгоритми і складність
|
• AR - Architecture and Organization |
Архітектура і організація
|
• CN - Computational Science |
Обчислювальні науки
|
• DS - Discrete Structures |
Дискретні структури
|
• GV - Graphics and Visualization |
Графіка та візуалізація
|
• HCI - Human-Computer Interaction |
Людино-машинна взаємодія
|
• IAS - Information Assurance and Security* |
Безпека інформації
|
• IM - Information Management |
Інформаційний менеджмент
|
• IS - Intelligent Systems |
Системи штучного інтелекту
|
• NC - Networking and Communications* |
Мережі та комунікація
|
• OS - Operating Systems |
Операційні системи
|
• PBD - Platform-based Development* |
Платформно-орієнтована розробка
|
• PD - Parallel and Distributed Computing* |
Паралельні і розподілені обчислення
|
• PL - Programming Languages |
Мови програмування
|
• SDF - Software Development Fundamentals* |
Основи розробки програм
|
• SE - Software Engineering |
Програмна інженерія
|
• SF - Systems Fundamentals* |
Основи систем
|
• SP - Social Issues and Professional Practice |
Соціальні питання і професійна практика
|
* – нові та модифіковані області знань.
Раніше навчальні плани мали Нормативні (Core) та Вибіркові (Elective) дисципліни. CS2013 запроваджує поділ Нормативних дисциплін на два потоки Нормативні-1 (Core Tier-1) та Нормативні-2 (Core Tier-2).
Кожний навчальний план повинен включати всі дисципліни Нормативні-1 та в середньому 90 % дисциплін Нормативні-2 (мінімум 80 %, максимум 100 %).
Cкладові одиниці (KU) областей знань
Алгоритми і складність
AL. Algorithms and Complexity |
Алгоритми і складність
|
AL/Basic Analysis |
Основи аналізу
|
AL/Algorithmic Strategies |
Алгоритмічні стратегії
|
AL/Fundamental Data Structures and Algorithms |
Основи структур даних і алгоритми
|
AL/Basic Automata, Computability and Complexity |
Основи автоматів, обчислюваність і складність
|
AL/Advanced Computational Complexity |
Обчислювальна складність (поглиблено)
|
AL/Advanced Automata Theory and Computability |
Теорія автоматів і обчислюваність (поглиблено)
|
AL/Advanced Data Structures, Algorithms, and Analysis |
Структури даних, алгоритми і аналіз (поглиблено)
|
Архітектура і організація
AR. Architecture and Organization |
Архітектура і організація
|
AR/Digital Logic and Digital Systems |
Цифрові схеми і системи
|
AR/Machine Level Representation of Data |
Машинне представлення даних
|
AR/Assembly Level Machine Organization |
Організація машини рівня асемблера
|
AR/Memory System Organization and Architecture |
Організація і архітектура пам’яті
|
AR/Interfacing and Communication |
Інтерфейси і комунікація
|
AR/Functional Organization |
Функціональна організація
|
AR/Multiprocessing and Alternative Architectures |
Мультипроцесність і альтернативні архітектури
|
AR/Performance Enhancements |
Способи підвищення продуктивності
|
|
Наука обчислень
CN. Computational Science |
Наука обчислень
|
CN/Introduction to Modeling and Simulation |
Вступ до моделювання і симуляції
|
CN/Modeling and Simulation |
Моделювання і симуляція
|
CN/Processing |
Обробка
|
CN/Interactive Visualization |
Інтерактивна візуалізація
|
CN/Data, Information, and Knowledge |
Дані, інформація, знання
|
CN/Numerical Analysis |
Чисельний аналіз
|
Дискретні структури
DS. Discrete Structures |
Дискретні структури
|
DS/Sets, Relations, and Functions |
Множини, відношення, функції
|
DS/Basic Logic |
Основи логіки
|
DS/Proof Techniques |
Методи доведень
|
DS/Basics of Counting |
Основи обчислень
|
DS/Graphs and Trees |
Графи і дерева
|
DS/Discrete Probability |
Дискретна ймовірність
|
Графіка і візуалізація
GV. Graphics and Visualization |
Графіка і візуалізація
|
GV/Fundamental Concepts |
Основні концепції
|
GV/Basic Rendering |
Основи рендерінгу
|
GV/Geometric Modeling |
Геометричне моделювання
|
GV/Advanced Rendering |
Поглиблений рендерінг
|
GV/Computer Animation |
Комп’ютерна анімація
|
GV/Visualization |
Візуалізація
|
Людино-машинна взаємодія
HCI: Human Computer Interaction |
Людино-машинна взаємодія
|
HCI/Foundations |
Основи
|
HCI/Designing Interaction |
Проектування взаємодії
|
HCI/Programming Interactive Systems |
Програмування інтерактивних систем
|
HCI/User-Centered Design & Testing |
Проектування і тестування, зорієнтовані на користувача
|
HCI/New Interactive Technologies |
Нові інтерактивні технології
|
HCI/Collaboration & Communication |
Співпраця і комунікація
|
HCI/Statistical Methods for HCI |
Статистичні методи для ЛМВ
|
HCI/Human Factors & Security |
Людський фактор і безпека
|
HCI/Design-Oriented HCI |
Дизайн-орієнтована ЛМВ,
|
HCI/Mixed, Augmented and Virtual Reality |
Змішана, доповнена і віртуальна реальність
|
Безпека систем
IAS. Information Assurance and Security |
Безпека систем
|
IAS/Foundational Concepts in Security |
Основні концепції безпеки
|
IAS/Principles of Secure Design |
Принципи безпечного проектування
|
IAS/Defensive Programming |
Безпечне програмування
|
IAS/Threats and Attacks |
Загрози і атаки
|
IAS/Network Security |
Мережева безпека
|
IAS/Cryptography |
Криптографія
|
IAS/Web Security |
Веб-безпека
|
IAS/Platform Security |
Безпека платформ
|
IAS/Security Policy and Governance |
Політика безпеки і управління
|
IAS/Digital Forensics |
Цифрова криміналістика
|
IAS/Secure Software Engineering |
Безпечна розробка програм
|
Інформаційний менеджмент
IM. Information Management |
Інформаційний менеджмент
|
IM/Information Management Concepts |
Концепція інформаційного менеджменту
|
IM/Database Systems |
Системи баз даних
|
IM/Data Modeling |
Моделювання даних
|
IM/Indexing |
Індексація
|
IM/Relational Databases |
Реляційні бази даних
|
IM/Query Languages |
Мови запитів
|
IM/Transaction Processing |
Обробка транзакцій
|
IM/Distributed Databases |
Розподілені бази даних
|
IM/Physical Database Design |
Фізичне проектування баз даних
|
IM/Data Mining |
Інтелектуальний аналіз даних
|
IM/Information Storage And Retrieval |
Збереження і видобування даних
|
IM/MultiMedia Systems |
Системи мультимедіа
|
Системи штучного інтелекту
IS. Intelligent Systems |
Системи штучного інтелекту
|
IS/Fundamental Issues |
Основні питання
|
IS/Basic Search Strategies |
Основи стратегій пошуку
|
IS/Basic Knowledge Representation and Reasoning |
Основи представлення знань і виведення (розмірковування?)
|
IS/Basic Machine Learning |
Основи машинного навчання
|
IS/Advanced Search |
Розширений пошук
|
IS/Advanced Representation and Reasoning |
Поглиблене представлення знань і виведення
|
IS/Reasoning Under Uncertainty |
Виведення в умовах невизначеності
|
IS/Agents |
Агенти
|
IS/Natural Language Processing |
Обробка природної мови
|
IS/Advanced Machine Learning |
Поглиблене машинне навчання
|
IS/Robotics |
Роботи
|
IS/Perception and Computer Vision |
Сприйняття і комп’ютерний зір
|
Мережі та комунікація
NC. Networking and Communication |
Мережі та комунікація
|
NC/Introduction |
Вступ
|
NC/Networked Applications |
Мережеві додатки
|
NC/Reliable Data Delivery |
Надійна доставка даних
|
NC/Routing And Forwarding |
Маршрутизація
|
NC/Local Area Networks |
Локальні мережі
|
NC/Resource Allocation |
Розподіл ресурсів
|
NC/Mobility |
Мобільність
|
NC/Social Networking |
Соціальні мережі
|
Операційні системи
OS. Operating Systems |
Операційні системи
|
OS/Overview of Operating Systems |
Огляд операційних систем
|
OS/Operating System Principles |
Принципи операційних систем
|
OS/Concurrency |
Конкурентність
|
OS/Scheduling and Dispatch |
Планування і диспетчеризація
|
OS/Memory Management |
Керування пам’яттю
|
OS/Security and Protection |
Безпека і захист
|
OS/Virtual Machines |
Віртуальні машини
|
OS/Device Management |
Керування пристроями
|
OS/File Systems |
Файлові системи
|
OS/Real Time and Embedded Systems |
Системи реального часу та вбудовані системи
|
OS/Fault Tolerance |
Відмовостійкість
|
OS/System Performance Evaluation |
Оцінка продуктивності системи
|
Платформно-орієнтована розробка
PBD. Platform-Based Development (Elective) |
Платформно-орієнтована розробка
|
PBD/Introduction |
Вступ
|
PBD/Web Platforms |
Веб-платформи
|
PBD/Mobile Platforms |
Мобільні платформи
|
PBD/Industrial Platforms |
Промислові платформи
|
PBD/Game Platforms |
Ігрові платформи
|
Паралельні і розподілені обчислення
PD. Parallel and Distributed Computing |
Паралельні і розподілені обчислення
|
PD/Parallelism Fundamentals |
Основи паралелізму
|
PD/Parallel Decomposition |
Паралельна декомпозиція
|
PD/Communication and Coordination |
Комунікація і координація
|
PD/Parallel Algorithms, Analysis, and Programming |
Паралельні алгоритми, аналіз і програмування
|
PD/Parallel Architecture |
Паралельна архітектура
|
PD/Parallel Performance |
Паралельна продуктивність
|
PD/Distributed Systems |
Розподілені системи
|
PD/Cloud Computing |
Хмарні обчислення
|
PD/Formal Models and Semantics |
Формальні моделі і семантики
|
Мови програмування
PL. Programming Languages |
Мови програмування
|
PL/Object-Oriented Programming |
Об’єктно-орієнтоване програмування
|
PL/Functional Programming |
Функціональне програмування
|
PL/Event-Driven and Reactive Programming |
Програмування на основі подій та реактивне програмування
|
PL/Basic Type Systems |
Основи системних типів
|
PL/Program Representation |
Представлення програми
|
PL/Language Translation and Execution |
Мовна трансляція і виконання
|
PL/Syntax Analysis |
Синтаксичний аналіз
|
PL/Compiler Semantic Analysis |
Семантичний аналіз компілятора
|
PL/Code Generation |
Генерація коду
|
PL/Runtime Systems |
Динамічні системи
|
PL/Static Analysis |
Статичний аналіз
|
PL/Advanced Programming Constructs |
Просунуті програмні конструкції
|
PL/Concurrency and Parallelism |
Конкуренція і паралелізм
|
PL/Type Systems |
Системні типи
|
PL/Formal Semantics |
Формальна семантика
|
PL/Language Pragmatics |
Мовна прагматика
|
PL/Logic Programming |
Логічне програмування
|