ДОКТОРСКА ПРОГРАМА
„СОФТУЕРНИ ТЕХНОЛОГИИ – СОФТУЕРНИ ЕКОСИСТЕМИ“
професионално направление 4.6 Информатика и компютърни науки
КОНСПЕКТ
за кандидатдокторантски изпит
Пояснение: Конкурсният изпит е писмен и устен. На писмения изпит се дават два въпроса от конспекта. В края на всеки въпрос е препоръчана литература за подготовка. Устният изпит е събеседване по въпросите от конспекта.
-
Азбуки. Формални езици и формални граматики. Йерархия на Чомски. Автоматни езици. Свойства. Разпознаване на автоматните езици. Лексичен и синтактичен анализ. [1, 2]
-
Архитектура на съвременните компютри. Централен процесор – структура и организация. Инструкции. Стек. Стекова (фон-Нойманова) архитектура. Виртуални машини. Архитектура на виртуални машини - JVM. [3, 4]
-
Принципи на операционните системи. Структура на ОС (монолитна структура, слоеста структура, микро ядро). Абстракции на ОС (процес, задача, файл). Файлова система. Логическа организация на ФС. Физическо представяне на ФС (стратегии за управление на дисковото пространство, дялове, системни структури или метаданни). [5, 6]
-
Управление на процесите в операционните системи. Модел на процесите – състояния, създаване и йерархия на процесите. Реализация, таблица и контекст на процес. Конкурентност на процесите - комуникация и синхронизация - обща памет (семафори), съобщения и рандеву. Нишки. Разпределени операционни системи. [5, 6]
-
Архитектура на компютърните мрежи. Основни принципи и характеристики. Еталонен модел на ISO. Модел TCP/IP. Мрежово програмиране. Сокети. Клиент – сървър. [7, 8, 9, 10]
-
Бази от данни (БД). Системи за управление на бази от данни (СУБД). Описание и сравнителна характеристика на мрежовия, йерархичния и релационния модели на СУБД. [11]
-
Езици и парадигми в програмирането. Синтаксис и семантика на езици за програмиране – средства за описание - език на Бекъс Наур. Функционално, логическо, обектно-ориентирано, защитно, аспектно-ориентирано и контекстно програмиране. Компилация и транслация. Грешки в програмите и механизми за предпазване от грешки. Рекурсия. [12, 13]
-
Обектно-ориентиран подход в програмирането – принципи. Основни езикови конструкции в езиците за ОО програмиране. Класове, обекти, наследственост. Обмен на съобщения. Средства за контрол и управление изпълнението на програма. Оператори за управление. [15, 16, 17]
-
Информация, данни, стойности. Константи. Променливи. Изрази. Тип. Примитивни типове данни. Структуриран тип – масив. Основни операции със структуриран тип. Проверка и извод на тип. Полиморфизъм. Параметризация и обобщени типове. Наследяване. Многократна наследственост. Интерфейси. Наследяване в С++ и Java. [15, 16, 17]
-
Абстрактни типове данни. Стек, опашка, дек. Динамични (рекурсивни) структури данни. Линеен списък – едносвързан, двусвързан, цикличен. Дървовидни структури: двоични дървета (дървета за търсене), н-арни дървета. Хеширане – хеш таблица. Алгоритми за сортировка и търсене. [13, 15, 16, 17]
-
Скриптови езици – основни конструкции – JavaScript, ASP, JSP, PHP, Python. Интерпретация. Програмиране със скриптови езици. Документен обектен модел (Document Object Model (DOM)). Архитектиура на клиент – HTML форми и PHP сесии. Уеб програмиране.
-
Софтуерни технологии. Същност, процеси и методологии Каскаден и итеративен модел. Стъпки на софтуерния процес. Проектиране и дизайн. Бизнес процеси и моделиране. Оценка на софтуера. [19, 20]
-
Модели и моделиране. Model-Driven Software Development (MDSD). Обектно-ориентирано проектиране и моделиране. Стандарти за моделиране - UML, SysML, XML. UML – описание на софтуерни модели. Основни диаграми. Обектно-ориентиран дизайн. Документиране на софтуер. [19, 20, 21]
-
Моделиране. Обектно-ориентирано проектиране и моделиране. UML – описание на софтуерни модели. Основни диаграми, Документиране на софтуер. [19, 20, 23]
-
Гъвкави софтуерни технологии – принципи и прктики. Екстремално програмиране (XP). Тестване. Проектиране, ориентирано към тестовия процес (TDD). Проектиране по отношение на характеристики на софтуера (FDD). Scrum. Продуктови линии. [19, 20, 22]
-
Компонентно базирани софтуерни технологии. Компонентни модели и технологии. Разработване на софтуерни компоненти. Интегриране на софтуерни системи. [19, 20]
-
Сигурност на софтуерните системи. Кодиране на информацията. Политики, механизми и тактики за защита на информационните системи. [24]
-
Системи за управление на електронно съдържание (статии, книги, музика, филми и др.), Електронна търговия и електронни пазари. Системи за управление на жизнения цикъл на документи. [25, 26, 27]
-
Мобилни приложения. Интернет на нещата (Internet of Things – IoT). Безжични технологии. Мрежи от сензори. Умна къща и офис – smart Home/Office Applications [28]
-
Архитектура, ориентирана към услуги – SOA. Принципи и практирки. Уеб услуги. Технологии – XML, SOAP, WSDL, UDDI. SOA процеси. [29, 30]
ПРЕПОРЪЧИТЕЛНА ЛИТЕРАТУРА
-
Й. Денев, Р. Павлов, Я. Деметрович, Дискретна математика, Наука и изкуство, София 1984.
-
Манев К. Увод в дискретната математика, Издателство на НБУ, София, (I изд. 1996), (II изд. 1998).
-
Andrew S. Tanenbaum, Todd Austin, Structured Computer Organization (6th Edition), Pearson , ISBN-10: 0132916525, ISBN-13: 978-0132916523, 2012
-
J. L. Hennessy, D. A. Patterson, Computer Architecture : A Quantitative Approach, 5th edition, ISBN-10: 012383872X, ISBN-13: 978-0123838728, 2011
-
Andrew S. Tanenbaum, Herbert Bos, Modern Operating Systems, 4th edition, Pearson, ISBN-10: 013359162X, ISBN-13: 978-0133591620, 2014
-
Л. Николов, Операционни системи, CIELA София 1998.
-
Боянов Л., К. Боянов и др., Компютърни мрежи и телекомуникации, изд. “Авангард Прима”, София, 2014.
-
Larry L. Peterson, Bruce S. Davie, Computer Networks: A Systems Approach, 5th edition, Morgan Kaufmann, ISBN-10: 0123850592, ISBN-13: 978-0123850591, 2011
-
Andrew S. Tanenbaum, David J. Wetherall , Computer Networks (5th Edition) Pearson , ISBN-10: 0132126958, ISBN-13: 978-0132126953, 2010
-
Дебора Литълджон Шиндер, Компютърни мрежи, ISBN 9789546852540, изд. СофтПрес
-
П. Азълов, Бази от данни. Релационен и обектен подход, Техника, София, 1991.
-
Атанас Раденски, Компютър, език за програмиране, транслатор, Наука и изкуство, София, 1987.
-
Уирт, Н. Алгоритми+структури от данни = програми, София, Техника, 1980
-
Booch, G., Object-oriented Analysis and Design with Applications, The Benjamin/Cummings Publishing Company 1994.
-
Timothy Budd. An Introduction to Object-Oriented Programming, Pearson; 3rd edition, 2001, ISBN-10: 0201760312, ISBN-13: 978-0201760316
-
Paul Deitel, Harvey Deitel, Java How To Program (Early Objects), Pearson; 10th Edition, 2014, ISBN-10: 0133807800, ISBN-13: 978-0133807806
-
Bjarne Stroustrup, The C++ Programming Language, Addison-Wesley Professional; 4th edition, 2013, ISBN-10: 0321958322, ISBN-13: 978-0321958327
-
Gamma, E., Helm, R., Johnson, R., Vlissides, J. Design Patterns: Elements of Reusable Object Oriented Software (1997)
-
Roger Pressman and Bruce Maxim, Software Engineering – A Practitioner’s Approach, McGraw-Hill, ISBN-10: 0078022126, ISBN-13: 978-0078022128, 8th Edition 2014
-
Somerville, I, Software Engineering, 10th Edition, Addison Wesley, ISBN-10: 0133943038 ISBN-13: 978-0133943030, 2015
-
Thomas Stahl, Markus Voelter, Model-Driven Software Development: Technology, Engineering, Management, Wiley, ISBN-10: 0470025700, ISBN-13: 978-0470025703, 2006
-
Kent Beck, Extreme Programming Explained: Embrace Change, Addison-Wesley Professional, 2000
-
Martin Fowler, UML Distilled: A Brief Guide to the Standard Object Modeling Language, Addison-Wesley Professiona, 3rd Edition, ISBN-10: 0321193687, ISBN-13: 978-0321193681, 2003
-
Синягина Н , И. Мирчев, И. Д., Ц. Х., Защита на компютърната информация, изд. "Неофит Рилски", 2005 г.
-
Faisal Hoque, David Orchard, Е-Enterprise : Business Models, Architecture, and Components (Breakthroughs in Application Development), Cambridge University Press, 2000
-
Саймън К., Как да правем бизнес по Интернет, Сиела, 2000.
-
J. Hurwitz, et al., Big Data for Dummies, Wiley, 2013, ISBN:978-1-118-50422-2
-
H. Zhou, The Internet of Things in the Cloud: A Middleware Perspective, CRC Press, 2012, ISBN:1439892997
-
Thomas Erl, Service-Oriented Architecture (SOA): Concepts, Technology, and Design, Prentice Hall, 2005, ISBN-10: 0131858580, ISBN-13: 978-0131858589
-
Thomas Erl, Robert Cope, Cloud Computing Design Patterns, Prentice Hall; 2015, ISBN-10: 0133858561, ISBN-13: 978-0133858563
Сподели с приятели: |