Programy zaliczeniowe ”Programowanie współbieżne i rozproszone
Transkrypt
Programy zaliczeniowe ”Programowanie współbieżne i rozproszone
Programy zaliczeniowe ”Programowanie współbieżne i rozproszone”, III rok informatyki dziennej, 2008/09 Zaimplementuj program rozproszonym w języku Java. Do implementacji możesz wykorzystać: 1. mechanizm zdalnego wywyłania obiektu RMI albo 2. Architekturę CORBA i język opisu interfejsów IDL albo 3. Protokołu SOAP, język WSDL do opisu Web Services Specyfikacja zadania: 1. Forum. Uczestnicy forum piszą posty do forum, posty magą być widoczne dla pozostałych uczestników forum, ale uczestnicy muszą je samodzielnie sciągnąć. Post to wiadomość tekstowa. Serwer może udostępniać opcje: dodanie nowego użytkownika, usunięcie użytkownika, zmiana hasła, usunięcie postu. Klient powinien umożliwić: logowanie, wyświetlenie wszystkich postów, wyszukanie postów, utworzenie i wysłanie nowego postu. 2. Serwer mailowy. Użytkownicy piszą listy i przesyłają je do serwera, a serwer przesyła je dalej do odpowiedniego adresata. 3. Tablica ogłoszeń. Użytkownicy przesyłają ogłoszenie do serwera a serwer je wyświetla. 4. Komunikator. Minimum dwóch użytkowników może się ze sobą komunikawać. 5. Rozproszona statystyka Mając dany ciąg liczbowy określony wzorem ( 1 dla n = 1 an = (n−1) Pn (−1) k=1 7 ∗ exp(k) dla n > 1 od użytkownika pobierz N określające liczbę elementów ciągu. Dzieląc pracę między P klientów oblicz max, min, sumę wszystkich wyrazów, wyniki wyświetl. 6. Serwer plików Aplikacja umożliwiająca wymianę plików, administrator tworzy użytkowników, może umieszczać i kasować pliki, użytkownicy(klienci) mogą wysyłać oraz pobierać pliki 7. Klient jabbera - Komunikator. Zadaniem jest wymyślenie prostego protokół, który umożliwi logowanie się na serwerze i rozmowę z jedną osobą. 8. Organizator dla wielu Kalendarz umożliwiający kilku osobom umawianie się na wspólne wykonywanie zadań i sprawdzanie czy nie ma kolizji. Administrator tworzy użytkowników. Użytkownicy mogą wpisywać terminy od poniedziałku do piątku, od 8 do 18 co godzinę, ale tylko wtedy kiedy są wolne miejsca. 9. Aukcje internetowe Administrator tworzy aukcję i użytkowników. Kilku użytkowników licytują, aż się skończy czas. Serwer wyświetla informacje o aukcji (na stronie lub w konsoli): opis przedmiotu, aktualna cena, lista licytujących. Jeśli ktoś chce licytować to podaje swoją maksymalną cenę, a system umieszcza go w odpowiednim miejscu na liście. 10. Wydziałowy system zapisów akademickich Na jeden przedmiot do wyboru można się zapisywać w odpowiednich godzinach. Administrator ustala godziny i użytkowników. Klienci łączą się z serwerem, a serwer wyświetla komunikat (może być na stronie, ale może być w konsoli tekstowo), że zapisy są od godziny x do y i np. pole do wpisania imienia i nazwiska. Oni się wpisują i wysyłają. Wtedy się pojawia komunikat, że jest jeszcze przed zapisami, albo już po, albo udało się zapisać, albo zabrakło miejsc. W wersji prostszej tylko jeden przedmiot (ustalany przez admina), w wersji trudniejszej kilka przedmiotów do wyboru. 11. System typu wiki Administrator tworzy szkielet strony i użytkowników. Użytkownicy mogą modyfikować stronę. 12. Ranking zdjęć Administrator tworzy stronę ze zdjęciem, można do niej dodawać komentarze, można oceniać, wylicza średnią ocenę, pokazuje ile razy była wyświetlona. 13. System bankowy Administrator tworzy użytkowników, ich konta i daje na początek ileś pieniędzy, tworzy listę haseł potrzebnych przy przelewach (dla każdego użytkownika). Można robić przelewy na konta innych użytkowników, przy przelewie trzeba podać odpowiednie hasło z listy. 14. System przeprowadzania testów Użytkownik łączy się z serwerem. Odbiera ilość pytań i w pętli kolejne pytania. Do każdego pytania są 3 odpowiedzi. Wybiera odpowiedź i wysyła. Po pętli serwer wyświetla wynik u klienta, ale także zapisuje sobie do pliku (wtedy np. klient może tylko jeden raz rozwiązać test albo jak chcemy to kilka ale wszystkie wyniki są zachowywane). Serwer przechowuje testy np. w prostym pliku tekstowym. Wystarczy jeden plik, który może podmieniać administrator. 15. Gra kółko i krzyżyk Serwer sobie działa i czeka, do niego może się połączyć dwóch klientów i przeprowadzić rozgrywkę. 16. Gra w statki Serwer sobie działa i czeka, do niego może się połączyć dwóch klientów i przeprowadzić rozgrywkę. 17. Oddawanie prac studenckich na serwer Aplikacja umożliwiająca wysyłanie plików na serwer oraz pobieranie z serwera. Administrator tworzy użytkowników przydzielająć im odpowednie katalogi.