Alkalmazások architektúrája
Szoftver-technológia I.
Szoftver-technológia I.
Irodalom
• Ian Sommerville: Software
Engineering, 7th e. chapter 13.
• Bass, Clements, Kazman: Software Architecture in Practice, AddisonWesley, 2004
2
Szoftver-technológia I.
Alkalmazás típusok
• Adat feldolgozó alkalmazások • batch jelleg • Tranzakció feldolgozó alkalmazások • Esemény feldolgozó alkalmazások • Nyelv feldolgozó alkalmazások 3
Szoftver-technológia I.
Alkalmazás típusok (pl.)
• Adat feldolgozó alkalmazások • Számlázó rendszer • Bérszámfejtés • Tranzakció feldolgozó alkalmazások • e-kerekedelmi rendszer • Helyfoglalási rendszer • Esemény feldolgozó alkalmazások • Szövegszerkeszt! • Real-time alkalmazás • Nyelv feldolgoz! alkalmazások • Fordító programok • Parancsértelmez!k 4
Szoftver-technológia I.
Adat feldolgozó alkalmazások
• Adatbázisok nagyságrendekkel
nagyobbak, mint az alkalmazás
• Adatbevitel és kimenet batch jelleg"
5
Szoftver-technológia I.
Adat feldolgozó rendszer szerkezete Rendszer Input
Feldolgozás
Sor
Output
Sor
Adatbázis
6
Szoftver-technológia I.
Tranzakció feldolgozó rendszerek
• Felhasználó igények kielégítése • információ adatbázisból • adatbázis módosítása • Tranzakció • koherens m"veletek sora • Aszinkron feldolgozás 7
Szoftver-technológia I.
Tranzakció feldolgozó rendszer felépítése
I/O feldolgozás
Alkalmazás logika
Tranzakció manager
Adatbázis
8
Tranzakció feldolgozás
Szoftver-technológia I.
• Tranzakció management komponens
• kliens kommunikáció • adatszerializálás 9
Szoftver-technológia I.
Tranzakció management
Tranzakció manager
Szerializált tranzakciók
Adatbázis
Tranzakciós kérések Kliensek
10
Szoftver-technológia I.
Információs rendszerek architektúrája
• Réteg szerkezet • Felhasználói felület • Kommunikációs réteg • Üzleti logika • Adatbázis 11
Szoftver-technológia I.
Foglalási rendszerek
• Véges er!források lefoglalása a rendszeren kersztül • Réteg szerkezet • Felhasználói felület • Felhasználó authentikálás • Lekérdez! komponens • Er!forrás kiszolgáltató rendszer • Er!forrás management • Er!forrás allokáció • Tranzakciós adatbázis
12
E-kereskedelmi rendszerek
Szoftver-technológia I.
• Internet alapú er!forrás foglalási rendszer
• Többréteg" architektúra Web böngész!
Web Szerver
Alkalmazás Szerver
Adatbázis Szerver
13
Szoftver-technológia I.
Esemény feldolgozó rendszerek
• Reaktív rendszerek • Események id!zítése megjósolhatatlan
• Legtöbb felhasználói alkalmazás ebbe a kategóriába tartozik
14
Szoftver-technológia I.
Szerkeszt! rendszerek
• Interaktív szerkeszt! rendszerek • Egy felhasználós rendszerek • Gyors visszacsatolás (reakcióid!) a felhasználónak
• Tranzakciók, visszaállíthatóság 15
Szoftver-technológia I.
Interaktív szerkeszt!rendszer architektúra
• Természetes komponensek, objektumok • munkaterület, képerny! • események • parancsok • dokumentum adatok • beállítási adatok • fájl rendszer • ablak/képerny! kezel!
16
Szoftver-technológia I.
Interaktív szerkeszt!rendszer architektúra (folyt.) File
Edit
Tab
Tab
Window
Tab
Munkaterület
Ablakkezel!
Dokumentum adatok Eseménykezel! Beállítás adatok Parancs feldolgozás
Fájlrendszer
17
Szoftver-technológia I.
Nyelv feldolgozó rendszerek
• Természetes vagy mesterséges
nyelvi bemenet más rprezentációba alakítása
• Interpreter • értelmezés -> feldolgozás 18
Szoftver-technológia I.
Nyelv feldolgozó rendszerek (folyt.) Lexikai elemz! Szimbólumtábla Szintaktikai elemz! Szintaxisfa
Utasítások
Fordító Szintaxis ellen!rzés Szemantikai ellen!rzés Generálás
Szemantikai elemz! Kód generátor
Lefordított utasítások
Adatok
Interpreter Végrhajtás
Eredmények
19
Szoftver-technológia I.
Összefoglalás
• Alkalmazástípusok • adatfeldolgozó, tranzakciókezel!, esemény feldolgozó, nyelv feldolgozó rendszerek
• Általános alkalmazás architektúrák • input-feldolgozás-output • tranzakciók • interaktív szerkeszt!k • fordító programok
20