Suunnitteludokumentin (v0.9) katselmoinnin pöytäkirja - Koskelo 11.11.2004 Ohjelmistotuotantoprojekti Koskelo: Koksi-konekielisimulaattorin ja Assari-tehtäväjärjestelmän yhteistyö Syksy 2004 Aika Torstai 11.11.2004 klo 14.15 - 16.00 Paikka Helsingin yliopisto, TKTL, A217 Läsnä Harri Tuomikoski, puheenjohtaja Eeva Nevalainen Tom Bertell Johan Brunberg Lauri Liuhto Hannu Räisänen, sihteeri, ohjaaja Käsitellyt asiat : A. Puutteet ja virheet luvuittain 1. - Johdannon ensimmäinen lause pilkotaan pienempiin osiin ja kirjoitetaan selkeämmin. - eAssari ei ole ohtuprojektissa tuotettu vaan jatkokehitetty. 1.1 - Kuva 1: Katkoviivalle tarvitaan selitys. 1.2 - Titokone kirjataan Koski-ryhmän tuottamaksi. - Termeihin kirjataan jotenkin se, että ryhmä pitää Koskeloa osana eAssaria. 2. - Lause "Tehtävän ratkaisu tarkistetaan...": Tehtävää ei tarkasteta Titokoneella vaan Analyser-komponentilla. Ainoastaan ratkaisun tehdään Titokoneella. - Kuva 2: Kuvan nimi voisi olla esimerkiksi tiedon siirtyminen järjestelmässä. Nykyinen nimi joka tapauksessa väärä. - Kuva 2: Jonnekin teksti siitä, että laatikot kuvaavat välituloksia. - Kuva 2: Ketju alkaa Tehtävän tyypin valinnalla, josta nuoli Yleiseen määrittelyyn. 2.1.1 - Composereita voi olla monta. - Viimeisessä lauseessa väärinymmärryksen mahdollisuus, lause on muotoiltava paremmin. - Kuva 3: SyntaxChecker -> TTK91SyntaxChecker - Kuva 3: Tehtävän määrittelyn -> Tehtävänmäärittelyn 2.1.2 - Displayereita voi olla monta. - Kolmannen lauseen sana "Ensimmäisen" poistetaan. - Kuva 4: Analyser -> Static/fill in/dynamic analyzer 2.1.3 - Ensimmäisen lauseen sivulause muotoon "kun opiskelija lähettää ratkaisun eAssarille." - Toisen kappaleen ensimmäinen lause ei kerro koko totuutta asiasta. - Lukuun tarvitaan jokin viittaus siihen, että Analysereita voi olla monta. - Kuva 5: Kuva on epäselvä ja kaipaa selvennystä. 2.2.2 - Mitä "siirtää vastuun" tarkoittaa? - Kuva 6: eAssari/Answer2 poistetaan. - Kuva jälkeinen kappale: Miten oikea Composer valitaan? - Viimeinen kappale: Analyser -> Analyser-osajärjestelmä 3 - Toinen kappale: Esittely tehdään seuraavissa aliluvuissa. 3.1.1 - Lauseesta "Kun arvot päätetty..." puuttuu verbi. - Toinen kappale: Mitä ensimmäisellä lauseella tarkoitetaan? Vastaava virhe myös aliluvuissa 3.1.2 ja 3.1.3. - Mitä metodi getHelps tekee? Vastaava puute myös useissa muissa aliluvuissa. 3.1.5 - Mikä lista luvussa on esitetty? 3.1.6 - Laitetaan ensimmäiseksi aliluvuksi. - Luokka on ulkoinen ja jo toteutettu. - Metodien kuvaukset muutetaan samaksi kuin muissa Displayereissa. 3.2 - Kuva 9: Kuva on liian pieni, joten siitä tehdään koko sivun kokoinen. 3.2.1 - Luetteloa edeltävä lause on kaikin puolin virheellinen. - Luettelo muutetaan taulukoksi tai otetaan bullet pointit käyttöön. - loop_detector -> max_commands - Sallitut käskyt -> Vaaditut käskyt ja kielletyt käskyt kirjataan erikseen. 3.2.2 - Kirjataan kentät, jotka laajennos sisältää. 3.2.3 - Mitä lisäkenttiä tarjoaa? 3.2.4 - Poistetaan kokonaan. Toiminnallisuus on SyntaxCheckerin asia. 3.2.6 - Luettelo muutetaan taulukoksi tai bullet pointeiksi. - Luettelot yhdistetään. - Lisätään uusia kenttiä luvun 3.2.1 mukaisesti. 3.2.7 - Muutama metodi puuttuu. - Sana "kriteria" muutetaan. 3.2.8 - Kaikki kriteerit annetaan taulukkona. - LoopDetectorin nimi muuttuu. - Mikä on setCompareMethodin parametrin semanttinen tulkinta? - getLoopDetectorin kuvaus kirjoitetaan paremmin. - getOptimalSizen kuvaus kirjoitetaan paremmin. 3.2.9 - Servletti kuuluu eAssariin. - Viimein lause "Tehtävänmäärittelysivut on..." -> Composerit on... 3.3 - Ensimmäinen lause "...ulkoisen Titokoneen..." -> "...ulkoisen osajärjestelmän, Titokoneen, kanssa." - Kuva 10: Kuva on liian pieni, näytetään koko sivun kuvana. 3.3.1 - Servletti kuuluu eAssariin. - Kuva 11: Kuva piirretään mahdollisimman paljon UML:ää mukaellen. 3.3.2 - Perintä ilmenee otsikosta, joten se poistetaan tekstistä. - Lauseen "Simulointeja voidaan joutua tekemään 1-4 kertaa." perään viite lukuun 5. - Sitä seuraava lause kirjoitetaan uudelleen selvemmin. - Lause "Titokoneen suoritus..." -> "TTK91-ohjelman suoritus Titokoneella" 3.3.3 - Sisältää samat metodit kuin 3.3.2. 3.3.4 - Sisältää samat metodit kuin 3.3.2. 3.3.6 - Lisätään lause "Metodeja lisätään ohjelmointivaiheessa, kun yhteiset kriteerit löydetään. 3.3.7 - Mainittava, että TaskBase on eAssarin luokka. 3.3.8 - Ensimmäisen kappaleen viimeinen lause: Mitä tietoja pyydetään? Lisätään viite kappaleeseen 5.2. - Metodi getStatistics korvataan metodeilla getCPU ja getMomory. 3.3.9 - Siirretään lukujen 3.3.1 ja 3.3.2 väliin. - Luokka on valmiina eAssarissa. 4. - Lisätään huomautus eri kieliversioista. 4.1.1 - Kappale "Mikäli kriteereissä on useampi arvo. Esimerkiksi..." muotoillaan uudelleen. - Lisätään kriteerien merkitys jossain muodossa omaksi luvukseen ennen lukua 4.1.2. 4.1.2 - Sanalla "Mallikoodissa" alkava lause muotoillaan selvemmäksi. - Mallisyntaksia on tarkennettava. 4.2 - Luku puuttuu kokonaan. 4.3 - Analyser -> Analyser-osajärjestelmä 5.1 - Kun-sanat pois tehtävätyyppien tunnisteiden kuvauksista. - Kahdessa lihavoidussa kohdassa TTK91-tehtävät -> TTK91-tehtävätyypit - Luokan TaskTypes tehtävätyyppien muotoilu on huono. - Insert-lauseissa allowed_commandsin lisääminen tehdään kahdella insertillä (allowed ja forbidden). B. Suunnitteludokumentin hyväksyminen Dokumentissa ei ollut sen kaltaisia virheitä, että uuden formaalin teknisen katselmoinnin pitämistä olisi pidetty tarpeellisena. Dokumentti päätettiin hyväksyä muutoksin siten, että dokumentti jäädytetään, kun tässä pöytäkirjassa mainitut virheet on korjattu.