Предмет | Пројектовање софтвера |
---|---|
Модул | Информациони системи и технологије |
Статус предмета | Обавезан предмет |
Катедра | Катедра за софтверско инжењерство |
Број ЕСПБ бодова | 6 |
Стицање знања о основним принципима, стратегијама и методама пројектовања софтвера. Разматрање принципа и техника пројектовања корисничког интерфејса, апликационе логике и базе података. Усвајање једне од метода пројектовања софтвера уз коришћење патерна архитектуре и пројектовања. Упознавање и коришћење напредних концепата савремених објектнооријентисаних програмских језика (Јава или C#).
Оспособљеност студената да: а) пројектују софтвер у складу са савременим методама развоја софтвера б) имплементирају софтверске системе коришћењем савремених објектно-оријентисаних програмских језика (Јава или C#).
Професор ће теоријски објаснити сваку од разматраних тематских јединица и кроз практичне примере ће објаснити њихову примену у развоју софтверских система.Асистенти ће кроз лабораторијске вежбе да разрађује тематске јединице које је професор предавао. За сваку тематску јединицу асистенти ће припремити конкретне примере које ће приказати и објаснити студентима у рачунском центру. Студенти треба да самостално ураде задатке, које ће припремити асистенти, из већине разматраних тематских јединица
Теоријска настава
Основе пројектовања софтвера. Контекст пројектовања у животном циклусу развоја софтвера (Јединствени процес развоја софтвера, Ларманова метода развоја софтвера,…). Стратегије и методе пројектовања софтвера. Пројектовање архитектуре. Пројектовање корисничког интерфејса. Пројектовање апликационе логике. Пројектовање базе података. Пројектовање алгоритама. Патерни архитектуре и пројектовања. Нотације и алати код пројектовања софтвера. Имплементационе технологије. Рад са студентима на изради логичке структуре семинарског рада.
Практична настава: Вежбе
Радна окружења за писање програма. Конкурентно програмирање – Нити. Рад у мрежи – сокети. Позив удаљених метода (RMI). Заштита. Рад са базом података. Повезивање GUI-а са базом података преко мреже. Рефлексија. JAXP и JAXB XML технологије. Поступак израде семинарских радова са примерима.
1. Синиша Влајић, Душан Савић,Војислав Станојевић, Илија Антовић, Милош Милић Пројектовање софтвера – напредне Јава технологије Златни пресек, https://www.researchgate.net/p ublication/303858129_Projektovanje_softvera_- _Napredne_Java_tehnologije_S oftware_design_- _Advanced_Java_Technologies , Београд 2008
2. Синиша Влајић, Ћирић Видојко и Душан Савић Пројектовање програма (Практикум – програмски језик ЈАВА) http://silab.fon.bg.ac.rs/wpcontent/uploads/2016/05/Osnov niKonceptiJaveProjektovanjeSoftvera.pdf Београд 2003
3. IvarJacobson, GradyBooch, JamesRumbaugh The Unified Software Development Process Rational Software Corporation, Addison-Wesley 1999
4. Craig Larman Applying UML and Patterns PrenticeHall, New Jersy 1998
5. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides Design patterns Addison : Wesley 1999
6. Cay S. Horstmann, Gary Cornell Core JAVA 2, Volume II – Advanced Features Sun Microsystem Press, California, USA 2000
7. Синиша Влајић Пројектовање софтвера, књига у припреми https://www.researchgate.net/p ublication/303858135_Projektov anje_softvera_-_skripta ФОН 2022