5. Szolgáltatásorientált architektúra

Figyelem! Kérjük, az értelmezésénél a megjelenés időpontját (2010. október 13.) vegye figyelembe!

Megjelent a Cégvezetők Kiskönyvtára 2010/05. számában (2010. október 13.)

A vállalatirányítás terén viszonylag új fogalom a szolgáltatásorientált architektúra, angol nevén Service Oriented Architecture, vagyis a SOA.

A SOA a vállalati szoftverek fejlesztésének olyan szemléletmódja, amelyben a szoftver belső folyamatai apró "szolgáltatásokra" vannak lebontva. Ezek a szolgáltatások elérhetők és felfedezhetők a hálózaton. A különféle funkciókat nyújtó szolgáltatások mind alkalmazhatók a vállalat igényeihez, de elrejtik a funkciók megvalósításának részleteit. A SOA megoldást nyújt az üzleti folyamatok tervezése, a munkafolyamat-kezelés és az alkalmazásintegráció jelenlegi szemléletének bonyolultságára, rugalmatlanságára és szoros ügyfélkiszolgáló csatolására: olyan fejlesztőkörnyezetet hoz létre, amely lehetőséget nyújt az üzleti alkalmazások egymástól független, korlátozásmértékű módosítására.

Azzal, hogy a SOA elérhetővé teszi az üzleti folyamatokat, lehetőséget nyújt a leegyszerűsítésükre, ez pedig megteremti a változások agilis kezelésének feltételeit. Mivel az üzleti folyamatok kisebb, elérhető és manipulálható funkciókra vannak lebontva, sokkal könnyebb leképezni az üzleti szabályokat az üzleti rendszerben.

5.1. Üzleti előnyök

A SOA architektúrának számos előnye van. A vállalatoknak manapság előre kell jelezniük a változást, és gyorsan kell alkalmazkodniuk hozzá, hogy versenyképesek maradjanak. A SOA megteremti az ehhez szükséges üzleti agilitás feltételeit. A vállalatok napjainkban nem egy helyen tevékenykednek – az a jellemző, hogy a világ minden táján, szétszórtan végzik a munkájukat. A SOA támogatja az ilyen globális tevékenységet és hálózatokat – a földrajzi hely elveszti a jelentőségét. A SOA sok kisebb folyamatra bontja le a bonyolult üzleti folyamatokat, és ezek a kisebb folyamatok kihagyhatók, vagy bárhonnan és bármilyen sorrendben elérhetők, továbbá emberi beavatkozásra várakozva szüneteltethetők, illetve módosíthatók. Ennek köszönhetően a vállalkozások felkészülhetnek a piaci változásokra és az ellátási lánc igényeire, és gyorsan módosíthatják a tevékenységük munkafolyamatait, hogy megőrizzék a versenyelőnyüket. Az ERP rendszer architektúrájának lehetőséget kell nyújtania a munkafolyamatok összehangolásának módosítására, az egyszerű integrációra, az üzleti partnerekkel folytatott valós idejű együttműködésre, ezenkívül elsőrangú információmegosztási funkciókat kell szolgáltatnia ahhoz, hogy gyors és pontos döntések születhessenek.

A SOA lehetőséget nyújt arra, hogy az üzleti szoftvert az adott cég sajátos folyamataihoz és szabályaihoz igazítsák. Az információk az igényeknek megfelelően jeleníthetők meg, saját munkafolyamatok építhetők fel, és a vállalat szintjén kezelhetők ezek az üzleti szabályok.

A SOA architektúráktól végső soron elvárható, hogy megtakarításokat hozzanak a vállalatoknak.

5.2. Service bus

A service bus olyan közbenső réteg, amely megakadályozza az egyes szolgáltatások egymás közti közvetlen kapcsolatát, és hatékony gerincet képez a rácsatlakozó szolgáltatások számára. Rugalmas infrastruktúra az alkalmazások és szolgáltatások integrációjához a SOA megvalósítása érdekében.

5.3. Szolgáltatás-nyilvántartó

A szolgáltatás-nyilvántartó egy olyan központi hely, ahol a szolgáltatás élettartamának felügyelete történik. Egy telefonkönyvhöz lehet hasonlítani, amely folyamatosan nyilvántartja az éppen futó szolgáltatásokat, és eszközt képez ezek felderítésére. Ez a hatékony, UDDI-konform szolgáltatás-nyilvántartó ellenőrzi, hogy a szolgáltatások megfeleljenek a vállalat előírásainak és szabványai­nak.

