Kifogástalan modellvezérelt alkalmazásűrlap fenntartása az ALM számára
Ez a cikk a modellvezérelt alkalmazásmegoldások űrlapjainak testreszabásához szükséges egészséges alkalmazáséletciklus-kezelés (ALM) megvalósításának és gyakorlásának különböző forgatókönyveiről nyújt tájékoztatást.
A következő szakaszok ismertetik az űrlapok egyesítésének működését és a testreszabások karbantartását. A modellvezérelt alkalmazásűrlap sikeres ALM-jének fenntartására vonatkozó ajánlásokkal ellátott alapvető fejlesztési forgatókönyveket részletesen tárgyaljuk az egyes alábbi szakaszokban. Minden forgatókönyv tartalmaz követendő lépéseket, amelyek segíthetnek a megfelelő ALM-folyamat végrehajtásában a megoldás vagy modellvezérelt alkalmazás frissítésekor.
Kövesse az alábbi lépéseket az egészséges űrlap ALM-jének megvalósításához ebben a forgatókönyvben.
- Hozzon létre egy új űrlapot FormA néven a fejlesztői környezetben, és végezzen testreszabásokat az űrlapon.
- Hozzon létre egy új megoldást (az alábbi ábrán a Solution A nevet kapta) a fejlesztőkörnyezetben, amely egy nem felügyelt megoldás lesz, és adja hozzá az új űrlapot. Exportálja a megoldást kezeltként. Ez a lépés egy teljes FormXml-t exportál az űrlaphoz.
- A tesztkörnyezetben importálja a 2. lépésből származó kezelt megoldást, amely létrehozza a FormA űrlapot a tesztkörnyezetben. Az alábbi ábrán a FormA űrlapot hozzuk létre a tesztkörnyezetben, és az űrlap felhasználói felülete megjeleníti a Field1 és Field2 mezőt, amelyeket a Solution A adott hozzá az űrlaphoz.
- Ha új fejlesztési (forrás) környezet használatával tovább szabja az 1. lépésben létrehozott űrlapot, akkor importálja a 2. lépésben létrehozott felügyelt A megoldást, győződjön meg róla, hogy a használt fejlesztési példánynál a FormA felügyelt állapotú. Az alábbi ábrán látható módon a kezelt Solution A megoldás importálásra kerül a fejlesztői környezetbe, és az űrlap úgy van beállítva, hogy aktív testreszabásokat hozzon létre. Ezután a FormA hozzáadható egy új, nem kezelt megoldáshoz (Solution B az ábrán), és exportálható kezelt megoldásként a fejlesztői környezetből. Ez a lépés egy differenciált (diff) FormXml-t exportál az űrlap számára.
- A tesztkörnyezetben importálja a 4. lépésből származó kezelt megoldást (Solution B). Amint az az alábbi ábrán látható, a Solution B egy új Field3 mezőt ad hozzá a FormA űrlaphoz, és eltávolítja a Field2 mezőt, amelyet a Solution A adott hozzá. A tesztkörnyezetben lévő űrlap felhasználói felülete ezután megjeleníti a Field3 mezőt és a Field1 mezőt az űrlapon, a Field2 mezőt nem jeleníti meg az összevonás után.
Amint az alábbi ábrán látható, ez nem jól használható ALM-gyakorlat több kezelt megoldás létrehozására a fejlesztői környezetből, ahol az alapmegoldás (Solution A) nem kezelt állapotban van. Ez azért van, mert amikor egy másik nem kezelt megoldást (Solution B) hoz létre a nem kezelt űrlaphoz, a FormXml teljes FormXml-ként kerül exportálásra, nem pedig diff FormXml-ként, ahogy a fenti érvényes forgatókönyvben látható. Ezt követően az olyan módosítások, mint például egy oszlop eltávolítása, nem lépnek életbe.
Kövesse az alábbi lépéseket az egészséges űrlap ALM-jének megvalósításához ebben a forgatókönyvben.
Hozzon létre egy új űrlapot FormA néven a fejlesztői környezetben, és végezzen testreszabásokat az űrlapon.
Hozzon létre egy új megoldást (az alábbi ábrán Solution A), amely egy nem felügyelt megoldás lesz, és adja hozzá az új űrlapot. Exportálja a megoldást kezeltként. Ez a lépés egy teljes FormXml-t exportál az űrlaphoz.
A tesztkörnyezetben importálja a 2. lépésből származó kezelt megoldást, így létrehozza az űrlapot a tesztkörnyezetben. Az alábbi ábrán a FormA űrlapot hozzuk létre a tesztkörnyezetben, és az űrlap felhasználói felülete mutatja a Field1 és Field2 mezőt, amelyeket a Solution A adott hozzá az űrlaphoz.
Amikor az 1. lépésben létrehozott űrlap testreszabását tovább folytatja a javítások segítségével, használja ugyanazt a környezetet, ahol a Solution A megoldás nem kezelt állapotban van, és hozzon létre egy javítást a megoldáshoz, és szabja testre az űrlapot. Ezután exportálja a javítást kezelt megoldásként. Ez a lépés egy teljes formXml-t exportál az űrlaphoz.
A tesztkörnyezetben importálja a 4. lépésből származó kezelt javítási megoldást. Amint az az alábbi ábrán látható, a Solution A javítás egy új Field3 mezőt ad hozzá a FormA űrlaphoz, és eltávolítja a Field2 mezőt, amelyet a Solution A adott hozzá.
Megjegyzés
A teljes formXml-t tartalmazó javításokat a rendszer mindig ahhoz az alapréteghez hasonlítja, amelyből a javítást létrehozták, és mellőzi az alapszintű és az aktuális javítás közötti javításokat. Ennek eredményeképpen a rendszer eltávolítja a Field2 mezőt, mivel az létezik az A. megoldás alaprétegében, a rendszer pedig észleli annak eltávolítását. Ezzel ellentétben a Field3 mezőt ez a javítási megoldás adja hozzá, így azt az azt követő javítások nem tudják eltávolítani. Ennélfogva a javítási megoldással hozzáadott mezők additív jellegűek.
Amikor az 1. lépésben létrehozott űrlap testreszabását tovább folytatja a frissítések segítségével, használja ugyanazt a környezetet, ahol a Solution A megoldás nem kezelt állapotban van, és másolja le a Solution A megoldást, és szabja testre az űrlapot. Ezután exportálja a Solution A frissítését kezelt megoldásként. Ez a lépés egy teljes FormXml-t exportál az űrlaphoz.
A tesztkörnyezetben importálja a 6. lépésből származó kezelt Solution A megoldást. Amint az az alábbi ábrán látható, a Solution A frissítés egy új Field4 mezőt ad hozzá a FormA űrlaphoz, és eltávolítja a Field2 mezőt, amelyet a Solution A adott hozzá. A tesztkörnyezetben lévő űrlap felhasználói felülete ezután megjeleníti a Field1, Field3 mezőt és a Field4 mezőt az űrlapon, a Field2 mezőt nem jeleníti meg az összevonás után.
Kövesse az alábbi lépéseket az egészséges űrlap ALM-jének megvalósításához ebben a forgatókönyvben.
- Szerkesszen egy meglévő kezelt űrlapot a fejlesztői környezetben, amelynek neve ebben a példában FormB, és végezzen testreszabásokat az űrlapon. Vegye figyelembe, hogy a Solution A megoldás már telepítve lett kezelt megoldásként az űrlaphoz a fejlesztőkörnyezetben.
- Hozzon létre egy új megoldást (az alábbi ábrán a Solution B megoldás), amely egy nem kezelt megoldás, és adja hozzá a FormB űrlapot. Exportálja a megoldást kezeltként. Ez a lépés egy differenciált (diff) FormXml-t exportál az űrlap számára.
- A tesztkörnyezetben importálja a 2. lépésből származó kezelt megoldást, így létrehoz egy második megoldási réteget az űrlaphoz. Az alábbi ábrán a FormB megkapja a Solution A és a Solution B megoldások egyesített módosításait a tesztkörnyezetben, és az űrlap felhasználói felülete megjeleníti a Field1 és a Field3 mezőt az űrlapon, azonban a Field2 mezőt nem, amelyet a Solution B távolított el.
- Amikor az 1. lépésben testreszabott űrlap testreszabását tovább folytatja új, felügyelt megoldások használatával, ügyeljen arra a, hogy egy új fejlesztői környezetet használjon, ahol a FormB felügyelt állapotban van. Az alábbi ábrán látható módon a Solution A és a Solution B kezelt megoldásokat importáljuk az új fejlesztőkörnyezetbe. A FormB aktív testreszabásokat hoz létre, amelyek aztán hozzáadhatók egy új megoldáshoz (Solution C megoldás az ábrán), és exportálhatók kezelt megoldásként.
- A tesztkörnyezetben importálja a 4. lépésből származó kezelt Solution C megoldást. Amint az az alábbi ábrán látható, a Solution C egy új Field4 mezőt ad hozzá a FormB űrlaphoz, és eltávolítja a Field3 mezőt, amelyet a Solution B adott hozzá. A tesztkörnyezetben lévő űrlap felhasználói felülete ezután megjeleníti a Field1 mezőt és a Field4 mezőt az űrlapon, azonban a Field2 és a Field3 mezőt nem jeleníti meg az összevonás után.
Amint az alábbi ábrán látható, ez nem jól használható ALM-gyakorlat több kezelt megoldás létrehozására abból a fejlesztői környezetből, amely tartalmaz egy másik, ugyanahhoz az űrlaphoz létrehozott nem kezelt megoldást. Figyelje meg, hogy a Solution B megoldás nem kezelt állapotban van. Amikor létrehoz egy másik, nem kezelt megoldást (Solution C) a FormB űrlap számára, a FormXml a fenti forgatókönyv 4. lépése szerint diff FormXml-ként kerül exportálásra. Azonban a FormB tartalmazza a Solution B módosításait is, amelyeket az új módosítások felülírnak.
Például, amint az alábbi ábrán látható, a Solution B megoldásban a FormB-hez hozzáadódik a Field3. De ha most létrehoz egy új Solution C megoldást ebben a környezetben, a Solution B nem kezelt állapotában, és eltávolítja a Field3 mezőt, akkor a Field3 mező a fejlesztői környezetben is eltávolításra kerül. A megoldás exportálásakor a diff FormXml-ben nem lesz nyomon követhető a Field3, mivel az oszlop hozzáadása és eltávolítása ugyanazon az aktív rétegen történt. Ez azt jelenti, hogy amikor a kezelt Solution C megoldás importálásra kerül a tesztkörnyezetbe, az űrlap továbbra is megjeleníti a Field3 mezőt, mivel a diff FormXml soha nem rögzíti azt eltávolítottként (ahogyan a fenti jól használható űrlap ALM forgatókönyvének 5. lépésében el lett távolítva). Az űrlapok ilyen módon történő testreszabása azt eredményezi, hogy a fejlesztői környezet nem lesz összhangban a tesztkörnyezettel.
Kövesse az alábbi lépéseket az egészséges űrlap ALM-jének megvalósításához ebben a forgatókönyvben.
Szabjon testre egy meglévő kezelt űrlapot a fejlesztői környezetben, amelynek neve ebben a példában FormB, és végezzen testreszabásokat az űrlapon. Vegye figyelembe, hogy a Solution A megoldás már telepítve lett kezelt megoldásként az űrlaphoz a fejlesztőkörnyezetben.
Hozzon létre egy új megoldást (Solution B), amely egy nem felügyelt megoldás lesz, és adja hozzá az új FormB űrlapot. Exportálja a megoldást kezeltként. Ez a lépés egy diff FormXml-t exportál az űrlap számára.
A tesztkörnyezetben importálja a 2. lépésből származó kezelt Solution B megoldást, így létrehoz egy második megoldási réteget az űrlaphoz. Az alábbi ábrán a FormB megkapja a Solution A és a Solution B megoldások egyesített módosításait a tesztkörnyezetben. Továbbá a FormB űrlap felhasználói felülete megjeleníti a Field1 és a Field3 mezőt az űrlapon, azonban a Field2 mezőt nem, amelyet a Solution B távolított el.
Amikor az 1. lépésben létrehozott űrlap testreszabását tovább folytatja egy javítási megoldás segítségével, ugyanazt a fejlesztőkörnyezetet használhatja, mint az 1. lépésben, ahol a Solution B megoldás nem kezelt állapotban létezik. Amint az alábbi ábrán látható, a Solution A kezelt állapotban van, a Solution B pedig nem kezelt állapotban. Az űrlap testreszabását tovább folytatjuk, és létrehozunk egy javítást a Solution B megoldáshoz, amelyhez hozzáadjuk az űrlapot, és exportáljuk azt kezelt javítási megoldásként. Ez a lépés exportál egy diff FormXml-t.
A tesztkörnyezetben importálja a 4. lépésből származó kezelt Solution B megoldást. Amint az az alábbi ábrán látható, a Solution B javítás egy új Field4 mezőt ad hozzá a FormB űrlaphoz, és eltávolítja a Field3 mezőt, amelyet a Solution B adott hozzá.
Megjegyzés
A javítások additív jellegűek, és nem képesek eltávolítani az űrlapról az olyan összetevőket, mint például az oszlopok. Tehát a Field3 mező nem kerül eltávolításra az űrlapról. Az űrlap felhasználói felülete a tesztkörnyezetben mostantól a Field1, Field3, and Field4 mezőket jeleníti meg az űrlapon, azonban a Field2.
Amikor az 1. lépésben létrehozott űrlap testreszabását tovább folytatja a frissítések segítségével, használja ugyanazt a környezetet, ahol a Solution B megoldás nem kezelt állapotban van, és másolja le a Solution B megoldást, és szabja testre a FormB űrlapot. Exportálja a frissítést kezelt megoldásként. Ez a lépés egy diff FormXml-t exportál az űrlap számára.
A tesztkörnyezetben importálja a 6. lépésből származó Solution B frissítési megoldást. Amint az alábbi ábrán látható, a B megoldás frissítése egy új Field5 mezőt ad hozzá a FormB űrlaphoz, és eltávolítja a B megoldás által hozzáadott Field3 mezőt. A tesztkörnyezetben az űrlap felhasználói felülete most a Field1, a Field4 és a Field5 mezőt mutatja az űrlapon, de a Field2 és a Field3 mezőt eltávolította.
A nem felügyelt megoldások és testreszabások fenntartása egy új űrlaphoz több fejlesztőkörnyezetben is
Kövesse az alábbi lépéseket az egészséges űrlap ALM-jének megvalósításához ebben a forgatókönyvben.
- Az 1. fejlesztőkörnyezetben hozzon létre egy új FormA űrlapot, és végezzen rajta testreszabásokat.
- Hozzon létre egy megoldást (az alábbi ábrán látható „A” megoldást), amely egy nem felügyelt megoldás lesz, és adja hozzá az új űrlapot. Exportálja a megoldást nem felügyeltként. Ez a lépés egy teljes FormXml-t exportál az űrlaphoz.
- Importálja a 2. lépésből származó nem felügyelt megoldást a 2. fejlesztőkörnyezetbe, amely létrehozza az űrlapot a 2. fejlesztőkörnyezetben. Az alábbi ábrán létrejön a FormA űrlap, és az űrlap felhasználói felülete megjeleníti a Field1 és Field2 mezőt, amelyeket az „A” megoldás adott hozzá az űrlaphoz.
- Az űrlapon további testreszabásokat eszközölhet a 2. fejlesztőkörnyezetben aktív testreszabásokat végezve a környezetben, például egy új oszlopot adhat hozzá Field3 néven. A FormA űrlapon most a Field1, a Field2 és a Field3 mezők jelennek meg.
- Az 1. fejlesztőkörnyezetben további testreszabásokat is végezhet az űrlapon a Field4 hozzáadásával. Az 1. fejlesztőkörnyezetben lévő űrlap felhasználói felülete mostantól a Field1, Field2 és Field4 mezőket jeleníti meg.
- Exportálja a nem felügyelt „A” megoldást az 5. lépésben végrehajtott módosításokkal. Ez a lépés egy teljes FormXml-t exportál az űrlaphoz.
- A 2. fejlesztőkörnyezetben importálja a nem felügyelt „A” megoldás frissítését a 6. lépésből. Mivel az importált megoldás tartalmazza a FormA űrlaphoz tartozó teljes FormXml-fájlt, az felülírja az 1. fejlesztőkörnyezetben végzett aktív testreszabást. Így az űrlap most már csak a Field1, Field2 és Field4 mezőket jeleníti meg, a Field3 mezőt nem, amely az 1. fejlesztőkörnyezetben végzett további aktív testreszabás volt. Ez a viselkedés minden olyan nem felügyelt megoldás importálásakor előfordul, amely az űrlap teljes FormXml-fájlját tartalmazza.
A nem felügyelt megoldások és testreszabások fenntartása egy meglévő űrlaphoz több fejlesztési környezetben is
Kövesse az alábbi lépéseket az egészséges űrlap ALM-jének megvalósításához ebben a forgatókönyvben.
- Az 1. fejlesztőkörnyezetben szabjon testre egy meglévő űrlapot, amelynek neve ebben a példában FormB. Ezután végezzen testreszabásokat az űrlapon.
- Hozzon létre egy megoldást (az alábbi ábrán látható „B” megoldást), amely egy nem felügyelt megoldás lesz, és adja hozzá a FormB űrlapot. Exportálja a megoldást nem felügyeltként. Ez a lépés egy diff FormXml-t exportál az űrlap számára.
- A 2. fejlesztőkörnyezetben importálja a nem felügyelt megoldást a 2. lépésből, létrehozva ezzel egy második megoldásréteget az űrlaphoz. A FormB felhasználói felülete az űrlap egyesítését követően a Field1, a Field2 és a Field3 mezőket jeleníti meg.
- Az űrlapon további testreszabásokat eszközölhet a 2. fejlesztőkörnyezetben aktív testreszabásokat végezve a környezetben, például egy új oszlopot adhat hozzá Field4 néven. A FormB űrlapon most a Field1, a Field2, Field3 és a Field4 mezők jelennek meg.
- Az 1. fejlesztőkörnyezetben további testreszabásokat végezhet az űrlapon egy új oszlop hozzáadásával Field5 néven. Az 1. fejlesztőkörnyezetben lévő űrlap felhasználói felülete mostantól a Field3 és a Field5 mezőket jeleníti meg.
- Exportálja a nem felügyelt „B” megoldást az 5. lépésben végrehajtott módosításokkal. Ez a lépés egy diff FormXml-t exportál az űrlap számára.
- A 2. fejlesztőkörnyezetben importálja a nem felügyelt „B” megoldás frissítését a 6. lépésből. Mivel az importált megoldás tartalmazza a FormB űrlaphoz tartozó differenciális FormXml-fájlt, az egyesíti az 1. fejlesztőkörnyezetben végzett aktív testreszabást. Az űrlapon most a Field1, Field2, Field3, Field4 és Field5 mezők jelennek meg. Ez a viselkedés minden olyan nem felügyelt megoldás importálásakor előfordul, amely az űrlap differenciális FormXml-fájlját tartalmazza.
- Ha a 7. lépésben űrlapegyesítés nem az, amit szeretne, annak ellenére, hogy a nem felügyelt megoldással importál egy differenciális FormXml-t, és felül kívánja írni a 2. fejlesztőkörnyezetben végzett aktív testreszabásokat, akkor távolítsa el a FormB aktív rétegét. További információ: Nem felügyelt réteg eltávolítása.
- Exportálja a nem felügyelt „B” megoldást az 5. lépésben végrehajtott módosításokkal. Ez a lépés egy diff FormXml-t exportál az űrlap számára.
- A 2. fejlesztőkörnyezetben importálja a nem felügyelt „B” megoldás frissítését a 9. lépésből. Mivel a 2. fejlesztőkörnyezetben nincs aktív réteg az űrlaphoz (lásd a 8. lépést), a nem felügyelt „B” megoldás összes módosítása importálásra kerül, annak ellenére, hogy a FormB űrlaphoz a differenciális FormXml-t importálja. Így az űrlapon már csak a Field1, Field2, Field3 és Field5 mezők jelennek meg. Ez a viselkedés minden olyan nem felügyelt megoldás importálásakor előfordul, amely az űrlap differenciális FormXml-fájlját tartalmazza. Ugyanazt az eredményt kapjuk, mint a A nem felügyelt megoldások és testreszabások fenntartása egy meglévő űrlaphoz több fejlesztési környezetben is forgatókönyv 7. lépésében.
Minden exportált megoldáscsomag tartalmaz egy customizations.xml fájlt. A megoldásokban található minden űrlap esetén a kapcsolódó űrlapdefiníció a customizations.xml fájl formXml szakaszán belül található. A FormXml lehet teljes vagy differenciális (diff).
A nem felügyelt állapotú űrlap megoldásának exportálásakor kapott FormXml-t teljes FormXml-nek nevezzük. A teljes azt jelenti, hogy a teljes űrlapdefiníciót tartalmazza. Új űrlap létrehozásakor és exportálásakor az űrlap mindig teljes FormXml lesz, mert a környezetből exportált űrlap nem felügyelt, valamint létrehozási állapotban van. Ha további megoldásokat exportál ebből a környezetből, akkor az egy teljes FormXml-et is tartalmazni fog. Mivel a solutionaction
attribútum egy diff FormXml-t jelöl, az exportált megoldás customization.xml fájljában lévő teljes FormXml nem tartalmaz semmilyen solutionaction
attribútumot.
A felügyelt állapotú űrlap megoldásának exportálásakor kapott FormXml-t differenciális vagy diff FormXml-nek nevezzük. A diff azt jelenti, hogy a FormXml csak az adott környezet aktív testreszabásaiban végrehajtott módosításokat tartalmazza, és nem a teljes űrlapdefiníciót. Amikor egy meglévő felügyelt űrlapot testreszab, majd exportál, az űrlap mindig egy diff FormXml lesz, mivel csak az aktív módosításokat tartalmazza. Az exportált megoldás customization.xml fájljában lévő diff FormXml tartalmazni fog olyan solutionaction
attribútumokat, amelyek meghatározzák, hogy mik a módosítások, például Hozzáadva, Eltávolítva, Módosítva.
A diff FormXml biztosítja, hogy a megoldás csak azokat a módosításokat fejezze ki, amelyekre az alkalmazásnak szüksége van, és kevésbé befolyásolják más rétegek módosításai. A diff FormXml használatával a megoldás kisebb méretű lesz, ezáltal gyorsabban importálható.