Fakultet tehničkih nauka

Predmet: Projektovanje softvera (17.RI45)

Matične organizacione jedinice predmeta: Odsek za primenjene računarske nauke i informatiku
Osnovne informacije:
 
Kategorija Naučno-stručni
Uža naučna oblast Primenjene računarske nauke i informatika
Multidisciplinarna Ne
ESPB 7
Cilj:

Osposobljavanje studenata za efikasnu i efektivnu konstrukciju softvera. Ovladavanje znanjima i veštinama neophodnim za dizajn arhitekture, implementaciju i testiranje složenih softverskih sistema.Standardizacija procesa implementacije, testiranja, verifikacije i validacije softvera. Korišćenje alata za praćenje nedostataka u softveru. Dokumentovanje složenih softverskih proizvoda. Prezentacija karakteristika softvera.

Ishod:

Po završetku predmeta studenti su osposobljeni za konstrukciju složenih softverskih sistema zasnovanu na standardizaciji procesa implementacije, testiranja, verifikacije i validacije softvera i korišćenje raspoloživih alata za praćenje konfiguracije softvera i nedostataka u softveru. Pored toga studenti su osposobljeni za kvalitetno dokumentovanje i prezentaciju karakteristika složenih softverskih proizvoda.

Sadržaj:

Modelom vođeni razvoj softvera. Aspekti dizajniranja softverskih sistema: konceptualni i tehnički dizajn, dekompozicija i modularnost, arhitektura softvera "stilovi i strategije. Aspekti konstrukcije softverskih sistema: organizacija i struktura softvera, elementi programskog rešenja, standardi konstrukcije i implementacija funkcionalnosti. Dizajn korisničkog interfejsa. Postupak konstrukcije softvera: metode i tehnike konstrukcije, timski rad i timski razvoj softvera, X-treem programiranje, standardi i kvalitet koda, testiranje softvera, softverske inspekcije, integracija softvera, verifikacija i validacija. Osnovi kontrole kvaliteta softvera. Osnovi praćenja nedostataka i konfiguracije softvera.

Metodologija izvođenja nastave:

Uz oslonac na specifikaciju podacima upravljanog sistema, studenti u timskom radu, ovladavaju praktičnom primenom znanja vezanih za konstrukciju kompleksnih softverskih sistema. U prvom delu realizaije semestralnog projekta studenti formulišu meta-model generičkog informacionog resursa i implementiraju prototip rukovaoca informacionim resursima koji je opisan fomalizmima meta-modela. Drugi deo projekta podrazumeva konceptualno, logičko i fizičko modelovanje skladišta podataka i upotrebu modela kao podloge za generisanje elementarnih operacija nad univerzalnim skladištem (dodavanje, izmena, brisanje, pretraga). Izbor realnog sistema koji služi kao osnov izrade modela skladišta podataka bira se iz bazena od 30 (trideset) malih poslovnih sistema.

Literatura:
Autori Naziv Godina Izdavač Jezik
Branko Perišić Projektovanje softvera 2007 Elektronsko izdanje-PDF,PPT Srpski jezik
L. A. Maciaszek Requirements Analysis and System Design Developing Information Systems with UML 2001 Addisom Wesley Engleski
Ian Gorton Essential Software Architecture 2nd ed. 2011 Springer - elektronsko izdanje Engleski
Pierre Bourque, Richard E. (Dick) Fairley Guide to the Software Engineering Body of Knowledge Version 3.0 SWEBOK V.3.0 2014 IEEE Computer Society - elektronsko izdanje Engleski
L. Bass, P. Clements, and R. Kazman Software Architecture in Practice, 3rd ed. 2013 Addison-Wesley Professional Engleski
Erich Gamma, Richard Helm, Ralph Johnson i John Vlissides Gotova rešenja Elementi objektno orijentisanog softvera 2002 CET Beograd Srpski jezik
P.Clements et al Documenting Software Architectures: Views and Beyond, 2nd ed. 2010 Pearson Education, Engleski
Matthew Robinson, Pavel Vorobiev Swing, Second Edition 2003 Elektronsko izdanje-PDF Engleski
Steve McConnell Code Complete A Practical Handbook of software construction 2005 Microsoft Press Engleski
John Zukowski Majstor za javu, Java J2SE 1.4 2002 Kompjuterska biblioteka Čačak Srpski jezik
Formiranje ocene:
Predmetna aktivnost Predispitna Obavezna Broj poena
Predmetni projekat Da Da 40.00
Praćenje aktivnosti pri realizaciji projekata Da Da 10.00
Teorijski deo ispita Ne Da 30.00
Praktični deo ispita - zadaci Ne Da 20.00
Izvođači nastave:
Predavanja
Predavanja
Računarske vežbe
Računarske vežbe
Predavanja
Računarske vežbe