Проект на Наредба за придобиване на квалификация по професията „Разработка на софтуер“

8 октомври 2025 г.Обществени консултацииАдминистрация на Министерския съвет

Основни данни

Номер на консултацията
11654-K
Вид
Акт на министър
Тип вносител
Национално
Вносител
Министерство на образованието и науката
Област на политика
Архив - Образование
Статус
Неактивна
Начало на консултацията
08.10.2025
Край на консултацията
11.11.2025
Справка за получените предложения
21.11.2025
Брой коментари на портала
0

Попитайте асистента за този запис

Безплатно
Един въпрос на ден, без регистрация.

Описание

С настоящата наредба се приема държавният образователен стандарт (ДОС) за придобиване на квалификация по професията „Разработка на софтуер“ от Списъка на професиите за професионално образование и обучение по чл. 6 от Закона за професионалното образование и обучение (ЗПОО), утвърден със Заповед № РД09-2230 от 09.08.2024 г. на министъра на образованието и науката.Разработването на проект на ДОС за придобиване на професионална квалификация по професията „Разработка на софтуер“ се обуславя от необходимостта да бъдат подготвени специалисти, които могат да разработва софтуерни решения – изграждат приложения, използвайки архитектурни шаблони (напр. MVC, MVVM), реализират системи, базирани на микроуслуги и създават мултиплатформени приложения (уеб, мобилни, облачни, десктоп), използват езици за програмиране от високо ниво, съчетават програмен код с модули, свързани с управление на бази данни и облачни платформи, и изграждат системи със съвременни потребителски интерфейси. Тези специалисте ще познават и прилагат различни методологии за разработка на софтуер (напр. Agile, Scrum, DevOps), ще работят със системи за непрекъсната интеграция (CI/CD), ще използват контейнери и среди за виртуализация и ще документират кода и архитектурата на софтуерните решения.

Контакти

Отговорна институция
Министерство на образованието и науката Адрес: София, София, бул. Княз Дондуков №2А Електронна поща: priemna@mon.bg
Контактна информация
---

Мотиви към проект на Наредба за придобиване на квалификация по професията „Разработка на софтуер“ - 08.10.2025

МОТИВИ към проект на Наредба за придобиване на квалификация по професията „Разработка на софтуер“ Причини, които налагат приемането на проекта на Наредба за придобиване на квалификация по професията „Разработка на софтуер“ С настоящата наредба се приема държавният образователен стандарт (ДОС) за придобиване на квалификация по професията „Разработка на софтуер“ от Списъка на професиите за професионално образование и обучение по чл. 6 от Закона за професионалното образование и обучение (ЗПОО), утвърден със Заповед № РД09-2230 от 09.08.2024 г. на министъра на образованието и науката. Разработването на проект на ДОС за придобиване на професионална квалификация по професията „Разработка на софтуер“ се обуславя от необходимостта да бъдат подготвени специалисти, които могат да разработва софтуерни решения – изграждат приложения, използвайки архитектурни шаблони (напр. MVC, MVVM), реализират системи, базирани на микроуслуги и създават мултиплатформени приложения (уеб, мобилни, облачни, десктоп), използват езици за програмиране от високо ниво, съчетават програмен код с модули, свързани с управление на бази данни и облачни платформи, и изграждат системи със съвременни потребителски интерфейси. Тези специалисте ще познават и прилагат различни методологии за разработка на софтуер (напр. Agile, Scrum, DevOps), ще работят със системи за непрекъсната интеграция (CI/CD), ще използват контейнери и среди за виртуализация и ще документират кода и архитектурата на софтуерните решения. Проектът на акт е изготвен в съответствие с изискванията на Закона за професионалното образование и обучение и в контекста на нуждата от актуализиране на съдържанието на държавния образователен стандарт за придобиване на професионалната квалификация съгласно динамично променящата се икономическа, социална и регулаторна среда. Наредбата за придобиване на квалификация по професията „Разработка на софтуер“ се издава на основание чл. 22, ал. 6, във връзка с ал. 2, т. 6 от Закона за предучилищното и училищното образование. Цел на проекта на Наредба за придобиване на квалификация по професията „Разработка на софтуер“ С проекта на акт се цели осигуряване на съвременен, целенасочен и практически ориентиран модел за придобиване на професионална квалификация по професията „Разработка на софтуер“. Приемането на държавен образователен стандарт по тази професия има за цел да осигури необходимата и качествена професионална подготовка, да гарантира безопасност и висок професионализъм в работата на придобилите квалификация по тази професия. Очаквани резултати от прилагането на проекта на наредба Въз основа на определения с настоящата наредба държавен образователен стандарт за придобиването на квалификация по професията „Разработка на софтуер“ се въвеждат единни изисквания за придобитите знания, умения и компетентности от обучаемите, дефинират се обективни критерии и средства за оценяване на всяка единица резултат от учене, както и изискванията към материалната база, с която трябва да разполага обучаващата институция, като предпоставка за изграждане на съвременна образователна и обучителна среда. Определените с този стандарт изисквания към обучаващите по отношение на тяхната квалификация са гаранция, че преподавателите притежават необходимите знания, умения и компетентности за провеждането на ефективен обучителен процес. С въвеждането на държавен образователен стандарт за професията „Разработка на софтуер“ се очаква създаване на ефективни професионални условия за подготовка и успешна реализация на квалифицирани специалисти. Финансови и други средства, необходими за прилагането на новата уредба За прилагането на наредбата не са необходими финансови средства. Анализ за съответствие с правото на Европейския съюз С проекта на наредба не се въвеждат разпоредби от европейското право, поради което не се налага изготвяне на справка за съответствие с европейското законодателство.

