AHAProjekti Asiakashallinnan tietojrjestelm Projektiryhm Vuorela Maaret projektipllikk Remes

  • Slides: 29
Download presentation
AHA-Projekti Asiakashallinnan tietojärjestelmä

AHA-Projekti Asiakashallinnan tietojärjestelmä

Projektiryhmä § § § Vuorela Maaret, projektipäällikkö Remes Hanne, suunnittelupäällikkö Rissa Timo, ohjelmistopäällikkö Saloila

Projektiryhmä § § § Vuorela Maaret, projektipäällikkö Remes Hanne, suunnittelupäällikkö Rissa Timo, ohjelmistopäällikkö Saloila Heidi, laatu- ja prosessipäällikkö Tammelin Jarno, tukipalvelupäällikkö

Sisällysluettelo § § Sovelluksen esittely Sovelluksen rakenne ja koodaus Asiakkaan käsittelyn testaus Toimipisteen lisäyksen

Sisällysluettelo § § Sovelluksen esittely Sovelluksen rakenne ja koodaus Asiakkaan käsittelyn testaus Toimipisteen lisäyksen suunnittelu § Käyttöliittymä, luokkakaavio, relaatiokaavio, käyttötapauskuvaus § Paketointi § Toimipisteen lisäyksen testaus § Projektiryhmän kokemuksia

Sovelluksen esitys § Verkkokäyttöliittymä § IE & vastaavat § Sovelluksen toiminnan esitys § §

Sovelluksen esitys § Verkkokäyttöliittymä § IE & vastaavat § Sovelluksen toiminnan esitys § § Aloitussivun sisältö Lisäys Haku Muutos

Järjestelmän rakenne § Web -pohjainen järjestelmä § Käytetään Front Controller – suunnittelumallia (Desing Pattern)

Järjestelmän rakenne § Web -pohjainen järjestelmä § Käytetään Front Controller – suunnittelumallia (Desing Pattern) § Java Servlet toimii järjestelmän ohjaavana kontrollerina § MVC Model 2 –mallin mukainen § 3 –tasoarkkitehtuuri

MVC Model 2 - malli § Lähde: Käyttöliittymän totetuttaminen Jukka Juslin / luento

MVC Model 2 - malli § Lähde: Käyttöliittymän totetuttaminen Jukka Juslin / luento

Paketit § 3 –tasoarkkitehtuurin mukainen pakettirakenne

Paketit § 3 –tasoarkkitehtuurin mukainen pakettirakenne

Lähdekoodin esittely § Lähdekoodi on tehty helppoa ylläpitoa silmällä pitäen § Nimeämissääntöjen mukainen §

Lähdekoodin esittely § Lähdekoodi on tehty helppoa ylläpitoa silmällä pitäen § Nimeämissääntöjen mukainen § Runsas kommentointi helpottamaan ylläpitoa ja uudelleenkäytettävyyttä § Runsas tulostus lokiin seurantaa varten

