ХАРАКТЕРИСТИКА НА УЧЕБНАТА ДИСЦИПЛИНА

Размер: px
Започни от страница:

Download "ХАРАКТЕРИСТИКА НА УЧЕБНАТА ДИСЦИПЛИНА"

Препис

1 ХАРАКТЕРИСТИКА НА УЧЕБНАТА ДИСЦИПЛИНА дисциплина: Синтез и анализ на алгоритми Лекции и лабораторни упражнения Код: P3pCST01 Семестър: 1 Брой кредити: 6 ЛЕКТОРИ: Проф. д-р Веселка Боева (ФEА), тел.: , еmail: Технически Университет - София, Филиал Пловдив СТАТУТ НА ДИСЦИПЛИНАТА В УЧЕБНИЯ ПЛАН: Задължителна учебна дисциплина за студенти от специалност Компютърни системи и технологии, Факултет Електроника и Автоматика на Технически Университет - София, Филиал Пловдив, образователно-квалификационна. ЦЕЛИ НА УЧЕБНАТА ДИСЦИПЛИНА: След завършване на курса, студентите трябва да придобият знания и умения за разработване и анализ на алгоритми. ОПИСАНИЕ НА ДИСЦИПЛИНАТА: Основни теми: Алгоритъм: основни понятия. Видове алгоритми. Алгоритми за обработване на елементарни структури от данни: масив, свързан списък, стек и опашка. Анализ на алгоритъм. Методи за съставяне на алгоритми: рекурсия, разделяй и владей, динамично програмиране. Елементарни и усъвършенствани сортиращи алгоритми. Алгоритми за търсене. Алгоритми за обработване на нелинейни структури от данни: двоични и многомерни дървета, граф. Теория на алгоритмите. Евристични, паралелни, и вероятностни алгоритми. Алгоритми за аритметични операции. Верификация на алгоритъм. ПРЕДПОСТАВКИ: Математика I, II и III, Дискретни структури, Програмиране и използуване на компютърите I, II и III. МЕТОД ЗА ПРЕПОДАВАНЕ : Лекции с използване на лаптоп и мултимедиен проектор, лабораторни упражнения с използване на демо-програми и самостоятелна разработка на алгоритми и програмната им реализация (курсови задачи). МЕТОДИ НА ИЗПИТВАНЕ И ОЦЕНЯВАНЕ: Изпитът е писмен и се провежда под формата на тест, който включва въпроси от теорията и писмено решаване на задачи. Крайната оценка по дисциплината се оформя възоснова на резултатите от изпита и оценката от курсовите задачи и упражненията. 1. Robert Sedgewick, Kevin Wayne, Algorithms, 4 th ed., Pearson Education, Inc. 2011; 2. В. Боева и Д. Петрова. Ръководство за лабораторни упражнения: Алгоритми и структури от данни, Издателство на Технически университет-софия, 2012; 3. Робърт Седжуик, Алгоритми на C, Софтпрес, 2003; 4. Преслав Наков, Панайот Добриков, Програмиране=++Алгоритми, СофтПрес, 2005; 5. Стойчо Стойчев, Синтез и анализ на алгоритми, Издателство "БПС", 2003; 6. T. Cormen, Introduction to Algorithms, Second Edition, MIT Press, 2009; 7. T. Cormen, C. Leiserson, R. Rivest, C. Stein, Introduction to Algorithms, Second Edition, The MIT Press, Cambridge, Massachusetts London, England, 2001; 8. Robert Sedgewick, Algorithms in C, Princeton University, Addison-Wesley Publishing Company, Inc., USA, 1990.

2 Операционни системи Лабораторни упражнения Код: P3pCST02 Семестър: 1 ЦЕЛИ НА УЧЕБНАТА ДИСЦИПЛИНА : Основната цел на дисциплината е получаване на знания за структурата и функционирането на операционните системи работа на процеси и нишки, алгоритми за планиране, управление на паметта, файлови системи. В края на курса студентите трябва да могат да създават и синхронизират нишки, да са наясно с работата на виртуалната памет и обслужването на входно-изходната система от гледна точка на операционната система. ОПИСАНИЕ НА ДИСЦИПЛИНАТА: Основни теми: Операционни системи структура и основни модули. Процеси и нишки основни понятия. Работа с процеси и нишки. Планиране на нишки. Синхронизация и синхронизационни примитиви. Управление на паметта пирамида на паметите. Понятие за виртуална памет. Виртуална памет със странициране таблица на страниците, попадение/липса на страница, алгоритми за заместване на страница. Виртуална памет със сегментиране и странично-сегментна организация. Файлови системи структура, основни модули. Методи за разпределение на файловете на диска, управление на директории, функции за работа с файловите системи. ПРЕДПОСТАВКИ: Програмиране и използване на компютри I, II, III част, Дискретни структури, Синтез и анализ на алгоритми. МЕТОД ЗА ПРЕПОДАВАНЕ: лабораторни упражнения по основните лекционни теми, включващи изпълнение на определени задачи. МЕТОДИ НА ИЗПИТВАНЕ И ОЦЕНЯВАНЕ: Оценката по дисциплината се оформя на основа на работата на студента в лабораторните упражнения и тест, включващ теоретични въпроси и задачи за решаване. 1. Tanenbaum, A., Modern Operating Systems, 3rd Ed, Prentice Hall, Silberschatz, A., P. Galvin, G. Gagne, Operating Systems Concepts, 9th Ed, John Wiley & Sons, Stallings, W., Operating Systems: Internals and Design Principles, 7th Ed, Prentice Hall, Sedgewick, R., K. Wayne, Algorithms, 4th Ed., Arpaci-dusseau, R., A. Arpaci-dusseau, Operating Systems: Three Easy Pieces, University of Wisconsin, Love, R., Linux Kernel Development, 3rd Edition, Addison-Wesley, 2010