Проект на Наредба за придобиване на квалификация по професията „Разработка на софтуер“ - 08.10.2025

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА Проект Н А Р Е Д Б А № …………………………………. за придобиване на квалификация по професията „РАЗРАБОТКА НА СОФТУЕР“ Раздел I ОБЩИ ПОЛОЖЕНИЯ Чл. 1. С тази наредба се определя държавният образователен стандарт (ДОС) за придобиването на квалификация по професията код 061303 „Разработка на софтуер“ от област на образование „Информационно-комуникационни технологии“ и професионално направление код 0613 „Анализ и разработване на софтуер и софтуерни приложения“ съгласно Списъка на професиите за професионално образование и обучение по чл. 6, ал. 1 от Закона за професионалното образование и обучение. Чл. 2. Държавният образователен стандарт за придобиването на квалификация по професията код 061303 „Разработка на софтуер“ съгласно приложението към тази наредба определя изискванията за придобиването на втора и трета степен на професионална квалификация по професията, за придобиване на квалификация по част от професията, както и за достигане на отделни единици резултати от ученето. Чл. 3. Въз основа на ДОС по чл. 1 и рамковите програми по чл. 10, ал. 3, т. 2, 3, 5 и 6 от Закона за професионалното образование и обучение се разработват типови учебни планове за ученици, учебни планове за лица, навършили 16 години, и учебни програми за обучението. Раздел II СЪДЪРЖАНИЕ НА ДЪРЖАВНИЯ ОБРАЗОВАТЕЛЕН СТАНДАРТ Чл. 4. (1) Държавният образователен стандарт по чл. 1 определя изискванията към кандидатите, описанието на професията, единиците резултати от учене за придобиване на втора 1 и трета степен на професионална квалификация по професията, критериите и средствата за оценяване на всяка единица резултат от учене, съвкупността от единици резултати от ученето, които формират придобиването на квалификация по част от професия, изискванията към материалната база и изискванията към обучаващите. (2) Държавният образователен стандарт за придобиване на квалификация по професията включва общата, отрасловата и специфичната професионална подготовка с необходимите професионални компетентности, които гарантират на обучаемия възможността за упражняване на професията след завършване на обучението. ЗАКЛЮЧИТЕЛНИ РАЗПОРЕДБИ § 1. Учебните планове и учебните програми по чл. 3, разработени въз основа на тази наредба, започват да се прилагат от учебната 2026 – 2027 г. за учениците, които постъпват в VIII клас в училищното професионално образование и обучение, а за лица, навършили 16 години – от 1 януари 2026 г. § 2. Тази наредба се издава на основание чл. 22, ал. 6, във връзка с чл. 22, ал. 2, т. 6 от Закона за предучилищното и училищното образование. КРАСИМИР ВЪЛЧЕВ Министър на образованието и науката 2 Приложение към чл. 2 ДЪРЖАВЕН ОБРАЗОВАТЕЛЕН СТАНДАРТ ЗА ПРИДОБИВАНЕ НА КВАЛИФИКАЦИЯ ПО ПРОФЕСИЯТА „РАЗРАБОТКА НА СОФТУЕР“ Професионално направление Код: 0613 Анализ и разработване на софтуер и софтуерни приложения Професия Код: 061303 Разработка на софтуер Степени на професионална квалификация – II III – Ниво по Национална квалификационна рамка (НКР) – 3 4 – Ниво по Европейска квалификационна рамка (ЕКР) – 3 4 – 3 1. Изисквания към кандидатите 1.1. Изисквания към кандидатите за входящо минимално образователно и/или входящо квалификационно равнище за придобиване на степени на професионална квалификация съгласно Закона за професионалното образование и обучение За придобиване на втора и трета степен на професионална квалификация по професията „Разработка на софтуер“ от Списъка на професиите за професионално образование и обучение, утвърден от министъра на образованието и науката със Заповед № РД 09-2230 от 09.08.2024 г., изискванията за входящото минимално образователно равнище към кандидатите са: 1.1.1. За придобиване на втора степен на професионална квалификация: • за лица, навършили 16 години – завършен първи гимназиален етап. 1.1.2. За придобиване на трета степен на професионална квалификация: • за ученици – завършено основно образование; • за лица, навършили 16 години – придобито право за явяване на държавни зрелостни изпити или завършено средно образование. Изискването за входящо квалификационно равнище при продължаващо професионално обучение за придобиване на трета степен на професионална квалификация е придобита втора степен на професионална квалификация по същата професия. 1.2. Здравословното състояние на кандидата се удостоверява с медицински документ, доказващ, че професията, по която желае да се обучава, не му е противопоказна. 2. Описание на професията 2.1. Втора степен на професионална квалификация по професията Лицето, придобило втора степен на професионална квалификация по професията „Разработка на софтуер“, изпълнява основни задачи, свързани с изграждането, конфигурирането и поддръжката на софтуерни продукти. То работи с интегрирани среди за разработка, прилага утвърдени методологии при писане на програмен код и познава основните принципи на обектно ориентираното програмиране. Участва в създаването на приложения с различни потребителски интерфейси, обработва данни и изгражда уеббазирани системи. Лицето администрира и свързва бази от данни към софтуерните решения, използва приложно-програмни интерфейси (API) и следва добрите практики при организиране на проекта, използвайки системи за управление на версии и проекти. Работи в екип, прилага указания от по- опитни разработчици и изпълнява задачи с ниска до средна сложност в рамките на цялостен проект. Работната среда е предимно дигитална – използва се компютър, специализиран софтуер, онлайн инструменти и инструменти с изкуствен интелект. Работата изисква внимание към детайла, усет към структура и последователност, както и основни аналитични умения. Важно е лицето да бъде организирано, отговорно, с желание за развитие и придобиване на нови знания и езици за програмиране. Изисква се добро ниво на техническа грамотност. 2.2. Трета степен на професионална квалификация по професията Притежателят на трета степен по професията „Разработка на софтуер“ разработва софтуерни решения на по-високо ниво на сложност – изгражда приложения, използвайки архитектурни шаблони (например MVC, MVVM), реализира системи, базирани на микроуслуги, и създава мултиплатформени приложения. Използва езици за програмиране от високо ниво, 4 съчетава програмен код с модули, свързани с управление на бази данни и облачни платформи, и изгражда системи със съвременни потребителски интерфейси. Лицето познава и прилага различни методологии за разработка на софтуер (например Agile, Scrum, DevOps), работи със системи за непрекъсната интеграция (CI/CD), използва контейнери и среди за виртуализация и документира кода и архитектурата на софтуерните решения. Освен това може да поеме координационна роля в екипа, подпомагайки и обучавайки по-малко опитни разработчици. Лицето създава софтуер спрямо добри практики за писане на код, чиста архитектура и прилага добри практики за писане на сигурен софтуер. Работата се извършва в екипна и често международна среда. Изисква се високо ниво на техническа грамотност, логическо мислене, аналитичност и способност за работа под напрежение. Ценни личностни качества включват инициативност, креативност при решаване на проблеми, устойчивост на бързо променящи се изисквания и ефективна комуникация с други специалисти и клиенти. 2. Единици резултати от ученето (ЕРУ) за придобиване на всяка от степените на професионална квалификация по професията 2.1. Списък на единиците резултати от ученето по видове професионална подготовка ЕРУ по обща професионална подготовка – единна за всички професионални направления от СППОО ЕРУ 1. Здравословни и безопасни условия на труд и опазване на околната среда ЕРУ 2. Икономика и предприемачество ЕРУ по отраслова професионална подготовка – единна за професиите от професионално направление „Анализ и разработване на софтуер и софтуерни приложения“ ЕРУ 3. Използване на информационни и комуникационни технологии (ИКТ) и изкуствен интелект (ИИ) в професионалната дейност ЕРУ 4. Реализиране на софтуерни решения ЕРУ 5. Анализ на данни и информационна сигурност ЕРУ по специфична професионална подготовка по професията ЕРУ 6. Изграждане на потребителски интерфейси ЕРУ 7. Разработка на основни програмни модули и сървърна логика ЕРУ 8. Работа с бази данни ЕРУ 9. Жизнен цикъл на софтуерна разработка ЕРУ 10. Поддръжка и тестване на приложения ЕРУ 11. Разработка на многослойни архитектури ЕРУ 12. Работа с облачни платформи и микроуслуги ЕРУ 13. Документиране и поддръжка на софтуер 5 Ниво Номер на ЕРУ и вид професионална подготовка (ПП) Степен на професионална квалификация по НКР/ ЕРУ 1 ЕРУ 2 ЕРУ 3 ЕРУ 4 ЕРУ 5 ЕРУ 6 ЕРУ 7 ЕРУ 8 ЕРУ 9 ЕРУ 10 ЕРУ 11 ЕРУ 12 ЕРУ 13 ЕКР Обща ПП Отраслова ПП Специфична ПП II 3 x x x x x x x x x x III 4 х х х х х х х х х х х х х 2.2. Описание на единиците резултати от ученето за професията „Разработка на софтуер“ 3.2.1. Обща професионална подготовка по професията ЕРУ 1 Здравословни и безопасни условия на труд (ЗБУТ) и опазване на околната среда Резултат от учене 1.1 Спазва хигиенните норми и здравословните и безопасните условия на труд на работното място Знания • Познава основните нормативни актове за здравословни и безопасни условия на труд • Обяснява възможните професионални и здравни рискове на работното място и причините за тяхното възникване • Разяснява основните правила при оказването на първа помощ при трудови злополуки • Изброява основните видове лични предпазни средства и техните функции • Познава видовете защитни приспособления и средства за сигнализация и маркировка за осигуряване на ЗБУТ • Изброява правилата за работа при аварии и аварийни ситуации Умения • Прилага мерки за безопасност на работното място • Спазва хигиенните норми на работното място • Прилага инструкции за безопасна работа • Реагира правилно при аварийни ситуации Компетентности • Спазва стриктно мерките за безопасност при изпълнение на различните трудови дейности Резултат от учене 1.2 Осъществява превантивна дейност за опазване на околната среда Знания • Познава нормативни актове, свързани с опазването на околната среда, и ЗБУТ • Познава трудовоправните норми, свързани със ЗБУТ • Разяснява общите изисквания за осигуряване на ЗБУТ съобразно спецификата на провежданата дейност и изискванията на техническото, технологичното и социалното развитие с цел защита на живота, здравето и работоспособността на работещите Умения • Търси информация за устойчиви практики, приложими в конкретната професионална дейност • Изпълнява дейности по събиране и съхраняване на опасни продукти, излезли от употреба уреди и консумативи съобразно правилата за рециклиране • Използва технологии и материали, щадящи околната среда • Спазва практики за пестене на вода, енергия и други ресурси на работното място Компетентности • Правилно обработва отпадъците на работното място съобразно изискванията за сортиране • Вярно и точно разпознава замърсяващи фактори на работното място и съдейства за ограничаване на въздействието им • Способен е стриктно да следва утвърдените правила и изисквания за опазване на околната среда Критерии за оценяване Част по теория на професията: на ЕРУ • Владее теоретични знания за: 6 − хигиенните норми − здравословните и безопасните условия на труд на работното място − овладяването на аварийни ситуации и оказването на първа помощ − превантивната дейност за опазване на околната среда Част по практика на професията: − Избира своевременно най-адекватния тип поведение при зададената рискова ситуация − Вярно и точно определя необходимите действия за оказване на първа помощ Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 2 Икономика и предприемачество Резултат от учене 2.1 Познава основите на пазарната икономика Знания • Познава основни икономически понятия – търсене, предлагане, пазар, конкуренция, цена • Познава ролята на държавата в икономиката – данъци, бюджет, регулации • Обяснява дейността на организацията в контекста на основни икономически принципи и понятия • Разяснява основни понятия във финансите – приходи, разходи, печалба, инвестиции • Разбира значението на социалната и екологичната отговорност при ръководене на бизнес Умения • Използва основни икономически понятия, като търсене, предлагане, пазар, конкуренция и цена при изпълнение на професионалните си задачи • Отчита значението на основните финансови показатели, като приходи, разходи, печалба и инвестиции Компетентности • Прилага правилата и изискванията, свързани с ролята на държавата в икономиката, включително данъци, бюджет и регулации, в рамките на работната среда и своите професионални ангажименти Резултат от учене 2.2 Познава основите на предприемачеството Знания • Познава същността и ролята на предприемачеството в икономиката • Изрежда основните стъпки при стартиране на бизнес, включително генериране на идея, пазарно проучване, изготвяне на бизнес план • Изброява видовете фирми и организационно-правни форми на стопанска дейност Умения • Разграничава видовете фирми и организационно-правните форми на стопанска дейност • Прилага знания за предприемачеството в работната си среда Компетентности • Идентифицира успешни практически примери за управление на бизнес начинания 7 • Предлага решения за подобряване на дейността в съответствие с технологичните и организационните изисквания • При необходимост представя идеи и предложения пред клиенти, инвеститори или партньори, като аргументира решенията си Критерии за оценяване Част по теория на професията: на ЕРУ − Владее основните теоретични знания и понятия в областта на икономиката − Владее основните теоретични постановки в областта на предприемачеството Част по практика на професията: − Вярно, точно и мотивирано определя действията за разрешаване на описания проблем в зададения казус − Участва в разработването на бизнес план на фирмата според изискванията на предварително дефинираното задание Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика 3.2.2. Отраслова професионална подготовка по професията ЕРУ 3 Използване на информационни и комуникационни технологии (ИКТ) и изкуствен интелект (ИИ) в професионалната дейност Резултат от учене 3.1 Използва базови ИКТ умения в професионалната дейност Знания • Разпознава основни компоненти на компютърна система • Познава йерархичната структура на директории и файлове • Обяснява разликата между локално съхранение и облачно съхранение • Познава основни файлови формати и разширения • Познава функционалностите на софтуерите за създаване и редакция на цифрово съдържание от различен тип (текст, таблици, изображения, аудио, видео) Умения • Създава, мести, преименува, копира и изтрива файлове и директории • Използва клавишни комбинации за бърза и ефективна работа • Инсталира и деинсталира приложен софтуер • Свързва и настройва периферни устройства • Използва основни настройки за достъп до интернет и мрежа • Архивира и разархивира файлове с помощта на стандартен софтуер • Създава цифрово съдържание (текст, таблици, изображения, аудио, видео) с помощта на приложен софтуер, облачни платформи и/или изкуствен интелект • Използва облачни услуги за съхранение на информация Компетентности • Използва компютърна система самостоятелно, безопасно и отговорно • Открива и отстранява често срещани технически проблеми при работа с компютърна система и интернет • Следва добри практики за защита на лични данни и информационна сигурност при работа с файлове и интернет 8 Резултат от учене 3.2 Обработва информация с информационни и комуникационни технологии и изкуствен интелект Знания • Осъзнава риска от невярна или манипулативна информация, включително такава, генерирана от изкуствен интелект, и познава методи за оценка на нейната достоверност и проверка чрез надеждни източници • Познава различни типове цифрова информация – текстова, числова, графична, аудио, видео • Разпознава основни формати за съхранение и обмен на данни (CSV, JSON, XML, PDF, изображения и др.) • Разбира разликата между структурирана, неструктурирана и полуструктурирана информация • Обяснява как работят основни инструменти за автоматизирана обработка на информация, включително приложения с изкуствен интелект • Обяснява основни принципи и ограничения на използването на изкуствен интелект при обработка на данни, включително възможни грешки Умения • Прилага критично мислене за оценка на информация, получена от изкуствен интелект и други информационни източници • Използва софтуерни приложения за въвеждане, редактиране, форматиране и представяне на информация (текстови редактори, графични редактори, електронни таблици и др.) • Прилага електронни таблици за обработка и визуализация на данни Компетентности • Избира подходящ инструмент според типа и обема на информацията за обработка • Прилага знания и умения за решаване на проблеми с ИКТ и ИИ инструменти в различни учебни и житейски ситуации • Проявява критично мислене при тълкуване на резултати от автоматизирана обработка или генериране от ИИ Резултат от учене 3.3 Инсталира операционни системи и основни софтуерни компоненти Знания • Обяснява основни етапи при инсталиране на операционни системи • Различава видовете операционни системи и техните характеристики • Разчита и анализира системните изисквания на операционните системи и обяснява тяхното значение • Описва предназначението на основни софтуерни компоненти (драйвери, пакети за сигурност, офис пакети) • Обяснява методи за лицензиране и активация Умения • Подготвя инсталационна среда • Извършва инсталация на операционна система със стандартни настройки • Инсталира и конфигурира базови приложения и драйвери • Валидира функционалността след инсталация 9 Компетентности • Изгражда работеща системна среда чрез инсталиране на операционни системи и основен софтуер съобразно целите на инфраструктурата и изискванията за производителност Резултат от учене 3.4 Конфигурира мрежови настройки и свързаност между устройства Знания • Описва основни типове мрежи (LAN, WAN, WLAN) • Обяснява IP адресиране, подмрежи, шлюзове и DNS • Разграничава активни и пасивни мрежови устройства • Обяснява принципите на сигурна мрежова конфигурация Умения • Конфигурира IP параметри ръчно и автоматично (DHCP) • Настройва точка за достъп и споделяне на ресурси в мрежа • Проверява свързаност и диагностицира проблеми Компетентности • Изгражда и поддържа базова мрежова инфраструктура чрез правилна конфигурация на устройства и мрежови параметри за осигуряване на свързаност и достъп до ресурси Резултат от учене 3.5 Разбира и прилага основни принципи на изкуствения интелект в професионалната дейност Знания • Разпознава основни понятия, свързани с изкуствения интелект • Познава възможните приложения на ИИ в различни области • Разбира възможните ограничения и рискове при използването на ИИ • Познава принципи за етично използване на изкуствен интелект, включително аспекти, свързани с лични данни, прозрачност на вземане на решения и др. Умения • Използва приложения, базирани на ИИ, за генериране на цифрово съдържание и/или подпомагане на работата със съществуващо цифрово съдържание • Генерира, редактира или обобщава съдържание чрез инструменти с ИИ, като прилага критерии за оценка на резултатите • Формулира заявки (prompts) за извличане на полезна информация или съдържание от генеративни модели • Оценява достоверността и релевантността на отговорите от ИИ, сравнявайки ги с авторитетни източници • Използва генеративни ИИ за създаване на визуално, текстово или аудио съдържание в съответствие с поставена задача Компетентности • Интегрира приложения с ИИ в професионалната си дейност за повишаване на ефективността си • Проявява критично мислене и цифрова грамотност при работа с изкуствен интелект • Прилага етични съображения при работа с изкуствен интелект Критерии за оценяване Част по теория на професията: на ЕРУ − Познава основни компоненти на компютърна система − Обяснява принципите на инсталиране на операционни системи и мрежови настройки − Разграничава файлови формати − Разяснява принципи на етично използване на изкуствен интелект Част по практика на професията: 10 − Инсталира и настройва ОС − Изпълнява действия с файлове и директории в операционна система − Настройва мрежова свързаност и използва облачни услуги − Използва приложения с ИИ за създаване или обработка на съдържание Средства за оценяване: Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 4 Реализиране на софтуерни решения Резултат от учене 4.1 Разбира основни концепции в програмирането Знания • Познава бройните системи, представянето на данни и операции с тях • Познава основите на булевата алгебра • Разбира основни понятия в програмирането – променливи, оператори, условни и циклични конструкции • Различава видове програмни езици • Обяснява предназначението на компилатор и интерпретатор • Изброява видове типове данни • Прави разлика между силно- и слаботипизирани програмни езици Умения • Извършва преобразувания и аритметични действия с числа в различни бройни системи • Прилага основните логически функции и ги включва в логически изрази • Съставя и прилага основни алгоритми при решаването на задачи • Разбира и описва логиката на проста програма (на естествен език или чрез блок схема) • Обяснява какво ще се случи при изпълнението на даден откъс от код Компетентности • Демонстрира базисно алгоритмично мислене чрез логически и последователни действия Резултат от учене 4.2 Използва алгоритми и структури от данни Знания • Обяснява понятието „алгоритъм“ • Разбира понятието „сложност на алгоритъм“ и неговата роля • Обяснява същността на рекурсията • Описва различни видове алгоритми • Изброява алгоритми за търсене • Изброява алгоритми за сортиране • Познава процеса на „сортиране“ на дадена поредица от елементи • Разбира процеса на търсене • Обяснява същността на структурите от данни и тяхната роля в програмирането • Описва различни видове структури от данни – списъци, стек, опашка, речник, множество • Разбира значението на избора на структура от данни за ефективността на решението Умения • Намира сложност на алгоритъм 11 • Използва структури от данни за съхранение и обработка на колекции от данни • Имплементира основни структури от данни по ефективен начин • Имплементира алгоритми за сортиране • Имплементира алгоритми за търсене • Избира подходяща структура от данни за решаване на конкретна задача Компетентности • Ефективно използва структури от данни за решаване на конкретен проблем Резултат от учене 4.3 Използва основни програмни конструкции в интегрирана среда за разработка Знания • Разграничава основните парадигми в програмирането (например процедурно, обектно ориентирано, функционално програмиране) • Описва структурата и синтаксиса на избран програмен език • Разбира понятието „интегрирана среда за разработка“ (IDE) и познава нейните основни функции • Описва основни компоненти на интегрирана среда за разработка – редактор на код, инструменти за стартиране и дебъгване, прозорец със съобщения за грешки и др. • Различава грешка при компилиране, грешка при изпълнение, както и логическа грешка Умения • Използва основни типове данни и променливи за съхранение и обработка на стойности • Използва променливи, условни конструкции, цикли и функции • Използва масиви за съхранение на данни • Използва символни низове за обработка на текст • Пише и структурира код съгласно синтактичните правила на езика • Използва среди за разработка за ефективно писане на код • Разбира съобщения за грешки и отстранява проблеми • Използва инструменти с изкуствен интелект за генериране и допълване на програмен код Компетентности • Работи ефективно в среда за разработка, като използва основните ѝ възможности за писане, стартиране и дебъгване • Самостоятелно разработва функционален програмен код, отговарящ на поставените изисквания и стандарти за четимост и структура Резултат от учене 4.4 Създава и тества кратки програми с фокус върху функционалност и четимост Знания • Познава правила и добри практики за именуване и подреждане на код • Разбира ролята на коментари за качеството на програмния код • Обяснява процеса на рефакториране на код • Изброява различни видове тестване на програма • Описва видове тестове (unit, integration, system) и тяхната роля • Обяснява основните принципи на дебъгване (отстраняване на грешки) • Познава техники за оптимизация на софтуерен код (например намаляване на сложност, подобряване на производителността) 12 Умения • Създава програма с конкретна цел и функционалност чрез език за програмиране • Използва консистентен стил на писане на програмен код • Използва инструменти за дебъгване и тестване в средата за разработка • Създава базови unit тестове с помощта на библиотеки • Идентифицира и коригира неефективен код • Открива и поправя грешки в логиката и синтаксиса на своята програма Компетентности • Осигурява стабилност и ефективност на софтуерното решение чрез систематично тестване и подобрения Резултат от учене 4.5 Работи с инструменти за контрол на версиите и екипно сътрудничество Знания • Обяснява основни концепции на системи за контрол на версиите • Разграничава централизирани и децентрализирани системи за контрол на версиите • Разглежда основни команди и концепции в съответна система за контрол на версиите • Разбира значението на хронологията на промените и разрешаването на конфликти • Изброява добри практики при съвместна работа по софтуерен проект Умения • Използва системи за контрол на версиите за създаване на клонове и управление на промените • Създава хранилище (repository) • Създава заявки за сливане (pull/merge request) • Извършва преглед на код (code review) • Извършва сливане на код и разрешаване на конфликти • Сътрудничи чрез общо хранилище (repository) Компетентности • Работи ефективно в екипна среда, използвайки инструменти за версионен контрол и съвместна разработка Резултат от учене 4.6 Създава уебстраници Знания • Познава основни HTML тагове • Разбира как CSS се използва за оформление на елементи • Разграничава HTML, CSS и JavaScript по предназначение и синтаксис • Познава ролята на браузъра и инструменти за разработка (DevTools) • Разбира какво е адаптивен дизайн • Дефинира понятието „документен обектен модел“ (DOM) Умения • Създава HTML страница • Оформя визуално съдържанието с помощта на CSS • Използва DevTools на браузъра за преглед и редакция на HTML и CSS • Управлява и манипулира елементи на страницата чрез JavaScript • Генерира уебстраници с помощта на инструменти с изкуствен интелект, използвайки подходящи заявки 13 Компетентности • Създава базова уебстраница, съобразена с изискванията за структура и визуално оформление Резултат от учене 4.7 Използва инструменти с ИИ за подпомагане на софтуерната разработка Знания • Познава различни видове инструменти с ИИ, използвани в програмирането • Разбира ограниченията и риска от генериране на неправилни/небезопасни решения Умения • Използва ИИ инструменти в среда за разработка • Формулира ясни и целенасочени заявки (prompts), за да получава качествени предложения • Оценява предложените от ИИ решения откъм логика, безопасност, ефикасност и др. • Адаптира генерирания код според изискванията на конкретния проект • Използва ИИ инструменти за генериране на тестове и документация на вече съществуващ код Компетентности • Демонстрира способност да използва ИИ като помощен инструмент за подобрение на своята ефективност • Интегрира използването на ИИ инструменти в своя работен процес за постигане на по-голяма ефективност Критерии за оценяване Част по теория на професията: на ЕРУ − Познава основни програмни конструкции и типове данни − Обяснява как работят алгоритми за търсене и сортиране − Разграничава грешки при компилация, изпълнение и логически грешки в програмен код − Описва ролята на системите за контрол на версиите Част по практика на професията: − Създава програма по дадено условие, използвайки среда за разработка − Имплементира структури от данни − Оформя уебстраница с HTML, CSS и базов JavaScript − Използва инструменти с ИИ за генериране, допълване или тестване на код Средства за оценяване: Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 5 Анализ на данни и информационна сигурност Резултат от учене 5.1 Работи с бази данни Знания • Разграничава типове бази данни и структури на таблици • Обяснява функциите на системите за управление на бази данни (СУБД) • Изяснява понятия, като първичен ключ, релация, индекс • Описва фази на създаване на база данни • Познава нормалните форми и принципите за нормализация на бази данни • Обяснява ролята на индекси и влиянието им върху ефективността Умения • Дефинира таблици, полета и релации в СУБД 14 • Въвежда и актуализира данни чрез интерфейс или заявки • Използва инструменти за създаване на база данни • Създава резервни копия на база данни • Прилага нормализация за елиминиране на излишни зависимости • Създава и използва индекси за оптимизация на заявки Компетентности • Създава, структурира и поддържа бази данни чрез ефективно използване на СУБД съобразно зададени изисквания и стандарти Резултат от учене 5.2 Извлича, обработва и визуализира данни чрез заявки Знания • Обяснява основни заявки синтаксис на SQL • Разграничава типове заявки (извличане, актуализация, обединяване) • Описва формати за представяне и визуализация на данни • Изяснява целите на сортиране, филтриране и групиране Умения • Изгражда заявки за извличане на данни с филтри и условия • Обединява таблици • Групира и агрегира стойности чрез функции • Представя данни чрез графики, таблици или диаграми Компетентности • Извлича и анализира данни чрез заявки и визуализира резултатите по разбираем и структуриран начин Резултат от учене 5.3 Използва скриптови езици за автоматизиране на задачи по управление и обработка на данни Знания • Разграничава базови конструкции на скриптов език • Описва възможности за свързване към база данни чрез скрипт • Обяснява приложението на автоматизацията при рутинни задачи Умения • Създава скриптове за импорт, експорт, преобразуване или обработка на данни • Извършва автоматизирани действия (запис, проверка, архивиране) • Работи със среди за изпълнение на скриптове • Открива и отстранява грешки в скриптов код Компетентности • Автоматизира често повтарящи се процеси чрез използване на скриптови езици Резултат от учене 5.4 Анализира и интерпретира данни чрез цифрови инструменти и изкуствен интелект Знания • Разпознава етапите на анализа на данни – събиране, почистване, визуализация, тълкуване • Изброява основни статистически показатели – средна стойност, медиана, диапазон, стандартно отклонение • Познава различни видове диаграми и визуални представяния на данни Умения • Зарежда данни в ИИ инструмент • Използва вградени ИИ функции в офис или информационни системи • Генерира автоматизирани обобщения, класификации или препоръки • Използва инструменти с ИИ за създаване на графики и визуализации 15 • Интерпретира резултати от ИИ анализа и проверява тяхната логическа обоснованост • Интерпретира изход от инструмент с ИИ • Формулира изводи на база анализираните данни Компетентности • Използва инструменти с изкуствен интелект за базов анализ на структурирани данни с цел откриване на закономерности Резултат от учене 5.5 Прилага добри практики за дигитална сигурност и защита на лични данни Знания • Разбира рисковете, свързани с работа в интернет и цифрова среда • Познава принципите на защита на личната информация и цифровата идентичност • Разбира значението на силните пароли и механизмите за двуфакторно или многофакторно удостоверяване (2FA/MFA) • Обяснява какво представлява GDPR и какви права и задължения съществуват при събиране и обработка на лични данни • Обяснява трите принципа на информационната сигурност – конфиденциалност, цялостност и наличност на информацията (CIA триада) • Разбира понятието „хардуерен токен“ (security key) като физическо устройство за удостоверяване • Познава предимствата и ограниченията на хардуерните токени спрямо мобилните приложения за удостоверяване Умения • Създава и използва силни пароли, включително чрез генератори и мениджъри на пароли • Настройва двуфакторно и многофакторно удостоверяване • Настройва и използва двуфакторно и многофакторно удостоверяване с помощта на мобилни приложения за удостоверяване • Сканира QR код за добавяне на нов профил в приложение за удостоверяване и използва еднократни кодове за достъп • Разпознава фишинг съобщения, подозрителни линкове и имейли • Спазва принципите на киберхигиена – заключване на екрана, избягване на обществени Wi-Fi без защита, периодична смяна на пароли • Прилага основни мерки за сигурност на мобилни устройства Компетентности • Прилага разнообразни методи за защита на достъпа до цифрови ресурси, избирайки подходящото решение според нивото на сигурност и контекста Критерии за оценяване Част по теория на професията: на ЕРУ − Разграничава типове бази данни и релационни структури − Обяснява основни SQL оператори и тяхното предназначение − Познава принципи на информационната сигурност и защита на лични данни − Разяснява стъпки в анализа на данни и основни статистически показатели Част по практика на професията: − Създава и управлява бази данни с помощта на СУБД − Извлича и обработва данни чрез SQL заявки − Създава скрипт за автоматизиране на операция с данни 16 − Настройва двуфакторна защита Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика 3.2.3. Специфична професионална подготовка по професията ЕРУ 6 Изграждане на потребителски интерфейси Резултат от учене 6.1 Създава интерфейс с помощта на базови HTML/CSS шаблони Знания • Разграничава основните HTML елементи и тяхното предназначение • Обяснява принципите за структуриране на уебстраници с HTML • Разграничава стилове и свойства в CSS за визуално оформление • Описва основни правила за адаптивен дизайн • Познава различни UI библиотеки и компоненти за ускоряване на разработката • Описва функциите на ИИ инструменти за генериране на потребителски интерфейси Умения • Използва HTML за създаване на структура на потребителски интерфейс • Прилага CSS за стилизиране и позициониране на елементи • Адаптира шаблони според зададени изисквания • Създава HTML/CSS код, спазвайки добри практики • Генерира HTML/CSS шаблони с помощта на инструменти с изкуствен интелект • Създава адаптивен дизайн с помощта на CSS системи като flex и grid системите • Използва UI библиотеки и компоненти за ускоряване на разработката • Генерира потребителски интерфейси чрез ИИ инструменти Компетентности • Създава прости и функционални потребителски интерфейси, отговарящи на техническото задание Резултат от учене 6.2 Вгражда интерактивни елементи чрез JavaScript библиотеки Знания • Описва ролята на езика JavaScript като език за добавяне на интерактивност и динамично съдържание в уебстраници и приложения • Разграничава често използвани библиотеки и тяхното приложение • Разпознава и описва работни рамки (frameworks) на JavaScript и тяхното приложение при изграждане на мащабируеми и поддържани уебприложения • Обяснява основни събития и манипулация на DOM структурата • Обяснява начините за консумиране на API чрез JavaScript • Посочва добри практики при използване на външни скриптове, модули и компоненти • Обобщава възможностите на JavaScript за сървърна разработка Умения • Добавя JavaScript скриптове към уебстраница • Използва предварително създадени компоненти от библиотеки и работни рамки 17 • Настройва поведение на елементи чрез обработка на събития и манипулира DOM структурата • Интегрира API услуги в клиентска логика • Прилага основни техники за разработка на server-side функционалност с JavaScript (Node.js) • Създава уебприложения чрез работни рамки • Отстранява базови грешки при изпълнение на скриптове • Интегрира JavaScript компоненти на UI библиотеки и компоненти за ускоряване на разработката Компетентности • Интегрира интерактивни компоненти в потребителския интерфейс, като съблюдава функционалност и ползваемост • Избира и използва подходящи JavaScript библиотеки и работни рамки в зависимост от конкретния проект Резултат от учене 6.3 Конфигурира интерфейс според потребителските нужди Знания • Обяснява значението на ползваемост (usability) и потребителско изживяване (UX – user experience) • Разграничава методи за събиране на потребителски изисквания • Посочва основни принципи за достъпност (accessibility) • Анализира влиянието на структурата и визуалните елементи върху потребителското поведение Умения • Адаптира интерфейси според конкретни нужди на целеви групи • Прилага обратна връзка от потребителски тестове • Оптимизира навигацията и визуалното представяне • Използва шаблони и инструменти за прототипиране • Извършва базови тестове за ползваемост и съвместимост на интерфейса в различни браузъри и устройства Компетентности • Конфигурира интерфейси, съобразени с потребителски профили и контекст на използване Резултат от учене 6.4 Работи с документация за компоненти в потребителски интерфейс (UI) Знания • Разграничава терминология, използвана в ръководства за потребителски интерфейс • Обяснява значението на инструкции и обозначения в документация на потребителски интерфейс • Идентифицира ключови фрази и термини при настройка и имплементация на UI компоненти • Разчита указания, включени в официална документация Умения • Използва ръководства за интеграция и конфигуриране на UI компоненти • Търси и прилага информация от форуми, технически блогове, онлайн платформи и инструменти с ИИ • Разбира технически описания, съвместимост и начини на използване на UI инструменти Компетентности • Разбира и прилага техническа документация, свързана с потребителски интерфейси Критерии за оценяване Част по теория на професията: на ЕРУ − Обяснява основните HTML елементи и тяхното предназначение 18 − Разграничава стилове и свойства в CSS и принципи за адаптивен дизайн − Описва ролята на JavaScript и възможности на библиотеки за добавяне на интерактивност − Разпознава термини и инструкции, използвани в ръководства за UI компоненти Част по практика на професията: − Създава уебстраница с базова структура и стилово оформление чрез HTML/CSS − Добавя интерактивни елементи към интерфейса с помощта на JavaScript библиотека − Адаптира интерфейс спрямо конкретни потребителски изисквания и контекст − Използва документация за прилагане на UI компоненти и инструменти Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 7 Разработка на основни програмни модули и сървърна логика Резултат от учене 7.1 Пише код с обектно ориентирани парадигми Знания • Обяснява принципите на обектно ориентираното програмиране (наследяване, енкапсулация, полиморфизъм) • Разграничава структурата и предназначението на обекти, класове и методи • Представя логиката на събитийно и обектно поведение в програмата • Разбира SOLID принципите и базовите шаблони за проектиране (Design Patterns) Умения • Създава обекти и класове в съответствие със зададени изисквания • Пише методи за обработка на данни и вътрешна логика • Прилага наследяване и интерфейси за създаване на обектни връзки • Прилага SOLID и шаблони при изграждане на програмна логика Компетентности • Прилага обектно ориентиран подход при създаване на програмна логика, съобразена със заданието Резултат от учене 7.2 Разработва модел на данни, архитектура и компоненти на софтуерно решение Знания • Обяснява концепциите за логически и физически модели на данни • Разглежда архитектурни стилове (например клиент-сървър, многослойна архитектура, microservices) • Разграничава основни софтуерни компоненти и зависимости между тях • Представя базови принципи за модулност и повторна употреба • Разбира концепцията за инжектиране на зависимости (DI) и разделение на логическите слоеве Умения • Изгражда ER диаграми и модели на данни • Описва логическа структура на софтуерната архитектура 19 • Дефинира взаимодействие между основните компоненти на системата Компетентности • Самостоятелно моделира структури от данни и компоненти, подходящи за конкретен тип софтуерно решение Резултат от учене 7.3 Интегрира бази от данни, програмни интерфейси за приложения и външни услуги в софтуерното решение Знания • Описва ролята на релационни и нерелационни бази от данни • Обяснява как функционират API – като посредници за обмен на данни между различни системи • Изброява формати за пренос на данни (например JSON, XML) Умения • Извлича и записва данни в база с помощта на SQL заявки или ORM (Object-Relational Mapping) • Използва HTTP заявки за взаимодействие с външни API • Дебъгва проблеми при свързване с външни услуги • Прилага техники за защита при работа с данни и външни API (валидация, управление на достъп, защита от инжекции) Компетентности • Ефективно интегрира външни компоненти и услуги в създаваното софтуерно решение съобразно архитектурата и изискванията на проекта Критерии за оценяване Част по теория на професията: на ЕРУ − Обяснява основни принципи на обектно ориентираното програмиране − Разграничава функции, класове, обекти и тяхната роля в програмната архитектура − Описва функциите и възможностите на интегрирана среда за разработка (IDE) − Разпознава чуждоезикова техническа терминология, свързана с програмиране Част по практика на професията: − Създава работещ програмен модул, използвайки обектно ориентиран подход − Използва IDE за създаване, изпълнение и отстраняване на грешки в програма − Дефинира и използва коректно функции, класове и обекти според задание − Прилага чуждоезикови ресурси (кодови примери, форуми, ръководства) при реализация на заданието Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 8 Работа с бази данни Резултат от учене 8.1 Създава и поддържа релационна база от данни Знания • Разглежда основни концепции на релационните бази от данни (таблица, ред, колона, ключове) • Описва структурата на база от данни според задание • Обяснява типове данни, релации и зависимости между таблици • Посочва добри практики за структуриране и поддръжка на бази от данни 20 • Познава нормалните форми и принципите за нормализация на бази данни • Обяснява ролята на индекси и влиянието им върху ефективността Умения • Проектира таблици с подходящи типове данни и връзки • Създава база от данни чрез подходяща система за управление • Актуализира и модифицира структурата на база при промяна на изисквания • Отстранява често срещани грешки при създаване и поддръжка на бази данни • Прилага нормализация за елиминиране на излишни зависимости • Създава и използва индекси за оптимизация на заявки Компетентности • Прилага структурирано мислене при изграждане на база от данни според функционално задание Резултат от учене 8.2 Извършва заявки с езика SQL Знания • Обяснява предназначението на езика SQL (Structured Query Language – структуриран език за заявки) • Разглежда основни команди • Разпознава синтактични и логически грешки в SQL заявки Умения • Създава заявки за извличане и филтриране на данни • Използва SQL за модифициране и изтриване на данни • Изпълнява обединения между таблици за извличане на свързани данни • Анализира резултатите от заявките и ги използва за нуждите на приложението Компетентности • Използва SQL ефективно за достъп и управление на данни в реална среда Резултат от учене 8.3 Свързва базата данни с приложението Знания • Описва процеса на свързване между приложение и база от данни • Разграничава различни технологии за достъп до база • Обяснява рискове при некоректна връзка и липса на защита • Разбира ACID принципите и ролята на транзакциите в релационни бази данни • Описва работата на система за обектно-релационно съпоставяне (Object Relational Mapping, ORM) Умения • Конфигурира параметри за свързване между приложението и базата • Използва програмни библиотеки за изпълнение на заявки от приложението • Тества връзката и проверява коректността на обмена на данни • Използва транзакции и подготвени заявки (prepared statements) за безопасност • Съпоставя класове-таблици в ORM система Компетентности • Гарантира стабилна и защитена интеграция между софтуер и база от данни Резултат от учене 8.4 Управлява миграции и версии на база данни Знания • Обяснява концепцията за миграции на база данни и тяхното предназначение 21 • Разбира принципите на формиране на версии на бази данни в процеса на разработка • Разграничава ръчни и автоматизирани миграции • Познава добри практики за управление на схеми и промени в структурата на базата • Описва ролята на инструменти за миграции, включително такива с ИИ Умения • Създава и прилага миграции за добавяне, промяна или премахване на обекти в база данни • Използва инструменти за автоматизиране на миграции и следене на версията на базата • Управлява последователността на миграциите, включително връщане назад (rollback) при нужда • Изпълнява безопасно миграции в различни среди • Използва генеративни ИИ инструменти за създаване на структура на база данни и писане на SQL заявки Компетентности • Осигурява консистентност и проследимост на промените в структурата на базата данни чрез използване на миграции и подходящи инструменти Критерии за оценяване Част по теория на професията: на ЕРУ − Обяснява релационен модел и структура на база − Познава основни SQL команди и логика на заявки − Разпознава термини и инструкции на английски език, свързани с бази от данни Част по практика на професията: − Проектира и създава проста релационна база − Извършва базови и комбинирани SQL заявки − Интегрира база в приложение и извършва реална връзка − Използва справки за решаване на практически задачи Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 9 Жизнен цикъл на софтуерна разработка Резултат от учене 9.1 Изпълнява професионални дейности, свързани с жизнения цикъл на софтуерната разработка Знания • Познава фазите на жизнения цикъл на софтуера – анализ на изискванията, проектиране, разработка, тестване, внедряване, поддръжка • Разграничава ролите и отговорностите на участниците в процеса на разработка на софтуер • Описва основните софтуерни архитектури и модели на процеси (Waterfall, V-Model, Agile, Iterative) • Познава принципите, артефактите и ритуалите на гъвкавите методологии (SCRUM, Kanban) • Разбира концепцията за управление на изисквания и промени (backlog, user stories, acceptance criteria) • Познава добри практики за осигуряване на качеството – преглед на код (code review), тестове, CI/CD, документация Умения • Анализира и описва изискванията за софтуерна система 22 • Участва в екипно проектиране на софтуер (архитектурни решения, UML диаграми) • Разработва и интегрира софтуерни компоненти, спазвайки етапите на SDLC • Извършва основни тестови дейности (unit тестове, интеграционни тестове, bug reporting) • Участва в екипни срещи и използва инструменти за управление на задачите • Подготвя документация и участва в процеса на внедряване и поддръжка на софтуера Компетентности • Способност да работи в екип и да изпълнява различни роли в процеса на разработка според изискванията на проекта • Самостоятелно и отговорно прилага подходяща методология (SCRUM, Kanban, Waterfall) в зависимост от проекта • Демонстрира адаптивност към промени в изискванията и условията на проекта, като спазва качествените стандарти на софтуерната разработка Резултат от учене 9.2 Анализира потребителски изисквания и дефинира функционални спецификации Знания • Описва етапите в процеса на изискванията към софтуера • Обяснява методи за събиране и анализ на потребителски изисквания • Прилага модели за представяне на функционалност (use cases, потребителски истории) • Обосновава избора на функционални изисквания въз основа на нуждите на клиента Умения • Събира и обобщава изисквания от заинтересовани страни • Формулира измерими и проверими функционални спецификации • Представя резултатите от анализа в разбираем за клиента вид Компетентности • Извършва обоснован подбор и структуриране на потребителските изисквания с цел ефективно планиране на софтуерния проект Резултат от учене 9.3 Избира технологии и платформи съобразно спецификата на проекта Знания • Посочва критерии за избор на технологии (скалируемост, поддръжка, сигурност, съвместимост) • Описва предимства и ограничения на различни програмни езици, фреймуърк и платформи • Разглежда случаи на прилагане на конкретни технологични стека Умения • Сравнява алтернативни решения спрямо нуждите на проекта • Използва информационни ресурси и техническа документация при избор на технологии • Обосновава избора си пред екип/клиент Компетентности • Прилага технологични решения, съобразени с целите, ограниченията и средата на софтуерния проект Резултат от учене 9.4 Осигурява функционалност на разработения софтуер Знания • Описва видове тестове (unit, integration, system) и тяхната роля 23 • Обяснява основните принципи на дебъгване (отстраняване на грешки) • Познава техники за оптимизация на софтуерен код (например намаляване на сложност, подобряване на производителността) Умения • Използва инструменти за дебъгване и тестване в средата за разработка • Създава базови unit тестове с помощта на библиотеки • Идентифицира и коригира неефективен код Компетентности • Осигурява стабилност и ефективност на софтуерното решение чрез систематично тестване и подобрения Резултат от учене 9.5 Следва структура на проекта по зададени шаблони Знания • Разграничава компоненти на проектната структура (папки, файлове, модули) • Обяснява ролята на шаблоните (template – предварително дефинирана структура) • Описва добри практики при организиране на файлове в софтуерен проект • Разбира зависимостите между файлове, библиотеки и конфигурации Умения • Прилага шаблонна структура към нов проект • Организира код и ресурси според зададени правила • Адаптира структурата при промяна в изискванията Компетентности • Поддържа стандартизирана структура на проекта за улесняване на екипна работа Резултат от учене 9.6 Комуникира прогреса в екипна среда Знания • Разграничава роли и отговорности в екип по разработка • Описва инструменти за комуникация и проследяване на задачи • Разбира значението на навременна и структурирана комуникация Умения • Докладва напредъка по задачи, проблеми и решения • Води записки и бележки при екипни срещи • Използва инструменти за проследяване на задачи Компетентности • Поддържа ефективна комуникация в рамките на екипа, като споделя информация навреме и ясно Критерии за оценяване Част по теория на професията: на ЕРУ − Познава основните концепции на управление на софтуерен проект − Разпознава структурата на проект − Изброява основни команди за работа със система за контрол на версиите − Разбира принципите на екипна комуникация и използва чуждоезикова терминология − Познава методи за анализ, моделиране и архитектурен дизайн на софтуер − Обосновава избора на технологии и архитектурни подходи в зависимост от контекста Част по практика на професията: − Организира файловете в структура, съобразена с шаблон 24 − Използва система за проследяване и обединяване на промени − Докладва прогрес и комуникира с екипа чрез избрана платформа − Избира и прилага адекватни технологии и платформи за даден проблем или проект Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 10 Поддръжка и тестване на приложения Резултат от учене 10.1 Извършва функционални и регресионни тестове Знания • Обяснява целта на функционалното тестване (дали приложението изпълнява зададените функции) • Разглежда принципи на регресионното тестване (повторно тестване след промени) • Разпознава типове тестове – ръчни и автоматизирани • Описва стандартна тестова документация – тест план, тест сценарий • Разграничава тестове за производителност и сигурност Умения • Създава и изпълнява тестови сценарии по зададени изисквания • Идентифицира отклонения от очакваното поведение • Използва подходящи инструменти за провеждане на функционални тестове • Изпълнява базови тестове за производителност и проверка на сигурността Компетентности • Прилага процедури за проверка на съответствието на приложението с изискванията Резултат от учене 10.2 Документира грешки и предлага корекции Знания • Разграничава видове грешки: логически, синтактични, интерфейсни • Обяснява процеса на съобщаване и проследяване на грешки (bug tracking – проследяване на грешки) • Познава основни полета в доклад за грешка: стъпки за възпроизвеждане, очакван резултат, реален резултат Умения • Попълва отчет за грешки в избрана система • Предлага конкретни действия за отстраняване на проблема • Комуникира с екипа относно докладвани проблеми Компетентности • Систематизира откритите грешки и съдейства за тяхното ефективно отстраняване Резултат от учене 10.3 Актуализира елементи според обратна връзка Знания • Разбира значението на потребителска и техническа обратна връзка • Обяснява връзката между тестови резултати и нужда от актуализация • Познава цикъла „намерена грешка – промяна – ново тестване“ Умения • Прилага корекции по зададени инструкции или препоръки • Проследява резултатите от направените промени • Документира извършените актуализации 25 Компетентности • Адаптира компонентите на приложението спрямо обратната връзка от потребители и тестери Резултат от учене 10.4 Интерпретира доклади от тестове Знания • Разпознава терминология • Обяснява структурата на тестови доклади • Разбира съкращения и термини в автоматизирани тестови платформи Умения • Тълкува тестови резултати • Използва речници, справочници и контекстуални източници Компетентности • Интерпретира и използва документация и резултати от тестове в реална работна среда Резултат от учене 10.5 Анализира и подобрява качеството на кода чрез линтинг и статичен анализ Знания • Обяснява понятието „линтинг“ и ролята му за поддържане на качествен и четим код • Разграничава статичен и динамичен анализ на кода • Познава добри практики и стандарти за стил и структура на кода (naming conventions, code formatting) • Разбира как линтерите откриват потенциални проблеми, предупреждения и уязвимости • Познава популярни инструменти за линтинг и статичен анализ • Разбира как линтерите и ИИ базираните инструменти откриват проблеми, предупреждения и уязвимости Умения • Настройва и използва линтери и инструменти за статичен анализ в среда за разработка • Интерпретира резултати от линтинг и статичен анализ • Прилага автоматично и ръчно поправяне на стилови несъответствия и потенциални проблеми в кода • Актуализира конфигурации на линтери спрямо проектните стандарти • Интерпретира резултати от линтинг, статичен анализ и ИИ предложения (warnings, code smells) Компетентности • Поддържа високо качество на кода, спазвайки стандартите за стил и безопасност чрез систематичен линтинг и статичен анализ Критерии за оценяване Част по теория на професията: на ЕРУ − Познава видовете тестове, тестова документация и процесите на регресия и отстраняване на грешки − Разграничава типове обратна връзка и тяхното значение − Разпознава терминологията в тестови доклади Част по практика на професията: − Провежда функционално и регресионно тестване − Документира грешки по зададен шаблон и предлага корекции − Извършва актуализация на елементи на приложението − Чете и интерпретира чуждоезикови тестови доклади и инструкции Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика 26 ЕРУ 11 Разработка на многослойни архитектури Резултат от учене 11.1 • Прилага основни принципи и протоколи за комуникация в многослойни архитектури Знания • Познава основни комуникационни протоколи • Разграничава синхронна и асинхронна комуникация • Описва начини за сериализация на данни (JSON, XML и др.) • Обяснява ролята на API в многослойната архитектура Умения • Конфигурира комуникация между клиент и сървър с избран протокол • Използва формати за сериализация и десериализация на данни • Разглежда логове и отстранява проблеми в комуникационните потоци Компетентности • Осигурява ефективна и сигурна комуникация между слоевете на архитектурата чрез избор на подходящи протоколи и формати Резултат от учене 11.2 Изгражда клиент-сървър логика Знания • Обяснява принципа на клиент-сървър взаимодействието • Разграничава отговорностите на клиента и сървъра в уебприложение • Описва архитектурни подходи за реализация на клиент-сървър модел • Обяснява основни механизми за обмен на данни – заявки, отговори, API Умения • Реализира логика за обмен на данни между клиент и сървър • Настройва сървърни компоненти и връзка с клиентски интерфейс • Използва инструменти и езици за създаване на клиент-сървър функционалност Компетентности • Разработва основни компоненти на клиент-сървър архитектура в рамките на софтуерен проект Резултат от учене 11.3 Прилага архитектурни шаблони Знания • Обяснява понятието „архитектурен шаблон“ • Описва структурата на MVC (Model-View-Controller) и ролята на всеки компонент • Разглежда други популярни шаблони • Разграничава предимства и ограничения на различни архитектури • Разглежда съвременни архитектурни подходи, чисти архитектури и многослойни домейн архитектури • Разбира концепцията за инжектиране на зависимости (dependency injection) и принципите на SOLID при изграждане на многослойни архитектури Умения • Прилага подходящ архитектурен модел според проекта • Организира кода по слоеве (данни, логика, потребителски интерфейс) • Модифицира архитектурата според функционални изисквания Компетентности • Използва подходящ архитектурен шаблон за осигуряване на структурирана и устойчива разработка 27 Резултат от учене 11.4 Интегрира клиентска и сървърна логика Знания • Обяснява взаимодействието между клиентска (front-end) и сървърна логика (back-end) • Разграничава методи за предаване на данни • Описва добри практики при интеграция на слоеве • Познава примери за инструменти и технологии за интеграция Умения • Свързва интерфейс с логика за обработка на заявки и база данни • Обработва отговори от сървъра и ги визуализира в интерфейса • Диагностицира и отстранява проблеми в интеграцията Компетентности • Създава работеща многослойна система чрез ефективно свързване на потребителски и логически компоненти Резултат от учене 11.5 Използва софтуерна документация Знания • Разпознава специфична терминология в софтуерната документация • Обяснява структурата и предназначението на архитектурни диаграми • Познава стандартни формати на документация Умения • Интерпретира диаграми и описания на архитектура • Използва речници и технически източници за разбиране на специфични термини • Прилага получената информация в разработката на многослойни системи Компетентности • Използва архитектурна документация при изграждане и анализ на софтуерни решения Критерии за оценяване Част по теория на професията: на ЕРУ − Познава принципите на клиент-сървър архитектура − Разбира архитектурни шаблони и техните компоненти − Интерпретира чуждоезиково архитектурно описание и диаграми Част по практика на професията: − Реализира логика за взаимодействие между клиент и сървър − Прилага архитектурен шаблон (например MVC) в код − Интегрира слоеве на приложението в работеща система − Използва ресурси при прилагане на архитектурни решения Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 12 Работа с облачни платформи и микроуслуги Резултат от учене 12.1 Използва облачни среди за внедряване Знания • Описва предназначението и принципите на работа на облачни платформи • Обяснява процесите по внедряване (deployment) на приложения в облачна среда • Разграничава основни услуги – инфраструктура като услуга (IaaS), платформа като услуга (PaaS) • Изяснява понятия като „контейнеризация“ и „виртуализация“ 28 Умения • Конфигурира среда за разполагане на приложения в облачна платформа • Създава и управлява контейнери при внедряване на приложения • Използва инструменти за автоматизация при внедряване • Мониторира и валидира работата на приложението след внедряване Компетентности • Прилага ефективни практики за внедряване в облачна среда според спецификата на проекта Резултат от учене 12.2 Разработва и управлява микроуслуги Знания • Обяснява понятието „микроуслуги“ и разликата им с монолитни архитектури • Описва основни принципи за изграждане на микроуслуги (например независимост, комуникация чрез API) • Познава инструменти за управление на микроуслуги • Описва подходи за логване, мониторинг и устойчивост на услугите Умения • Създава и конфигурира микроуслуги за изпълнение на конкретни задачи • Управлява жизнения цикъл на микроуслугите – от разработка до поддръжка • Внедрява комуникация между микроуслуги чрез интерфейси Компетентности • Реализира проект, базиран на архитектура от микроуслуги, съгласно зададено изискване Резултат от учене 12.3 Прилага CI/CD процеси в разработката Знания • Обяснява значението на CI/CD (непрекъсната интеграция/непрекъснато доставяне – Continuous Integration/Continuous Delivery) • Описва етапите в CI/CD процеса – изграждане, тестване, разполагане • Познава инструменти за CI/CD (например Jenkins, GitLab CI, GitHub Actions) • Разграничава добри практики за автоматизация на разработката Умения • Конфигурира CI/CD конвейр (pipelines) за автоматизация на разполагане и тестване • Използва скриптове и шаблони за изпълнение на CI/CD задачи • Проследява и анализира резултати от автоматични тестове и внедряване Компетентности • Поддържа ефективен процес на разработка чрез внедряване на автоматизирани CI/CD практики Резултат от учене 12.4 Kонфигурира и автоматизира действия с облачни платформи Знания • Разпознава основни команди и конфигурационни елементи в YAML, JSON, Dockerfile, CI/CD скриптове • Обяснява смисъла на термини, като конвейр (pipeline), компилация (build), задействащо събитие (trigger), среда (environment), внедряване (deployment) • Познава източници на техническа документация Умения • Прочита и адаптира конфигурации и скриптове за автоматизация 29 • Използва технически форуми, документация и изкуствен интелект при възникнали проблеми • Попълва и редактира конфигурационни файлове с разбиране на терминологията • Използва изкуствен интелект за генериране и допълване на конфигурационни елементи Компетентности • Работи уверено с документация и конфигурации при внедряване на автоматизирани процеси Резултат от учене 12.5 Прилага принципи на сигурност в облачна среда Знания • Обяснява основни принципи на сигурността в облачни платформи (идентичност, достъп, криптиране, управление на тайни) • Познава уязвимости в облачна инфраструктура и микроуслуги • Описва инструменти за сканиране на сигурността и уязвимостите Умения • Конфигурира ролево-базирани политики за достъп • Настройва защита на комуникацията между микроуслуги • Използва инструменти за сканиране на контейнери и инфраструктура за уязвимости • Внедрява проверки за сигурност в CI/CD конвейери • Управлява тайни и ключове чрез облачни услуги Компетентности Осигурява сигурна и устойчива работа на приложения в облачна среда Критерии за оценяване Част по теория на професията: на ЕРУ − Разбира основите на облачните технологии, микроуслуги и CI/CD − Обяснява архитектурните и функционалните предимства на избраните подходи − Интерпретира термини, свързани с автоматизация и конфигурация Част по практика на професията: − Конфигурира и използва облачна среда за разполагане на приложение − Разработва микроуслуги и управлява комуникацията между тях − Прилага CI/CD инструменти и автоматизира етапи от разработката Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика ЕРУ 13 Документиране и поддръжка на софтуер Резултат от учене 13.1 Създава техническа документация Знания • Обяснява целта и структурните елементи на техническа документация • Разграничава типове документация – за разработчици, за потребители, за поддръжка • Описва принципи на яснота, проследимост и актуалност в документацията • Обяснява значението на формирането на версии на документацията 30 • Познава инструменти за автоматизирано генериране на документация и използване на изкуствен интелект за създаване и поддръжка на технически описания Умения • Съставя техническа документация към софтуерен продукт • Използва шаблони и инструменти за структуриране на документация • Приспособява езика според аудиторията (техническа или нетехническа) • Използва ИИ инструменти и генератори за автоматично създаване и обновяване на документация Компетентности • Изготвя техническа документация, която улеснява използването и поддръжката на софтуер Резултат от учене 13.2 Обновява ръководства за потребители и екип Знания • Обяснява структурата и функциите на потребителски ръководства • Разграничава ръководства за крайни потребители и за вътрешни екипи • Описва добри практики за версия и промени в документацията Умения • Преработва и обновява съществуващи ръководства на база промени в софтуера • Добавя нови функционалности в документацията по ясен и достъпен начин • Проверява съответствието между документация и софтуерен продукт Компетентности • Поддържа актуална документация, съобразена с развитието на софтуера Резултат от учене 13.3 Поддържа съществуващ код Знания • Обяснява понятието „рефакториране“ и неговата роля за поддръжка • Описва добри практики за четим, устойчив и оптимизиран код • Разграничава основни грешки и лоши практики в поддръжката на код Умения • Анализира съществуващ код с цел подобрение на структурата без промяна на функционалността • Извършва рефакториране и коментира направените промени • Идентифицира и коригира технически код Компетентности • Поддържа ефективно и прозрачно съществуващ код в съответствие с установени стандарти Резултат от учене 13.4 Прилага стандарти за структуриране на документация и визуални модели Знания • Изброява видове документация – техническа, потребителска, архитектурна • Описва UML нотации и визуални средства за представяне на софтуерни модели • Разграничава добри практики за създаване на четима и устойчива документация 31 Умения • Създава диаграми с помощта на стандартизирани инструменти • Структурира документация съгласно шаблони и стандарти • Адаптира език и формат според целевата аудитория на документацията Компетентности • Разработва и поддържа техническа и визуална документация, която отговаря на професионални стандарти Критерии за оценяване Част по теория на професията: на ЕРУ − Обяснява основните видове документация и процеса на нейното актуализиране − Познава добри практики за поддръжка и рефакториране на код − Разпознава терминология, използвана в комуникация и документация Част по практика на професията: − Създава, актуализира и структурира техническа и потребителска документация − Анализира и подобрява съществуващ код чрез рефакториране − Създава документация и визуални модели с използване на стандартизирани инструменти Средства за оценяване Част по теория: писмен изпит Част по практика: изпълнение на практическа задача по индивидуално задание по практика 4. Съвкупност от единици резултати от учене, които формират придобиването на квалификация по част от професията „Разработка на софтуер“ Степен на Ниво по професионална ЕРУ № … от списъка по т. 3.1. ЕКР/НКР квалификация II 3 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 6 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 7 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 8 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 9 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 10 III 4 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 6, ЕРУ № 7, ЕРУ № 8, ЕРУ № 11 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 6, ЕРУ № 7, ЕРУ № 8, ЕРУ № 12 ЕРУ № 3, ЕРУ№ 4, ЕРУ № 5, ЕРУ № 6, ЕРУ № 7, ЕРУ № 8, ЕРУ № 13 5. Изисквания към материалната база 5.1. Изисквания към кабинетите за обучение по теория на професията – характеристики, обзавеждане, оборудване, софтуер Кабинетите за теоретично обучение по професия „Разработка на софтуер“ трябва да предоставят функционална и технологично адекватна среда, в която обучаемите усвояват основни и напреднали концепции от областта на софтуерното инженерство. Кабинетът следва да бъде оборудван с мултимедиен проектор, екран, интерактивна дъска или смартдисплей, както и учебни маси и ергономични столове, съобразени с броя на учащите. Необходимо е осигуряване 32 на достъп до специализирана техническа литература в печатен и/или електронен формат, включително материали по алгоритми, структури от данни, бази данни, модели на софтуерна архитектура и документация на програмни езици. В кабинетите трябва да има компютърни работни станции или възможност за демонстрации чрез преподавателски компютър, оборудван със софтуер за програмиране – IDE (Integrated Development Environments), като Visual Studio Code, IntelliJ IDEA, Eclipse, както и текстови редактори, интерпретатори и компилатори за езици, като Python, Java, C#, JavaScript и SQL. Задължително е наличието на софтуер за контрол на версиите, платформи за споделяне на код и симулатори за структури от данни или основни алгоритми. 5.2. Изисквания към учебната база за обучение по практика на професията – характеристики, обзавеждане, оборудване, софтуер Учебната база за практическо обучение по професия „Разработка на софтуер“ трябва да бъде компютърна лаборатория, осигуряваща индивидуални работни места с инсталирани операционни системи (Windows, Linux) и широк набор от софтуерни инструменти. Всяко работно място трябва да разполага с интегрирани среди за разработка (IDE), компилатори, дебъгери, библиотеки и среди за писане и тестване на код. Трябва да бъдат налични среди за разработка на уеббазирани, десктоп и мобилни приложения, както и възможност за работа с бази от данни – чрез SQL Server, MySQL, PostgreSQL и други платформи. Следва да се осигури достъп до облачни среди за разработка и тестване (например GitHub Codespaces, Replit, Azure, Firebase), контейнери за виртуализация (Docker), както и инструменти за изграждане на CI/CD процеси. Практическата работа трябва да включва използване на системи за управление на проекти (Trello, Jira), контрол на версиите (Git, GitHub/GitLab) и основни инструменти за управление на API и тестове (Postman, Swagger). Базата трябва да осигурява и демонстрационно пространство за съвместна работа и код ревю – с възможност за екранно споделяне, симултанно програмиране (pair programming) и дистанционно участие. Следва да има архив от примерни проекти, задания с нарастваща сложност и инструменти за автоматизирана оценка на написания код. Сигурността, лицензирането на използвания софтуер, достъпът до интернет и поддържането на актуални версии на средите за разработка са задължителни за качественото провеждане на практическото обучение. 6. Изисквания към обучаващите Право да преподават по теория и практика на професията имат лица с висше образование и образователно-квалификационна степен „магистър“ или „бакалавър“ по специалности от професионално направление „Администрация и управление“ и „Икономика“ от областта на висше образование „Социални, стопански и правни науки“, от професионални направления „Електротехника, електроника и автоматика“ и „Комуникационна и компютърна техника“ от областта на висше образование „Технически науки“, от професионални направления „Информатика и компютърни науки“ и „Математика“ от областта на висше образование „Природни науки, математика и информатика“ от Класификатора на областите на висше образование и професионалните направления, приет с Постановление № 125 от 2002 г. на Министерския съвет (ДВ, бр. 64 от 2002 г.), съответстващи на професията. Учителска длъжност по учебен предмет или модул от професионалната подготовка може да се заема и от лица със завършено висше образование по съответната специалност и без професионална квалификация „учител“. 33 По учебен предмет или модул от професионалната подготовка, за който няма съответно професионално направление в Класификатора на областите на висше образование и професионалните направления, могат да преподават лица без висше образование и без придобита професионална квалификация „учител“, ако са придобили съответната професионална квалификация при условията и по реда на Закона за професионалното образование и обучение. Препоръчително е на всеки три години обучаващите да преминават курс за актуализиране на професионалните си знания, умения и компетентности. Речник на използваните чужди думи и съкращения API Application Programming Interface, Приложен програмен интерфейс HTTP заявка Съобщение, изпратено от клиент като уеббраузър, до сървър с искане за конкретен ресурс или за извършване на действие Agile Адаптивен подход за управление Big Data Големи масиви от данни, които се характеризират с висока скорост на генериране, разнообразие и обем и които изискват специализирани технологии за обработка и анализ Build Процес на превръщане на изходния програмен код в изпълним файл или система (включва компилиране, свързване и други стъпки) CI/CD Continues Integration/Continuous Delivery (or Deployment), Непрекъсната интеграция/Непрекъсната доставка (или внедряване) Deployment Процес на инсталиране и пускане на софтуерен продукт в определена среда за използване от крайни потребители DevOps Development and Operations – Съвкупност от практики, обединяващи разработката и поддръжката на софтуер Environment Конкретна конфигурация на операционна система, софтуерни инструменти и ресурси, в която се изпълнява или тества дадено приложение Git Децентрализирана система за контрол на версиите на файлове IDE Integrated Development Environment, Интегрирана среда за разработка IoT Internet of Things, Интернет на нещата Pipeline Последователност от автоматизирани стъпки в процеса на разработка, тестване и внедряване на софтуер, където всяка стъпка подава резултата си към следващата 34 Scrum Рамка за организиране на работата в кратки цикли, т. нар. „спринтове“ SQL Structured Query Language, Език за структурирани запитвания Trigger Задействащо събитие, определено условие или действие, което автоматично стартира друг процес UI User Interface, Потребителски интерфейс UX User Experience, Потребителско изживяване Автоматизирано тестване Писане на тестове с помощта на код, които се изпълняват автоматизирано Жизнен цикъл на Етапите, през които преминава софтуерът от момента на софтуера възникване на идеята за създаването до пускането на софтуера в продукционна среда ИИ Изкуствен интелект ИКТ Информационни и комуникационни технологии Интерфейс Споделена граница между разделени компютърни компоненти, обменящи информация ИС Информационна система ИТ Информационни технологии Логове Записи на събития в компютърна система или мрежа, които се съхраняват в т. нар. „лог файлове“ Невронни мрежи Изчислителен модел за обработка на информация Слайдър Плъзгач или лента за проследяване Скриптиране Писане на програмен език, при който изходният код на програмите се изпълнява директно Спринт Фиксиран, кратък период от време, в който екипът работи върху предварително определен набор от задачи, с цел да достави работещ продукт или функционалност Уебскрейпинг Автоматизиран процес на извличане на данни от уебсайтове Framework, работна Предварително разработена софтуерна структура (рамка), която рамка предоставя готови функционалности, инструменти и правила за изграждане на приложения 35

