You are currently browsing the category archive for the 'eclipse process framework' category.

OMG vydala prípadovú štúdiu zaoberajúcu sa posúdením modelovania Enterprise Architektúry (EA) TOGAF (konkrétne časti Architecture Development Method, t.j. ADM) pomocou OMG metamodelov, predovšetkým SPEM.

Z pohľadu implementácie informačných systémov podľa princípov Enterprise Architecture vidím prínos použitia špecifikácie SPEM v2.0 pri definovaní procesného modelu (v prípade TOGAF ide o definovanie výstupu B. fázy, t.j.: tvorbu Business architecture) a následného použitia tohoto modelu pri rozpracovaní do Dátovej a Aplikačnej architektúry.

Poznámka na okraj: jeden z autorov spomínanej štúdie naštartoval nový projekt, kde zachytáva Architecture Development Method časť TOGAF-u používajúc EPFC.

Ďalšie zdroje k téme

Špecifikácia SPEM v2.0 (Software Process Engineering Metamodel) je aktuálne je v stave Beta2, čo je skoro finálne vydanie danej špecifikácie (nutné už len schválenie OMG’s business committee a hlasovanie na board of directors).

25. septembra bol vydaný Rational Method Composer v7.2.

Rational Method Composer (RMC) je komerčná verzia produktu Eclipse Process Framework Tool (EPFC) rozšírená o niektoré funkcionality. Vývojový model je silne podobný vývojovému modelu Linux distribúcií typu Fedora -> RedHat Enterprise Linux, či openSUSE -> SUSE Linux Enterprise, t.j. základom je komunitná opensource verzia produktu (v tomto prípade ako súčasť opensource projektu EPF) silne podporovaná materskou spoločnosťou daného produktu (v tomto prípade IBM), vyvíjaná otvorene a v spolupráci s komunitou. Samotný vývoj a vydávanie verzii produktu prebieha tak, že nové funkcionality sa najprv vydajú ako súčasť opensource verzie produktu, po testovaní a doplnení komunitou sa podľa zváženia objavia v komerčnej verzii produktu. Tento druh vzťahu je bližšie popísaný tu.
Keďže sú RMC a EPFC modelovacie nástroje, podstatná je používaná špecifikácia ukladaných dát samotného modelu. Tou je SPEM 2.0 (Software Process Engineering Metamodel) o ktorej som už písal a ktorá je aktuálne v schvaľovaní (Beta2). Samotný posun vývoja EPFC a RMC je vidieť práve v posune podporovanej špecifikácie, t.j. kompatibilite uložených dát modelu:

  • EPFC 1 M3 je kompatibilný s RMC 7.0
  • EPFC 1.0.x je kompatibilný s RMC 7.1 and 7.11
  • EPFC 1.2 je kompatibilný s RMC 7.2

Medzi kľúčové témy zlepšenia produktu RMC vo verzii 7.2 patrili (kompletný zoznam definoval P. Haumer):

  • poskytnúť viac možností prezentácie procesného modelu formou integrácie RMC s projektom Eclipse BIRT (projekt tvorby reportov pod Eclipse) umožňujúc publikovanie modelu v používateľsky definovanom formáte podporujúc rôzne scenáre použitia (napr.: publikovanie procesu pre auditora)
  • zvýšenie škálovateľnosti RMC so zreteľom na podporu distribuovaných tímov formou workspace, ktoré riadia Method Plugins z rôznych zdrojov a fyzických lokácií
  • poskytnúť zjednodušené GUI pre projektových manažérov za účelom prispôsobovania procesného modelu na projekty
  • poskytnúť novú a vylepšenú integráciu s externými sw nástrojmi danej oblasti (napr.: IBM Rational Portfolio Manager and IBM Websphere Business Modeler)

RMC v 7.2 som si stiahol a chystám sa na otestovanie vyššie spomínaných zlepšení, ktoré nie sú dostupné v EPFC v1.2. Medzi zmeny, ktoré sú hneď vidieť a je nutné otestovať však možno zaradiť:

  • zmenená štruktúra Method Plugins (metodika RUP je súčasťou RMC), ktorá si zaslúži zamyslenie
  • nové perspektívy Report Design a Tailoring

Ďalšie zdroje:

SPEM a EPFC

Špecifikácia SPEM (Software Process Engineering Metamodel) je špecifikácia určená pre popisovanie procesov softvérového vývoja. Aktuálne pripravovaná verzia (2.0) slúži ako podklad pre implementáciu pomocou nástroja EPF Composer (EPFC). Zaujímavosťou je, že vývoj nástroja EPFC prebieha súbežne s prípravou, resp. schvaľovaním spomenutej špecifikácie SPEM 2.0, čím sa ich vývin vzájomne ovplyvňuje. Aj preto je poučné sledovať priebeh schvaľovania danej špecifikácie a zozbierané pripomienky.

