Softverski obrasci i komponente

Upoznavanje sa predmetom

Prof. dr Igor Dejanović (igord at uns ac rs)

Kreirano 2021-10-12 Tue 11:40, pritisni ESC za mapu, m za meni, Ctrl+Shift+F za pretragu

1. Opšte informacije

  • Broj ESPB: 5
  • Fond časova: 3+3
  • Predmetni nastavnik: dr Igor Dejanović, igord na uns.ac.rs
  • Predmetni asistent:
    • MSc Vladimir Inđić, vladaindjic na uns.ac.rs
  • Nastava i konsultacije se obavljaju preko Teams-a
  • Materijali sa predavanja su dostupni na linku http://www.igordejanovic.net/courses/sok.html
  • Materijali za vežbe biće dostupni preko Teams-a
  • Dogovor o usmenim ispitima se obavlja preko Google grupe:

2. Cilj predmeta

  • Osposobljavanje za prepoznavanje i primenu softverskih obrazaca
  • Osposobljavanje za primenu komponentno baziranog razvoja (Component-Based Development - CBD)
  • Savladavanje modernih tehnologija baziranih na komponentnom razvoju
  • Integracija postojećih, slobodno dostupnih komponenti i rešenja u cilju izgradnje složenih softverskih proizvoda

3. Struktura ocene

Praktični deo Teorija
60% 40%

4. Projekat

  • Timski rad - timovi od 4 ± 1 studenta
  • Obavezna upotreba sistema za kontrolu verzija (git)
  • Obavezna upotreba sistema za upravljanje projektom (GitLab)

5. Projekat - raspodela bodova

Aktivnost Bodovi
Model komponenti 10
Implementacija komponenti 20
Implementacija projekta 18
Git aktivnost 6
Gitlab aktivnost 6
Ukupno 60

6. Ukus SOK-a - prezentacije starijih generacija

  • Gen. 2007/08 – Generički IDE za razvoj (Code Editor – CodEd): Swing, OSGI(Apache Felix)
    • Multi-level tim – cela nastavna grupa je veliki tim koji se deli na podtimove
    • Podrška za proizvoljne programske jezike (specijalizacija za Javu): custom parser, syntax highlighting, code outline, search/replace…

CodEd-StrukturniPogled.png

7. Ukus SOK-a - prezentacije starijih generacija

  • Gen. 2008/09 – Extensible Graph Analysis and Transformation Engine (ExGATE): Swing, OSGI (Eclipse Eqinox).
    • Pojedinačni timovi
    • Generiči editor za kreiranje, analizu, transformaciju i vizuelizaciju grafova
    • Podrška za pretrage grafova, layouting, generisanje…

ExGERM-visualizer.jpg

8. Prezentacija ExGERM tima

9. Generacija 2011-2015

  • Ex tensible P latform for S tructure V isualization and N avigation (ExPreSsiVeNess)
  • Vizualizacija i navigacija nad strukturama tipa grafa
  • Promenjivi modeli: razne vrste POJO objektnih grafova
  • Promenjive konkretne sintakse
  • Brz pregled i navigacija
  • Operacije: pan, point zoom in/out, tree outline, bird-view, filter, search, dobijanje detalja o tekućem objektu itd
  • Opciono: konzola za upravljanje platformom: izmena sintaksi, izmena modela itd
  • Tehnologije:
    • Integraciona platforma – Eclipse Equinox (OSGi)
    • GUI – Eclipse Rich Client Platform (RCP) + SWT/JFace
    • Vizualizacija grafova – GEF (Draw2d, Zest)
    • I naravno: git i GitLab

10. Generacija 2016-

  • Ex tensible P latform for S tructure V isualization and N avigation (ExPreSsiVeNess)
  • Vizualizacija i navigacija nad strukturama tipa grafa
  • Promenjivi modeli: razne vrste POPO objektnih grafova
  • Promenjive konkretne sintakse
  • Brz pregled i navigacija
  • Operacije: pan, point zoom in/out, tree outline, bird-view, filter, search, dobijanje detalja o tekućem objektu itd
  • Opciono: konzola za upravljanje platformom: izmena sintaksi, izmena modela itd
  • Tehnologije:

11. Literatura