Komponens alapú fejlesztés. Szoftvertechnológia elıadás



Hasonló dokumentumok
Tartalom. Újrafelhasználás alapú tervezés. Újrafelhasználás alapú tervezés Komponens alapú fejlesztés. Példák. Szoftvertechnológia előadás

rendszerszemlélető, adatközpontú funkcionális

































ŐRLAP ÖSSZEFONÓDÁS ENGEDÉLYEZÉSE IRÁNTI KÉRELEM BENYÚJTÁSÁHOZ

IT biztonsági szintek és biztonsági kategorizálási minta

PÁTY ÖNKORMÁNYZATA POLGÁRMESTERI HIVATALÁNAK SZERVEZETFEJLESZTÉSE E-KÖZIGAZGATÁSI ALAPISMERETEK AZ ELEKTRONIKUS ÜGYINTÉZÉS ÉS HATÓSÁGI SZOLGÁLTATÁS

Moduláris felépítéső gyártósorok tervezésének elmélete és gyakorlata

ÜZLETI TANÁCSADÓK ÉS MUNKAERİ-PIACI SZOLGÁLAT

KÉPZÉS TRÉNING WORKSHOP TANÁCSADÁS

MKB Alapkezelı zrt Budapest, Váci utca 38. telefon: ; ; telefax: ;

Adatstruktúrák Algoritmusok Objektumok


Erıforrástérkép felhasználói kézikönyv 1.0



A SZAKMAI ÉS VIZSGAKÖVETELMÉNYEK STRUKTÚRÁJA. György Annamária ETI március 11.


Székely Klára: Üzleti etika Power Point segítségével

FİBB PONTOK PIACKUTATÁS (MARKETINGKUTATÁS) Kutatási terv Március 13.

A Földmővelésügyi és Vidékfejlesztési Minisztérium pályázati felhívása a évi Magyar Agrárgazdasági Minıség Díj elnyerésére

Szomszédsági Program


BÁTASZÉK VÁROS ÖNKORMÁNYZAT Képviselı-testülete. J e g y zıkönyv. Szám: 2387/2010./TT.

31/2004. (XI. 13.) OM

Nyertes ajánlattevı: A dokumentáció mellékletében feltüntetett ajánlatkérıi épületek Szegeden.





PÁLYÁZATI ÚTMUTATÓ. a DÉL-DUNÁNTÚLI OPERATÍV PROGRAM. Balatoni és dunai omlásveszélyes partfalak stabilizálása és a KÖZÉP-DUNÁNTÚLI OPERATÍV PROGRAM

Alkalmazásportfólió. Szoftvermenedzsment. menedzsment. Racionalizálás. Konszolidáció. Nyilvántartás. Elemzés

Díjképzési Módszertan

EU7403 DMRV DUNA MENTI REGIONÁLIS VÍZMŐ ZÁRTKÖRŐEN MŐKÖDİ RÉSZVÉNYTÁRSASÁG. Közbeszerzési szabályzat ELJÁRÁSI UTASÍTÁS

ELİTERJESZTÉS. Sándorfalva Város Képviselı-testületének. Kakas Béla polgármester

VÍZÓRA NYÍLVÁNTARTÓ RENDSZER


Szoftverprototípus készítése. Szoftverprototípus készítése. Szoftverprototípus készítése

Általános módszertani útmutató költség-haszon elemzéshez. Nemzeti Fejlesztési Ügynökség

Az Európai Parlament és a Tanács 2004/49/EK irányelve (2004. április 29.) a közösségi vasutak biztonságáról, valamint a vasúttársaságok

A minıségirányítási program 6. sz. melléklete

A Magyar Telekom Távközlési Nyilvánosan Mőködı Részvénytársaság Ügyvezetõ Bizottsága (Management Committee) ügyrendje

Hatályosság:

MultiMédia az oktatásban

KIEGÉSZÍTİ MELLÉKLET A Primor Audit Kft évi BESZÁMOLÓJÁHOZ

SZOCIÁLIS ÉS MUNKAÜGYI MINISZTÉRIUM. Szóbeli vizsgatevékenység

Tanodakutatás A tanoda monitoring-program fı eredményeinek a bemutatása. XII. Pedagógiai Értékelési Konferencia, 2014, Szeged

A MAGYAR SOA ALAPÚ ARCHITEKTÚRA RENDSZERTERVE

Szolgáltatási szerzıdés

Sárbogárd és Vidéke Takarékszövetkezet 7000 Sárbogárd Ady E. u Tel./Fax.: 25/

Minıségirányítási felülvizsgálat (audit)

Metrológiai alapok. Horváthné Drégelyi-Kiss Ágota Fıiskolai tanársegéd, BMF BGK AGI. URL:

257/2007. (X. 4.) Korm. rendelet

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet. Java Web technológiák

HIDASNÉMETI KÖZSÉG ÖNKORMÁNYZATA POLGÁRMESTERI HIVATALÁNAK SZERVEZETFEJLESZTÉSE E-KÖZIGAZGATÁSI ALAPISMERETEK

