Учебен План 4810301 Приложно програмиране

Share on facebook
Share on twitter
Share on linkedin

ЦЕНТЪР ЗА ПРОФЕСИОНАЛНО ОБУЧЕНИЕ

КЪМ „ХАРМОНИЯ 1”ООД

УЧЕБЕН ПЛАН

ЗА НАЧАЛНО ПРОФЕСИОНАЛНО ОБУЧЕНИЕ С

ПРИДОБИВАНЕ НА ТРЕТА СТЕПЕН НА ПРОФЕСИОНАЛНА КВАЛИФИКАЦИЯ

Професионално направление Компютърни науки  Код:481
Професия Приложен програмист  Код: 481030
Специалност Приложно програмиране Код: 4810301
Степен на професионална квалификация трета  

 

 

Очаквани резултати от обучението:

по ДОС за придобиване на квалификация по професии, публикувани в ДВ от началото на 2016 г.

ЕРУ 1 Здравословни и безопасни условия на труд (ЗБУТ) и опазване на околната среда

Резултат от учене

1:1

 

Създава организация за осигуряване на здравословни и безопасни условия на труд на работното място
Знания • Познава разпоредбите за осигуряване на здравословни и безопасни условия на труд на работното място

• Познава средствата за сигнализация и маркировка за осигуряване на ЗБУТ

• Представя информация за нормативните разпоредби, касаещи осигуряването на здравословни и безопасни условия на труд за конкретната трудова дейност и за свързаните трудови дейности

• Представя информация за рисковете за здравето и безопасността при извършваната трудова дейност и свързани с нея трудови дейности

• Представя информация за мерките за защита и средствата за сигнализация и маркировка за осигуряване на ЗБУТ

• Познава разпоредбите за провеждане на инструктаж на работещите по правилата за осигуряване на здравословни и безопасни условия на труд

Умения

 

• Участва в прилагането на мерките за предотвратяване, намаляване и ограничаване на рисковете за здравето и безопасността на работното място при различни трудови дейности

• Инструктира работещите по правилата за осигуряване на здравословни и безопасни условия на труд (ако е приложимо)

• Контролира прилагането на необходимите мерки за защита

• Използва средствата за сигнализация и маркировка за осигуряване на ЗБУТ

Компетентности

 

• Създава организация за изпълнение на трудовите дейности при спазване на нормативните разпоредби за осигуряване на здравословни и безопасни условия на труд

• Участва в процеса за осигуряване на безопасност при работата

• Изпълнява трудовата дейност при спазване на необходимите мерки за осигуряване на безопасност

• Проявява отговорност към останалите участници в трудовия процес

Резултат от учене

1.2:

Участва в създаването на организация за осъществяване на превантивна дейност по опазване на околната среда
Знания • Познава разпоредбите за опазване на околната среда

• Описва основните изисквания за разделно събиране на отпадъци

• Познава разпоредбите за съхранение, използване и изхвърляне на опасни продукти

Умения

 

• Организира сортирането/съхранението на опасни продукти и излезли от употреба материали, консумативи и др. при спазване технологията за събиране и рециклиране
Компетентности

 

• Анализира възможните причини за екологично замърсяване
Резултат от учене

1.3:

Създава организация за овладяването на рискови и аварийни ситуации
Знания • Описва основните рискови и аварийни ситуации • Описва основните изисквания за осигуряване на аварийна безопасност

• Обяснява основните стъпки за действие при аварии и аварийни ситуации

• Обяснява видовете травми и методите за оказване на първа помощ

• Познава реда за разследване на трудови злополуки

Умения

 

• Използва терминологията, свързана с аварийните ситуации

• Контролира спазването на мерките за осигуряване на пожарна и аварийна безопасност

• Контролира спазването на правилата за действие при аварии и аварийни ситуации

• Координира действията на работния екип при аварии и опасни ситуации

• Предотвратява опасните ситуации, които могат да възникнат по време на работа

• Оказва първа помощ на пострадали при авария

• Организира спазването на правилата за действие при аварии и аварийни ситуации

Компетентности

 

• Анализира рисковете за възникване на пожар или аварийна ситуация, прави предложения за актуализиране на вътрешнофирмените правила за пожарна и аварийна безопасност

• Участва в създаването на организация за овладяването на възникнал пожар и/или авария в съответствие с установените вътрешнофирмени правила за пожарна и аварийна безопаснос

ЕРУ 2 Икономика  
Резултат от учене

2:1

Познава основите на пазарната икономика
Знания • Познава общата теория на пазарната икономика

• Запознат е с основните икономически проблеми

• Знае ролята на държавата в пазарната икономика

• Познава видовете икономически субекти в бизнеса

Умения

 

• Информира се за успешни практически примери за управление на различни бизнес начинания
Компетентности

 

• Способен е да идентифицира успешни практически примери за управление на бизнес начинания, като обясни ролята на всеки икономически субект, ангажиран в бизнеса
Резултат от учене

2.2:

Познава характеристиките на дейността на фирмата
Знания • Познава основите на пазарното търсене и пазарното предлагане

• Дефинира икономически понятия – приходи, разходи, печалба, рентабилност и др.