Priebeh a aktuálny stav schvaľovania SPEM 2.0

Samotný priebeh schvaľovania OMG špecifikácie je popísaný v OMG Specification Tutorial. Špecifikácia SPEM 2.0 je aktuálne v stave Final Adopted Specification, čo znamená, že príprava bola ukončená a špecifikácia bola predložená na pripomienkovanie. Zozbierané pripomienky (termín bol 31. máj 2007) spracuje skupina Finalization Task Force (FTF) do správy FTF Report (termín je 05. október 2007) a zabezpečí prechod do stavu Proposed Available Specification. Následne skupina Revision Task Force (RTF) posúdi a rozhodne o zozbieraných pripomienkach, pričom výsledkom môže byť uzavretie pripomienky alebo odporučenie pre nové doplnenie/spracovanie (Request for Proposal). Výsledná správa t.j. RTF Report (súčasť finálneho procesu revízie špecifikácie) obsahuje zoznam aplikovaných a nutných zmien do predloženej verzie špecifikácie a je zároveň podkladom k rozhodovaniu o uvoľnení finálnej verzie OMG špecifikácie.

Prečo čítať špecifikáciu SPEM?

Prečo je dobré čítať spomínanú špecifikáciu? Ako príklad môže slúžiť neustály zdroj nedorozumenia vo výklade definície následnosti prebiehajúcich činností v procesoch, t.j. atribútoch prechodu medzi činnosťami typu finishToStart, finishToFinish, startToStart a startToFinish. Jednoznačný výklad k tejto téme je dostupný na strane 66, kapitola 9.14 Work Sequence Kind.

Ďalšie zdroje k článku

01.08. 2007 bola vydaná nová verzia nástroja pre metodické modelovanie procesov - EPFC (verzia 1.2.0). O novinkách, ktoré táto verzia prináša, som už písal. Kompletný zoznam je dostupný pod touto linkou.

Chyba a jej opravenie

Pri testovaní danej verzie EPFC som narazil na veľmi nepríjemnú chybu (viď. moje hlásenie v bugs.eclipse.org), ktorá zabraňovala akejkoľvek aktualizácii/rozširovaniu EPFC, napr. inštalácii klienta (Subclipse alebo Subversive) pre prácu so systémom riadenia verzií Subversion. Odstránenie chyby trvalo 2 dni od nahlásenia chyby, vrátane aktualizácie súboru EPFC 1.2.0 na stiahnutie. V prípade, že ste si stiahli EPFC pred 03.08.2007, je dostupný patch.

Materiály o novinkách

Na stránke projektu sa objavili materiály k vydanej novinke, konkrétne popis najdôležitejších zmien (prezentácia vo formáte pdf) a video k novinám v EPFC 1.2 (nutná inštalácia klienta pre prezeranie daného videa).

Zdroje

EPFC vnútorne používame, a tak je pre nás nevyhnutné sledovať jeho vývoj. Aktuálne stále používame verziu 1.0.2, hlavne z dôvodov nekompatibility metadát modelu medzi jednotlivými verziami a nedostatku času na testovanie jednotlivých milestone verzií.

Nedávno (18.06.) vyšiel ďalší milestone (M3) verzie 1.2.0, ktorý dokončil implementáciu zvolenej funkcionality pre verziu 1.2.0, t.j. do finálnej verzie už nepribudne nová funkcionalita, len opravy známych a nahlásených chýb. Zoznam dokončených funkcií je potešujúci, hlavne:

  • doplnenie vyhľadávania nad publikovaným modelom (ako súčasť publikovaného modelu),
  • lepšie editovanie Breakdown štruktúr,
  • podpora používania pohľadu na prvky modelu cez kategórie v konfigurácii Method Plugin,
  • možnosť používania bodiek v názvoch Method plugins,
  • podpora zoraďovania v Custom categories,
  • zlepšenia Rich text editor-a,
  • odstránenie GUID z publikovaných názvov súborov,
  • atď.

Pri pohľade na známe otvorené chyby verzie 1.2.0 môžme predpokladať, že nová verzia bude vypustená čoskoro. A to je potešujúca správa na dnešný deň. :-)

Opätovne vyberám z diania na mailing listoch EPF …

Používateľská konferencia

Vývojárska konferencia

