Program powinien
zostać napisany w języku programowania Object Pascal (w środowisku
Delphi) lub dowolnym innym języku programowania uzgodnionym z
prowadzącym zajęcia.
Program powinien
być przygotowany tak, aby w laboratorium była możliwość kompilowania i
uruchomienia programu oraz edycji kodu.
Program
powinien być odporny na błędy:
wprowadzane przez złośliwego/roztargnionego użytkownika,
mogące pojawić się podczas wykonywania
instrukcji programu (np. próba odczytu danych z nieistniejącego
pliku, przepełnienie mogące się pojawić przy niektórych
działaniach matematycznych itp.).
Odporność
programu na błędy oznacza, że:
program nie
zawiesza się,
program
informuje użytkownika o wystąpieniu błędu,
jeśli pozwala
na to charakter błędu, program prosi użytkownika o wprowadzenie
poprawek, a następnie wykonuje kolejne instrukcje,
wystąpienie błędu nie powoduje otrzymania
niewłaściwych wyników.
Podczas prezentacji programu prowadzącemu
zajęcia muszą zachodzić następujące relacje:
jeden program jest prezentowany przez
jednego studenta (chyba, że z prowadzącym zajęcia uzgodniono inaczej),
student prezentujący program jest jego jedynym autorem (wyjątki - patrz punkt 6).
W przypadku problemów w
programowaniu student może:
skorzystać z pomocy prowadzącego zajęcia
lub bardziej doświadczonych koleżanek i kolegów,
wykorzystać fragmenty kodu innego
programisty przy spełnieniu następujących warunków:
autor wykorzystanych fragmentów
kodu wyraził zgodę na ich wykorzystanie,
program wykorzystujący cudzy kod
zawiera adnotacje o wszystkich współautorach kodu.
Wykorzystanie fragmentów cudzego
kodu (patrz punkt 6) wiąże się z:
obniżeniem oceny, odpowiednim do ilości
"cytowanego" kodu, jeśli spełnione zostały warunki z punktu 6b),
niezaliczeniem zadania, jeśli nie zostały
spełnione warunki z punktu 6b).
Każdy program powinien być zaliczony w
określonym terminie:
pierwszy program zaliczony do 10 listopada,
drugi program zaliczony do 20 grudnia,
trzeci program zaliczony do 31 stycznia.
Oddanie programu w terminie późniejszym
(niż określono w punkcie 8) wiąże się z obniżeniem oceny zaliczeniowej (pół stopnia/tydzień opóźnienia).
Nie dotyczy to sytuacji, w których opóźnienie powstało z
winy prowadzącego zajęcia lub zostało z prowadzącym uzgodnione
wcześniej.
Prowadzący zajęcia uwzględnia możliwość
poprawienia programu przez jego autora, jeśli ten nie jest
usatyfakcjonowany oceną zaliczeniową i chce ją podnieść lub obniżyć.
Ustalany jest wówczas zakres poprawek oraz termin zaliczenia
(niepóźniejszy jednak niż określony w punkcie 8).
Co jest
oceniane w zaliczanym programie:
Zgodność działania programu ze specyfikacją
wymagań, określoną w treści zadania programistycznego.
Optymalność kodu źródłowego, umiejętne
i właściwe stosowanie zmiennych różnych typów, instrukcji
etc.
Odporność programu na błędy.
Estetyka i ergonomia
interfejsu.
Ponadto na ocenę mają wpływ:
Termin zaliczenia zadania programistycznego
(patrz punkty A.8 i A.9).
Umiejętność samodzielnego rozwiązywania
problemów programistycznych (patrz punkty A.6 i A.7).
Sposób prezentacji programu
prowadzącemu zajęcia.
Na ocenę nie mają wpływu:
Wyposażenie programu w dodatkowe funkcje,
wybiegające poza specyfikację wymagań.
Fajerwerki, wodotryski i inne "barokowe"
elementy interfejsu programu (wyjątek: ich nadmiar, dezorientujący
użytkownika może spowodować obniżenie oceny, co wiąże się z punktem
B.4).