Изпитът е с продължителност 4 академични
часа
и се състои в разработване на 2 от следните теми.
1. Архитектура на фон Нойманов компютър. Класификация и
исторически данни. Обща схема, предназначение и функции
на основните компоненти. Основна памет. Централен процесор.
Машинен език и изпълнение на машинна програма. Паралелизъм.
Видове адресиране и позиционна независимост на програмите.
Система за вход/изход и система за прекъсване. Периферни
устройства.
2. Алгоритми и структури от данни. Абстрактни типове данни.
Рекурсия и итерация. Стек, опашка, списък, двоично дърво
и основни операции с тях. Основни алгоритми за сортиране
и търсене. Графи и обхождането им.
3. Обектно-ориентирано програмиране. Основни принципи. Класове
и обекти. Наследяване. Херметизация. Полиморфизъм. Обектно-ориентирано
проектиране.
4. Бази данни. Обща характеристика, предназначение и модели.
Архитектура. Релационни бази данни, релационен език SQL.
Транзакции.
5. Дискретна математика. Формални езици и граматики. Крайни
автомати. Теория на графите.
6. Изкуствен интелект. Проблеми, представяне на проблеми.
Методи за търсене - пълни методи, евристични методи. Знания,
представяне на знания - правила, обекти, фреймове, скриптове.
Обработка на знания.
7. Технология на софтуерното производство. Модели, жизнен
цикъл, унифициран процес, работни потоци, планиране, справяне
с рискове.
8. Компютърни мрежи. Комуникационен модел OSI за взаимодействие
с отворени системи. Локални компютърни мрежи. Комуникационен
модел TCP/IP (Интернет).
9. Основи на комуникационните, Интернет и Web базирани разпределени
информационни системи и приложения. Глобални мрежи и Интернет.
Основни понятия и дефиниции. Начини за aдресиране и достъп
до разпределени информационни ресурси. Базови модели и архитектури.
Протоколи. Характеристика на Web.
10. Обектно-ориентирано програмиране. Обектно-ориентирани
езици за програмиране. Основни свойства на Java (класове,
обекти, интерфейси, капсулиране, наследяване, полиморфизъм).
Развойна среда на Java (виртуални машини и интерпретатори,
аплети, приложения). RMI модел и обработка на събития в
Java.
11. Компонентно-ориентирано програмиране. Основни понятия
и характеристики. Структура и основни елементи на компонентите.
Видове компоненти. Жизнен цикъл. Компоненто-ориентирани
развойни среди. Разработване на компонентно-ориентирани
приложения. Предимства и недостатъци.
12. Многослойни архитектури. Хомогенни и хетерогенни системи.
Рапределени, клиент-сървър, Web базирани системи. Монолитни,
двуслойни, трислойни, n-слойни архитектури. Предимства и
недостатъци.
13. J2EE архитектура. Основни дефиниции и елементи. Управление
на жизнени цикли. Контейнери. Сървлетен модел. Програмиране
с JSPs. Компонентен модел - бийнове, EJBs и приложни сървъри.
14. Web базирани бази данни. Релационни и обектно-ориентирани
БД - сравнителен анализ. Връзка между приложни сървъри и
сървъри за БД. Достъп до обектно-ориентирани БД - сериализация
на обекти. Достъп до релационни БД. Вграден SQL, SQLJ. ODBC.
JDBC. Типове драйвери.
15. Стандарти и езикови средства за представяне и работа
с полуструктурирани и неструктурирани данни в Интернет среди.
Основни дефиниции и понятия. Структура и изграждащи елементи.
Статичен и динамичен HTML. XML. Интерпретатори и генератори.
16. Защита на информационни системи.
17. Интеграция на обектно ниво посредством middleware софтуер.
Основна характеристика и предназначение. CORBA стандарт
(основни спецификации, архитектурен модел, клиентска част,
сървърна част, локални и отдалечени обекти, адресиране на
обекти, извикване на обекти и предаване на параметри, реализация
на обекти - адаптори и слуги). Брокери в CORBA. Разработване
на приложения с интегрирани CORBA продукти.
18. Интеграция на приложения. Компонентен модел на CORBA.
OMA (системни услуги, хоризонтални услуги, вертикални приложно-ориентирани
рамки и еталони) Web Services (основна характеристика, предимства
и недостатъци, модел, роли, операции, протоколи).
19. Софтуерни технологии. Основни подходи и модели. Жизнени
цикли. Унифициран, интеративен и инкрементален развоен процес.
Обектно-ориентирани технологии (фази, итерации, работни
потоци). Планиране. Отчитане, избягване и минимиране на
рискове. Използване на модели и моделиране. Език за обектно-ориентирани
моделиране UML.
20. Проблеми на съвременните софтуерни технологии. Методи
за тестване на разпределени приложения. Реинженерингови
подходи. Метрики и оценка на софтуерни разработки. Специфични
проблеми на разработването на Web базирани и клиент - сървър
приложения.
21. Бизнес с Интернет и електронна търговия. Основен информационен
модел (роли, взаимоотношения). Видове електронна търговия.
Информационни системи за C2B (изграждане и стандартна архитектура
на електронни магазини). Информационни системи за B2B (CORBA
базирана архитектура BOCA, San Francisco архитектура).
22. Интелигентни агенти и мулти-агентни системи. Основни
понятия и характеристики. Базови архитектури. Реактивност
и проактивност. Ментални свойства на агентите. Комуникация
между агенти.
Одобрена на Факултетен съвет, Протокол № 21 / 19.02.2003