Факултет по математика и информатика
Пловдивски университет „Паисий Хилендарски”
Програма за писмен държавен изпит
Магистърска програма „Софтуерни технологии със специализация софтуерни архитектури и средства” (едногодишен и двугодишен курс на обучение)
Начин на провеждане: Държавният изпит се провежда под формата на „Решаване на практически казус” чрез прилагане на знания и компетентности, придобити по време на обучение, съгласно приложения конспект.
Продължителност : 4 академични часа
КОНСПЕКТ
1. Многослойни софтуерни архитектури:
● Парадигми за разработване на софтуер: структурно разработване, обектно-ориентирано разработване, компонентно-ориентирано разработване;
● Среди за разработване на многослойни и интернет-базирани приложения: Java-базирани среди: JEE архитектура, основни дефиниции, слоеве, контейнерна организация, управление на жизнения цикъл, видове компоненти;
● Компонентно-ориентирано разработване;
● Сигурност за Web приложения: удостоверяване и упълномощаване.
2. Използване на рамки за разработване на софтуер:
● Специфики;
● Понятието „еталон“;
● Компонентите в MVC архитектурата;
● JSF;
● Grails.
3. Структури данни използвани в интернет-програмирането:
● Потоци от данни, видове потоци, сериализация на обекти;
● Комуникация с бази данни, видове драйвери;
● JSON – структура, използване, предимства и недостатъци;
● Разширяем маркиращ език XML – синтаксис, правила, парсери и валидация;
● Разширяем език за стилове XSL – XPath, XSLT;
4. Изграждане на софтуерни компоненти за средния слой на JEE архитектурата:
● Мястото на web слоя в JEE архитектурата.
● Архитектура на web приложенията.
● Web слой.
● Статично и динамично съдържание.
● Структура на web приложенията.
● Сървлети. Жизнен цикъл на сърлвета. Класа HttpServlet.
● Какво е JSP? Връзката между сървлети и JSP. Жизнен цикъл на JSP.Изграждащи елементи на JSP. XML синтаксис за JSP.
● JavaBeans.
5. Интеграция на приложения
- Видове
- Характеристики
- Предимства и недостатъци.
6. REST услуги
7. Качествен код
- Определения
- Основни правила
8. Тестваем код
- Разработване направлявано от тестове
- Инструменти
- Рамки.
9. Софтуерни инструменти за контрол на версиите
- Видове
- Предимства
- Недостатъци.
10. Инструменти за управление на проекти.