Умения

 

• Обяснява икономически понятия в контекста на дейността на фирмата
Компетентности

 

• Способен е да анализира икономическите принципи в контекста на дейността на фирмата
ЕРУ 3 Предприемачество  
Резултат от учене

3.1:

Познава основите на предприемачеството
Знания • Знае същността на предприемачеството

• Знае видовете предприемачески умени

Умения

 

• Анализира практически примери за успешно управление на дейността на фирмата
Компетентности

 

• Предлага нови идеи за успешно изпълнение на трудовите дейности
Резултат от учене

3.2:

Формира предприемаческо поведение
Знания • Познава характеристиките на предприемаческото поведение

• Знае видовете предприемаческо поведение

Умения

 

• Преценява необходимостта от промени, свързани с подобряване на работата
Компетентности

 

• Предлага решения за оптимизиране на трудовите дейности
Резултат от учене

3.3:

Участва в разработването на бизнес план
Знания • Познава основните елементи, изисквания и етапи при разработване на бизнес план

• Знае факторите на обкръжаващата пазарна сред

Умения

 

• Анализира възможностите за развитие на дейността на фирмата
Компетентности

 

• В екип разработва проект на бизнес план
ЕРУ 4 Организация на труда  
Резултат от учене

4.1:

Организира работния процес
Знания • Познава структурата на организацията, в която работи

• Познава методи за нормиране на работния процес

• Познава нормативните документи, свързани с упражняване на професията

• Познава изискванията за планиране на ресурси, свързани с работата

Умения

 

• Планира работния процес

• Съставя график на работните задачи

• Разработва и поддържа система за архивиране на клиентска база данни

• Планира и организира рекламни стратегии и кампании

Компетентности

 

• Ефективно организира работния процес

• Предлага и аргументира необходимостта от въвеждане на промени в работата

Резултат от учене

4.2:

Отговаря за разпределението на дейностите
Знания • Познава видовете трудови дейности

• Познава изискванията за качествено изпълнение на видовете трудови дейности • Познава начините за организация на дейностите в работния процес

Умения

 

• Организира трудовите дейности в съответната последователност

• Спазва етичните норми на поведение

• Съдейства за изграждането на етична работна среда

Компетентности

 

• Ефективно разпределя дейностите в работния процес

• Съдейства за създаване и поддържане на етична работна среда

ЕРУ 5 Комуникация и чужд език  
Резултат от учене

5.1:

Общува ефективно в работния екип
Знания • Познава отделните длъжности в екипа, техните взаимоотношения и йерархични връзки
Умения

 

• Комуникира в работен порядък с екипа и персонала
Компетентности

 

• Комуникира ефективно с всички участници в трудовия процес съобразно работния протокол

• Поема отговорности при работа в екип

Резултат от учене

5.2:

Води ефективна бизнес комуникация
Знания • Познава етичните норми на комуникацията

• Познава правилата за вербална и невербална комуникация

• Познава ефективното поведение при конфликти

• Познава правилата и изискванията за делова кореспонденция

Умения

 

• Разпознава и избягва конфликтни ситуации

• Съдейства за решаване на конфликтни ситуации

• Води делова комуникация – писмена и устна

• Събира и предлага необходимата информация за удовлетворяване изискванията на клиентите

Компетентности

 

• Провежда ефективна комуникация с потребителите съобразно индивидуалните им характеристики

• Провежда разговор с клиенти с цел консултиране и съгласуване на услуги

• Разбира и уважава изискванията на клиентите и защитава интересите на организацията

Резултат от учене

5.3:

Владее чужд език по професията
Знания • Познава професионалната терминология на чужд език
Умения

 

• Чете и разбира професионални текстове на чужд език (специализирана литература, техническа документация и др.)

• Ползва чужд език при търсене на информация от интернет и други източници

• Ползва чужд език (писмено и говоримо) при комуникация с партньори и клиенти

Компетентности

 

• Владее чужд език на ниво, позволяващо му да осъществява ефективна комуникация по професионални теми
ЕРУ 6 Електротехника и електроника  
Резултат от учене

6.1:

Разчита, изчислява и измерва електрически схеми
Знания • Познава процесите, законите и градивните елементи при постояннотокови електрически вериги

• Познава процесите, законите и градивните елементи при променливотокови електрически вериги

• Познава основните видове захранващи източници

• Познава методите и средствата за измерване на постоянно- и променливотокови величини

Умения

 

• Разчита електрически схеми

• Изчислява основни електрически величини чрез прилагане законите на електротехниката

• Измерва електрически величини

Компетентности

 

• Самостоятелно и прецизно изчислява и измерва основни електрически величини и анализира електрически схеми
Резултат от учене

6.2:

Разбира принципа на работа на електронните схеми
Знания • Познава технологиите, принципа на действие и режимите на работа на електронни градивни елементи

• Познава принципа на действие на основните аналогови устройства – генератор, усилвател, токоизправител, аналогово-цифров и цифрово-аналогов преобразувател

• Познава принципа на действие на цифровите компоненти – логически елементи, схеми от комбинационен и последователен тип

• Познава начините за измерване на електронни схеми с измервателни уреди

