Pakkanen -arkkitehtuurin siirto toteutustekniikoihin Hannu Virkanen Kuopion yliopisto, Tietotekniikkakeskus hannu.virkanen@uku.fi
Taustaa Tehtävät: protoilu toteutuksen kautta todentaa suunniteltujen osien toimivuus palaute suunnitteluprosessiin oman ympäristön tulevaisuuden teknologia- ja välinevalinnat tietokantojen siirrettävyys
Esiselvityksiä ja pohjamateriaalia Ohjelmistotuotannon nykytilan kartoitus Välineselvitys Component and Service Technology Families http://www.uku.fi/plugit/Yhteys/how_to_do_it/ Väline- ja infrantoimittajien työpajat, esitykset ja materiaali: BEA Oracle Microsoft http://www.uku.fi/plugit/Yhteys/materiaalit/
Vaiheistus Ohjelmistotuotantoprosessi inkrementaalinen protoilumalli: suunnitteluvaihe: 2. kierros toteutusvaihe: 1. kierros SoberIT http://www.soberit.hut.fi Cycles of Control RAD, XP, RUP, Agile Software Development
Lähtökohta Dialog Layer (käyttöliittymäkerros) System Layer (järjestelmäkerros) Business logic Layer (toimintalogiikkakerros) Database layer (tietokantakerros)
Arkkitehtuurin arviointi SOA – COA – n-tier –three-tier hyödyt: System Layer eristekerros (tietokanta) toimintalogiikan ja käyttöliittymälogiikan välissä hautaa toteutuksen molempiin suuntiin kerrosten ja komponenttien korvattavuus ja vaihdettavuus kutsut vertikaalisia business-system tasoilla ->ei keskinäisiä riippuvuuksia->vaihdettavuus teknologiariippumaton: J2EE, .NET, COM+, Web Services
Arkkitehtuurin arviointi heikkoudet: System Layer –ylimääräinen kerros- ei pakollinen lisää monimutkaisuutta ja kutsuja System Layer ei tuettu välineissä security, transaction, concurrency yms. vaikeat asiat jätetty infran vastuulle ylimääräistä vaiheita osalle teknologioista => vaatii toteutusteknologian päättämisen
Välinevalinnat esiehdot: web-käyttöliittymä => monitasoarkkitehtuuri/palveluarkkitehtuuri teollisuusstandardit liittymät kerrosten, komponenttien ja palveluiden välillä integroitavuus tietovarasto relaatiotietokanta vrt. PlugIT-rajapintamäärittelyteknologiat
J2EE .NET
Toteutettu arkkitehtuuri ja teknologiat ASP.NET (WebForms) SOAP/WSDL ICreateUser (Web Service)
Toteutuksessa käytetyt välineet = toimintalogiikka = käyttöliittymä
Välineiden arviointi kehitysympäristöt (J2EE/VS.NET) toimintalogiikan toteutus Visual Studio.NET (kokeiluja) ASP.NET Web Services JDeveloper 9i/10g (tehty) EJB Web Services käyttöliittymän toteutus Struts (JSP)(toteutuksen alla) ASP.NET (Web Forms) (demo)
Välineiden arviointi Tietokannat ODBC/JDBC -rajapinta migraatiokokeilut, tietojen ja rakenteen siirto (pika)kokeet mm.: Oracle 9i Microsoft SQL Server Intersystems Caché Microsoft Access 2002 MySQL http://www.uku.fi/tike/kernel/kfp2004/kfpaiva2004_jmms_FMWS.ppt
Välineiden arviointi suunnittelu ja mallinnusvälineet Microsoft Visio 2002 Professional UML Activity, Component, Use Case, Collaboration, Deployment, Sequence, Statechart, Static structure Database Visual Studio .NET 2003 Enterprise Architect JDeveloper Class Modeler Activity, Class, Use Case Diagrams Java Classes, EJB, Web Service Business Components Web Services Poseidon for UML