Esimerkkejä lähdekoodista – Nimeämissäännöt /** *Metodi, joka käsittelee kaikki GET-tyyppiset pyynnöt. * Metodi käyttää

Esimerkkejä lähdekoodista – Nimeämissäännöt /** *Metodi, joka käsittelee kaikki GET-tyyppiset pyynnöt. * Metodi käyttää seuraavia parametrejä: * create Parametrillä tunnistetaan luodaanko uutta asiakasta. * customer Asiakasnumero. * action Käyttöliittymässä olevia toimintoja ohjaava parametri. * kirjautuminen Ohjelmiston kirjautumisen parametri. Ei käytössä tällä hetkellä. * muokkaa Toimii muokkauksen tunnistavana parametrinä, jos käyttöliittymässä valittu tietojen muokkaus. * paluu Toimii parametrinä jolla tunnistetaan palataanko käyttöliittymässä edelliseen sivuun. * *@param request *@param response *@throws Servlet. Exception *@throws IOException */ public void do. Get(Http. Servlet. Request request, Http. Servlet. Response response) throws Servlet. Exception, IOException { Http. Session session = request. get. Session(); System. out. println("Kontrolleri. do. Get() - toiminta aloitetaan");

Esimerkkejä lähdekoodista - kommentointi // suorita. Paivitys-metodia varten määritetään paluuarvo int tarkistus = 1;

Esimerkkejä lähdekoodista - kommentointi // suorita. Paivitys-metodia varten määritetään paluuarvo int tarkistus = 1; // Default 1 = ok. Jos arvo on jotain muuta niin virheellinen tarkistus int lisatyt. Rivit = 0; // Käsiteteltyjen rivien määrä konsoliin tulostusta varten //tehdään lisäys tietokantaan try { kanta. avaa(); kanta. aloita. Transaktio(); // Tehdään lisäykset tietokantaan. Jos kaikki lisäykset onnistuvat, tehdään commit(), muuten rollback(). if(tarkistus == 1) { // Aloitetaan tietojen lisäys // Lisätään asiakkaan käyntiosoite (pakollinen) tarkistus = kanta. suorita. Paivitys(sql. Ask); if(tarkistus == 1) { lisatyt. Rivit++; // Lisää as. osoiteen lisäyksen System. out. println("Tietokanta. Ohjaus. luo. Asiakas() - lisätty asiakkaan käyntiosoite. Lisätyt rivit yhteensä: " +lisatyt. Rivit); // Lisätään asiakkaan postiosoite vain jos se on olemassa if (as. Postiosoite != null) { // Postiosoite on tarkistus = kanta. suorita. Paivitys(sql. Asp); } else if (as. Postiosoite == null) { // Postiosoitetta ei ole System. out. println("Tietokanta. Ohjaus. luo. Asiakas() - asiakkaan postiosoitetta ei lisätty, " + "koska sitä ei ole syötetty. Lisätyt rivit yhteensä: " +lisatyt. Rivit); }

Esimerkkejä lähdekoodista - tulostus lokiin // Kysely, joka palauttaa lisätyn asiakkaan id: n tietokannasta.

Esimerkkejä lähdekoodista - tulostus lokiin // Kysely, joka palauttaa lisätyn asiakkaan id: n tietokannasta. sql. Lisatty. Id = "SELECT max(as. Nro) as numero FROM SYSSI 9. asiakas"; //tulostetaan insert-lauseet seurantaa varten System. out. println("Tietokanta. Ohjaus. luo. Asiakas() - as-kayntiosoite: " + sql. Ask); System. out. println("Tietokanta. Ohjaus. luo. Asiakas() - as-postiosoite: " + sql. Asp); System. out. println("Tietokanta. Ohjaus. luo. Asiakas() - yh-osoite-sql: " + sql. Yh. Osoite); System. out. println("Tietokanta. Ohjaus. luo. Asiakas() - yhteyshenkilö -insert: " + sql. Yh); System. out. println("Tietokanta. Ohjaus. luo. Asiakas() - as -insert: " + sql. As); // suorita. Paivitys-metodia varten määritetään paluuarvo int tarkistus = 1; // Default 1 = ok. Jos arvo on jotain muuta niin virheellinen tarkistus int lisatyt. Rivit = 0; // Käsiteteltyjen rivien määrä konsoliin tulostusta varten

Asiakkaan testaus § Asiakkaan haku, lisäys ja muokkaus testattu omina lomakkeinaan § Testitapauksia yhteensä

Asiakkaan testaus § Asiakkaan haku, lisäys ja muokkaus testattu omina lomakkeinaan § Testitapauksia yhteensä on noin 60. § Testit ajettu sitä varten luodulla testitietokannalla § Näin testit voidaan toteuttaa uudestaan samalla tietokannalla § Testausta suoritettiin useaan otteeseen ohjelman eri kehitysvaiheissa

Asiakkaan testaus § Esimerkkejä testitapauksista:

Asiakkaan testaus § Esimerkkejä testitapauksista:

Asiakkaan testaus § SQL-testitietokanta, skriptit tallessa jotta kanta voidaan luoda uudestaan mikäli testi halutaan

Asiakkaan testaus § SQL-testitietokanta, skriptit tallessa jotta kanta voidaan luoda uudestaan mikäli testi halutaan toistaa:

Toimipisteen suunnittelu § Suunnittelukuvasto on jatkoa aikaisemmalle AHA-projektissa käytetylle suunnittelukuvastolle. § Toimipisteen suunnittelukuvastossa kuvataan

Toimipisteen suunnittelu § Suunnittelukuvasto on jatkoa aikaisemmalle AHA-projektissa käytetylle suunnittelukuvastolle. § Toimipisteen suunnittelukuvastossa kuvataan toimipisteen lisäämisen suunnittelu.

Toimipisteen suunnittelu Suunnittelukuvaston sisällys § 1 Johdanto § 2 Käyttöliittymät § 2. 1 Etusivun

Toimipisteen suunnittelu Suunnittelukuvaston sisällys § 1 Johdanto § 2 Käyttöliittymät § 2. 1 Etusivun näkymä § 2. 2 Asiakkaan ylläpidon näkymä § 2. 3 Toimipisteen lisäyksen näkymä § 3 Luokkamalli § 4 Relaatiotietokanta § 4. 1 Relaatiokaavat § 4. 2 Tietokannan luontilauseet § 4. 3 Pääavainten automaattinen kasvatus § 5 Yhteistyökaaviot § 5. 1 Toimipisteen lisäyksen yhteistyökaaviot § 6 Viestiyhteyskaaviot § 6. 1 Toimipisteen lisäyksen viestiyhteyskaaviot § 7 Paketit § 7. 1 Servlet-paketti § 7. 2 Liiketoiminta-paketti § 7. 3 Tarkistus-paketti § 7. 4 Tietokanta-paketti

Toimipisteen suunnittelu Käyttöliittymät § Toimipisteen lisäys suoritetaan asiakkaan ylläpitonäkymän kautta. Toimipisteen lisäykseen pääsee kahdella

Toimipisteen suunnittelu Käyttöliittymät § Toimipisteen lisäys suoritetaan asiakkaan ylläpitonäkymän kautta. Toimipisteen lisäykseen pääsee kahdella eri tavalla: § 1. suoritetaan asiakkaan haku ja valitaan haluttu asiakas, jolloin järjestelmä avaa haetun asiakkaan tiedot näytölle § 2. lisätään uusi asiakas ja tallennetaan asiakkaan tiedot, jolloin järjestelmä avaa lisätyn asiakkaan tiedot näytölle. § Avautuvassa lomakkeessa on valittavissa painike ”Lisää toimipiste”, josta päästään toimipisteen lisäys –näyttöön.

Rakenne

Rakenne

Luokkakaavio

Luokkakaavio

Relaatiokaavio

Relaatiokaavio

Toimipisteen lisäys § Esiehdot: § Halutaan lisätä uusi toimipiste. 1. Järjestelmä avaa toimipisteen lisäys-näytön.

Toimipisteen lisäys § Esiehdot: § Halutaan lisätä uusi toimipiste. 1. Järjestelmä avaa toimipisteen lisäys-näytön. 2. Toimija syöttää toimipisteen tiedot järjestelmään. 3. Toimija varmistaa, että tiedot ovat oikein ja tallentaa ne. 4. Järjestelmä tarkistaa ja tallentaa tiedot.

Toimipisteen lisäys

Toimipisteen lisäys

Toimipisteen lisäys

Toimipisteen lisäys

Toimipisteen lisäys

Toimipisteen lisäys

Toimipisteen testaus § Toimipisteen käsittelylle on luotu vastaavia testitapauksia kuin asiakkaan tapauksille § Testejä

Toimipisteen testaus § Toimipisteen käsittelylle on luotu vastaavia testitapauksia kuin asiakkaan tapauksille § Testejä ei kuitenkaan ole ajettu koska toimipisteen käsittelyä ei ole toteuttu toimivaksi ollenkaan.

Toimipisteen testaus § Toimipisteen testauksen testitapaus:

Toimipisteen testaus § Toimipisteen testauksen testitapaus:

Toimipisteen testaus § Toimipisteen testaukselle on myös tehty testitietokanta.

Toimipisteen testaus § Toimipisteen testaukselle on myös tehty testitietokanta.

Kokemukset ja ongelmat § Suurimman ongelman muodosti ohjelmointiympäristöt Eclipse, Lomboz ja Apache § Ympäristöjä

Kokemukset ja ongelmat § Suurimman ongelman muodosti ohjelmointiympäristöt Eclipse, Lomboz ja Apache § Ympäristöjä ei oltu asennettu valmiiksi § Työaikaa kului käyttöönottoon ja opetteluun § Tästä kuitenkin selviydyttiin kun ohjelmat lopulta saatiin asennettua usean yrityksen jälkeen. § Käytetyn JSP-tekniikan riittämätön tuntemus aiheutti ongelmia. § Projektiryhmä on saanut yhdessä tuntea onnistumisen tunteen ja kokee valmiiden tulosten katselun varsin palkitsevana. § Projektiryhmällä on saanut tilaisuuden toimia projektiorganisaatiossa ja kokea, miten yhteistyö organisaatioissa toimii.

LSD kiittää ja toivottaa hyvää kesää

LSD kiittää ja toivottaa hyvää kesää