Poznámka: k mojim príspevkom neuvádzam linky nakoľko reagujem pri písaní tohto článku a chvíľu trvá kým sa publikujú vo web rozhraní mailovej konferencie.

Konečne som sa opätovne dostal k čítaniu diskusie na eclipse.technology.epf, čo je používateľská konferencia k nástroju pre metodické modelovanie procesov - EPF. Tu je výber toho najzaujímavejšieho:

  • -> Saravanan Sankar z Cognizant: “Activity Entry & Exit State
    Sarav sa spýtal prečo je zadávanie vstupno/výstupných stavov aktivít v hierarchii WBS možné len ako text (String). Po osobných testoch (prikladám ukážku) som dospel k názoru, že hovorí o vstupno/výstupných stavoch výstupu (WorkProduct) v aktivite definovanej v prvku typu Processes (Delivery Process, Capability Pattern). Peter Haumer potvrdil moju domnienku a doplnil, že riešenie stavov pre výstup (Workproduct) - “state-transition models for work products” bolo z EPFC z časových dôvodov stiahnuté, ale je obsiahnuté v návrhu špecifikácie SPEM 2.0, v časti Process Behavior. Peter deklaroval snahu o doplnenie danej funkcionality do EPFC. Toto by mohla byť cesta ako časom dostaťdo EPFC rozumnejšie modelovanie stavov výstupov (WorkProduct), t.j. akési State Machine Diagram (UML2)
    Work Product Descriptor - Activity Entry/Exit State
  • -> Jan Masaryk: “Again to translation topic
    Mauro pokračoval v mojich otázkach ohľadom lokalizácie nástroja a publikovaného modelu. Shilpa (vývojár EPFC) ho informoval o dostupnej lokalizácii pre 9 jazykov ako balíčka “NLS Pack for EPF 1.0.1 and 1.0.1.x“. Po prezretí vývojových úložísk projektu s radosťou konštatujem, že sa samotná lokalizácia oddelila od zdrojových súborov nástroja aj formou oddeleného uloženia (vetva nl_features a nl_plugins). Diskusia sa ďalej uberala smerom k lokalizácii/prekladom metodiky OpenUP, Ricardo deklaroval prijatý konsenzus spustenia lokalizácií (na báze dobrovoľníkov) až po vydaní verzie 1.0. Bližšie k plánu vývoja OpenUP tu.
    Položil som otázku ohľadom spôsobu lokalizácia EPFC a publikovania za pomoci uverejneného NLS Pack.
  • -> Charles Edwards: “Could we add a stereotype on the Guidance type called ‘Principle’?”
    Charles sa informoval o možnostiach rozšírenia stereotypov prvku Guidance. Momentálne to nie je možné, ale je to už v požiadavkách na EPFC, takže by to malo by dostupné v ďalších verziách.
  • -> Kannoori: “Decision Flow Based Process
    Kannoori odpovedal na otázku ohľadom tvorby diagramu s použitím prvku Decision. Konštatoval, že momentálne nie je dostupné priame označenie prvkov typu Decision a linky Control flow. Odporúča použiť prvok Free text. Daná požiadavka už je zaregistrovaná v bugzille EPFC.
  • -> Peter Haumer: “Re: Custom Categories and Guidance Type of: Term Definition
    Peter opravil svoju odpoveď ohľadom linkovania prvku Term definition. Ide o chybu nástroja pri použití filtra All. Riešením je použitie filtra Guidance. Ďalej upozornil na rozumné využívanie prvku typu Term a odporučil zváženie použitia prvku typu Concept.
  • -> Aitor Bediaga: “Define steps in a new task descriptor
    Aitor nevedel ako pridať Steps do vytvoreného Task Descriptora. Shilpa odpovedal, že Steps pre nový Task dexcriptor sú pridané len v prípade ak linkovaný prvok Task dajaké Steps obsahuje. Peter ho odkázal na výborne video ukazujúce ako to robiť. Dopĺňam, že v prípade použitia linkovania typu Extend, by mali ísť dopĺňať nové Steps. Neskúšal som to však.
  • -> Saravanan Sankar: “Guidance Attachment
    Sarav sa pýtal na dôvody prečo nie je možné pridávať prílohy a odkaz na externé zdroje (ako štruktúrovaný údaj, t.j. položku formulára) ku všetkým druhom prvkov typu Guidance (u Template to ide). Peter odpovedal, že to nie je želaný spôsob práce vzhľadom na princípy tvorby modelu v EPFC a poukázal na možnosť linkovania v Rich Text Editor cez Add link. Rob požiadavku Sarav podporil, zdôrazňoval potrebu zachytenia externého zdroja pomocou URL a nepáčil sa mu odporúčaným postup vloženia tejto linky pomocou Rich text editora. Osobne by som uvítal možnosť pripojenia súboru k prvku example, čo som aj v konferencii uviedol.
  • -> Srinath: “is ther any Workflow engine in epf?
    Srinath sa pýtal, či je dostupný “runtime engine” pre procesy namodelované v EPFC. Peter objasnil, že táto funkčnosť nie je v primárnych cieľoch projektu (EPFC je určený na metodické modelovanie), pričom by uvítal prispetie do projektu týmto smerom. Pre potencionálnych záujemcov ponúkol, že má zopár nápadov ako by to bolo možné. Sarav odpovedal, že sa zaoberajú možnosťami automatizácie a naznačil dva možné smery implementácie: rozšírenie SPEM špecifikácie alebo mapovanie na BPEL. Bol spomenutý pokus implementácie pomocou Microsoft Workflow Foundation a návrh cez ActiveBPEL.
  • -> Jim Ruehlin: OpenUP/Basic 0.9 Alignment Review
    Prebiehalo ďalšie review obsahu OpenUP/Basic.
  • -> Jim Ruehlin: “Please Provide Feedback on OpenUP
    Jim vyzval ľudí používajúcich OpenUP/Basic alebo tých, ktorí o používaní uvažovali, aby poslali spätnú väzbu na obsah metodiky. Pripojil aj zopár otázok, ktoré by mali pomôcť sumarizácii danej väzby. V rámci odpovede Roba bolo zaujímavé potvrdenie náročnosti udržiavania metodiky pomocou systému typu wiki.
  • -> Claude Aubry: “plugin and tool mentors
    Claude popísal spôsob ako pripájať prvky typu Tool mentor k prvkom typu Task v prípade, že pre nástroje existuje samostatný Method plugin a opýtal sa na jednoduchší spôsob. Peter mu jeho postup potvrdil.
  • -> Brian Lyons: Reference to EPF & OpenUP in Forrester Teleconference”
    Brian odkázal na prezentáciu EPF/OpenUP a upozornil na nedostatky prezentácie.
  • -> Saravanan Sankar: “Search Feature
    Sarav upozornil na nedostupnosť funkcionality vyhľadávania v publikovanom modele i napriek odkazovaniu na danú funkcionalitu v nápovede EPFC. Shilpa odpovedal, že daná funkcionalit nie je dostupná v open source verzii. Mark vysvetlil dôvody, odkázal na danú požiadavku v bugzille a navrhol ako to napraviť: 1. hlasovať za danú funkcionalitu (mailing list, bugzilla) alebo 2. napísať daný kód (jednoznačne preferovaná možnosť :-)).
  • -> Charles Edwards: “Service Operation idea built into EPF?
    Charles sa zamýšla nad použitím EPFC na definovanie “business services“, prikladá aj diagram metamodelu (Service Defition Document). Zaujímavá úvaha, zatiaľ bez odpovede.
  • Ricardo Balduino: “XP Plug-in 0.1 available
    Ricardo oznámil dostupnosť prvej verejnej verzii metodiky XP ako EPFC library. Po prvom zhliadnutí potvrdzujem, že ide naozaj o prvú verziu.
  • -> Scott: “EPF and Subversion/Subclipse
    A najzaujímavejší príspevok som si nechal na záver. Ako bonus. :-) Scott zhrnul ich skúsenosti s používania EPFC a Subversion (cez eclipse plugin Subclipse 1.1.8). Priklonili sa k používaniu Lock funkcionality nad každým súborom, ktorý bude editovaný (na záver prikladá nastavenie automatického zamykania súborov a pridávania properties). Zároveň poukazuje na skúsenosti s používaním TortoiseSVN v kombinácii s Subclipse. Pochvaľuje si udržiavanie presunutia/premenovania prvkov modelu (podporované v subversion). Pri navrhnutom spôsobe používania narazili na problém premenovávania súborov ak je premenovávaný prvok (jeho súbor) zamknutý, čo je podľa mňa problém navrhnutého spôsobu práce a vedie k nekonzistencii modelu (ale dá sa pomerne jednoducho opraviť). Neskôr Scott oznamuje, že Subclipse verzia 1.1.9 má nezvyčajné problémy (závislosť na Mylar). Túto nepríjemnú závislosť potvrdzujem (pričom Mylar nie je možné nainštalovať do EPFC 1.0.1.2) a pridávam problémy s nutnosťou zamykania súborov s ktorými chce používateľ pracovať. Na záver Scott ponúka spôsob nainštalovania Subclipse 1.1.9 aj s Mylar (vynikajúci plugin odporúčam pozrieť) !!! Osobne som to neskúšal, takže nemôžem potvrdiť. Mark neskôr opravuje Scotta, že Subclipse samotný nemá závislosť na Mylar, čo neskôr Scott potvrdzuje (asi to skúsim ešte raz a pozorne :-)). Mark kritizuje navrhovaný spôsob fungovania, nakoľko ide proti samotným princípom Subversion (ide o optimistický model verzionovania) a pýta sa na zložitosť riešenia konfliktov. Scott poukazuje na odporúčanie Jima nepoužívať zlučovanie súborov (merging). Vzhľadom na to, že Subversion používame aj my, prispel som do diskusie zopár poznámkami.

