Opis predmeta
a) Osnovni pojmi in definicije programskega inženirstva (življenjski ciklus programske opreme, specifikacija zahtev, načrtovanje in arhitektura programske opreme)
b) Projektni način dela (definicije, programska oprema za vodenje projektov, projektno delo na področju razvoja programske opreme)
c) Mrežno načrtovanje in optimizacija projektov (načini mrežnega načrtovanja, metode za optimizacijo)
d) Metode za strukturirano analizo in načrtovanje programske opreme (različna orodja, prednosti in slabosti, vpliv na stabilnost in uporabnost programske opreme)
e) Razvoj aplikacij in preskušanje (načini preskušanja, instalacija in uporaba programske opreme)
f) Vloga in razvoj programske opreme zasnovane na odprti kodi (zgodovina, prednosti in slabosti, Linux, BSD, Android)
Predmet učimo na programih
Aplikativna elektrotehnika 1. stopnja
Cilji in kompetence
Cilj predmeta Tehnologija programske opreme je razširiti in poglobiti znanje o osnovah tehnologij za izdelavo programske opreme. Študent spozna osnovne pojme programskega inženirstva (življenjski ciklus programske opreme, specifikacija zahtev programske opreme ter načrtovanje in arhitektura programske opreme). V sklop predmeta se predstavijo tipični načini projektnega dela ter posebnosti, ki so vezane na projektno delo na področju razvoja programske opreme. Predmet obravnava povezavo med sociološkim vidiki projektnega dela in kakovostjo le-tega ter predstavi sodobne tehnologije za razvoj programske opreme. Študent se seznani s vlogo in razvojem programske opreme, zasnovane na odprti kodi
Metode poučevanja in učenja
V okviru predavanja so predstavljene teoretične osnove obravnavanih poglavij tehnologije programske opreme, skupaj s prikazom rešitev enostavnih praktičnih primerov. Študentom je na voljo študijski material s podrobno vsebino. Praktično delo poteka v okviru laboratorijskih vaj. Te so zasnovane v več delih, v katerih se študentje postopoma seznanjajo s problemom in zahtevami sodobne programske opreme. Projektno skupino sestavlja en študent, ki opravi vaje (izdelava uporabniškega vmesnika, analiza težav, uporaba sodobne programske opreme za vodenje projektov, …). Ob koncu semestra študentje poročajo o končnih rezultatih.
Predvideni študijski rezultati
Po uspešno opravljenem predmetu naj bi bili študenti zmožni:
- Obvladovati osnovne pojme iz področja tehnologije programske opreme
- Razumeti kako je potrebno voditi projekte za razvoj programske opreme
- Analizirati osnovne pojme pri tehnologiji programske opreme
- Razumeti principe uporabe ter osnovne pojme o vlogi in razvoju programske opreme zasnovane na odprti kodi
Temeljni viri in literatura
- Bojkovski, J: Tehnologija programske opreme; zapiski predavanj; Fakulteta za elektrotehniko 2012
- Ian Sommerville: ”Software Engineering”, Adison Wesley, 2011
- Carlo Ghezzi, Mehdi Jazayeri, Dino Mandrioli: “Fundamentals of Software Engineering”, Prentice Hall, 2003
- Project Management Institute: »Software Extension to the PMBOK® Guide – Fifth Edition«, 2013
- Project Management Institute: “A Guide to the Project Management Body of Knowledge (PMBOK Guide) – Fifth Edition”, 2013