|
|
pl:miw:2009:miw09_hqed_audit_1 [2009/10/13 19:49] jsi08 |
pl:miw:2009:miw09_hqed_audit_1 [2019/06/27 15:50] |
====== HQEd audit ====== | |
| |
autor: Damian Dudziński, email: <damian.dudzinski(at)gmail.com> | |
| |
Test the new version of HQEd. | |
| |
Check quality, test, update manual, code and funcionality audit, in wiki description and s5 presentation. | |
| |
====== Projekt ====== | |
===== Sprawozdanie ===== | |
===== Prezentacja ===== | |
===== Do wykonania ===== | |
==== Audyt kodu ==== | |
| |
* Przetłumaczenie komentarzy w j. polskim na j. angielski. | |
* Dostosowanie formatu komentarzy do formatu obsługiwanego przez doxygen. | |
* komentowanie parametrów funkcji: ''\param nawa_parametru - opis'' (nazwa parametru bez typu!) | |
* Uzupełnienie nazw argumentów w plikach nagłówkowych | |
* Usunięcie wszystkich **możliwych** ostrzeżeń podczas kompilacji. | |
* ''unused variable'' | |
* conversion warnings | |
* inne | |
* Tutaj należy uważać gdyż w niektórych momentach kod jest bardzo czuły na wszelkie zmiany. | |
* Sprawdzenie informacji zawartych w nagłówkach plików (nazwa pliku, klasy, daty). | |
| |
==== Testowanie HQed ==== | |
| |
* Zadanie polega na dprawdzeniu poprawności działania narzędzia. | |
* Testowanie powinno zostać zrealizowane na dwa sposoby: | |
* Testowanie modelowania systemów od podstaw: | |
* Zamodelować od początku system Thermostat. | |
* Zamodelować od początku system ATM. | |
* Oraz inne dostępne. | |
* Nowe pliki wrzucamy na wiki z wyraźnym zanzaczeniem że są **nowe**. | |
* Należy zwrócić uwagę na: | |
* Ograniczenia narzędzia - czego nie da się zrobić co jest przewidziane w specyfikacji XTT. | |
* Czy proces modelowania przebiega poprawnie: | |
* Czy i ewentualnie w jakich sytuacjach narzędzie **umożliwia** wprowadzenie **niepoprawnych** danych. | |
* Czy i ewentualnie w jakich sytuacjach narzędzie **uniemozliwia** wprowadzenie **poprawnych** danych. | |
* Testowanie na gotowych modelach: | |
* Należy wykorzystać modele z poprzedniego punktu, oraz inne dostępne. | |
* Testowanie powinno polegać na: | |
* Próbie edycji poszczególnych elementów modelu: | |
* Należy sprawdzić czy po edycji poszczególnych parametrów, właściwości danego obiektu narzędzie odpowiednio sygnalizuje, bądź przestaje sygnalizować anomalie. Przykładowo: | |
* Dla atrybutu możemy zmienić: typ, nazwę, klasę, relację, itp. | |
* Dla typu możemy zmienić: dziedzinę, rodzaj ograniczeń. Dodatkowo dla typów symbolicznych uporządkowanych kolejność elementów. | |
* W tabelach należy manipulować kolumnami i wierszami (dodawać, usuwać, zamieniać, zmieniać konteksty, itp), zmieniać typ tabeli. | |
* W komórce należy zmienić działanie, zmieniać typy zwracane na poszczególnych poziomach. | |
* Przykładowo: | |
* Po zmianie typu atrybutu (np. z symbliczonego na liczbowy) narzędzie powinno wyświetlić informacje o niezgodności typów zwracanego i oczekiwanego. | |
* Po zmianie relacji atrybutu z ''internal'' na ''output'', narzędzie powinno wyświetlić informacje o nieprawidłowym użyciu atrybutu w kolumnach kontekstu warunkowego w których ten atrybut się znajduje. | |
* Testowaniu zapisu i odczytu z pliku: | |
* Prostych i złożonych modeli. | |
* Złożonych (zagnieżdżonych) wyrażeń w komórkach. | |
* Testowaniu generowania kodu PROLOGU: | |
* Czy kod jest poprawny składniowo, czy jest uruchamialny przez HeaRT. | |
* Czy kod jest poprawny pod względem semantycznym z modelem XTT. | |
| |
| |
| |
====== Spotkania ====== | |
===== 20090225 ==== | |
| |
===== 20090528 ==== | |
Uwagi: | |
http://student.agh.edu.pl/~dudad/miw/ | |
| |
====== Materiały ====== | |
===== Dostęp do CVS HQeD ====== | |
| |
==== CVS Access ==== | |
| |
Aby mieć możliwość korzystania z CVS to oprócz konta na charonie potrzebne jest skonfigurowanie systemu na wsłasnym komputerze: | |
* Aby nie powtarzać operacji za każdym razem najlepiej jest umieścić poniższe instrukcje w pliku inicjalizacyjnym powłoki: | |
| |
export CVSROOT=:ext:kinio@charon.ia.agh.edu.pl/mnt/cvs/cvs-hades | |
export CVS_RSH=ssh | |
| |
* Powyższe instrukcje są kompatybilne z powłoką //sh// i pochodnymi, należy je odpowiednio zmodyfikować dla innych powłok (o ile konieczne). | |
* Ciąg ''kinio'' zastąpić własną nazwą użytkownika. | |
* Dla osób pracujących w systemi Windows dobrym rozwiązaniem może być pakiet Cygwin (podczas inastalacji należy zaznaczyć moduł obsługujący CVS, SSH). | |
| |
W celu uniknięcia powstawania **bardzo** niechcianych konfliktów w systemie kontroli wersji należy zastosować się do poniższych uwag: | |
* Tuż przed rozpoczęciem pracy zsynchronizować swoję wersję kodu z tą która aktualnie znajduje się w repozytorium wpisując komendę: | |
| |
cvs update | |
| |
* **Nie pobieramy i nie edytujemy wersji tagowanych**. | |
* Podobnie: nie tagujemy żadnych wprowadzanych do repozytorium wersji :!: | |
* Często wprowadzamy zmiany do repozytroium wykonując tzw. ''commit'' komendą: | |
| |
cvs ci | |
| |
* **Zakładamy że wykonujemy jeden ''commit'' po zakończeniu pracy z pojedynczym plikiem** :!::!: | |
* Zawsze po zakończeniu pracy upewniamy się że wprowadziliśmy zmiany do CVS. | |
* Nie usuwamy żadnych plików. | |
* Można dodawać pliki (tylko niezbędne) poleceniem: | |
| |
cvs add filename | |
| |
* Staramy się umieszczać w CVS wersję możliwą do skompilowania. | |
* Podczas kompilacji mogą powstawać różne dodatkowe pliki np. moc_*.cpp, ui_*.h, *.o, Makefile* - **nie dodajemy ich do repozytorium** :!::!: | |
| |
==== CVS OnLine ==== | |
See [[https://hekate.ia.agh.edu.pl/webcvs/cvs-hades/view.vc/hades/hqed|On line HaDeS CVS]] | |
| |
Log in with the same user/password as in wiki, you need to be in the appropriate cvs group at charon for this to work! | |
| |
==== Doxy OnLine ==== | |
| |
The [[https://hekate.ia.agh.edu.pl/webdoxy/hqed/doc/|DoxyGen doc]] for Hqed, automagically regenereted while you sleep :-) | |
Log in with the same user/password as in wiki, you need to be in the appropriate cvs group at charon for this to work! | |