Doplnenie z mailovej konferencie vývojárov EPF:

Archív ďalších výberov:

Pri dávnejšom preskúmavaní možností “metodického” modelovania procesov som narazil na nástroj EPF, ktorý považujem za jeden z najvydarenejších. Plánujem k nemu vydať zopár článkov, zatiaľ ponúkam výber diskutovaných tém z mailing listu news.eclipse.technology.epf, kde sa diskutovalo k týmto témam:

  • Oddelenie oblasti ‘Process Authoring’ do osobitnej časti (asi plug-in). zatiaľ je to súčasť Method Plugin “base_concepts”.
    https://bugs.eclipse.org/bugs/show_bug.cgi?id=164688
  • Preorganizovanie obsahu menu (Tree Browser).
    https://bugs.eclipse.org/bugs/show_bug.cgi?id=164690
  • Mark sa pokúša založiť European EPF User Group.
    (Mark Dickson: “ANNOUNCEMENT: European EPF User Group”)
  • Prispievatelia (EPF/OpenUP) zbierajú spätnú väzbu k akémukoľvek používaniu (alebo aj zamietnutiu) metodiky OpenUP.
    (Jim Ruehlin: Please Provide Feedback on OpenUP)
  • Jim otvoril otázku, čo má byť výsledkom dvoj-fázy Construction/Transition. Kompletný či stabilizovaný softvér? Odpovede smerovali k obidvom použitiam, t.j. závisí od konkrétneho projektu na ktorý sa OpenUP aplikuje.
    (Jim Ruehlin: OpenUP Construction/Transition Phases)
  • Funkcionalita vyhľadávania nie je dostupná v EPF (mala by byť dostupná v Rational Method Composer) nakoľko sa jedná o Java applet, ktorý nebol súčasťou uvoľneného kódu od IBM pre EPF. Pre túto funkcionalitu existuje požiadavka v bugzille EPF.
    (Svanarav Sankar: Search Feature)
  • Jim sa zamyslel nad použitím konceptu 4 oblastí (Collaboration, Intent, Management, Solution) v publikovanom modele OpenUP a nenašiel žiadnu väzbu vo vnútri vypublikovaného modelu. Navrhuje buď koncept zaviesť do OpenUP alebo úplne vypustiť (príp. marketingovo využiť :-))
    (Jim Ruehlin: Subprocesses in the OpenUP/Basic Published Process)
  • Jim otvoril diskusiu (z pohľadu OpenUP) čo s otvorenou iteráciou v prípade veľkej zmeny požiadaviek alebo ich priorít. Aktuálne je v OpenUP odporúčané “re-prioritizing and adjusting” iterácie, zatiaľčo Jim zhrnul výhody otvorenia novej iterácie.
    (Jim Ruehlin: Terminating or Reprioritizing Iterations in OpenUP/Basic)
  • Alax položil otázku riadenia projektu definovanom v EPF. Peter Haumer odpovedal, že momentálne (not yet) to nie je úlohou EPFC, pričom rozobral možnosti integrácie s MS Project a Rational Portfolio Manager. Charles Edwards odporučil xProcess od Ivis, i keď upozornil, že v danom nástroji nie je podporovaný import definície z EPF. V každom prípade si myslím, že vzhľadom na známu schému ukladania modelu a podporu MOF je dostupnosť takého nástroja otázkou krátkeho času.
    (Alax Lam: Tracking project progress in EPF)
  • Charles sa zamýšla nad vhodne zvolenou granularitou Method Plugin a dôvodmi vedúcimi k určitému členeniu do jednotlivých Method Plugins. Bohužial zatiaľ bez odpovede.
    (Charles Edwards: What level of granularity of Published Plugins should we be aiming to build?)
  • Jim navrhol zopár vylepšení procesu preskúmavania obsahu OpenUP.
    (Jim Ruehlin: Content Reviewing Ideas)