3 Бази от данни Лабораторни упражнения Код: P3pCST03 Семестър: 1 ЦЕЛИ НА УЧЕБНАТА ДИСЦИПЛИНА : Основната цел на дисциплината е запознаване на студентите с основните принципи на работа на базите данни. Това включва релационна алгебра, описание на данните на високо абстрактно ниво, описание на данните на релационно ниво, дефиниране и манипулиране на данните със SQL. ОПИСАНИЕ НА ДИСЦИПЛИНАТА: Основни теми: Същност и принципи - разграничаване и независимост на програми и данни, интегритет на данните. Модел със същности и връзки : Типове и проявления същности. Атрибути, домени, видове атрибути, null, ключове. Типове и проявления връзки. Степен на връзка, атрибути на връзка, роли, рекусривни връзки. Релационен модел на данните : Основни понятия - атрибут, домен на атрибут, null, запис, поле, видове атрибути, релация. Схема и съдържание на релация. Релационна алгебра : Определение. Общи характеристики на операциите - аргументи, резултат, степен. SQL : Идеология и принципи на стандарта SQL. Структура на езика. Базови и виртуални таблици. Операции с данните. ПРЕДПОСТАВКИ: Дискретни структури, Синтез и анализ на алгоритми, Операционни системи. МЕТОД ЗА ПРЕПОДАВАНЕ: лабораторни упражнения по основните лекционни теми, включващи изпълнение на определени задачи. МЕТОДИ НА ИЗПИТВАНЕ И ОЦЕНЯВАНЕ: Оценката по дисциплината се оформя на основа на работата на студента в лабораторните упражнения и тест, включващ теоретични въпроси и задачи за решаване. 1. Elmasri, R., Fundamentals of Database Systems, 6th Ed, Addison-Wesley, Date, C., An Introduction to Database Systems, 8th Ed, Addison-Wesley, Silberschatz, A., H. Korth, S. Sudarshan, Database System Concepts, McGraw-Hill, Kline, K., B.hunt, D. Kline, SQL in a Nutshell, O Reilly, 2008