5.4. Szolgáltatáskészlet

A szolgáltatáskészlet olyan üzlet méretű láthatóságot nyújt a vállalat eszközei számára, amelynek a használatával az őket leíró metaadatok felügyeletét lehet elvégezni. Ez lehet az üzleti folyamatoktól és webszolgáltatásoktól a mintákig, keretrendszerekig, alkalmazásokig és komponensekig bármi. Az üzlettől függ, hogy egy szervezet hogyan gazdálkodik a szoftverállományával - szolgáltatásgyűjteménnyel és az ezt kiszolgáló eszközökkel –, lehetővé téve ezzel az architektúrához való igazodást.

5.5. SOA irányítás

A SOA megkívánja az egyedi és rugalmas irányítási módszereket. Ahogy fejlődik az üzleti környezet, a hatékony SOA életciklus-irányítás biztosítja, hogy a szolgáltatások tetszőlegesen kombinálhatók legyenek annak érdekében, hogy kielégíthessük a változó üzleti igényeket. A szolgáltatások fejlesztésének és felhasználásának precíz és jól informált menedzselése lehetővé teszi a SOA számára az üzleti értékekhez való folyamatos alkalmazkodást.

Nagyon fontos, hogy a SOA erős irányításra alapuljon, mivel az irányítás hiánya fejlesztési redundanciához, ellenőrizhetetlen infrastruktúrához, nem effektív vagy egyáltalán nem létező újrahasznosíthatósághoz, illetve megkérdőjelezhető megbízhatóságú, működésű és értékű szolgáltatásokhoz vezet. A SOA irányításnak egy dinamikus, zökkenőmentes folyamatnak kell lennie, ami megteremti és fenntartja a közvetlen kapcsolatot az üzleti célok, a szolgáltatások fejlesztése és felhasználása között. Kapcsolódnia kell a már létező irányítási folyamatokhoz, és ki kell terjednie az egész SOA életciklusra.

Az irányítás nem merül ki abban, hogy megtaláljuk a probléma megoldásához szükséges technológiát. A sikeres irányítási rendszer az emberek, a folyamatok és a technológia megfelelő arányú egyvelege. Ahhoz, hogy a megfelelő arányt elérjük, meg kell értenünk az irányítás céljait, illetve azt, hogy ezek a célok hogyan valósíthatók meg. Miután megteremtettük az irányítási célokat, meg kell határoznunk a megvalósításukhoz szükséges irányelveket és folyamatokat. Sok szervezetben a már meglévő szerepek és folyamatok felhasználhatók az újonnan definiált SOA irányítási feladatokra, ezáltal megspórolható egy költséges újraszervezés. A különböző felelősségi körök – mint például a tervezés, fejlesztés - hozzárendelhetők a megfelelő szerepekhez.

A SOA alapja a régmúlt masszív alkalmazások lebontása sok kicsi, szabványokon alapuló, hálózaton keresztül elérhető szolgáltatásokra. Ez a folyamat a meglévő infrastruktúra elemeinek újraszervezését, átcsoportosítását, néhány esetben kivonását teszi szükségessé.

5.5.1. Újrahasznosítás

Alapvető, hogy a szoftverkomponensek újrahasznosíthatók legyenek, mivel az újrahasznosíthatóság a sikeres SOA leglényegesebb tulajdonsága. Ezen nemcsak a szolgáltatások futásidejű újrahasznosíthatóságát értjük, hanem a szolgáltatások létrehozásakor a megfelelő eszközök újrahasznosítását is, mivel ez teszi a szolgáltatásokat az irányítás eszközévé. Ennek elmulasztása komoly zavarokat okozhat az irányítási folyamat hatékonyságában, ezért meg kell követelnünk az újrahasznosítást.

A megkövetelt újrahasznosítás nagyon hatékony irányítási eszköz. A folyamat magában foglalja a megfelelő szabványok, szolgáltatások és a szükséges eszközök kiválasztását és lefoglalását már a projekt tervezési szakaszában. A projektben dolgozó emberek értesítést kapnak erről, és a szükséges eszközöket megkapják a fejlesztési környezethez. Mivel előre tervezzük a komponensek újrahasznosítását, így az nem csak a fejlesztést könnyíti meg, de biztosítja a szabványok, irányelvek és követelmények betartását is.

 

Figyelem! Kérjük, az értelmezésénél a megjelenés időpontját (2010. október 13.) vegye figyelembe!