Умения

 

• Използва учебна, техническа и справочна литература

• Разчита характеристиките на електронни градивни елементи

• Разбира принципа на действие на електронни схеми с аналогови и цифрови устройства

• Измерва аналогови и цифрови сигнали в електронни схеми

Компетентности

 

• Самостоятелно намира и се запознава с каталожна информация за електронни елементи и схеми

• Самостоятелно разчита електронни схеми, като прилага иновативен подход

• Прецизно и точно измерва параметрите на електронни устройства, използва подходяща измервателна апаратура

ЕРУ 7 Информационни и комуникационни технологии  
Резултат от учене

7.1:

Познава съвременните информационни и комуникационни технологии
Знания Познава съвременните информационни и комуникационни технологии, които имат приложение в трудовите му дейности
Умения

 

Информира се за новости в областта на ИКТ, свързани с пряката работа
Компетентности

 

 
Резултат от учене

7.2:

Използва различни информационни и комуникационни технологии
Знания • Знае най-често използваните ИКТ в рамките на работния процес

• Познава специализираната терминология за работа с ИКТ

Умения

 

• Ползва програмни продукти и специализиран софтуер

• Изготвя, регистрира и архивира документи в електронен вид

Компетентности

 

• Самостоятелно работи с подходящо подбрани ИКТ съобразно спецификата на конкретната трудова дейност
ЕРУ 8 Математика  
Резултат от учене

8.1:

Извършва базов анализ на функции
Знания • Знае същността и ролята на функцията

• Знае основната математическа нотация за записване на функциите

• Познава инективната, сюрективната и биективната функция

• Разбира обратимостта на функцията

• Познава обратимите и необратимите функции и тяхната роля в програмирането • Познава характеристиките прекъснатост, непрекъснатост, ограниченост и неограниченост на функциите

• Знае начина за изобразяване на графика на функция върху правоъгълна координатна система

• Познава същността на концепцията за функция от по-висок ред

Умения

 

• Разпознава типа функция

• Намира обратни функции на прости функции

• Определя типа на основните функции – линейна, квадратична, експоненциална

• Разчита графика на функция, изобразена върху правоъгълна координатна система

Компетентности

 

• Самостоятелно решава задачи, свързани с използване на изучаваните функции

• Точно чертае функции върху правоъгълна координатна система

Резултат от учене

8.2:

Борави с основните математически понятия, срещани в дискретната математика (множества, функции, релации, булева алгебра и комбинаторика)
Знания • Знае функциите на комбинаториката

• Познава основните комбинаторни конфигурации

• Познава същността на понятието зад булевата алгебра

• Познава основните булеви операции

• Знае как се извършват основните булеви операции

• Познава същността на множествата и тяхната роля в програмирането

• Познава основните операции, извършвани с множества

• Разбира понятието функция, разгледано като изображение между две множества

• Разбира същността на релацията между два обекта

• Знае начините за изобразяване на релация чрез функция

• Познава основните свойства на релациите

Умения

 

• Борави с математическите нотации за множества

• Извършва базови операции върху множества

• Премества основни булеви изрази

• Определя свойствата на дадена релация • Извършва основни комбинаторни пресмятания

Резултат от учене

8.3:

Борави с основните математически понятия, срещани в Линейната алгебра (вектори и матрици)
Знания • Познава структурата вектор в линейната алгебра и нейната функция

• Познава основните характеристики на вектора

• Познава структурата матрица в линейната алгебра и нейната функция

• Познава основните характеристики на структурата матрица

• Знае основните операции, които могат да се извършват между вектори и матрици

• Познава понятието детерминанта на матрица

• Знае информацията, която дава детерминантата

• Знае алгоритъма за пресмятане на детерминанта

• Познава метода на Гаус като начин за решаване на система линейни уравнения и алгоритъма за прилагането му

Умения

 

• Извършва основни операции над вектори и матрици

• Пресмята детерминанта на матрица

• Решава система линейни уравнения чрез метода на Гаус

Компетентности

 

• Способен е самостоятелно и точно да решава задачи, включващи вектори, матрици и операциите над тях

• Способен е самостоятелно и точно да решава задачи, включващи пресмятане на детерминанта на матрица

• Способен е самостоятелно и точно да решава задачи чрез метода на Гаус

• Способен е самостоятелно и точно да решава задачи по програмиране, за които са необходими знания за вектори и матрици

Резултат от учене

8.4:

Борави с десетична, двоична и шестнадесетична бройна система
Знания • Познава същността и ролята на бройните системи

• Познава същността на основната бройна система, с която работи – десетичната бройна система

• Познава двоичната бройна система и нейните роля и приложение

• Познава приложението на двоичната бройна система в компютрите

• Знае основните операции в двоична бройна система

• Познава шестнадесетичната бройна система и нейното приложение в компютрите

• Знае общия начин за преобразуване на число от една бройна система в друга

Умения

 

• Разпознава запис в двоична и в шестнадесетична бройна система

• Преобразува записа на числа от една бройна система в друга – от десетична към двоична и обратно; от десетична към шестнадесетична и обратно

• Преобразува записа на числа от произволна бройна система към друга произволна бройна система

