This is an old revision of the document!
Table of Contents
Tematy prac inżynierskich
2014
Na razie szkic…
Temat 2014-1 Zajęte (Michał Ślusarczyk)
Autentykacja użytkownika na podstawie charakterystyk czasowych uderzeń w klawisze (np. na wirtualnej klawiaturze Android). Różne tryby: jedno hasło lub uczenie dwójek i trójek znaków i prośba o wpisanie tekstu (captcha).
Należy jednak zebrać dane od około 20 użytkowników!
Temat 2014-2 Rekomendacja brakujących wymagań dla projektów informatycznych. W ramach pracy należy:
- zebrać informacje o funkcjach i przetwarzanych danych dla systemów z różnych dziedzin (np analizując 50-100 stron producentów z opisem aplikacji).
- ewentualnie manualanie dodać typowe wymagania (administracja, logowanie, itp)
- napisać aplikację webową, która po wprowadzeniu informacji o projekcie w języku angielskim (nazwy przypadków użycia, narracja, słownik z nazwami klas) określi prawdopodobną dziedzinę projektu i zarekomenduje brakujące wymagania.
Wyłącznie Java. Algorytm wyznaczenie rekomendacji musi być łatwy do wymiany (raczej z wykorzystaniem istniejącej biblioteki).
Temat 2014-3
Zajęty
Symulacja komunikujących się pojazdów (http://www.its.dot.gov/connected_vehicle/connected_vehicle.htm). Nowy protokół WiFi pozwala na dynamiczne budowanie połączeń sieciowych pomiędzy pojazdami w ruchu. Samochody przemieszczające się w sieci drogowej budują grafy połączeń i przekazują informacje (np. o jadącej karetce, wypadkach, korkach, utrudnieniach).
Praca obejmuje:
- symulację ruchu po drogach (fragment mapy z OSM)
- symulację zdarzeń i przepływu informacji
Należy przewidzieć możliwość zatrzymania symulacji i wizualizacji grafów.
Platforma Java.
Temat 2014-4 Analiza i zastosowania algorytmów typu Pergel. Pergel to opublikowany około 4 lata temu przez Google model obliczeniowy służący do działań na dużych rozprosoznych grafach (np. obliczania PageRank).
https://wiki.engr.illinois.edu/download/attachments/188588798/pregel.pdf?version=1
W zależności od predyspozycji - praca może być bardziej przeglądowa (literatura + uruchomione przykłady dla kilku dostępnych podobnych pakietów) lub próba własnej implementacji uproszczonej lokalnej wersji modelu dla realizacji konkretnego zadania. Ewentualnie dwie tego typu prace.
Temat 2014-5 Edytor relacji występujących w wypowiedziach.
Celem pracy jest zbudowanie aplikacji webowej (np. z wykorzystaniem JSF) pozwalającej na zapis w relacyjnych strukturach danych wprowadzonych przez użytkownika opisów wypowiedzi. Inne funkcje to wyszukiwanie autorów, terminów, itp. Praca obejmuje analizę i specyfikację, projekt i implementację.
Model wypowiedzi (przykładowy):
proposition: statement [statement] statement: claim(Author,Source,proposition) | agree(Author,proposition) | disagree(Author,proposition) | agree_a(Author,Author) | disagree_a(Author,Author) | equivalent(proposition,proposition,Author,Source) | thesis | definition
proposition
to złozone stwierdzenie składające się z prostych zdań statement
. Ich przykładowe typy to claim
, agree
, itd. Każdemu zdefiniowanemu typowi będzie odpowiadała tabela w bazie danych. Kluczowym problemem jest opracowanie edytora, który np. będzie rozwijał dynamicznie drzewo…
Temat 2014-6 Nowoczesne serwisy internetowe oparte o technologię WebSocket Zajęte Konrad Seweryn
2013
Ze względu na przekroczenie limitu prac dyplomowych nie mogę być promotorem kolejnych prac inżynierskich.
Implementacja repozytorium wideo w oparciu o rozproszony system plików CrOS FS
CrOS jest planowanym rozproszonym systemem operacyjnym. Ma on modularną budowę; poszczególne moduły komunikują się przez interfejs usług sieciowych. Potencjalnie,oznacza to możliwość integracji komponentów zaimplementowanych na różnych platformach.
Obecnie zrealizowane są na platformie Java/Glassfish (w ramach prac magisterskich)
- rozproszony system plików CrOS FS
- moduł wykonania procesów (wątki w języku Java)
- kolejki komunikatów
Praca ma stanowić kontynuację pracy magisterskiej. W ramach pracy magisterskiej zostały zaimplmentowane i przetestowane trzy architektury systemu pozwalajacego na przesyłanie plików składających się bloków danych. Bloki mogą być redundantne i mogą być umieszczone na różnych serwerach. Komunikacja odbywa się przez usługi sieciowe.
Celem pracy jest implementacja klienta systemu, który umożliwiał będzie przesyłanie na serwer i pobieranie dużych plików(np.: filmów)
Optymalizacja zużycia energii mobilnych czujników GPS
ZAREZERWOWANE
Mobilny czujnik GPS przesyła informacje o położeniu pojazdów do centralnego systemu. Jednakże okresowy transfer pojedynczych danych, np.: co 5 sekund jest zbyt kosztowny:
- zużywa energię
- generuje koszty (opłaty za komunikację)
Bardziej opłacalne jest przesłanie paczki danych. Problemem jest jednak kiedy i jaką podjąć decyzję (wysłać mniej danych, kiedy jest dobry zasięg i zużyć energię, czy czekać na zgromadzenie paczki danych ryzykując, że przy słabszym poziomie sygnału pojawią błędy).
Celem pracy jest
- Implementacja aplikacji mobilnej zbierającej dane o położniu pojazdów
- Analiza danych i przeprowadzenie optymalizacji mającej na celu ustalenie polityki, czyli wskazania jaką decyzję należy podjąć danego stanu. Dalsze informacje przekażę bezpośrednio.
Symulacja i optymalizacja ruchu na skrzyżowaniu z wykorzystaniem logiki rozmytej
ZAJĘTE
Koncepcyjnie, praca ma być kontynuacją udanej pracy inżynierskiej sprzed paru lat: http://zibiteac.ayz.pl/zakopane-aleje-3-go-maja-dolne.html Celem jest symulacyjne porównanie ruchu na zamodelowanym (tym samym) skrzyżowaniu przy
- stałych fazach świateł oraz
- zaimplementowanym algorytmem optymalizacji wykorzystującym reguły rozmyte.
Reguły mają przykładową postać
JEŻELI ruch na kierunku A jest MAŁY, a na kierunku B jest jest DUŻY, TO faza A jest krótka JEŻELI ruch na kierunku A jest MAŁY, a na kierunku B jest jest MAŁY, TO faza A ma średnią długość
W wyniku wnioskowania następuje “głosowanie” i podejmowana decyzja o wartości zmiennej wyjściowej poprzez agregację głosów. Reguły rozmyte są bardzo rozpowszechnione, efektywne i proste w implementacji. Często są na stałe wbudowane w urządzenia elektroniczne.
Metryki dla architektur oprogramowania
ZAJĘTE
Celem pracy jest implementacja wtyczki do programu Archi mającej na celu obliczenie zbioru około 20-25 metryk mających na celu ocenę jakości architektury oprogramowania. Archi jest edytorem pozwalającym na tworzenie modeli w języku opisu architektur ArchiMate.
Zasada działania - przeglądany jest pewien graf opisujący model architektury i wyznaczane są dość proste w implementacji metryki grafowe(na podstawie literatury). Dodatkowo powinny być obliczone i zilustrowane wpływy metryk na tzw. atrybuty jakości (złożoność: mnożenie macierz x wektor).
Wtyczka jest napoczęta, obliczone są dwie przykładowe metryki.
Część literaturowa obejmowała będzie
- język ArchiMate
- modele referencyjne
- metryki