Държавен вестник, бр. 89, 2018 г., стр. 25

БРОЙ  89	
Д Ъ Р Ж А В Е Н  В Е С Т Н И К 	
СТР.  25  
Наименование на про-
фесията:
Системен програмист
Ниво по НКР: 
4
Ниво по ЕКР: 
4
Резултат от учене 11.1: Познава и използва среди за софтуерен инженеринг
Знания
·	Познава начина на работа с различни дистрибутирани и централизирани 
системи за управление на код
·	Познава начина на работа с различни системи за управление на проблемите 
и разпределение на задачите
Умения
·	Създава и конфигурира хранилище за споделяне на код
·	Документира правилно всяка промяна в хранилището
·	Разрешава конфликти, възникнали при паралелна промяна на кода от повече 
членове на екипа
·	Регистрира задача в система за управление на задачи
·	Използва различните състояния в жизнения цикъл на задачата
·	Свързва изпълнението на една задача с промените на кода в хранилището
Компетентности
·	Подхожда отговорно, гъвкаво и толерантно при споделяне и управление на 
версиите на кода в екипна среда
·	Отговорно, гъвкаво и толерантно споделя и синхронизира задачите за раз-
работка в екипна среда
Резултат от учене 11.2: Проектира софтуер
Знания
·	Използва интегрирана система за разработка на приложения
·	Познава автоматизирани средства за разучаване на кода и откриване на 
грешки
·	Познава средствата за описване структурата на една софтуерна система
·	Познава различни библиотеки извън стандартните и налични по подразби-
ране в съответните език, платформа и среда
·	Познава терминологията, описваща различни софтуерни архитектури и 
шаблони за разработка
·	Разбира начините за изграждане на междукомпонентна комуникация
Умения
·	Работи с различни среди за разработка
·	Използва функционалност за разучаване на кода и изясняване на грешките 
(Debug) в различни среди за разработка
·	Разчита и изгражда UML диаграми
·	Интегрира външни библиотеки
Компетентности
·	Използва самостоятелно различни среди за разработка на приложения
·	Открива самостоятелно грешки и неточности в съществуващи приложения
·	Прецизно и точно описва и аргументира изградената софтуерна архитектура
Резултат от учене 11.3: Интегрира и тества софтуер
Знания
·	Познава принципи, методи и средства за тестване на софтуер
·	Познава възможностите за изграждане на тестове на ниво програмна еди-
ница (функция или обект)
·	Познава възможностите и правилата за изграждане на тестове, интегриращи 
няколко програмни единици (функции или обекти)
·	Познава структурата на един тест, изграден от клиента
·	Познава средствата за поставяне на основните изисквания към тестовете и 
продуктивния код и за следене на тези изисквания
·	Познава инструменти за документиране и представяне на информация за 
теста
Умения
·	Извършва тестване на функции, модули и цялостен продукт
·	Изгражда unit тестове
·	Изгражда интеграционни тестове
·	Изгражда и описва набор от стъпки, през които би преминал клиентът при 
използване на продукта
·	Използва средства за определяне покритието на кода от страна на тестовете 
(code coverage)
·	Използва средства за определяне на повтарящи се части в кода
·	Обобщава, документира и представя резултатите от тестването
Компетентности
·	Конфигурира самостоятелно изпълнението на готови тестове върху готов 
програмен продукт
·	Подбира и аргументира избора на средства за тестване на готов програмен 
продукт
·	Създава автоматизирани тестове за проверка работоспособността на текущо 
разработвани програмни единици