IT Projektmenedzsment PowerDesignerrel
Michaleczky Péter szakértő, Sybase Magyarország
Témakörök • • • •
Tervezés vállalati szinten PowerDesignerrel Projektminőség biztosítása Agilis tervezés és fejlesztés A PowerDesigner használata a projekt-életciklus során – Projektelőkészítés – Tervezés – Fejlesztés – Tesztelés – Követés • Enterprise Architecture Modell
Mi várható 2009-ben a vállalatoknál? • • • • • •
Konszolidáció / költségcsökkentés Outsourcing Megfelelés (compliance) Összeolvadások, felvásárlások Agilitás – gyorsan a piacra juttatni a terméket/szolgáltatást Elindulni SOA irányban?
Mindezek komoly változásokat generálnak az IT infrastruktúrában Az IT vezetők manapság felelősek az üzleti célok megvalósításáért is – nem csupán technológiai felelősségük van A hatékony projektmenedzsment segít csökkenteni a kockázatokat, költségeket és az implementációs időt
Tervezés vállalati szinten KKényszer nyszerít nyszer ererő ényszer nyszerít nyszertőtőerő erőőkk
üzleti
INFORMÁCI INFORM CI INFORMÁCI CIÓ INFORM CIÓ CI Igény IgIgény ny––az azinformáció információfelderítése felderítésefüggetlenül függetlenülaz azalkalmazásoktól alkalmazásoktólés ésfolyamatoktól folyamatoktól Ig ny Hogyan? Hogyan?––az azadatok adatok(táblák (táblákés éskapcsolatok) kapcsolatok)modellezése modellezése
lehetőségek, igé igények lehető
ALKALMAZÁS ALKALMAZ ALKALMAZÁS ALKALMAZ SS Igény IgIgény ny––alkalmazások alkalmazásoktervezése, tervezése,integrációja, integrációja,telepítése telepítéseés éstovábbfejlesztése továbbfejlesztése Ig ny
technológiai technoló
Belső Bels Belső Belsőő Szándékok Szándékok Üzleti Üzleticélok célok Stratégiák Stratégiák
vetelmények követelmé
KKüülső lslső lsőő ITITtechnológiák technológiák Gazdasági Gazdasági környezet környezet Törvényi Törvényi környezet környezet
ÜZLET ZLET ÜZLET ZLET Igény ny – üzleti folyamatok, tulajdonosok, IgIgény használatfelderítése, felderítése,leírása leírása Ig ny – üzleti folyamatok, tulajdonosok,használat Hogyan? – üzleti folyamatok, szervezet (emberek), szolgáltatások stb. Hogyan? – üzleti folyamatok, szervezet (emberek), szolgáltatások stb.modellezése modellezése
Hogyan? Hogyan?––objektum-orientált objektum-orientáltmodellezés modellezés(use (usecase-, case-,osztály-, osztály-,komponensdiag.) komponensdiag.) TECHNOLÓGIA, TECHNOL STRUKTUR TECHNOLÓGIA, GIA,STRUKTURÁLIS STRUKTURÁLIS LIS TECHNOL GIA, STRUKTUR LIS Igény IgIgény ny––az azalkalmazások, alkalmazások,adatok, adatok,szolgáltatások szolgáltatásokés éshálózat hálózatfelépítése felépítése Ig ny Hogyan? Hogyan?––hálózati hálózatitopológia topológiamodellek, modellek,deployment deploymentmodellek modellekstb. stb.
Amit biztosan nem szeretnénk…
Mit várunk a projekt során? Kontroll: – A rendszerek megértése és dokumentálása – Hatékony projektmenedzsment (költség-, idő- és erőforrás becslés) – Kockázatelemzés Agilitás - gyors reakció a változásokra: – Központi meta-adat menedzsment (Repository) – Hatáselemzéssel a változáskezelés egyszerűbb, pontosabb – Újrahasznosítás (kódok, adatok, üzleti folyamatok) Produktivitás: – kódgenerálás, szkriptgenerálás a rendelkezésre álló meta adatok alapján “Az Az Agilitás s a Pontosság Agilit s a Sebesség Sebess g és Pontoss g kombináci kombin ciója. ci ja. A Sebesség Sebess g önmag nmagában m g nem elég. el g.” nmag ban még g. – David Dichmann, Dichmann, Sr. Product Manager, Sybase, Inc.
Mit nyújt a PowerDesigner? Integrált modellező eszköz – üzleti folyamatmodellezés – követelménykezelés – logikai- és fizikai adatmodellezés – UML 2.0 modellezés – információ likviditás modellezés – XML modellezés – reporting – vállalati Repository – vállalati architektúra modellezés (Enterprise Architecture Model)
PowerDesigner „Link and Sync”
WSBPEL WSBPEL2.0 2.0 BPMN, ebXML BPMN, ebXML Business Process Model
REPOSITORY
Conceptual Data Model
Replication Replication Federation, Federation, ETL, ETL,EII EII
Object Oriented Model (UML) Requirements Model
Information Liquidity Model
XML Model
Reverse Engineering
Import/Export
DTD DTD Schema Schema
Physical Data Model
Forward Engineering Roundtrip Engineering
C# C#VB.NET VB.NET Java JavaJ2EE J2EE PowerBuilder PowerBuilder
DDL DDL
ODBC or Native Drivers
Projektminőség biztosítása Agilis tervezés/fejlesztés IT Projektmenedzsment PowerDesignerrel
Projektminőség biztosítása • • • • •
Követelménykezelés Kockázatelemzés Változáskezelés Projektdokumentáció előállítása Projektdokumentáció központi tárolása és publikálása (Repository)
Követelménykezelés Követelmény modell: – Strukturált szöveges modell – Minden elem önálló metaadat – MS Word import/export és MS Project export Export as Design Object: A követelmények exportálhatóak tervezési objektumokká
Traceability linkek: az egyes követelményekhez hozzákapcsolhatóak a tervezési objektumok
Rögzíthető adatok az egyes követelményekhez:
típus prioritás kockázat ellenőrzés, tesztelés módja státusz Munkaidő (workload) megvalósítást végző személy vagy munkacsoport szószedet (glossary)
Kockázatelemzés Kockázatok: • Követelményekhez rögzíthetőek • Risk Analysis: – Kockázat típusa – Feltétele – Bekövetkezés esélye – Kockázat részletes leírása – Stb. • Kockázatok önállóan is riportolhatóak
Változáskezelés – Impact Analysis • Technikája: a meta-adatok közti kapcsolatok felderítése – több modellen keresztül – Link & Sync • Érintett követelményekre, tervezési objektumokra gyakorolt hatások és összefüggések • Kimenete: – Lista (exportálásra is) – Hatásdiagram • Hatáselemzés a Repositoryban lévő modelleken is végezhető
Projektdokumentáció előállítása • Testreszabható riportok – Kívánt részletességi szint – Vállalati templét alkalmazása • Egységes riport készíthető több modellről (multimodel report) • Formátum: – Nyomtatható (RTF) – Intranet (HTML) • List riportok előállítása – Adott modell bizonyos típusú objektumairól készül – ResultSet képezhető – Export: XML, Excel, RTF, HTM stb.
Központi projektdokumentáció (Repository) • Teljes projektdokumentáció tárolása központilag – Modellek – Projekt dokumentumok – Forráskód, SQL szkript – Strukturált formában (mappák) • Csoportmunka (felhasználói jogosultság kezelés) • Verzionálás (elemszintű)
Repository Web Browser • A Repositoryban lévő modellek/dokumentumok megtekintése – A teljes projektanyag publikálható – Aktuális állapot és korábbi verziók olvasása
Agilis tervezés és fejlesztés • • • •
Meta-adat menedzsment Költség-, erőforrás- és időbecslés Kód-újrahasznosítás Projektmenedzsment módszertanok támogatása eszköz szinten
Meta-adat menedzsment • Gartner: az IT projektek 60%-a még mindig kudarccal végződik – Kommunikációs szakadék az üzleti és technológiai szakemberek között – A tudás zárt egységekben található csak meg • Megoldás: integrált modellezési környezet alkalmazása – Közös meta-adat menedzsment Közös nyelv: modellek és meta-adatok A Repository vállalati szintű használata Példa: Követelménykezelés üzleti folyamatmodellezéssel és adatelemzéssel együtt
– A tervezési és fejlesztési folyamatok hatékonyabb nyomon követése
Költség-, erőforrás- és időbecslés • Alapja: a követelmények mellé felvett projektadatok – User Allocation (kik felelősek a követelmény teljesüléséért) – Workload (mennyi munkaóra, munkahét) – Traceability Links (tervezési objektumok) – Status (hogy áll a követelmény?) – Egyéb, saját paraméterek (pl. határidő) • Technikája: – Erőforrás-méretezés és érintettség meghatározása
Impact Analysis Impact Analysis Diagram (segít megérteni) User Allocation Matrix Traceability Matrix
– Kockázatelemzés (Risk Analysis adatok alapján)
Kód-újrahasznosítás • Célja: – Költség- és időtakarékosság – Redundancia elkerülése ⇒ átláthatóbb rendszerek • Meglévő rendszerek feltérképezése a PowerDesignerrel: – Meglévő projekttermékek visszafejtése modellé – Más eszközökben készült modellek importálása • Vállalati IT feltérképezése – Központi szolgáltatáskönyvtár – Tudásbázis (KB)
Reverse-engineering: • Adatbázisok / SQL szkriptek • Alkalmazások (.NET, Java, PB, C++ stb.) • BPEL, WSBPEL / SOA • Webszolgáltatások Modell-import: • ERwin • Rational • XMI • MS Visio
Projektmenedzsment módszertanok • A PowerDesigner bármely projektmenedzsment módszerrel sikeresen alkalmazható – PRINCE2, SCRUM, RUP, TMS stb. • Projekt-nézet: – Egy projektbe tartozó modellek és dokumentumok egy helyen – Összefüggések ábrázolása diagram formájában • Framework-ök: – TOGAF, Zachmann, FEAF + egyedi framework-ök készítése – Framework mátrix
Projekt és Framework
Projekt-életciklus IT Projektmenedzsment PowerDesignerrel
Projektéletciklus – iteratív folyamat
• Projektelőkészítés – Követelménydefiníció – Koncepcióterv • Projektmenedzsment – Logikai rendszerterv – Fizikai rendszerterv – Fejlesztés – Tesztelés • Követés
Követelménydefiníció / Koncepcióterv • Üzleti folyamatmodellezés – Többszintű üzleti folyamatmodellek – Üzleti szintű adatelemzés, CRUD mátrix – Üzleti szabályok, követelmények definiálása – Data Flow Diagram (DFD) • Használati esetek: – Használati eset diagram (UML) Használati esetek szöveges és grafikus ábrázolása
– Használati esetek riportálása • Infrastruktúra tervezés: – Enterprise Architecture Model – infrastrukturális diagramok
Hatékony módszer a követelménydefinícióra
Logikai rendszerterv • Használati esetek: – Használati eset diagramok részletes kifejtése Dinamikus UML diagramokon (pl. tevékenység, szekvencia, állapot stb.)
– Konkrét komponensek/osztályok létrehozása, kapcsolása az egyes esetekhez • Felhasználói felület tervezése (UI terv): – A képernyők eltárolhatóak a Repositoryban – UI navigációs terv (objektum vagy tevékenység UML diagram) UI szabályok és ellenőrzések rögzítése (üzleti szabályok) Az UI osztályok definiálása már ezen a szinten elvégezhető
Logikai rendszerterv (folyt.) Logikai adatmodellezés – A PowerDesigner piacvezető az adatmodellező eszközök terén – Logikai adatmodell (CDM/LDM): E/R, Merise és Barker jelölésrendszer Platformfüggetlen tervezés Adatelemek kezelése (BPM export/import) – Üzleti folyamatmodell adatelemeiből generálható CDM/LDM A kapcsolatok csak logikai szinten ábrázolandóak Domainek, ellenőrzések, öröklés (inheritance), üzleti szabályok Bármely DB platformra generálhatunk fizikai adatmodellt (PDM) Logikai adatmodell (LDM): – A koncepcionális modell bővítésére, ellenőrzésére, egy lépés a fizikai modell felé – A kapcsolatok fizikai formáját már legenerálja a PowerDesigner
– ERwin modellek importálása
Koncepcionális adatmodell (CDM)
Logikai adatmodell (LDM)
Adatellenőrzési szabálykönyv, jogosultságok leírása • Adatelemek felírása – Üzleti folyamatmodellben vagy a logikai adatmodellben • Adatellenőrzési szabályok összeírása – Üzleti folyamatmodellben üzleti szabályként – Követelményeknél üzleti szabályként – Logikai adatmodellben (célszerű!) Az adatelemek esetén standard check adható meg – Fizikai adatmodellben SQL kódként jelenik meg automatikusan Fizikai adatmodellben az üzleti szabályok közvetlenül constraintekké alakíthatóak
Fizikai rendszerterv - Alkalmazásterv • A használati esetekből kiindulva készíthető el – PowerDesigner UML 2.0 modell: Object Oriented Model (OOM) – Konkrét fejlesztési platformra készül (PB, .NET, Java stb.) – Osztályok és komponensek definiálása, leírása – Kódvázak generálása
Fizikai rendszerterv – Fizikai adatmodell • •
•
• •
•
Fizikai adatmodell (PDM) generálható vagy frissíthető a meglévő logikai adatmodellekből – Lehetőség: egy logikai modell több fizikai platformra Platformfüggő modellezési szint – a PowerDesigner több mint 60 RDBMS-t ismer – a választott platformnak megfelelő fizikai kapcsolatokat épít a táblák között – Egyéb fizikai paraméterek megadása (pl. particionálás, szegmenskezelés, lockolási sémák, jogosultsági szintek) SQL szkript-generálás és -visszafejtés – adatbázis létrehozása és módosítása – SQL állományok és ODBC-n keresztül is Jogosultságok modellezése multidimenzionális nézet – Ténytáblák, dimenziótáblák kezelése – Cube generálás – Denormalizáció generálás: CDM, UML osztálydiagram, XML modell
Fizikai rendszerterv • Alkalmazás implementációs terv kidolgozásához: – UML implementációs diagramok Komponens és deployment diagram
• Integrációs terv: – IT infrastruktúra terv Enterprise Architecture Modell (EAM)
– Alkalmazás integrációs terv UML implementációs diagram
– Adat integrációs terv: Information Liquidity Model (ILM) ⇒ ETL folyamatok, replikáció
Fejlesztés PowerBuilder UML 2.0 modell (OOM): • Java, C#, VB.NET és PowerBuilder osztályok forráskódjának generálása, visszafejtése • C++, Visual Basic, IDL-CORBA stb. forráskód generálása • Visual Studio, Eclipse és PowerBuilder plug-in: modellezés közvetlenül a fejlesztőeszközben • komponensvázak generálása, visszafejtése, fejlesztési keretrendszerek támogatása (pl. WSDL, EJB, Hibernate és NHibernate, JSP, JSF stb.) • koncepcionális és fizikai adatmodell, XML modell generálása osztálydiagram alapján és vica versa • XMI import/export, Rose modell importálása
Az UML 2.0 diagramok összefüggései, használatuk
Tesztelés • A PowerDesigner részvétele a tesztelési terv elkészítésében: – Adatközpontú tesztelés terv – Vezérlésközpontú tesztelési terv – Ezek alapja: Adatmodell (CDM) Alkalmazásterv (OOM) Használati esetek (OOM Use Case-ek)
• Projektvégtermék tesztelési fázisai: Funkcionális teszt Teljesítmény teszt Integrációs teszt
Funkcionális teszt • Célja: adatbázis, alkalmazás, komponensek részletes, funkcionális ellenőrzése • Tesztesetek kidolgozása a használati esetek alapján – Pl. VBScript segítségével a használati esetek exportálhatóak Excelbe • Unit alapú tesztelés: – Az osztályok automatizált tesztelése – .NET: nUnit tesztegységek generálása – Java: jUnit tesztegységek generálása (Eclipse IDE alatt) • Adatbázis tesztelés: – Ellenőrzések riportolása – tesztadat-generálás Megadott mintázat alapján véletlenszerűen ODBC forrásból vett mintaadatok alapján A tesztadatok generálásakor megőrizhető a konzisztencia
Teljesítmény teszt • Célja: adatbázis, alkalmazás teljesítményének tesztje • Adatbázis esetében: – adatbázisméret-becslés (estimate) A sorok száma, oszlopok minőségének megadása szükséges Figyelembe veszi a fizikai platformot, paramétereket (indexek, táblaterek, szegmentálás)
– Nagy mennyiségű tesztadat generálása
Követés • Változási igények keletkezése időben: – Már a tervezési/fejlesztési fázisba – Bevezetést követően fellelt hibák javítása (bugtracking) – Módosítási igények (akár évekkel később) • Hatékony változáskezelés PowerDesignerrel: – A változások alapján hatás elemzés – A változásokat elsőként a modellekbe is be kell vezetni, utána a kódba (van mód re-engineeringre) – Verzionálás a Repositoryban • A változáskövetés a projekt-életciklust követi iteratív módon
Enterprise Architecture EA = Vállalati szintű modellezés? Nem, ennél több: A vállalat modellezése
Mi az Enterprise Architecture? • Mik az üzleti prioritások? • Milyen információval / technológiával rendelkezik a cég? (AMI VAN) • Milyen információra / technológiára van szükség? (AMI KELLENE) • Mi a terve a cégnek, hogy a mostani állapotból a kívánt állapotra jusson el?
Az Enterprise Architecture a Terv. Magában foglalja a cégvezetés elkötelezettségét, folyamatokat, módszertanokat, …, és eszközöket.
Az EA választ ad az üzleti problémákra • Mik a fontosabb üzleti folyamatok az egyes szervezeteknél? • Mik az üzletileg kritikus rendszerek és alkalmazások, amelyek segítenek ezeknél a folyamatoknál? • Milyen adatok szükségesek a kritikus folyamatokban? • Mi a jelenlegi hardware és szoftver inventory, és az infrastruktúra hogyan támogatja az üzleti folyamatokat, adatigényeket? • És a nagy kérdés: mi történik, ha változtatunk… – a hardver, szoftver, adatbázis platformon – mely folyamatokat érint mindez – kiket érint mindez
Enterprise Architecture Model • Mit nyújt? – vállalati szintű folyamatok, infrastruktúra, hiearchia modellezése – meta adatok összegyűjtése – hatáselemzés • Nézőpontok – üzleti felépítés – alkalmazás architektúra – technológiai infrastruktúra
EA modell együttműködése más modellekkel
DEMÓ • • • • •
Követelmény modell Kapcsolódó tervezési objektumok (üzleti folyamatmodell) Kockázatelemzés Hatáselemzés, hatáselemzés-diagram EA modell néhány példán keresztül
Az integrált modellezés előnyei Zökkenőmentes integráció Kommunikációs szakadék megszüntetése Meta-adat menedzsment Hatáselemzés: a változás megértése és elemzése Változás idő, kockázat és költség csökkentése Az üzleti célok nagyobb fokú megvalósítása
Try PD • http://www.try.sybase.com
Köszönöm a figyelmet!