190 likes | 421 Views
Integrointi. ERP (Toiminnanohjausjärjestelmä). Henkilöstö, palkanlaskenta. Kirjanpito. Myynti. Myynti. Myyjät. Laskutus, reskontrat. Tietovarasto. Extranet. Asiakas. Asiakas- rekisteri. Varasto- kirjanpito. Tuotannon ohjaus. ERP. Miksi ERP? 1/2. Pakettiohjelman edut:
E N D
ERP (Toiminnanohjausjärjestelmä) Henkilöstö, palkanlaskenta Kirjanpito Myynti Myynti Myyjät Laskutus, reskontrat Tietovarasto Extranet Asiakas Asiakas- rekisteri Varasto- kirjanpito Tuotannon ohjaus ERP
Miksi ERP? 1/2 • Pakettiohjelman edut: • Nopea toimitusaika • Edullinen (!?!) • Laatu testattu • Yksi järjestelmä kattaa kaikkien (??) tarpeet -> Periaatteessa vain asiakassovellus/näkymä järjestelmään muuttuu käyttäjän mukaan • Tiedon kulun nopeus (esim. varastosaldon seuraaminen tai myynti-laskutus-kirjanpito)
Miksi ERP? 2/2 • Tiedon jakaminen fyysisestikin eri paikkojen välillä on helppoa • Automatisointi, esim. tilaus -> laskutus -> kirjanpito/reskontra tilaus <-> varasto -> tuotanto -> osto tilaus <-> asiakastiedot
ERP:n rajoitteet • On sopeuduttava arkkitehtuuriin • On sopeutettava omat toimintatavat tuotteeseen tai tehtävä mittavia muutoksia valmiiseen pakettiin • Integrointi muiden järjestelmien kanssa on todellinen haaste • Pystyttäminen joka tapauksessa mittava projekti • Järjestelmät usein suljettuja – kuitenkin muuttumassa avoimiksi ja www-pohjaisiksi • Jättimäinen kaikki-tai-ei-mitään-paketti – kuitenkin muuttumassa modulaarisiksi ja avoimiksi
Integrointitilanne Henkilöstö, palkanlaskenta Kirjanpito Myynti Myynti Myyjät ??? Laskutus, reskontrat Extranet Asiakas Asiakas- rekisteri Varasto- kirjanpito Tuotannon ohjaus
Integraation taso • Tiedon integrointi • Usein riittävä • Tietosisällön määrittely, vastaavuuksien tunnistaminen • Valmiuden useimmissa nykyjärjestelmissä • API-tasoinen integraatio • CORBA, DCOM, Java RMI • Metodi- ja UI-taso
Sovellusten integrointi • Vaatimukset Vaatimukset Vaatimukset • Varottava liian korkean integrointitason tavoittelemisen teknologiahuumaa • Legacy Systems -ongelmat • Integrointi-ohjelmistojen hyödyntäminen
Ohjelmiston kokonaiskustannukset • Ohjelmiston hinta • Ohjelmiston käyttöönotto/muokkaus • Koulutus • Laitteistosta, tietoliikenteestä yms. aiheutuvat kulut • Ylläpitokulut • IT-henkilöstökulut (käyttöönotto, ylläpito, tuki)
Järjestelmien välinen kommunikointi – one to one • Täytyy tuntea toinen järjestelmä – ongelma varsinkin, kun useita järjestelmiä • Ei salli muutoksia • Synkroninen – suorituksen keskeytyminen Suoraan Järjes-telmä 1 Järjes-telmä 2
Järjestelmien välinen kommunikointi – one to one • Asynkroninen • Esim. Yksinkertainen jonokäsittelijä • Tiedon muunnokset – voidaan päivittää toista järjestelmää toisen tietämättä • Reititys – ei tarvitse tietää toisen sijaintia Järjes-telmä 1 Middle- ware Järjes-telmä 2
Many to Many Järjestelmä 3 Järjestelmä 2 Järjestelmä 4 Many-to-Many MW Järjestelmä 5 Järjestelmä 1 Järjestelmä 6
Message Broker • Tiedon muunnokset • Jonokäsittelijä • Säännöt tiedon muunnosta ja reititystä varten • Reitityslogiikka • Tietää, kuka vastaa mistäkin palvelusta • Voi lähettää saman viestin myös useille • Tietää, ketkä kaikki tarvitsevat mitäkin tietoa • Missä muodossa kukakin tietoa tarvitsee
Hajautetut oliot (Distributed objects) • Integroinnin taso • Tiedon jakaminen < toiminnallisuuden jakaminen • Uusiin järjestelmiin • Etua, kun on tarve jakaa paljon yhteisiä metodeja • Corba vs. DCOM • Periaatteena, että sovelluksen ei tarvitse paikallistaa kutsuttava oliota
CORBA • Standardi olioiden jakamisen toteutukseen • OMG (Object Management Group): • IBM, Apple, Sun ym. • Julkaistiin vuonna 1991, mutta ei tuloksia vielä monee vuoteen sen jälkeen • Tuki useimmille ohjelmointikielille • Ongelmia: • Suorituskyky • Palautumismekanismien puuttuminen • Huono skaalautuvuus
CORBA TOTEUTUS Olio 1 Olio 2 IDL Stub IDL Skeleton ORB IDL = Interface Definition Language ORB = Object Request Broker
Kutsu asiakkaan kannalta • Paikkatuntumaton • Palvelintuntumaton • Ohjelmointikieliriippumaton • Toteutusriippumaton • Laitearkkitehtuurista riippumaton • Käyttöjärjestelmästä riippumaton • Protokollista riippumaton • Siirtokerroksesta (fyysinen verkkoyhteys) riippumaton
ORB:n toiminta palvelua pyydettäessä • Paikallistaa kohdeolion • Aktivoi palvelinohjelman, jos se ei ole käynnissä • Siirtää pyynnön parametrit • Odottaa prosessin suoritusta • Palauttaa paluuarvon • Palauttaa poikkeuksen, jos ei onnistu