Projektovanje softvera

PENETRATION TESTER - Projektovanje softvera

Zašto je ovaj predmet važan?

Predmet se bavi arhitekturom softverskih sistema i principima kvalitetnog dizajna. Studenti uče o obrascima dizajna, modularnosti, skalabilnosti i održivosti koda. Kroz praktičan rad na projektima savladavaju metode dokumentovanja i modelovanja sistema pomoću UML dijagrama, što im omogućava da pređu iz faze ideje u profesionalno projektovano rešenje.
programer4 - Projektovanje softvera

Osnovne informacije o predmetu

  • Naziv predmeta
  • Projektovanje softvera
  • Status
  • Izborni
  • Broj ESPB
  • 8
  • Nastavnici
  • Verislav Đukić, Nebojša Đorđević, Ivan Jezdović
  • Godina studija
  • III godina
  • Vrsta nastave
  • Teorijska (45) + Praktična (30)
  • Oblici nastave
  • Predavanja, vežbe i seminarski radovi.

Ciljevi predmeta

Uporedni prikaz metodologija u razvoju softvera, pri čemu bi jedna obavezno trebala da se odnosi na tzv. razvoj softvera pomoću modela i namenskih grafičkih jezika. Pregled alata za projektovanje softvera i postojećih implementacionih tehnologija. Zbog značaja dokumenta, kao univerzalne tvorevine kojom se iniciraju, prati tok i dokazuje progres u ostvarivanju planiranih poslova, napraviti analogiju između razvoja i proizvodnje softvera sa razvojem i proizvodnjom dokumenata.

Ishodi učenja

Studenti treba da nauče i usvoje bar dve metodologije u razvoju sofvera koje obezbeđuju dobru organizaciju rada, dobru i pouzdanu specifikaciju problema i njegovo rešavanje. Prikazati par softverskih alata i okruženja koje podržavaju takve metodologije, tako da studenti steknu uvid kako se problemi rešavaju sa postojećim softverskim alatima, a ako alati ne postoje, kako ih treba razvijati. Studenti će moći da projektuju softver u skladu sa savremenim metodama razvoja softvera

Sadržaj predmeta

Teorijska nastava:

Sadržaj predmeta podeliti na dve celine vezano za projektovanje softvera i to:

  • na statička i
  • na dinamička svojstva.

U okviru projektovanja statičkih svojstava sistema studente upoznati sa projektovanjem baza podataka, aplikacija i grafičkog interfejsa. Za svaku od nabrojanih celina prikazati alate za modelovanje (projektovanje) sa jednostavnijim primerima. U okvuru projektovanja dinamičkih svojstava sistema studenti treba da nauče šta su to mašine stanja i kako se koriste za potrebe specifikacije dinamičkih svojstava sistema. Teme su:

  • strategije i metode projektovanja softvera;
  • različiti modeli proizvodnje softvera;
  • logičko modelovanje podataka;
  • arhitektura softverskih rešenja;
  • specifikacija i provera ispravnosti algoritama;
  • projektovanje aplikacione logike;
  • grafički interfejsi;
  • povezivanje aplikacija sa bazama podataka.

Praktična nastava:

U okviru praktične nastave koristiti primere za bar jedan savremeni programski jezik, poput C# ili Java. Prikazati radna okruženja. Znatan deo pažnje posvetiti logičkom modelovanju podataka i upotrebi softverskih alata za te potrebe. Prikazati „Prošireni model objekti veze“, odnosno modelovanje pomoću proširenog jezika objekti-veze. Rad sa bazom podataka. 

Povezivanje GUI-a sa bazom podataka preko nivoa aplikacija.

Važno: U okviru vežbi studenti treba da vide da se svaki od postojećih jezika za modelovanje ili projekotvanje softvera može napraviti i koristiti nezavisno od postojećih alata, ukoliko se poznaje smisao (semantika) problema koji treba da se reši. Ovao znanje i način razmišljanja može da bude podjednako važan i za projektovanje softvera kao i za razvoj modela upravljanja proizvoljnim tehničkim ili orgnizacionim sistemima.

Ocena i način polaganja

  • Oblik ocenjivanja
  • Poeni
  • Aktivnost u toku predavanja
  • 20
  • Praktična nastava
  • 20
  • Kolokvijum(i)
  •  
  • Seminar(i)
  • 20-30 poena, što
    menja poene za
    aktivnosti i
    praktičnu nastavu
  • Ukupno
  • 100
FULL STACK DEVELOPER - Projektovanje softvera
This site is registered on Toolset.com as a development site.