Компетентности

 

• Способен е да извърши основните побитови операции в двоична бройна система

• Способен е да преобразува записа на числа от една бройна система в друга, използвайки общия алгоритъм

ЕРУ 9 Алгоритми и структури от данни  
Резултат от учене

9.1:

Оценява сложността на алгоритми
Знания • Разбира понятието „сложност на алгоритъм“ и неговата роля

• Разбира какво измерва понятието „сложност на алгоритъм“ и чрез каква нотация се записва сложността на даден алгоритъм

• Познава математическата нотация „Big-Oh Notation“

• Разбира сложността на често срещаните операции, които се извършват в даден програмен език

• Знае същността на рекурсията

• Знае начина за намиране на сложност на рекурсивен алгоритъм

• Знае основните класове на сложност за един алгоритъм

Умения

 

• Оценява сложността на алгоритъм, използвайки Big-Oh Notation

• Прави разлика между бърз и бавен алгоритъм

• Разменя елементи в масив/списък

Компетентности

 

• Да има интуиция/очакване каква е сложността на често срещани фрагменти от код – цикли/вложени цикли

• Способен е да засече реалното време на работа на даден алгоритъм спрямо размера на входа

• Способен е да определи нуждата от по-бърз алгоритъм

• Разбира „Big-Oh“ нотацията на по-известните алгоритми

• Способен е да намери екстремален (максимален/минимален) елемент в масив/списък

• Способен е да реализира един и същ алгоритъм както чрез итерация (цикъл), така и чрез рекурсия

Резултат от учене

9. 2:

Прилага алгоритми за сортиране
Знания • Познава процеса на „сортиране“ на дадена поредица от елементи

• Знае характеристиките на един алгоритъм за сортиране относно стабилността

• Познава различни видове алгоритми за сортиране спрямо тяхната сложност

Умения

 

• Имплементира и използва базовите алгоритми за сортиране

• Използва API-то на дадения език, за да сортира

• Разбира разликата между бързо и бавно сортиране

Компетентности

 

• Способен е да направи тест върху голямо количество от данни
Резултат от учене

9.3:

Прилага алгоритми за търсене
Знания • Разбира процеса на търсене

• Познава алгоритъма за двоично търсене

• Знае с каква сложност работи алгоритъмът за двоично търсене и какви са неговите предварителни изисквания

Умения

 

• Имплементира наивен (прост) алгоритъм за търсене

• Имплементира двоично търсене

Компетентности

 

• Решава проблеми, използвайки алгоритмите за търсене

• Решава проблеми, използвайки алгоритмите за двоично търсене

• Способен е да търси нещо и знае с каква сложност се случва търсенето, използвайки наивен подход за търсене

Резултат от учене

9.4:

Използва линейни структури от данни
Знания • Знае същността на структурите от данни и тяхната роля в програмирането

• Познава характеристиките на линейните структури от данни и основните операции върху тях

• Знае същността на масива като линейна структура от данни, неговите основни характеристики, операции и тяхната сложност

• Знае същността на вектора като структура от данни, неговите основни характеристики, операции и тяхната сложност

• Разбира понятието амортизирана сложност

• Познава свързания списък като линейна структура от данни, неговите основни характеристики, операции и тяхната сложност

• Изброява разликите и приликите между масив, вектор и свързан списък

• Разбира „опашката“ като линейна структура от данни, като назовава нейните основни характеристики, операции и тяхната сложност

• Знае същността на „Стека“ като линейна структура от данни, неговите основни характеристики, операции и тяхната сложност

• Познава съответните имплементации на тези линейни структури от данни в даден език за програмиране

Умения

 

• Имплементира всички основни структури от данни по ефективен начин
Компетентности

 

• Ефективно използва линейни структури от данни за решаване на конкретен проблем
Резултат от учене

9.5:

Използва речници и множества като структури от данни
Знания • Познава асоциативния списък като структура от данни, неговите функции и приложения

• Знае различните начини за имплементация на асоциативен списък и разбира сложностите на операциите спрямо имплементацията

• Изброява различията в характеристиките на тези имплементации

• Познава най-често срещаните проблеми при имплементация на HashMap

• Разбира понятието за хешираща функция

• Разбира множеството като структура от данни и неговите основни операции и характеристики

• Знае различните начини за имплементация на множество и сложността на операциите спрямо имплементацията

• Познава различията в характеристиките на тези имплементации • Разграничава множество и асоциативен списък от другите линейни структури от данни

Умения

 

• Използва стандартните имплементации на структурите от данни в зависимост от програмния език

• Ориентира се спрямо обектния модел на езика

• Осъществява добавяне в Map или Set при създаване на нов тип

Компетентности

 

• Способен е да имплементира асоциативен списък и множество като структура от данни

• Способен е самостоятелно да реши даден проблем, преценявайки какви структури от данни да използва

• Развива интуиция за имплементацията на асоциативен списък чрез хеш таблица или дървовидна структура

• Развива интуиция за имплементацията на множество чрез хешираща функция или дървовидна структура

Резултат от учене

9.6:

Използва графите като структури от данни заедно с основните алгоритми върху тях
Знания • Знае същността на структурата от данни граф и нейното приложение

