Projektikokous 27 FTR Paketti Aika 28.11.2003, 8:20-10:11 Paikka TKTL C476 Läsnä Turjo Tuohiniemi (ohjaaja,sihteeri) Jukka Manner (asiakas) Jaakko Saaristo (projektipäällikkö) Lasse Gustafsson Pekka Rousu Marko Buuri Tommi Rantala KOKOUKSESSA KÄSITELLYT ASIAT Kokouksessa käytiin ohjelmakoodin FTR. Asiakas olis paikalla katsomassa Java-koodin sekä hieman C-koodia. Tarkoituksena oli etsiä ohjelmakoodista virheitä ja puutteita, jotka vaikeuttavat ohjelman ylläpidettävyyttä. Lähdekoodista löydettiin seuraavanlaisia asioita: -- PakettiGUI.java ------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS - Koko luokka Metodeja ja luokkamuuttujia ei kommentoitu. 47 Komentoriviparametrien käsittely puuttuu kokonaan. Tarvitaan 35 riviä koodia. - 29-32 Ei kerro koko totuutta virheestä. -------------------------------------------------------------------------- -- Connection.java ------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 12 29 Vakion nimi harhaanjohtava. 20 121-125 Taikavakioita. -------------------------------------------------------------------------- -- ConnectionException.java ---------------------------------------------- -------------------------------------------------------------------------- -- Message.java ---------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 15 Koko luokka XML-nimi on kirjoitettu miten sattuu. -------------------------------------------------------------------------- -- Element.java ---------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS - Koko luokka Kommenteissa puhutaan subelementistä, koodissa childistä, vaikka tarkoitetaan samaa asiaa. 42 54-110 Metodi on liian pitkä. - 88-110 Kuollutta koodia. - 135 Muuttujan isLeaf merkitys jää lukijalle epäselväksi. -------------------------------------------------------------------------- -- AttributeField.java --------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 1 19-20 Pitäisi olla label, ei mLabel. 1 40 Koodissa käytetään sekaisin sanoja creates ja constructs. 39 53,71,95,107 Ei korjata. - 48-78 Koodia voisi jäsentää rivinvaihtojen avulla. -------------------------------------------------------------------------- -- Gui.java -------------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 1 23 Kommentti voisi kertoa tarkemmin luokasta. 1 203 Mitä LMB, MMB ja RMB tarkoittavat? 1 278 Epäasiallinen kommentti. 1 296 Ei kerro mitä metodi tekee. 8 209,257,288, Epäselviä muuttujanimiä 304,327 22 40-42 Jää epäselväksi, onko vakioiden välillä jokin suhde. Ei korjata. 36 214,258,283,304 Voisi tarkistaa, voiko jossain välissä tulla null-arvo. 41 208-265 Liikaa sisennystä. 1 234 Kommentti puuttuu. 15 29 Luokan nimi on Gui, pitäisi olla GUI. -------------------------------------------------------------------------- -- NiceBox.java ---------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 28 83 36 61-66 Voisi harkita, pitääkö jakaa koodia useammalle riville. 46 33,46,67 1 19,71,72 Muuttujanimissä käytetään m-etuliitettä, vaikka ei pitäisi. 8 58 Ei korjata. 1 34 Ei kerro, mitä metodi oikesti tekee. -------------------------------------------------------------------------- -- XMLParser.java -------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 1 38 Vaikeatajuinen kommentti. 1 63-68 Metodin merkitystä ei ole kuvattu. 20 95 Literaalivakio. - 69-103 Koko metodin merkitys ja toteutus ja kaikki muukin jää epäselväksi. 1 105 Metodin kommentti puuttuu. 5 127-132 Lööperiä. - 141-154 Kuollutta koodia. -------------------------------------------------------------------------- -- Yleisesti (Java) ------------------------------------------------------ * vähän joka puolelta puuttuu kommentteja. -------------------------------------------------------------------------- -- tc_control.c ---------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 4 29-35,116,176,257-263 6 12,116,176 Funktion otsikosta puuttuu static-määre. - 176,229,265,314 Metodien nimet hämäävät, liittyy edelliseen kohtaan. 28 12,68,100,116,229,314 44 229-255 & 314-341 176-218 & 265-307 - 52 printf() pitäisi olla error_set():ksi - 1-341 strcat():n tilalla kannattaisi käyttää snprintf():ää -------------------------------------------------------------------------- -- pakettid.c ------------------------------------------------------------ KOODI RIVINUMEROT TARKENNUS - 1-269 Vaikka static-funktioita, voisi olla kommentit. -- stccp.c --------------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS - 1-536 assert-makroa ei saisi käyttää suojana NULL-osoittimia vastaan. 5 64,114,163,210,253 53 18-61 Historian painolastia. 48 210,253,285 - 1-536 Merkkijonovakiota ei saisi suoraan tyyppi- muuntaa xmlChar-tyyppiseksi osoittimeksi - 317 pitäisi ehkä mahdolliseti harkita, että voisiko nimi sittenkin olla get_msg_type (kai). Myös muissa funktioissa sama ongelma. Tyyliseikka. - 89-98 line_ok:n logiikka väärin päin. Toimin- nallisuus ei vastaa kommenttia. - 114-155 Paluuarvoon -1 pitäisi liittää error_set() -------------------------------------------------------------------------- -- arena.c --------------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 5,6 1-82 Kommentit pitää tarkistaa. 53 55 -------------------------------------------------------------------------- -- error.c --------------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 5,6 9 -------------------------------------------------------------------------- -- transform.c ----------------------------------------------------------- KOODI RIVINUMEROT TARKENNUS 28 452,508 20 190,275,319,392 26 484,498 13 514,591,592 61 Puuttuu return NULL 47 84 Arvio toteutuksesta: 50 riviä - 399 Turha muuttuja. - 243,244 Muistinvarauksen tarkistus puuttuu. - 643-646 Turhaa koodia. - 589-655 else-haarat vähintäänkin eksoottisia. 5 8 - 1-695 Taikavakioita 100 ja 1000 esiintyy siellä täällä, varsinkin muistin varauksessa ilman että tarkistaa tämän riittävyyttä. - 533 Vuotaa muistia (xml_doc:n vapautus puuttuu, myös muualla). - 453 error_set()-kutsut puuttuvat. 24 14,16 Pitäisikö olla globaaleja muuttujia? - 0 Puuttuu noin 300 riviä (epämääräinen arvio). -------------------------------------------------------------------------- SEURAAVA TAPAAMINEN Ryhmän seuraava virallinen tapaaminen on tiistaina 02.12.2003 kello 10:00 salissa C476.