Programování

Vstupte do architektury a procesu J2EE

V komerčním světě používáme Java 2 Enterprise Edition (J2EE) k řešení obchodních problémů, k vývoji komerčního softwaru nebo k poskytování smluvních služeb pro projekty jiných podniků. Pokud chce společnost vytvořit web elektronického obchodu pomocí víceúrovňové architektury, obvykle zahrnuje manažery, architekty, designéry, programátory, testery a odborníky na databáze po celou dobu životního cyklu vývoje.

Aby různé strany mohly pracovat efektivně a efektivně, často potřebují proces vývoje softwaru. Některé klasické vývojové procesy zahrnují model vodopádu, rychlý vývoj aplikací (RAD) a extrémní programování. V tomto článku se zaměříme na populární proces softwarového inženýrství, Rational Unified Process (RUP). RUP poskytuje disciplinovaný přístup k přiřazování úkolů a odpovědností různým rolím. Jeho cíl zajišťuje, že vyrábíme vysoce kvalitní software, který splňuje potřeby uživatelů v předvídatelném harmonogramu a rozpočtu.

RUP používám pro vývoj J2EE ze tří důvodů. Za prvé, RUP je zaměřen na architekturu; vyvíjí prototyp spustitelné architektury před přidělením prostředků pro vývoj v plném rozsahu. Zadruhé, RUP je iterativní a založený na komponentách. Základní úroveň architektury často zahrnuje rámec nebo infrastrukturu, která usnadňuje přidávání komponent prostřednictvím iterací k přizpůsobení a rozšíření funkčnosti systému bez ovlivnění zbytku systému. Zatřetí, RUP využívá k vizuálnímu modelování architektury a komponent systému standardní jazyk UML. RUP má čtyři různé vývojové fáze: zahájení, zpracování, konstrukce a přechod. Tento článek se však zabývá osmi základními aktivitami zapojenými do vývoje J2EE z technického hlediska způsobem, který udržuje architektonické zaměření.

I. Analýza požadavků

Analýza požadavků popisuje, co by systém měl nebo neměl dělat, aby vývojáři a zákazníci mohli vytvořit počáteční obchodní smlouvu. Funkční požadavky můžete dokumentovat v obchodních konceptech, glosářích domén, případech použití a maketách uživatelského rozhraní. Nefunkční požadavky, jako je výkon a transakce, určíte v doplňkovém dokumentu s požadavky. Maketu UI na vysoké úrovni můžete vytvořit na papíře nebo v HTML podle toho, jak hluboce jste do projektu zapojeni.

Obrázek 1 ukazuje dva ukázkové případy použití typického systému elektronického obchodování. The viewOrder případ použití nám sděluje, že se uživatel přihlásí do systému prostřednictvím webového rozhraní, zobrazí seznam objednávek a kliknutím na odkaz zobrazí podrobnosti objednávky konkrétní nákupní objednávky. The addLineItems případ použití nám říká, že uživatel prochází katalog produktů, vybírá zajímavé produkty a přidává je k nákupní objednávce.

II. Objektově orientovaná analýza

Analytici generují modely problémových domén: třídy, objekty a interakce. Vaše analýza by neměla obsahovat žádné technické ani implementační podrobnosti a měla by obsahovat ideální model. Analýza objektů vám pomůže porozumět problému a získat znalosti o problémové doméně. Musíte udržovat model čisté domény bez technických podrobností, protože obchodní proces se mění mnohem pomaleji než informační technologie.

Tyto první dva kroky - analýza požadavků a objektová analýza - nejsou specifické pro J2EE; jsou docela obecné pro mnoho objektově orientovaných metodik. Obrázek 2 ukazuje model analýzy objektů na vysoké úrovni vzorové aplikace v obchodě se zvířaty. Ilustruje hlavní koncepty, které jsme identifikovali z případů použití analýzy požadavků. Tyto koncepty modelujeme do objektů a identifikujeme jejich vztahy.

Výsledkem požadavků a analýz objektů je vstupní bod pro vývoj architektury J2EE. Chcete-li vyvinout architekturu, vyberte pro návrh, implementaci, testování a nasazení objektu svislou část - často kritickou část, jako je objektový model objednávky domény. (Vertikální část, koncept RUP, je malá část systému. Výchozím bodem je podmnožina případů použití, jak je znázorněno na obrázku 1, a modely analýzy domény, jak je znázorněno na obrázku 3. Implementace vertikální části vede k plně funkčnímu minisystému zahrnujícímu všechny úrovně, jako jsou stránky JavaServer Pages (JSP) na úrovni UI, obchodní objekty střední úrovně, jako jsou Enterprise JavaBeans (EJBs), a často back-endové databáze.) Můžete použít zkušenosti získané z prototyp k objektům domény a nechejte tyto znalosti sloužit jako vodítko návrhu pro fázi návrhu objektu.

$config[zx-auto] not found$config[zx-overlay] not found