• Познава основните операции, които се извършват в един граф

• Познава различните начини за представяне на граф в програмирането и сложността на операциите спрямо избора на представяне

• Разбира идеята за обхождане на граф

• Познава различните начини за обхождане на граф

• Разбира същността на идеята за намиране на най-кратък път в граф

• Разбира значението на теглата на ребрата • Познава различните алгоритми за намиране на най-кратки пътища

• Разбира процеса на топологично сортиране на един граф с посока на ребрата и без цикли и приложението на съответния алгоритъм

Умения

 

• Представя различни видове графи и имплементира основните алгоритми върху тях

• Моделира задачи чрез използване на основни алгоритми върху графи

Компетентности

 

• Способен е да имплементира граф като структура от данни

• Решава проблеми, моделирайки ги чрез графи и използвайки някой от основните алгоритми върху тях

Резултат от учене

9.7:

Използва дървета и пирамиди като структури от данни заедно с основните алгоритми върху тях
Знания • Знае същността, характеристиките и приложенията на дървото като структура от данни

• Познава основните операции, извършвани върху дървото като структура от данни

• Знае начина за представяне на дървото като структура чрез програмен език и сложността на операциите спрямо представянето • Разбира характеристиката на дървото „удобна за рекурсия структура от данни“

• Познава същността на двоичното дърво като структура от данни и неговите характеристики

• Познава сложността на операциите в дървото и най-вече на търсенето

• Разбира идеята за балансирано двоично дърво за търсене

• Познава пирамидата като дървовидна структура от данни, нейните характеристики и приложения

• Знае начина за представяне на пирамидалните структури

Умения

 

• Различава балансирано двоично дърво за търсене от стандартното двоично дърво за търсене

• Локализира дървовидни структури във всекидневната компютърна употреба – HTML, файлова система и т.н.

• Представя различни видове дървета и имплементира основните алгоритми върху тях

Компетентности

 

• Разрешава проблеми, моделирайки ги чрез дървета и използвайки някой от основните алгоритми върху тях

• Разрешава проблеми, използвайки дървовидни структури от данни

• Способен е да имплементира двоично дърво за търсене

• Способен е да имплементира балансирано дърво за търсене

• Способен е да имплементира пирамидална структура от данни

ЕРУ 10 Модели на програмиране  
Резултат от учене

10.1:

Познава същността на обектноориентирания модел
Знания • Познава същността на обектноориентирания модел

• Разбира основната идея зад този модел

• Познава основните понятия в обектноориентираното програмиране

• Разбира връзката между типовата система на даден език за програмиране и неговия обектен модел

• Знае общото между типове, класове и обекти

• Разбира термина „предаване на нещо по референция“

• Знае разликата между „референтна“ и „примитивна“ стойност

• Разбира абстракцията и нейното приложение в обектноориентирания модел • Знае начина за изграждане на абстракция

Умения

 

• Използва обектноориентиран език за програмиране

• Посочва грешки в чужд код, написан в обектен стил

Компетентности

 

• Способен е да решава проблеми в обектноориентиран стил

• Проучва начина на работа на различни стандартни библиотеки, като разбира какви способи за абстракция са използвани при имплементацията

Резултат от учене

10.2:

Познава същността на функционалния модел
Знания • Знае същността на чистата функция и нейното приложение

• Разбира понятието страничен ефект и посочва къде се среща

• Знае същността на функцията от по-висок ред и нейното приложение

• Разбира композицията на функции и нейната цел

• Разбира основните функции от по-висок ред – map, filter, reduce

• Знае същността на lambda (анонимна) функцията и нейното приложение

• Обяснява термина рекурсия

Умения

 

• Пише без променливи/for цикъл

• Пише с използването на рекурсия

• Използва функции от по-висок ред и анонимни функции за често срещани операции, за които трябва цикличен оператор/условен оператор (for/if)

• Пише чисти функции и разделя кода на чиста/нечиста част (доколкото е възможно и го позволява езикът)

• Структурира кода така, че функциите със страничен ефект да са само на необходимите места

Компетентности

 

• Разрешава проблем, използвайки функционален стил

• Способен е да идентифицира във вече работеща програма/проект кои части се състоят от чисти функции и кои части се състоят от функции със странични ефекти

ЕРУ 11 Софтуерна разработка  
Резултат от учене

11.1:

Използва различни видове операционни системи
Знания • Знае същността, приложението и ползите на операционната система

• Познава най-често използваните видове операционни системи, освен посочените Linux, Mac OS, Windows

• Знае структурата на една операционна система

• Знае начини за инсталиране на софтуер върху операционна система

• Разбира системи за достъп в различните операционни системи

• Разбира разликите между процес и програма

Умения

 

• Инсталира различни ОС

• Работи с ОС без графична среда – чрез терминал

• Навигира и редактира файлове чрез конзолен редактор

• Инсталира и конфигурира софтуер на дадена ОС чрез използване на пакетни мениджъри

Компетентности

 

• Способен е да администрира операционна система

• Способен е да се справя с различни проблеми, свързани с конфигуриране и инсталиране на софтуер

