Zasady zaliczenia projektu Informatyka 3 Zasady ogólne 1) Podstawą zaliczenia projektu jest oddanie programu który spełnia wymagania określone jako podstawowe oraz dokumentacji, w terminie podanym na początku zajęć. 2) Oprócz wyznaczonych spotkań kontrolnych (dwa w semestrze) zajęcia polegają na pracy samodzielnej w pracowni komputerowej lub w domu. Z ewentualnymi wątpliwościami i problemami moŝna zgłaszać się zawsze w terminie zajęć (wg planu). 3) Projekty powinny być wybrane z przedstawionej listy, lub w przypadku własnych pomysłów (zachęcam) uzgodnione indywidualnie. 4) Maksymalna ilość wykonawców danego projektu nie moŝe przekraczać liczby podanej w tabelce. 5) Projekt musi być stworzony w jednym z języków dostępnych w MS VS 2003/2005 (lub wyŝszej wersji), dopuszczalne są inne języki po wcześniejszym uzgodnieniu z prowadzącym. 6) Projekty oznaczone znakiem *, to zadania dla ambitnych, sugerowane dla osób zainteresowanych programowaniem, z pewnym doświadczeniem. Nie oznacza to jednak, Ŝe są to zadnia niewykonalne. Wręcz przeciwnie łatwo znaleźć liczne przykłady. 7) Dopuszczalne (a nawet zalecane) jest korzystanie z przykładów dostępnych w literaturze oraz internecie, jednak pod pewnymi warunkami: a) w dokumentacji naleŝy wyraźnie podać wszystkie wykorzystane źródła b) wykorzystany kod musi być dla piszącego w pełni zrozumiały (naleŝy dokładnie znać i potrafić opisać zasadę działania całego kodu) c) program nie moŝe być zbyt wierną kopią istniejącego przykładu (dyskwalifikacja) 8) W dokumentacji naleŝy opisać zasadę działania programu (skrócona instrukcja obsługi) oraz jego budowę, tj.: wykorzystane klasy obiektów i ich rolę w aplikacji i sposób komunikacji. Ocena PrzybliŜone kryteria oceniania przedstawia poniŝsza tabelka. Wszystkie osoby w zespole otrzymują tę samą ocenę, o ile okaŝe się ze ich udział w projekcie był porównywalny. Pewien wpływ na ocenę ma równieŝ regularność pracy (sprawdzana na spotkaniach kontrolnych). ocena dst dst+ db db+ bdb kryteria (sumują się) działająca wersja programu, spełnienie większości wymagań określonych jako podstawowe, prosta dokumentacja spełnione wszystkie wymagania podstawowe i dobry wygląd GUI (przede wszystkim schludność i estetyka, a nie wodotryski ) obsługa sytuacji wyjątkowych, program odporny na błędy uŝytkownika spełnienie wymagań rozszerzonych, dokładna dokumentacja (mile widziane wygenerowanie pliku XML por. dokumentacja MS VS) 1
Spis tematów projektów Nr projektu: 1 Maksymalna ilość wykonawców: 2 Zamiennik programu PAINT podstawowe: odczyt i zapis grafiki w formacie BMP rysowanie ręczne za pomocą pędzla o zadanym przez uŝytkownika kolorze i grubości zmiana koloru tła czyszczenie rysunku rozszerzone: odczyt i zapis grafiki w formatach TIFF i JPG rysowanie kształtów (linie proste, prostokąty i elipsy) Nr projektu: 2 Maksymalna ilość wykonawców: 2 Program do katalogowania płyt CD podstawowe: zapis struktury plików i katalogów z płyty do pliku (własny format) moŝliwość nadania płytce tytułu i zapisania komentarzy wyświetlanie zawartości płytki w formie drzewa plików i katalogów rozszerzone: wykorzystanie bazy danych (plik lokalny) do stworzenia kartoteki płyt CD przeglądanie i edycja rekordów w bazie wyszukiwanie po tytułach lub zawartości warto zapoznać się z podobnymi programami freeware dla przykładu (np.disclib lub Visual CD). Ograniczyć się do kluczowych, wyŝej opisanych opcji. Nr projektu: 3 ** Maksymalna ilość wykonawców: 4 Rejestrator / generator sygnałów wykorzystujący kartę dźwiękową podstawowe: program umoŝliwia rejestrację (tj. wyświetlenie i zapis) sygnału podanego na wejście mikrofonowe karty dźwiękowej w komputerze oraz podanie na wyjście karty dźwiękowej zadanego przez uŝytkownika sygnału dostępne powinny być 2 kanały wejściowe i 2 wyjściowe (stereo) uŝytkownik moŝe zadać jeden z kilku dostępnych sygnałów do podania na wyjście (mini generator funkcyjny) rozszerzone: wizualizacja sygnału (prosta, bez gadŝetów ) moŝliwość zadania dowolnego sygnału wyjściowego (z pliku tekstowego) wybór jednej z wielu dostępnych kart (jeśli jest zainstalowana więcej niŝ jedna) moŝliwość eksportu wykresu do pliku graficznego Podstawową sprawą będzie ustalenie czy program korzysta z DirectX czy jedynie z Windows API. Warto obejrzeć kody źródłowe podobnych programów dostępnych w internecie. Projekt dla osób zainteresowanych programowaniem sprzętu. 2
Nr projektu: 4 Maksymalna ilość wykonawców: 2 Program do rozmów w sieci LAN (tzw. chat ) podstawowe: program umoŝliwia prowadzenie rozmów między wszystkimi uŝytkownikami sieci lokalnej którzy uruchomili aplikację brak centralnego serwera rozgłaszanie w całej sieci rozszerzone: szyfrowanie przesyłanych danych (za pomocą gotowych algorytmów dostępnych w bibliotece klas.net) rozwiązanie problemu polegającego na tym Ŝe wszyscy się widzą własne pomysły mile widziane Jako przykład formy wizualnej projektu powinien posłuŝyć dowolny popularny komunikator. Warto prześledzić przykłady w MSDN. Nr projektu: 5 Maksymalna ilość wykonawców: 2 KsiąŜka adresowa podstawowe: program jest zuboŝonym zamiennikiem ksiąŝki adresowej dostępnej w systemie Windows (tylko podstawowe informacje) pracuje z bazą danych (plik lokalny, typ określony przez autora) w wersji podstawowej pozwala jedynie na dodawanie, usuwanie i przegładzenie kontaktów rozszerzone: praca z wieloma ksiąŝkami kontaktów (osobne pliki baz) eksport/import do formatu XML przeszukiwanie bazy Nr projektu: 6 Maksymalna ilość wykonawców: 3 Program wspomagający naukę słownictwa języka obcego podstawowe: program wyświetla na ekranie małe okienko w którym widoczne jest słówko w języku obcym i jego tłumaczenie co zadany odstęp czasowy wyświetlane jest następne słówko z listy okienko jest zawsze widoczne na wierzchu menu sterujące jest dostępne jako ikonka w pasku zadań (tray) baza słówek zapisana jest w plik tekstowym (1 plik = 1 lista słowek) rozszerzone: moŝliwość wyboru kolejnego lub losowo wybranego słówka z listy lista słówek w formacie XML zmiana odstępu czasowego oraz pauza sprawdzanie poprawności pliku zawierającego słówka 3
Nr projektu: 7 Maksymalna ilość wykonawców: 2 Informacje o sprzęcie zainstalowanym w systemie podstawowe: program wyświetla informacje o sprzętowej konfiguracji komputera rozszerzone: eksport raportu o zainstalowanym sprzęcie do pliku tekstowego w formacie RTF Wzorem moŝe być np. aplikacja SiSoft Sandra (tylko opcje dot. informacji, bez benchmarków) Nr projektu: 8 Maksymalna ilość wykonawców: 2 Przeglądarka plików graficznych podstawowe: przeglądarka plików graficznych w popularnych formatach (min. to BMP i JPG) GUI składa się z dwóch części: z lewej strony drzewko plików i katalogów, z prawej wyświetlenie aktualnie wybranego obrazu i podstawowe informacje o pliku rozszerzone: opcja wyświetlania miniatur plików graficznych danego katalogu Jako przykład moŝe posłuŝyć np. IrfanView Nr projektu: 9 Maksymalna ilość wykonawców: 3 Gra logiczna Pamięć podstawowe: prosta gra dla dzieci polegająca na znalezieniu pasujących do siebie obrazków, wśród rozłoŝonej puli na początku gry kartoniki leŝą obrócone rysunkami w dół; po kliknięciu w dany obrazek odwraca się on na chwilę; jeśli jako następny zostanie wskazany obrazek pasujący, to para znika; gra kończy się z chwilą znalezienia wszystkich par w wersji podstawowej istnieje stała liczba kartoników (np. 10) ; moŝna zamiast obrazków uŝyć prostych wzorów (kropki, kwadraty itp.) rozszerzone: zmiana liczby kartoników moŝliwość załadowania innego zestawu obrazków Nr projektu: 10 Maksymalna ilość wykonawców: 2 Edytor plików typu ICO podstawowe: edytor ikonek systemu Windows (pliki typu *.ICO) duŝy obraz ikonki, wybór koloru rozszerzone: konwersja obrazów BMP do formy ikonki ICO Przykładem (nieco zbyt rozbudowanym) moŝe być edytor okonek dostępny razem z MS Visual Studio 4
Nr projektu: 11 * Maksymalna ilość wykonawców: 2 Kółko i krzyŝyk gra w kółko i krzyŝyk z komputerem jak najprostszy GUI skupić się na grze Dla zainteresowanych tematyką AI. Dobre wprowadzenie do algorytmów AI. Warto przejrzeć przykłady dostępne w MSDN i internecie. Krótki kod programu duŝo czytania. Nr projektu: 12 ** Maksymalna ilość wykonawców: 4 Elektroniczny system rozwiązywania oraz sprawdzania testów oceniających wiedzę studentów podstawowe do wyboru 4 5 odpowiedzi student zaznacza prawidłową odpowiedź ptaszkiem/checkboxem automatyczne odliczanie czasu, zakończenie testu po upływie czasu sprawdzenie testu oraz opcjonalny wydruk wyników z oceną wczytanie pytań z pliku tekstowego rozszerzone program ma moŝliwość losowej zamiany kolejności pytań oraz zamiany kolejności odpowiedzi w poszczególnych pytaniach logowanie przez www, konta uŝytkowników, jedno administracyjne administrator systemu decyduje ile pytań, ile odpowiedzi, określa nazwę testu system oparty na bazie SQL implementacja prostego szyfrowania Projekt moŝe być kontynuowany w przyszłości w ramach pracy inŝynierskiej/magisterskiej Nr projektu: 13 Maksymalna ilość wykonawców: 2 Realizacja efektów dźwiękowych podstawowe realizacja efektów dźwiękowych echo, fuzz, flanger, kaczka wah-wah wczytanie pliku *.wav obróbka z moŝliwościami regulacji siły efektu zapis do pliku *.wav rozszerzone Nr projektu: 14 Maksymalna ilość wykonawców: 2 Realizacja efektów graficznych podstawowe wczytanie pliku *.bmp, *.jpg aplikacja ma umoŝliwić dokonania efektów: rozmycia, wyostrzania, siłę efektu moŝna regulować zapis do pliku rozszerzone 5
6