179/2003. (XI. 5.) Korm. rendelet. I. Fejezet ÁLTALÁNOS RENDELKEZÉSEK. Értelmezı rendelkezések

INNOCSEKK GYAKRAN ISMÉTLİDİ KÉRDÉSEK

36/2013. (V. 24.) EMMI rendelet. az egészségügyi rendszer teljesítményértékelésének eljárásrendjére vonatkozó szabályokról

E L İ T E R J E S Z T É S

2008. január 1-i állapot

A GYEREKSZEGÉNYSÉG ELLENI NEMZETI PROGRAM MEGVALÓSÍTÁSÁNAK HATÁLYOS JOGSZABÁLYOKKAL ÖSSZEFÜGGİ NEHÉZSÉGEI, AKADÁLYAI

Speciális ingatlanok értékelése

SZEGHALOM VÁROS ÖNKORMÁNYZATA POLGÁRMESTERI HIVATALÁNAK SZERVEZETFEJLESZTÉSE MINİSÉGIRÁNYÍTÁS AZ ÖNKORMÁNYZATOKNÁL 1. MINİSÉGÜGY AZ ÖNKORMÁNYZATOKNÁL

Dr. Mikó Balázs. Mőszaki rajz készítés a térfogati illetve felület modellbıl, Mőhelyrajzok és darabjegyzékek készítése,


Bakonyalja-Kisalföld kapuja Vidékfejlesztési Egyesület december

AJÁNLATTÉTELI FELHÍVÁS a Kbt (2) bekezdés szerinti egyszerő közbeszerzési eljárásban

Komárom-Esztergom Megyei Önkormányzat Szt. Borbála Kórháza Fıigazgatója E L İ T E R J E S Z T É S

II. Az Új Magyarország Vidékfejlesztési és Stratégiai Terv ( ) által támogatott fejlesztési irányok A horizontális politikák:...


Átírás:

Komponens alapú fejlesztés Szoftvertechnológia elıadás

Tartalom Újrafelhasználás Komponens alapú fejlesztés Példák

Újrafelhasználás alapú tervezés A mérnöki tudományágakban a tervezés már létezı komponensek újrafelhasználásán alapszik A szoftverfejlesztésnek is szüksége van hasonló elvő megközelítésre Költségek csökkentése Gyorsabb átadás Növekvı minıség

Újrafelhasználás alapú tervezés Az újrafelhasználhatóságot figyelembe kell venni a tervezésnél Lehetıségek: Alkalmazási rendszerek újrafelhasználása Komponensek újrafelhasználása Mőveletek (függvények) újrafelhasználása

Újrafelhasználás alapú tervezés Követelmények: 1. Elérhetıvé kell tenni az újrafelhasználható komponenseket 2. A komponensek felhasználóinak bízni kell a komponensek helyes és biztonságos mőködésében 3. A komponenshez tartozó dokumentációnak segíteni kell az újrafelhasználót az illesztésben

Újrafelhasználás alapú tervezés Problémák: Növekvı karbantartási költségek Az eszköztámogatás hiánya Nem-itt-találták-ki szindróma Komponenskönyvtárak karbantartása Az újrafelhasználható komponensek megtalálása és adaptálása Megoldás: Szervezet szintő újrafelhasználási program kell

Programgenerátor Más nézıpontú megközelítés Szakterület-orientált nyelven programozható programgenerátor Az alkalmazás leírása tartalmazza a felhasználandó komponenseket Alkalmazási területek: Üzleti adatfeldolgozó alkalmazások Szintaktikus elemzık CASE-eszközök

Programgenerátor Alkalmazás leírása Programgenerátor Generált program Szakterületi alkalmazás ismeretek Adatbázis

Komponens alapú fejlesztés 1990-es évek végén alakult ki Csalódottság az OO fejlesztésben Nem váltotta be az újrafelhasználás terén hozzá főzött reményeket Túl specifikusak az osztályok Részletes ismeretük szükséges Az egyedi objektumoknak soha nem alakult ki jelentıs piaca

Komponens Absztraktabb az objektumosztálynál Önálló szolgáltató Független, végrehajtható entitás Forráskódja nem elérhetı Minden interakció a komponens által közzétett interfészeken keresztül történik Biztosított interfészek (komponens szolgáltatásai) Szükséges interfészek (komponens mőködéséhez szükséges szolgáltatások)

Komponens (példa) PrintService GetPDFile PrintInt Print GetQueue Remove Transfer Register Unregister Szükséges interfészek Biztosított interfészek

Absztrakciós szintek 1. Funkcionális absztrakció Egyszerő funkció 2. Laza csoportosítások Lazán összekapcsolódó entitások 3. Adatabsztrakciók Absztrakt típus / osztály 4. Klaszterabsztrakciók Együttmőködı osztályok csoportja (keretrendszer) 5. Rendszerabsztrakció Teljes, önálló rendszer

Alkalmazkodó újrafelhasználási folyamat Lépések: 1. Rendszer-architektúra tervezés 2. Komponensek meghatározása 3. Újrafelhasználható komponensek megkeresése 4. Felderített komponensek egyesítése Jellemzık: Jelentıs újrafelhasználás Különbözik a többi mérnöki tudományban alkalmazott felfogástól