Резултат от учене

11.2:

Познава устройството на компютъра
Знания • Разбира функциите на основните компютърни компоненти и тяхното взаимодействие

• Познава основни интерфейси и свързани с тях протоколи (USB, Ethernet, VGA, HDMI, PCI, SATA, DVI, и др.)

Умения

 

• Свързва и конфигурира периферни устройства с компютър

• Прави основна профилактика на компютърна система

Компетентности

 

• Способен е да добавя и настройва периферни устройства
Резултат от учене

11.3:

Разбира разликата между среда за разработка и текстов редактор
Знания • Знае същността на средата за разработка и тази на текстовия редактор

• Знае връзката между езици и технологии и препоръчителни среди и редактори

• Знае основните операции в текстов редактор и в среда за разработка

• Познава процеса на работа на интегрираната среда за разработка, когато стартира програма

Умения

 

• Използва конзолен текстов редактор за работа с операционни системи (UNIX и др.)

• Използва средата за разработка за отстраняване на грешки (debug)

• Прави базово рефакториране на кода, използвайки инструментите, предоставени му от средата или редактора

• Модифицира средата или редактора за постигане на по-голяма ефективност

Компетентности

 

• Способен е да използва ефективно поне една среда за разработка или поне един текстов редактор

• Преценява спрямо конкретната ситуацията дали да използва текстов редактор, или среда за разработка

Резултат от учене

11.4:

Развива интуиция за процес на компилация, процес на интерпретация, междинен код и виртуални машини за изпълнение на код
Знания • Разбира термина компилация

• Разбира термина интерпретация

• Разбира термина compile-time error

• Разбира термина run-time error • Разбира термините междинен код и виртуална машина

• Разбира термина израз/expression в даден език за програмиране

• Разбира термина statement в даден език за програмиране

• Разбира управлението на паметта при компилатори и интерпретатори и виртуални машини

Умения

 

• Разграничава процес на компилация, интерпретация и пускане на виртуална машина спрямо езика, който използва

• Използва REPL, за да тества фрагменти по даден код

Компетентности

 

• Способен е да пише на поне един език, който се компилира

• Способен е да пише на поне един език, който се интерпретира

Резултат от учене

11.5:

Разбира процеса на търсене и отстраняване на грешки и процеса на „рефакториране
Знания • Познава процеса на debug – търсене на грешки, използвайки даден инструмент

• Познава средства за debug в дадено IDE – break points, stepping in and stepping out of functions

• Познава същността на процеса на рефакториране

• Познава средства за базово рефакториране в дадено IDE

Умения

 

• Използва инструменти за debug (отстраняване на грешки), за да открива причини за странно или неправилно поведение на програмата

• Използва инструментите за базово рефакториране

• Проследява логиката на кода и открива проблеми в него

Компетентности

 

• Способен е да открива и анализира причините за неправилно поведение в по-голям проект
Резултат от учене

11.6:

Използва релационни бази от данни
Знания • Разбира нуждата от бази от данни

• Познава различни типове бази от данни: релационни, мрежови, key-value stores

• Познава структурата на релационни бази от данни

• Познава различните видове релации – 1:1, 1:N, N:M

• Разбира разликата между DDL и DML заявки

• Разбира различни CRUD заявки – SELECT, INSERT, UPDATE, DELETE

• Разбира идеята за JOIN на таблици в база от данни

• Познава видове JOINs

• Знае различните типове от данни

Умения

 

• Дафинира таблици по зададен модел на данни

• Създава заявки (например SQL) за: въвеждане, изтриване и промяна на данни • Създава SQL заявки за справки: SELECT, JOIN, UNION

• Опраделя вида на връзката между таблици – 1:1, 1:N, N:M

Компетентности

 

• Способен е да създава, моделира и работи с база от данни

• Способен е да създава софтуер, който използва база от данни

Резултат от учене

11.7:

Разбира същността на клиент-сървърни архитектури
Знания • Разбира концепцията за клиент-сървърна архитектура

• Познава приложението на клиент-сървърната архитектура

• Разбира концепцията за протокол за комуникация между даден клиент и сървър

• Разбира начина на свързване на клиент-сървърната архитектура с бази от данни – „трислойна“ архитектура

Умения

 

• Реализира проста клиент-сървър архитектура

• Разпознава вече съществуваща клиент-сървър архитектура

Компетентности

 

• Способен е да създава и надгражда софтуер, използващ клиент-сървър архитектура

• Определя коя архитектура е най-подходяща в конкретен случа

Резултат от учене

11.8:

Познава различни начини за комуникация между системи
Знания • Познава същността на протокола за комуникация между системи и разбира нуждата от тях

• Познава OSI модела

• Познава основните протоколи за комуникация от по-ниско ниво – TCP/UDP • Познава основни протоколи за комуникация на „приложно“ ниво – HTTP • Познава формати, чрез които две системи могат да разменят комуникация: Binary, Structured Text Format

• Разбира „service oriented“ архитектурата и нейното приложение

Умения

 

• Разграничава отделни софтуерни системи и протокола/формата, по който те комуникират

• Сериализира и десериализира данни от и към най-популярните текстови формати (JSON, XML)