Справка за получените предложения/съобщение - вер. 1.0 | 21.11.2025

Приложение 2 СПРАВКА ЗА ОТРАЗЯВАНЕ НА ПОСТЪПИЛИТЕ ПРЕДЛОЖЕНИЯ ОТ ОБЩЕСТВЕНИТЕ КОНСУЛТАЦИИ НА ПРОЕКТА НА НАРЕДБА ЗА ПРИДОБИВАНЕ НА КВАЛИФИКАЦИЯ ПО ПРОФЕСИЯТА КОД 061303 „РАЗРАБОТКА НА СОФТУЕР“ Период на обществените консултации: 8 октомври – 11 ноември 2025 г. Организация/потребител Приети/ № (вкл. начина на получаване на Бележки и предложения Мотиви неприети предложението) 1. Мартин Ветов и екипът на ПГ по 1. Формулировка на ЕРУ: ЕРУ 4.6: „Създава уебстраници Частично Част от бележките са приети с допълнени текстове в РУ телекомуникации Аргументи: Концепцията за „адаптивен дизайн“, или често приети 4.6, РУ 6.1, РУ 6.3, РУ 11.2. Получено по е-поща срещана като „мобилна версия“, е предшественика на концеп- Предложения относно текстове за Реализирането на алго- цията за „респонсив дизайн“, при която чрез процентно прео- ритми с използване на графи и дървета за представяне и размеряване се преминава към гъвкава основа. Двете концеп- търсене на данни. ции се различават в своята реализация и продължават да се Добавено е ново РУ 7.2 Прилага алгоритмичен дизайн развиват. при разработка на основни програмни модули и сървърна Предложение за промяна и актуализация: Учениците да ус- логика воят адаптивен и респонсив дизайн като две отделни концеп- ции за промяна на изгледа на уебстраници, спрямо размера на Не се приемат следните предложения: използваното устройство. Предложение за промяна и актуализация: Учениците да 2. Формулировка на ЕРУ: ЕРУ 6.1: „Създава интерфейс с усвоят работата с CSS библиотеки Bootstrap или помощта на базови HTML/CSS шаблони “. Tailwind. Аргументи: В съвременната разработка на уеб приложения Мотив: Това предложение вече е отразено, но без да се разграничаването на стилове и свойства в CSS за визуално посочва изрично наименование на библиотеки, поради оформление трябва да съпътства изучаването на CSS библио- факта, че те биват често актуализирани и посочването на теки Bootstrap или Tailwind, тъй като те предоставят множес- наименование на софтуерен продукт, би довело до бър- тво креативни и оптимизирани решения за създаване на интуи- зото морално остаряване на ДОС. В проект на ДОС CSS тивен потребителски интерфейс. библиотеките посочени в становището са рефирани като Предложение за промяна и актуализация: Учениците да ус- UI библиотеки, например в „РУ 6.1. Познава различни UI воят работата с CSS библиотеки Bootstrap или Tailwind. библиотеки и компоненти за ускоряване на разработ- 3. Формулировка на ЕРУ: ЕРУ 6.3: „Конфигурира интер- ката“. фейс според потребителските нужди “. Аргументи: Анализирането на влиянието на структурата и Предложение за промяна и актуализация на РУ 91.: Уче- визуалните елементи върху потребителското поведение бива ниците да усвоят принципите за разпределение и управ- съпътствано от анализиране влиянието на анимациите и мик- ление на ресурсите в екипа – време, човешки и физи- роинтеракциите, тъй като динамичните елементи подобряват чески ресурси, спрямо целите и етапите на проекта. ориентацията и обратната връзка на потребителя. Мотив: тази материя е част от изучаването на цикъла на софтуерна разработка и различните методологии за раз- работка и в този смисъл вече е засегнато от РУ 9.1. – 1 – Организация/потребител № (вкл. начина на получаване на Бележки и предложения предложението) Предложение за промяна и актуализация: Учениците да ус- воят анализиране влиянието на анимациите и микроинтеракци- ите на потребителя с интерфейса. 4. Формулировка на ЕРУ: ЕРУ 9.1: „Изпълнява професио- нални дейности, свързани с жизнения цикъл на софтуерната разработка Аргументи: При познаване фазите на жизнения цикъл на софтуера, учениците трябва да могат да разпределят и управ- ляват ресурсите в екипа – време, човешки и физически ре- сурси, спрямо целите и етапите на проекта, като част от етапа .Анализ“. Предложение за промяна и актуализация: Учениците да ус- воят принципите за разпределение и управление на ресурсите в екипа – време, човешки и физически ресурси, спрямо целите и етапите на проекта. 5. Формулировка на ЕРУ: ЕРУ 12.2: „Реализира проект, ба- зиран на архитектура от микроуслуги, съгласно зададено изис- кване“. Аргументи: Микроуслугите са прекалено сложна архитек- тура за учениците. Изискват се познания за мрежова комуника- ция, DevOps и контейнери, което ги прави неприложими в учи- лищна среда. Предложение за промяна и актуализация: Учениците да ус- воят внедряването и наблюдаването на работата на примерен софтуерен продукт (напр. уеб приложение) в избрана облачна среда, без използване на микроуслуги. 6. Формулировка на ЕРУ: ЕРУ 12.4: „Прилага C1/CD pipelines за автоматизиране на процесите по изграждане, тест- ване и внедряване“. Аргументи: Тази тема изисква познания и инфраструктура, които надхвърлят възможностите на училищата. Инструменти като Jenkins, GitLab Cl и GitHub Actions предполагат DevOps умения и реални среди. Целта на обучението трябва да бъде ориентирана към проектно и компетентно базирано обучение, което да доведе до усвояване на основни програмни концеп- ции, и изграждане на логическо мислене в учениците. Предложение за промяна и актуализация: Учениците да се научат да описват основните етапи на процеса по изграждане, – 2 – Приети/ Мотиви неприети Предложение за промяна и актуализация на РУ 12.2: Учениците да усвоят внедряването и наблюдаването на работата на примерен софтуерен продукт (напр. уеб при- ложение) в избрана облачна среда, без използване на микроуслуги. Мотив: микроуслугите като концепция, се търси от биз- неса, в т.ч. и от начинаещи (джуниър) кадри. Нещо по- вече, през последните години в регламента на Национал- ната олимпиада по ИТ, микроуслугите са добавени като очакван компонент в проекти в старшата категория. Съ- ществуват достатъчно възможности концепцията да се разгледа по подходящ за учениците начин. Също, това ЕРУ е очаквано само за по-високата – трета степен и е важен компонент от по-високата степен на професията. Предложение за промяна и актуализация на РУ 12.4: Учениците да се научат да описват основните етапи на процеса по изграждане, тестване и внедряване на соф- туер и да могат да демонстрират ръчно изпълнение на тези стъпки в учебна среда. Мотив: внедряването на софтуер е важна част от жизне- ния цикъл на софтуерната разработка и премахването му би довело до сериозен дефицит в подготовката на учени- ците. Това е търсено умение от страна на бизнеса, а също така съществуват редица инструменти, включително и безплатни, с които може да се реализира в опростен ва- риант, подходящ за ученици. Колкото до предложената формулировка, това е нещо, което вече се покрива от други предложени в проекта на ДОС. Предложения за допълване с конкретни технологии и протоколи (т.7) Мотив: Споменаването им крие риск от моралното оста- ряване при скорошна тяхна промяна/замяна от подоб- рени технологии. Въпреки това би са добавени конк- ретни знания и умения в РУ 11.2 относно автентикация и оторизация Организация/потребител Приети/ № (вкл. начина на получаване на Бележки и предложения Мотиви неприети предложението) тестване и внедряване на софтуер и да могат да демонстрират Предложения за включване на текстове за използване на ръчно изпълнение на тези стъпки в учебна среда. библиотеки за измерване и сравнение на ефективността 7. Предложения за актуализация на проекта на ДОС: на anropHTMH(benchmarking). А. Да се споменат конкретно съвременни уеб протоколи за Мотив: Относно сравнението на производителността автентикация и управление на достъп – JWT, OAuth. Те са (benchmarking), това е похват, който по-скоро следва да ключови при изграждане на реални приложения и същевре- се демонстрира от учители при усвояване на конкретни менно могат да бъдат използвани и в учебна среда. теми от теорията и практиката и не е нужно да се посочва Б. Да се добави ЕРУ, което в смисъла на обучението в учи- изрично в текста на ДОС. лищна среда да има за цел да доразвие и доизгради напреднали умения за работа с алгоритми и структури от данни. То от своя страна ще развие логическото мислене и уменията за решаване на широк набор от задачи(ргоЬ1ет solving skills), нужни в днешния свят на Индустрия 4.0 и Индустрия 5.0. Новата ЕРУ да включва: 1. Прилагане на алчни алгоритми и рекурсия(и алгоритми с пълно изчерпване) за решаване на оптимизационни задачи. Ученикът да обяснява принципа на работа и да анализира ко- ректността на решенията. 2. Реализирането на алгоритми с използване на графи и дървета за представяне и търсене на данни. Структурите от данни граф и дърво са основополагащи за реалните софтуерни системи – файлови системи, навигационни карти, социални мрежи. Ще развият в учениците пространствено мислене и да могат да моделират зависимости и йерархии. 3. В проекта на ДОС липсва и използване на библиотеки за измерване и сравнение на ефективността на anropHTMH(benchmarking). Това е важен практически еле- мент, който насърчава аналитичното мислене – защо дадено решение е по-бързо и по– ефективно, както и развива самосто- ятелния експериментален подход. Може да се реализира с дос- тъпни инструменти, които са вградени в езиците за програми- ране, както и с библиотеки, даващи сумирани резултати(нап- ример BenchmarkDotNet, rich-bench и др.) В заключение, предлаганите промени целят адаптиране на стандарта към реалните възможности на учениците. Темите за DevOps и контейнеризация следва да се разглеждат на концеп- туално ниво, докато фокусът в професионалното образование трябва да бъде върху алгоритмичното мислене, структуриране – 3 – Организация/потребител Приети/ № (вкл. начина на получаване на Бележки и предложения неприети предложението) на кода и основите на проектирането на приложения. Предло- женото за нова ЕРУ възстановява баланса между теория и практика и осигурява стабилна основа за бъдещо надграждане в по-високи степени на обучение, когато в учениците е развито аналитично и логическо мислене, и е изграден навика за самос- тоятелност. 2. Иван Илиев – учител Учител съм от МГ „Акад. Кирил Попов“ Пловдив, препода- Частично МГ „Акад. Кирил Попов“, Пловдив ващ 7 години по професията „Системен програмист“, като пре- приети Получено по е-поща поръката ми е да се включат следните компоненти към ДОС на бъдещата професия „Разработка на софтуер“: ЕРУ 14: Създаване на софтуер за вградени системи ЕРУ 15: Създаване на игри Описание на единиците, които предлагам: За ЕРУ 14 са същите, каквито в момента при „Системен програмист“ са при модул Вградени системи. Ако се приеме и ЕРУ 15, ще опиша подробно следващите точки: – изучаване на data oriented design – изучаване на Entity-Component-Systems (горните две парадигми се различават от ООП, като допри- насят за бързината на приложенията и дават нови възможности при проектирането на софтуер) – развитие на абстрактното мислене и работа в екип, за- щото направата на игра включва познания по операционни системи, аудио и видео обработка, асинхронен и паралелен код, познания по OSI модела (за направата на мултиплеър), ал- горитмично мислене, както и познания по графичен дизайн и рендирането на самия екран. Минимум часове – 72 часа теория и 72 часа практика. Който желае, може да увеличи часовете чрез РПП. Допълнителни мотиви от мен: Учениците ще бъдат подготвени в изграждането на почти всякакъв тип софтуер (без операционни системи или изкуствен интелект*), като по този начин няма да бъдат засегнати от бъ- дещите тенденции на големите компании, а и ще имат шанс да бъдат не просто техни работници, а конкурентни, изграждащи собствен бизнес. – 4 – Мотиви Създава се ново ЕРУ 13 „Програмиране на вградени мик- рокомпютърни системи“ Мотив: Областта е релевантна, има устойчива традиция в ПОО (професия „Системен програмист“). Секторният съ- вет не възразява и темата е ключова за хардуерно-софту- ерна интеграция. Добавя се като ново ЕРУ за III СПК. Предишното ЕРУ 13 се преномерира на ЕРУ 14. ЕРУ Създаване на игри – не се приема Мотив: Разработването на игри изисква комплекс от зна- ния (графика, звук, OS, мрежи), който надхвърля рамката и целите на професията. Основните принципи (работа с графики, асинхронност и др.) вече се покриват от други ЕРУ. Добавянето би разширило необосновано обхвата на професия „Разработка на софтуер“. Организация/потребител Приети/ № (вкл. начина на получаване на Бележки и предложения Мотиви неприети предложението) * Познанията на ниско ниво (С и С++), които се изискват при направата на предложените две допълнителни разновид- ности софтуер (вградени системи и игри), освен че ще ги нап- равят разбиращи от хардуер и софтуер, биха им отворили врати и за писането на драйвери или допринасянето за разви- тието на операционните системи, защото ще имат основата. Изкуственият интелект си има своя отделна професия, изискваща задълбочаване (и предварителни познания), така че липсата му тук е желателна и няма да разводни и без това важ- ната основа, която се преподава. Разбира се, че учителят ще има свободата да избира езика за програмиране – такъв, който е подходящ за модулите и вла- дее най-добре. При вградените системи може да се използва С, С++ или Rust. При създаването на игри подходящи езици са C/C++/C#/GDScript, както и комбинация от библиотеки, пи- сани на С/С++ или готови енджини като Godot/Unity/Unreal. – 5 –

Други данни

В регистъра от
02.11.2026
Последно в регистъра
03.11.2026

Документи