Újrafelhasználással történı fejlesztés (Lépések) 1. Vázlatos rendszer-követelmények 2. Újrafelhasználható komponensek keresése 3. Követelmények módosítása a felderített komponenseknek megfelelıen 4. Architektúrális terv 5. Újrafelhasználható komponensek keresése 6. Rendszer megtervezése az újrafelhasználható komponensek használatával

Újrafelhasználással történı fejlesztés (Jellemzık) Kompromisszumok a követelmények tervezésekor (kevésbé hatékony terv) Alacsonyabb fejlesztési költségek, rövid fejlesztési idı, megnövekedett megbízhatóság (ellensúlyozza a terv kompromisszumait)

Nehézségek Karbantartás A komponens forráskódja nem elérhetı Szoftverevolúció A követelmények változásával a komponensek egyre kevésbé felelnek meg az új elvárásoknak Követési költségek nagyobbak A módosítás/javítás új komponensek felhasználását teheti szükségessé

Példák A feladat: Készítsünk egy erıforrás-kezelı eszközt, amellyel elkészíthetı egy iskola szünetfelügyeleti beosztása. Megvalósítás JavaBeans ActiveX

A rendszerterv Szereplık A beosztásért felelıs személy (felelıs) A beosztást elkészítı személy (készítı) Felügyelı tanár Név Foglalkoztatás (fı- vagy mellékállású) Rossz idıpontok (amikor nem felügyelhet)

A rendszerterv Kimenet Egy olyan beosztás, amelyben Minden szünetet 2 vagy 3 tanár felügyel Akik közül legalább egy fıállású tanár Akik közül az egyik a felügyelet felelıse Állapotai Készítés Ellenırzés Használat (amíg új beosztás nem születik)

A rendszerterv Funkciók Felelıs Készítı Adatok módosítása A beosztás állapotának megváltoztatása Adatok módosítása Felügyelı tanár A saját adatainak módosítása (készítés állapotban) A beosztás olvasása (ellenırzés és használat állapotban)

Példa munkamenet 1. Az iskola igazgatója megbízza a titkárát a beosztás elkészítésével Igazgató = felelıs Titkár = készítı 2. A titkár felviszi a számításba vehetı felügyelı tanárok adatait a rendszerbe 3. A tanárok módosítják ezeket az adatokat (megjelölik a számukra alkalmatlan idıpontokat) 4. A titkár elkészíti az új beosztást (készítés állapot) 5. Az igazgató átnézi a beosztást (esetlegesen módosít rajta), majd az állapotát ellenırzés-re változtatja

Példa munkamenet 6. A titkárnı összegyőjti a módosítási kérelmeket a felügyelı tanároktól, és továbbítja az igazgatónak 7. Az igazgató felvezeti a változtatást vagy visszautasítja a kérelmet 8. Az igazgató elvégzi a végsı ellenırzéseket 9. Az igazgató a tervet használati állapotba helyezi (az ütközéseket kijelzi a program és amíg van ütközés nem engedi ezt az állapotváltoztatást)

A rendszer felépítése Rétegek Adat réteg Az alkalmazás-specifikus adatmodellek Hozzáférési réteg Kommunikációs közeg az adat és az alkalmazás réteg között Alkalmazás réteg A program funkcionalitásának megvalósítása Kezelıfelületi réteg Grafikus felhasználói interfészek

Implementáció Célok: A lehetı legtöbb létezı komponens felhasználása Az elkészült szoftver egyes részeinek vagy a szoftver egészének újrafelhasználhatóvá tétele

JavaBean implementáció Kezelıfelületi réteg UI Bean elemekbıl összerakva A szükséges új elemek elkészítése Az elkészített kezelıfelület újrafelhasználhatóvá tétele új JavaBean komponensek definiálásával Alkalmazás réteg Nagyrészt új fejlesztés (minimális mennyiségben használ meglévı komponenseket) Önállóan nem újrafelhasználható

JavaBean implementáció Hozzáférési réteg RMI az adat és az alkalmazás réteg között Adat réteg Adatkezelési Bean komponensek Adatbázis-illesztési komponensként újrafelhasználható

ActiveX implementáció Kezelıfelületi réteg Windows Foundation Classes elemekbıl összerakva Új komponensek definiálhatók az újrafelhasználás érdekében Alkalmazás réteg Új fejlesztés

ActiveX implementáció Hozzáférési réteg DCOM alapú elérése az adat rétegnek Adat réteg A használt adatbázishoz a használt programozási nyelven elérhetı illesztı komponensek

Eredmény A teljes program újrafelhasználható másfajta beosztások elkészítésére is alkalmas Integrálható komplexebb alkalmazásokba A program szerkezetének egyes rétegei újrafelhasználhatók Kezelıfelületi réteg Adatbázis réteg

Irodalom Kötelezı I. Sommerville: Szoftver rendszerek fejlesztése, 14. fejezet (348-371 o.) Ajánlott http://www.sze.hu/~heckenas/okt/compon.pdf http://www.swe.uni- linz.ac.at/publications/pdf/tr-se- 99.16.pdf