Компетентности

 

• Способен е да създава и надгражда софтуер, използващ клиент-сървър архитектура
Резултат от учене

11.9:

Разбира конкурентното програмиране – нишки, процеси, асинхронност
Знания • Разбира същността на термина „процес“

• Разбира изпълнението на дадена програма

• Разбира значението на термина „блокираща операция“

• Познава операциите, които са блокиращи, и тяхното влияние върху процеса

• Познава видовете проблеми при разработване на сървър за клиент-сървърно приложение

• Познава видовете проблеми при разработка на потребителски интерфейс

• Знае значението на термина „нишка“ и неговата свързаност с понятието за процес • Познава връзката между нишките, процесите, както и броя на процесорите в системата

• Разбира управлението на нишките от програмата и от операционната система • Разбира концепцията за споделена памет между различни нишки

• Разбира проблемите за разрешаване при използване на нишки: Race conditions, Deadlocks, Livelocks, Starvation

• Разбира концепциите за синхронизация и заключване

• Познава начина за асинхронизиране на блокираща операция

• Знае начините за синхронизиция и правилно заключва при боравене с нишки

Умения

 

• Синхронизира множество асинхронни процеси

• Борави с многонишков код

Компетентности

 

• Способен е да създава и надгражда софтуер, използващ асинхронни операции
ЕРУ 12 Работен процес  
Резултат от учене

12.1:

Владее основните процеси на софтуерно тестване
Знания • Разбира нуждата от тестване на софтуера • Разбира основните правила и характеристики на тестването

• Разбира разликите между различните видове тестове (Unit testing, Integration testing, Functional testing)

• Разбира работата на различните тестови framework

• Разбира разликата между ръчно и автоматизирано тестване

Умения

 

• Провежда ръчни тестове, за да идентифицира проблеми

• Пише различни видове тестове (unit тестове, functional тестове, integration тестове)

• Превръща user stories в тестове

• Използва тестовете като форма на документация на даден код (например библиотека)

Компетентности

 

• Способен е да тества ефективно и автоматизирано софтуерен проект
Резултат от учене

12.2:

Използва методологии за разработка на софтуер
Знания • Познава общия процес на разработка на софтуер и Value-chain (верига на добавената стойност)