4 Ha11MeHOBaH11e Ha Y14e6HaTa.z:u,1cu11 nn HH a: KoMDIOT'hpmt Mpemn B1u1, Ha 06yYeH11eTo: JleK ,Jla6opaTOpH11 ynpa)l<hemrn XAPAKTEPHCTHKA HA Y1-IEEHATA,L(HCQHIIJDIHA Ko,n,: P3pCST04 LJacoae 3a cep,m1,11..1,a: J1-2 Yaca, JIY -2 yaca, СП - 4 CeMecTup: 1 EpoH Kpe.rum1: 5 JIEKTOPH: npocp.,n.-p HH)I(. fp11wa Cnacos (<l>ea), Ten.: , TexHHYecK11 YH1-mepc net - Coqwrn, <I>1i1mrn11 n11os,u11s CT ATYT HA llhculfll.jihha TA B Y1IEEH1l51 IIJIAH: 3a.n,bJl)l{HTenHa yyefa1a n11cu11nj111ha 3a CTyAeHTH OT cneuhmh0ct "KoMntOTbpHH Cl1CTeM11.H TeXHOJI0r1111", <l>akyntet EneKTpOHHKa 11 ABTOMaT11Ka Ha TexH11Yec1rn Ytt11sepc11TeT - Coqm.ll, <l>11m1an ITnos.n,11s, o6pa30batejjho-kbaj111qhikau.hohha CTeneH "6aKanasbp". UE.JllI HA EHAT A )lhcuijtijihiia: Cne.n, 3aa1,pw sahe Ha Kypca, cty.n,eht11te Tp.ll6Ba,na np1111,061,rnt 3HaHl1.ll 3a apx11tekrypata Ha 0TsopeH11Te c11ctem11 - Mo,n,ena OSI Ha ISO, rno6anhata KOMmoTbpHa Mpe)l(a INTERNET 11 np11nmkemrnta, 6a311pairn Ha TCP/IP np0t0k0j111. OITHCAHHE HA lihcuhiijillhata: OcHOBHl1 TeM11: Apx11TeKTypa Ha ornopem1 c11ctem11 -Mo.n,ena OSI Ha ISO. CTpyKTyp11 H cpyhku.1111 Ha ot.n,ernnne H11sa. Cbo6w.11TenH11 cpen:11. MeTOD:H 11 cpenctba 3a o6meh Ha nahhh. AnapaTHH cpenctsa 3a o6meh Ha nahh11 - CTI1Hnapn1311par111 l1htepcpepic11. KOM)'HHl<aUHOHHl1 npot0k0j111. YnpasneH11e o6mejia Ha narhh. KaHaneH cnopi. JloKaJ1HH Mpe)l(11 -Tononorn11. MeTon11 3a,r1,ocTun no Cbo6w.1nenHaTa cpe,n,a. CTaHn,apT IEEE 802.X. Ee3)1(11'-!HH nokanh11 Mpe)l(H IEEE Mpe)l<OB cnoi1. Maprnpyn13au.1u1 11 a.n.peca11.1rn. Maprnpyn13aTop11. YnpasneH11e Ha TpaHcnopnu,0:1 cnoi1. npotokojhl. fno6anha K0MnlOThpHa Mpe)l(a Internet - apx11tektypa. ITpOTOKOJ111 TCP/IP. Internet nphj10)l(eh11.ll. O6MeH Ha cpai:inose FTP, enektpohha nolua, WWW. Mpe)l(OB11 onepau11or1r111 cmctemh. YnpaBrreHMe Ha KOMIIIOThpmI Mpe)I(H - SNMP. B11pTyanH11 KoMmOThpH11 Mpe)l(11 VPN. Apx.1uercrypa Ha rrp11rrmkehm1 KJIBet/cbpBbp. IIPEJIIIOCTABKH: M11Kponpou.ecopr1a TeXHHKa, M11Kponpouecopr111 c11ctem11, Onepa11110HH1-1 c11ctem11, KoMrnOTbpH11 apx11tekryp11, TTporpaMHl1 e31-1u.11. METOlI 3A IlPEIIOLlABAHE: J1eKUIH'l c 113nomBatte Ha cnaw.nose 11 Mym11Me,n,11titt11 npe3ettrnu111-1, na6opatoptt11 ynpa)[<hehh51 c 113n0n3BaHe Ha,neMo-nporpaMH UHTa Ha npotok0jl 11. METO)lR HA ll3flhtbahe II OUEHJIBAHE: l13mltht e n11cmeh H ce npoae)l(,ua no,u cpopmata Ha TeCT Bbpxy Teopmna 11 n11cmeho pewasahe Ha 3311,3'-!H. Kpai:ittaTa ouehka no JJ,HCUHmrnHaTa ce ocpopm.ll Bb30CHOBa Ha pe3y11tat11te OT 113Ill1Ta (o6mo 80%) 11 33lll.11Ta Ha np0t0kojlhte (20%). E3HK HA IIPEIIOlIABAHE: 6b11rapcK11 l. TIPEIIOP1,"lllITEJlllA JilITEPATYPA: I. fp1mrn CrracoB, Hm<0rra1i Ka1<aHaKOB, MMTKO lllorrob, "PbKOBO,UCTBO 3a na6opatophi1 ynpa)l{hehjui. no KOMTIEOThpHH Mpe)IQf", TY Coqnur, 2011, ISBN: James F. Kurose, Keith W. Ross, 'Computer Networking. A Top-Down Approach Featuring the Internet", Fifth edition, Pearson, 2010, ISBN-13: Andrew S. Tanenbaum, David J. Wetherall. "Computer Networks", 5th Edition. Prentice Hall, 2010, ISBN- 10: William Stallings, "Data and Computer Communications",10th Edition, Prentice Hall, 2013, ISBN-10:

5 Програмни езици Лабораторни упражнения, Курсова работа Код: P3pCST05 Семестър: 1 ЦЕЛИ НА УЧЕБНАТА ДИСЦИПЛИНА Дисциплината има за цел студентите да получат систематични знания от областта на езиците за програмиране като се разглеждат общи и специфични елементи на отделните езици и реализация на различните парадигми и черти, лежащи в основата на съвременните езици за програмиране. ОПИСАНИЕ НА ДИСЦИПЛИНАТА В началото на курса се разглеждат методите за реализация на езиците за програмиране, видовете данни, типовете им и тяхното вътрешно представяне. След това се изучават езиковите средства за деклариране на данни, управляващите структури и видовете изрази в различните езици. Видовете структури на програмите блокова, модулна пакетна, обектна, класова и компонентна, моделите на паметта, подпрограмите и начините за предаване на параметри са ядрото на курса. ПРЕДПОСТАВКИ: Програмиране и използване на компютри, Синтез и анализ на алгоритми, Операционни системи, Микропроцесорна техника. МЕТОД ЗА ПРЕПОДАВАНЕ: Лекции и лабораторни упражнения с използване на примерни програми и защита на курсова работа МЕТОДИ НА ИЗПИТВАНЕ И ОЦЕНЯВАНЕ : Текуща оценка която се оформя въз основа на резултатите от контролни работи (общо 80%) и защита на курсовата работа (20%). 1. Harper, Robert, Programming Languages: Theory and Practice, Carnegie Mellon University, Paquet, Joey, Comparative Studies of Programming Languages, Lecture Notes, Плачков Ив., Програмни езици и програмни системи Инженерен подход, Унисофт, Пловдив, 1998;