• Знае различните роли, които влизат в разработката на даден софтуер (бизнес анализатори, програмисти, системни администратори, специалисти по контрол на качеството, проектни мениджъри, представители на клиентите (на 3 нива – бизнес, техническо, технологично)

• Познава и разбира същността на гъвкавите и негъвкавите методологии за разработка на софтуер, както и идеи зад тях

• Изброява примери за употреба (и съответните плюсове и минуси) от тези методологии

• Разбира значението и приложението на user stories

Умения

 

• Прави дизайн на дадена система/feature/част, преди да бъде написана като код
Компетентности

 

• Работи в екип по софтуерен проект, спазвайки различна методология за разработване на софтуер

• Поема определена роля в даден софтуерен процес със съответната методология

• Аргументира се за използването на дадена софтуерна технология в конкретни случаи

Резултат от учене

12.3:

Създава софтуерна документация
Знания • Познава базови инструменти за писане на документация

• Познава системи за генериране на информация

• Разбира процесите в системата по графично описание

Умения

 

• Създава и поддържа документация в екип

• Описва конкретен софтуерен проект

Компетентности

 

• Способен е да документира даден софтуер

• Владее систематичен подход към документация

• Детайлно описва документация за инсталиране и стартиране на проекта

• Чете и разбира ефективно дадена софтуерна документация

Резултат от учене

12.4:

Използва системи за контрол на версията на изходния код
Знания • Разбира разликата между централизирана и децентрализирана source control/version control система (svn/git)

• Познава начините за работа с основните source control/version control системи

• Разбира понятията commit, branch, merge, push и pull в контекста на source/version control системата, която използва

• Разбира понятието конфликт в контекста на програмирането и знае методи за преодоляването на конфликти

• Познава начини за интеграция на source/version control системи в среди за разработка

• Познава добри практики, свързани с процеса на поддържане на source/version control системи

Умения

 

• Използва системите през графичен и конзолен потребителски интерфейс

• Работи със source/version control hosting service

Компетентности

 

• Работи в екип, използвайки source/version control система

• Избира подходящата source/version control система според нуждите на екипа и проекта

Резултат от учене

12.5:

Прилага процес на управление на задачите
Знания • Разбира необходимостта от управление на софтуерната разработка и основни методологии за това

• Разбира идеята зад това да има „задачи“ в разработката на един софтуер

• Знае нужните реквизити за една задача (описание, приоритет, свързани задачи, поемане на отговорност за задача)

• Разбира основните състояния на една задача (Backlocked, Pending/Todo, Doing, For Review, Done)

• Разбира концепцията за „блокиране“ на задача от друга задача

Умения

 

• Ориентира се в даден софтуер за task management

• Работи с примерна система за task management

Компетентности

 

• Управлява обема работа целесъобразно и адекватно спрямо крайните резултати

• Способен е да преведе дадена задача през целия ѝ цикъл на състояния

• Комуникира с колеги и външни специалисти, когато има неясноти или неща, които блокират

Резултат от учене

12.6:

Работи с чужд код
Знания • Познава инструменти за ориентиране в чужд код
Умения

 

• Ориентира се в чужд код

• Чете тестове като документация на чужд код

• Работи с чуждо API

• Ориентира се в документацията на чужд код

• Извършва прегледи на кода (code reviews)

Компетентности

 

• Способен е да поддържа и развива чужди проекти

• Лесно и бързо се ориентира и използва чужди библиотеки

ЕРУ 13 Уеб програмиране  
Резултат от учене

13.1:

Разработва Уеб Frontend
Знания • Разбира термините URI и URL • Разбира HTTP като протокол за комуникация

• Познава семантичното структуриране на уебстраница чрез HTML

• Познава стилизирането и подреждането на страница чрез CSS

• Разбира механизма, по който чрез форми се изпраща информация към сървъра

Умения

 

• Структурира семантични HTML документи

• Създава комуникация от вида Сървър -> HTML страница -> Форма с данни -> Сървър

Компетентности

 

• Способен е да имплементира уебстраница по зададен дизайн

• Способен е да извършва сървърна комуникация чрез форми

• Разработва, създава и визуално репрезентира уебстраници и уебсайтове

Резултат от учене

13.2:

Разработва сървърен уебсофтуер
Знания • Разбира различните HTTP заявки като начин за сървърна комуникация

• Разбира MVC като архитектура за изграждане на сървърен уебсофтуер

• Разбира концепцията зад REST комуникацията

• Знае основните SQL заявки за вземане и обработване на данни

Умения

 

• Реализира комуникация с база данни

• Обслужва различни HTTP заявки

• Реализира CRUD операции през SQL

• Различава сървър и уебсайт

Компетентности

 

• Разработва динамичен уебсайт – сървърна и клиентска част
ЕРУ 14 Дизайн и моделиране  
Резултат от учене

14.1:

Моделира дизайн на софтуер
Знания • Знае предимствата и недостатъците на всеки един от подходите при моделиране чрез обектен модел – наследяване срещу композиция • Знае начините за изграждане на библиотека/Framework/API

• Разбира разликата между различните подходи за дизайн и моделиране на софтуер

Умения

 

• Създава предварителен дизайн на софтуер без писане на код

• Моделира API – публична част и имплементационна част

• Чертае и разчита клас диаграми – комуникиране и релации

• Имплементира прототип по зададен дизайн

Компетентности

 

• Способен е да създава, моделира и имплементира често срещани и използвани абстракции
Резултат от учене

14.2:

Създава дизайн на софтуер
Знания • Познава основните компоненти за изграждане на библиотека/софтуерна рамка/API
Умения

 

• Създава прототип по зададен дизайн по различни възможни методи
Компетентности

 

• Способен е да създаде дизайн и модел на софтуер без конкретна имплементация

 

 

Видове професионална подготовка

учебни предмети

Брой учебни часове
Раздел А. Задължителни учебни часове
ТЕОРЕТИЧНО ОБУЧЕНИЕ
Раздел А1. Обща професионална подготовка
  Здравословни и безопасни условия на труд  
  Икономика  
  Предприемачество  
Раздел А2. Отраслова професионална подготовка
  Чужд език по професията – английски език  
  Информационни и комуникационни технологии  
  Увод в програмирането  
  Програмиране  
  Увод в обектно-ориентираното програмиране  
  Увод в алгоритмите и структурите от данни  
  Обектно-ориентирано програмиране  
  Бази данни  
  Разработка на софтуер  
Раздел А3. Специфична професионална подготовка
  Програмиране за вградени системи  
  Математически основи на програмирането  
  Операционни системи  
  Конкурентно програмиране  
  Алгоритми и структури от данни  
  Функционално програмиране  
  Интернет програмиране  
  Софтуерно инженерство  
ПРАКТИЧЕСКО ОБУЧЕНИЕ
Раздел А2. Учебна практика по отраслова професионална подготовка:
  Увод в програмирането  
  Програмиране  
  Увод в обектно-ориентираното програмиране  
  Увод в алгоритмите и структурите от данни  
  Обектно-ориентирано програмиране  
  Бази данни  
  Разработка на софтуер  
Раздел А3.  Учебна практика по специфична професионална подготовка:
  Програмиране за вградени системи  
  Математически основи на програмирането  
  Операционни системи  
  Конкурентно програмиране  
  Алгоритми и структури от данни  
  Функционално програмиране  
  Интернет програмиране  
  Софтуерно инженерство  
  Производствена практика  
Раздел Б. Избираеми учебни часове
Разширена професионална подготовка
  Микропроцесорни системи  
  Микропроцесорни системи теория  
  Микропроцесорни системи практика  
  Компютърни мрежи  
  Компютърни мрежи теория  
  Компютърни мрежи практика  

 

За да стигнеш до върха трябва да минеш през ЦПО ХАРМОНИЯ
Дневни и дистанционни форми на обучение
София , Студентски град, бул. Осми декември блок 22
02/ 962 12 81 , GSM: 0898 21 6923, [email protected]