bd - projekty - Politechnika Śląska
Transkrypt
bd - projekty - Politechnika Śląska
1 Zarządzanie funkcjonowaniem wortalu internetowego z elementami zarządzania informacjami Internetowy wortal informacyjny Wyobraź sobie, że pracujesz w czasopiśmie o ogólnopolskim zasięgu jako specjalista od nowoczesnych technologii. Nowy redaktor naczelny magazynu podjął niedawno decyzję o stworzeniu wielotematycznego portalu internetowego (wortalu), który stanowiłby wizytówkę magazynu w sieci. Twoim zadaniem jest stworzenie bazy danych obsługujących nowe informacje (newsy) pojawiające się na witrynie. W bazie przechowywane mają być informacje o użytkownikach uprawnionych do dodawania informacji, treści tych informacji, słowa kluczowe powiązane z informacjami (tagi) oraz komentarze do informacji. • każdy użytkownik może być autorem dowolnej liczby informacji, każda informacja ma jednego autora • każda informacja może mieć wiele powiązanych słów kluczowych, każde słowo kluczowe może być powiązane z dowolną liczbą informacji • każda informacja może być skomentowana dowolną ilość razy, dany komentarz odnosi się tylko do jednej informacji • każdy komentarz może być autorstwa użytkownika lub być anonimowy Minimalne informacje przechowywane w bazie: użytkownicy: login, imię, nazwisko, data dołączenia informacje: treść, data dodania, średnia ocena wieści, liczba komentarzy słowa kluczowe: słowo (np. IBM, filmy, George Clooney, Web 2.0 itd.) komentarze: treść, data dodania, autor, ocena informacji Widoki: vw_liczba_informacji – dla każdego użytkownika wypisuje liczbę dodanych przez niego informacji vw_informacji_wg_tagu – dla każdego słowa kluczowego wypisuje informacje z nim powiązane vw_komentarze – dla każdej informacji wypisuje komentarze do niej dodane vw_uzytkownicy_tagi – dla każdego użytkownika wypisuje wszystkie słowa kluczowe powiązane z dodanymi przez niego informacjami oraz liczbę ich wystąpień vw_uzytkownicy_ranking – dla każdego użytkownika wypisuje średnią ocen wszystkich informacji dodanych przez danego użytkownika Wyzwalacz: W momencie wstawienia nowego komentarza obliczana jest średnia ocena danej informacji oraz liczba komentarzy do niej dodanych. Obie te wartości są wstawiane (lub aktualizowane) w odpowiednich miejscach w tabeli przechowującej informacje o informacjach. Minimalne dane: • przynajmniej 5 użytkowników • przynajmniej 20 informacji, każda powiązanymi z przynajmniej dwoma słowami kluczowymi • przynajmniej 20 słów kluczowych • przynajmniej 60 komentarzy Politechnika Śląska, WOIZ, Katedra IiE 2 Aukcja jako element gry strategicznej System aukcyjny Właściciel pewnego znanego portalu społecznościowego postanowił rozszerzyć swoją ofertę. Pragnie on, aby użytkownicy portalu mieli możliwość wystawiania różnych przedmiotów na aukcje. Otrzymałeś zlecenie stworzenia bazy danych obsługującej prosty internetowy system aukcyjny. W bazie przechowywane są informacje o użytkownikach, aukcjach, kategoriach aukcji oraz ofertach. Po pomyślnej weryfikacji systemu zostanie on zintegrowany z dotychczasową bazą użytkowników portalu. Wymagania dla systemu: • każdy użytkownik może być wystawić na aukcję dowolną liczbę przedmiotów (czyli być właścicielem dowolnej liczby aukcji), każda aukcja ma tylko jednego właściciela • każda aukcja ma dokładnie jedną kategorię, różne aukcje mogą mieć te same kategorie • każda kategoria może być związana z dokładnie jedną kategorią nadrzędną (taka kategoria nazywana jest wtedy kategorią podrzędną); kategorie nadrzędne (te, które nie mają własnych kategorii nadrzędnych) mogą mieć dowolną liczbę kategorii podrzędnych • do każdej aukcji można składać wiele ofert, każda oferta przyporządkowana jest tylko jednej aukcji Dla uproszczenia zakładamy, że każda kategoria jest albo nadrzędna, albo podrzędna (nie występują kategorie, które są jednocześnie nadrzędne i podrzędne). Aukcje powinny być powiązane z kategoriami podrzędnymi. Minimalne informacje przechowywane w bazie: użytkownicy: login, imię, nazwisko, nr kontaktowy, nr gg albo innego komunikatora aukcje: data i godzina rozpoczęcia, data i godzina zakończenia, nazwa przedmiotu, opis przedmiotu, cena wywoławcza kategoria: nazwa oferty: wartość oferty, data i godzina Widoki: vw_aukcje_zakonczone – dla każdej zakończonej aukcji wypisuje wartość najwyższej oferty vw_kategorie – dla każdej kategorii nadrzędnej wypisuje wszystkie kategorie podrzędne oraz liczbę aukcji należących do tych kategorii vw_aukcje_wg_kategorii – dla każdej kategorii wypisuje wszystkie aukcje oraz aktualną (tzn. najwyższą) wartość zaoferowaną za dany przedmiot vw_aukcje_uzytkownikow – dla każdego użytkownika wypisuje zaoferowane przez niego przedmioty Wyzwalacz: Kontrola czy użytkownik nie składa oferty pod swoją aukcją oraz czy aktualnie składana oferta jest wyższa od poprzedniej oferty. Minimalne dane: • przynajmniej 10 użytkowników • przynajmniej 20 aukcji (w tym przynajmniej 6 niezakończonych) • przynajmniej 3 kategorie nadrzędne i 7 kategorii podrzędnych • przynajmniej 3 oferty do każdej aukcji Politechnika Śląska, WOIZ, Katedra IiE 3 Utworzenie bazy danych na potrzeby edukacji (z możliwością wykorzystania w zdalnym nauczaniu) Geografia Nauczyciel geografii prowadzący szkolne kółko geograficzne „Ferdynand Magellan” marzy o utworzeniu bazy danych, dzięki której jego wychowankowie mogliby łatwiej i przyjemniej opanować informacje o otaczającym nas świecie. Nauczyciel chciałby uwzględnić informacje o państwach, miastach, morzach i kontynentach. Pomóż mu zbudować bazę danych do gromadzenia takich właśnie informacji, wiedząc że: • Jedno państwo leży na jednym lub dwóch kontynentach, a na każdym kontynencie może znajdować sie wiele państw • Każde miasto znajduje się w jednym państwie, w danym państwie jest wiele miast • Każde morze oblewa jedno lub wiele państw, natomiast państwo może graniczyć z jednym, z kilkoma lub z żadnym z mórz (uwzględnij długość granicy morskiej) • Każde państwo ma swój ustrój, wiele państw może mieć taki sam ustrój Minimalne informacje przechowywane w bazie: Państwa: nazwa państwa, powierzchnia państwa, liczba ludności, Miasta: nazwa miasta, liczba mieszkańców, czy stolica? Morza: nazwa morza Kontynenty: nazwa kontynentu, powierzchnia kontynentu Ustrój: nazwa, opis Widoki: vw_zaludnienie – dla każdego państwa wypisuje gęstość zaludnienia vw_panstwa_wokol_morza – dla każdego z mórz wypisuje kraje z nim sąsiadujące vw_panstwa_na_kontynentach – dla każdego kontynentu wypisuje państwa na nim się znajdujące vw_panstwa_na_wielu_kontynentach – wypisuje nazwy państw, które leżą na więcej niż jednym kontynencie Wyzwalacz: Uniemożliwienie przypisania do państwa więcej niż dwóch kontynentów. Kontrola czy każde państwo posiada co najwyżej jedną stolicę. Minimalne dane: • Przynajmniej 4 kontynenty • Przynajmniej 30 państw • Przynajmniej 50 miast • Przynajmniej 10 mórz Politechnika Śląska, WOIZ, Katedra IiE 4 Utworzenie bazy danych do zarządzania zasobami ludzkimi Drużyny piłkarskie Twój przyjaciel, miłośnik futbolu, chciałby utworzyć bazę danych służącą do gromadzenia informacji na temat rozgrywek piłkarskich. Ponieważ nie ma on zbyt dużego doświadczenia w projektowaniu baz danych, poprosił Cię o pomoc. Obiecałeś, że utworzysz bazę danych umożliwiającą przechowywanie informacji o drużynach, piłkarzach, meczach oraz „czerwonych kartkach”. Dodatkowo ustaliliście, że: • W jednej drużynie jest wielu piłkarzy, a jeden piłkarz gra dokładnie w jednej drużynie (nie interesuje nas, w jakich drużynach piłkarz grał wcześniej) • Jeden piłkarz gra w wielu meczach, a w jednym meczu gra wielu piłkarzy • W jednym meczu grają dwie drużyny (jedna jako drużyna gospodarzy, druga gości) • Piłkarz w danym meczu może dostać maksimum jedną „czerwoną kartkę” Minimalne informacje przechowywane w bazie: Piłkarze: imię, nazwisko, data urodzenia Drużyny: nazwa, miasto Mecze: data, godzina, drużyna gości, drużyna gospodarzy Występ piłkarza w meczu: liczba strzelonych bramek, minuta otrzymania czerwonej kartki Widoki: vw_lista_strzelców – wypisuje piłkarzy i liczbę strzelonych przez nich bramek we wszystkich dotychczasowych meczach vw_najbliższe_mecze – lista planowanych meczy w ciągu następnych 30 dni vw_czerwone_kartki – wypisuje piłkarzy wraz liczbą otrzymanych czerwonych kartek vw_bramki_na_wyjeździe - wypisuje listę drużyn wraz z liczbą zdobytych bramek w meczach wyjazdowych vw_klasyfikacja_drużynowa – wypisuje listę drużyn wraz z sumą zdobytych bramek Wyzwalacz: Kontrola czy piłkarz wystąpił w meczu swojej drużyny Minimalne dane: • przynajmniej 8 drużyn • przynajmniej 40 piłkarzy • przynajmniej 10 meczów Politechnika Śląska, WOIZ, Katedra IiE 5 Stworzenie bazy danych dotyczącej sieciowej struktury organizacyjnej Komunikacja miejska Stanąłeś przed koniecznością pracowania bazy danych dla komunikacji autobusowej w Twoim mieście. Ma on zawierać informacje o liniach autobusowych, przystankach i godzinach odjazdu z nich autobusów. W bazie danych należy uwzględnić następujące zależności: • każda linia autobusowa (tzn. autobus o danym numerze) obsługuje kilka przystanków w ustalonej kolejności, na każdym przystanku może zatrzymywać się kilka różnych autobusów • z każdą kombinacją linia autobusowa-przystanek związany jest (przynajmniej jeden) czas odjazdu danego autobusu z tego przystanku • z każdym czasem odjazdu związany jest atrybut informujący, w jakie dni dany kurs się odbywa; różne czasy odjazdów mogą mieć te same atrybuty (np. kursuje przez całe rok, nie kursuje w niedzielę i święta itp.) Minimalne informacje przechowywane w bazie: Linie: numer linii, zakład obsługujący Przystanki: nazwa, lokalizacja Kolejność: numer opisujący, którym z kolei postojem jest dany przystanek na trasie danego autobusu Czasy odjazdów: godzina odjazdu Atrybuty odjazdów: skrót atrybutu, opis (np. CR – kursuje cały rok za wyjątkiem świąt – jakich?, NW – nie kursuje w okresie wakacji itd.) Widoki: vw_rozkład – dla każdej linii i dla każdego przystanku wypisuje godziny odjazdów (wraz z atrybutami) vw_przystanki_linii – dla każdej linii autobusowej wypisuje we właściwej kolejności przystanki przez nią obsługiwane vw_odjazdy_z_przystanków – dla każdego przystanku wypisuje liczbę autobusów, które z niego odjeżdżają w ciągu jednego dnia Procedura składowana (MySQL lub MS SQL Server): Wyzwalacz (SQLite): Kontrola więzów integralności w bazie Minimalne dane: • przynajmniej 5 linii autobusowych • przynajmniej 20 przystanków • przynajmniej 5 przystanków na trasie każdej linii • przynajmniej 4 czasy odjazdów dla każdego przystanku na każdej linii Politechnika Śląska, WOIZ, Katedra IiE 6 Stworzenie bazy danych na potrzeby marketingu Występy zwierząt w cyrku Dyrektor cyrku „W paszczy lwa” doszedł do wniosku, że z uwagi na rosnącą popularność jego placówki, dobrze byłoby stworzyć bazę danych na temat występów zwierząt. Miałyby się znaleźć w niej informacje o zwierzętach, treserach, rodzajach występów i rozkładzie występów. Zostałeś poproszony o wykonanie tego zadania. Utwórz bazę danych, uwzględniając, że: • zwierzak ma dokładnie jednego tresera • treser może ćwiczyć wiele zwierząt • zwierzak może danego dania mieć wiele występów, każdy o innej godzinie • występ ma swój rodzaj, wiele występów może mieć ten sam rodzaj Minimalne informacje przechowywane w bazie: Zwierzęta: imię, data urodzenia, rasa (lub/i gatunek) Treserzy: imię, nazwisko Rodzaje występów: nazwa rodzaju występu, opis Rozkład występów: data, godzina występu, rodzaj występu, czas trwania Widoki: vw_liczba_zwierząt – dla każdego trenera wypisuje liczbę zwierząt będących pod jego opieką vw_czas_występów – dla każdego zwierzaka wypisuję łączny czas jego dotychczasowych występów vw_średni_wiek – dla każdego gatunku wypisuje średni wiek zwierząt vw_liczba_występów – dla każdego rodzaju występu wypisuje liczbę występów vw_najbliższe_występy – dla każdego trenera wypisuje planowane występy jego zwierząt na najbliższe 7 dni Procedura składowana (MySQL lub MS SQL Server): Wyzwalacz (SQLite): Kontrola więzów integralności w bazie Minimalne dane: • przynajmniej 10 zwierząt • przynajmniej 6 treserów • przynajmniej 5 rodzajów występów • przynajmniej 6 występów dla każdego zwierzaka Politechnika Śląska, WOIZ, Katedra IiE 7 Stworzenie bazy danych o uczestnikach biorących udział w realizacji projektu (przedsięwzięcia) Morderstwo według Agathy Christie Podczas konferencji poświęconej 100 rocznicy urodzin Agathy Christie ginie młody początkujący pisarz, który zarejestrował się na nazwisko jednego z bohaterów książki królowej kryminałów. Dwa dni później pada następna ofiara, potem następna... Przedstawiciel prawa autorytatywnie oświadczył, że zbrodnie popełni jakiś fanatyk pierwszej damy kryminałów. Dostrzegając absurd takiego stwierdzenia, młodzi detektywi, a zarazem organizatorzy konferencji, Max Darling i Annie Laurance Darling, postanowili wziąć sprawy w swoje ręce. Twoim zadaniem jest pomóc im zapanować nad sytuacją. Stwórz bazę danych, umożliwiającą gromadzenie wiadomości o uczestnikach konferencji, podejrzanych, morderstwach, motywach i alibi. Załóż, że: • każdy uczestnik konferencji może (ale nie musi) być podejrzanym w dowolnej liczbie morderstw, każde morderstwo powinno mieć przynajmniej jednego podejrzanego • każdy podejrzany może mieć alibi na dowolny przedział czasowy mieszczący się w przedziale czasowym popełnienia morderstwa, każde alibi odnosi się tylko do jednego morderstwa liczba alibi może być różna, przykładowo jeśli morderstwo popełniono między 0:00 a 3:00 podejrzany może mieć jedno alibi (np. od 1:00 do 3:00), dwa alibi (np. od 0:00 do 1:00 i od 1:00 do 3:00 albo od 0:00 do 2:00 i od 2:00 do 3:00) albo trzy alibi (jedyna możliwość w tym wypadku to od 0:00 do 1:00, od 1:00 do 2:00 i od 2:00 do 3:00) • każdy podejrzany może mieć nawet kilka motywów popełnienia danego morderstwa (choć możliwe, że motyw lub motywy nie zostaną poznane), dla każdego podejrzanego każdy motyw odnosi się tylko do jednego morderstwa • istnieje kilka standardowych motywów i różne osoby mogą mieć te same motywy do popełnienia różnych lub tych samych morderstw Dla uproszczenia przyjmujemy, że godziny popełnienia morderstw nie mogą na siebie nachodzić. Minimalne informacje przechowywane w bazie: Uczestnicy: imię, nazwisko Morderstwa: data, szacowana godzina od, szacowana godzina do, gdzie popełnione, okoliczności Alibi: godzina od, godzina do, opis Podejrzany: opis uzasadniający Motywy: rodzaj motywu, szczegółowy opis Rodzaj motywu: nazwa Widoki: vw_liczba_podejrzanych – dla każdego morderstwa wypisuję liczbę podejrzanych osób vw_podejrzani_z_motywem – dla każdego morderstwa wypisuje wszystkie osoby podejrzane z przynajmniej jednym motywem vw_morderstwa_motywy – dla każdego morderstwa wypisuje liczbę różnych rodzajów motywów mogących skutkować daną zbrodnią vw_mordercy – dla każdego morderstwa wypisuje osoby podejrzane z motywem i bez alibi Wyzwalacz: Kontrola czy godziny wstawianych alibi dla tego samego morderstwa nie nachodzą na siebie Minimalne dane: • przynajmniej 20 uczestników • przynajmniej 6 morderstw • dla każdego morderstwa przynajmniej 3 podejrzanych • przynajmniej 3 rodzaje motywów Politechnika Śląska, WOIZ, Katedra IiE 8 Przygotowanie bazy danych wspomagającej proces edukacyjny i weryfikację wiedzy Testy kolokwialne Znajomy wykładowca uniwersytecki poprosił cię o stworzenie systemu wspomagającego proces edukacyjny i weryfikację wiedzy. Celem systemu jest automatyczne generowanie testów kolokwialnych. W bazie przechowywane są informacje o przedmiotach, różnych zestawach testowych powiązanych z przedmiotami, treści pytań oraz odpowiedzi (wraz z prawidłowymi rozwiązaniami) oraz odpowiedzi udzielane przez studentów. • Z każdym przedmiotem powiązany jest przynajmniej jeden test; każdy test należy do jednego przedmiotu. • Każdy test ma kilka pytań (między 10 a 20); każde pytanie może znaleźć się w kilku różnych testach. • Każde pytanie związane jest dokładnie z jednym przedmiotem. Każdy przedmiot ma wiele pytań (należy pamiętać, że żeby utworzyć test potrzebnych jest przynajmniej 10 pytań z danego przedmiotu). • Z każdym testem związane są odpowiedzi, choć mogą się zdarzyć testy, na które jeszcze nikt nie odpowiadał. Każda odpowiedź przypisana jest tylko i wyłącznie do jednego testu. Dla uproszczenia przyjmujemy, że każde pytanie posiada cztery odpowiedzi, z których tylko jedna jest prawidłowa. Minimalne informacje przechowywane w bazie: przedmioty: nazwa (np. statystyka, podstawy zarządzania itp.) testy: oznaczenie testu (np. stat01) pytania: treść pytania (wraz z odpowiedziami), odpowiedź prawidłowa (np. a, b itp.) odpowiedzi: data, oznaczenie zdającego (np. numer albumu), numer pytania w teście (to samo pytanie w różnych testach może mieć różny numer), udzielona odpowiedź Widoki: vw_testy – dla każdego testu wypisuje jego treść (tzn. wszystkie pytania) vw_odpowiedzi – dla każdej kombinacji zdający+test wypisuje odpowiedzi udzielone przez zdającego na dany test vw_prawidlowe_odpowiedzi – dla każdego testu wypisuje prawidłowe odpowiedzi na poszczególne pytania vw_ile_razy – dla każdego testu wypisuje ile razy dany test zdawano Wyzwalacz: Uniemożliwienie przypisania pytania do testu, w wypadku gdy przedmiot pytania oraz przedmiot testu są różne. Minimalne dane: • przynajmniej 3 przedmioty • przynajmniej 5 testów • przynajmniej 40 różnych pytań • przynajmniej 6 odpowiedzi (przez „odpowiedź” rozumie się odpowiedź na cały test, tzn. na każde pytanie z danego testu) Politechnika Śląska, WOIZ, Katedra IiE 9 Stworzenie bazy danych wspomagającej zarządzanie procesami dydaktycznymi z wybranego przedmiotu Międzyszkolne zawody sportowe Celem projektu jest stworzenie, w ramach wspomagania procesów dydaktycznych w szkole podstawowej, prostej bazy danych obsługującej lekkoatletyczne zawody międzyszkolne szkół podstawowych. W bazie przechowywane są informacje o szkołach, kategoriach wiekowych, uczestnikach, konkurencjach i wynikach uczestników w poszczególnych konkurencjach. • Każdy uczestnik należy do jednej szkoły, każda szkoła może wystawić wielu uczestników. • Każdy uczestnik może brać udział w jednej lub kilku konkurencjach. Każda konkurencja musi mieć kilku uczestników (przynajmniej dwóch). • Każdy uczestnik należy do jednej kategorii wiekowej. Oczywiście do tej samej kategorii może należeć kilku zawodników. Dla uproszczenia przyjmujemy, że w każdej konkurencji może startować dowolna ilość uczestników. Minimalne informacje przechowywane w bazie: szkoły: nr szkoły, imię szkoły, adres (ulica, numer) uczestnik: imię, nazwisko, data urodzenia kategorie wiekowe: nazwa, minimalna data urodzenia, maksymalna data urodzenia konkurencje: nazwa, opis, jednostka miary, sposób oceny (np. ‘max’ jeśli im wyższy wynik tym lepszy i ‘min’ jeśli im niższy wynik tym lepszy) wyniki: rezultat uzyskany przez uczestnika w danej konkurencji Widoki: vw_uczestnicy - dla każdej szkoły wypisuje zawodników z danej szkoły vw_rezultaty – dla każdej konkurencji i każdej kategorii wiekowej wypisuje rezultaty wszystkich uczestników uporządkowane od najlepszego do najgorszego* vw_liczba_uczestników - dla każdej konkurencji i każdej kategorii wiekowej wypisuje liczbę uczestników danej konkurencji w danej kategorii vw_liczba_konkurencji - dla każdego uczestnika wypisuje liczbę konkurencji, w których dany uczestnik bierze udział Procedura składowana (MySQL lub MS SQL Server): Przypisywanie kategorii do uczestników na podstawie ich wieku Wyzwalacz (SQLite): Kontrola więzów integralności w bazie Minimalne dane: • przynajmniej 3 szkoły • przynajmniej 20 uczestników • przynajmniej 5 konkurencji • 2 lub 3 kategorie wiekowe • przynajmniej 50 wyników * dla każdej konkurencji można stworzyć osobny widok Politechnika Śląska, WOIZ, Katedra IiE 10 Stworzenie tematycznej (dziedzinowej) bazy wiedzy Konferencje Wyobraź sobie, że pracujesz w firmie zajmującej się organizowaniem imprez masowych. Twoim zadaniem jest stworzenie niewielkiego systemu wspomagającego obsługę organizacji konferencji. W bazie przechowywane są informacje o organizatorach, konferencjach, uczestnikach, zgłoszeniach, branżach. • Każda firma może organizować wiele konferencji, ale każda konferencja jest organizowana tylko przez jedną firmę. • Każdy konferencja ma wielu uczestników, każdy uczestnik może brać udział w wielu konferencjach. • Każda firma należy do jednej branży, do każdej branży może należeć wiele firm. Dla uproszczenia przyjmujemy, że wszystkie konferencje są jednodniowe. Minimalne informacje przechowywane w bazie: branże: rodzaj (np. budownicza, chemiczna) firmy: nazwa, adres, telefon, nazwisko przedstawiciela konferencje: nazwa, data, godzina, koszt, cena, czy zakończona? uczestnicy: imię i nazwisko, telefon, reprezentowana firma zgłoszenia: data zgłoszenia, czy zapłacone? Widoki: vw_konferencje_wg_branz – dla każdej branży wypisuje wszystkie konferencje w systemie uporządkowane wg daty vw_liczba_uczestnikow – dla każdej konferencji wypisuje liczbę uczestników (z podziałem na tych, którzy już zapłacili oraz tych, którzy nie zapłacili) vw_konferencje_firmy – dla każdej firmy wypisuje liczbę zorganizowanych przez nią konferencji vw_konferencje_bilans – dla każdej konferencji wypisuje jej koszt, przychód oraz bilans UWAGA. Wszystkie zapytania powinny mieć możliwość zawężenia wyświetlanych wyników do wybranego okresu (tzn. widoki powinny zawierać datę konferencji). Wyzwalacz: W momencie wstawienia do bazy informacji o zakończeniu konferencji, do osobnej tabeli wstawiany jest rekord z podsumowaniem konferencji: identyfikator konferencji, data, koszt, przychód (cena * liczba opłaconych zgłoszeń), bilans (koszt – przychód). Minimalne dane: • przynajmniej 3 branże • przynajmniej 7 firm • przynajmniej 10 konferencji • przynajmniej 30 uczestników • przynajmniej 100 zgłoszeń Politechnika Śląska, WOIZ, Katedra IiE 11 Zarządzanie projektami Celem projektu jest stworzenie niewielkiego systemu wspomagającego zarządzanie projektami realizowanymi w pewnej firmie. W bazie przechowywane są informacje o projektach, osobach, zespołach, etapach projektów, zleceniodawcach. • Każdy projekt posiada jednego zleceniodawcę (osobę prawną). Każdy zleceniodawca może zlecić kilka projektów. • Każda osoba może uczestniczyć w dowolnej ilości projektów, a każdy projekt może mieć dowolną ilość uczestników. Kombinacje uczestników i projektów tworzą zespoły. Każdy projekt ma jednego szefa, przy czym ta sama osoba może być szefem tylko jednego projektu (nawet jeśli uczestniczy w kilku projektach). • Każdy projekt ma kilka etapów, dany etap należy tylko do jednego projektu. W trakcie realizacji projektu kolejne etapy odznaczane są jako „zakończone”. Minimalne informacje przechowywane w bazie: zleceniodawcy: nazwa firmy, adres firmy, telefon, nazwisko przedstawiciela projekty: nazwa projektu, koszt projektu, opis projektu, data zlecenia osoby: imię, nazwisko, data urodzenia zespoły: kto kierownikiem? etapy projektów: nazwa, opis, data rozpoczęcia, czy zakończony? Widoki: vw_zespoly – dla każdego projektu (nazwy projektu) wypisuje osoby, które go realizują vw_liczba_zespolow – dla każdej osoby wypisuje liczbę projektów, w których uczestniczy vw_firma_koszt – dla każdej firmy wypisuje łączny koszt projektów zleconych przez tę firmę vw_etapy_projektów – dla każdego projektu wypisuje etapy tego projektu wraz z zaznaczeniem, które z nich są już zakończone Wyzwalacze: Kontrola czy etap późniejszy nie został zaznaczony jako zakończony przed etapem wcześniejszym. Kontrola czy dana osoba jest kierownikiem co najwyżej jednego zespołu Minimalne dane: • przynajmniej 5 firm • przynajmniej 8 projektów • przynajmniej 12 osób • przynajmniej 30 etapów • przynajmniej 25 członków zespołów Politechnika Śląska, WOIZ, Katedra IiE 12 Stworzenie bazy danych wspomagającej proces zarządzania informacją przestrzenną Szlaki górskie Celem systemu jest przechowywanie i udostępnianie informacji o trasach turystycznych w polskich górach. W bazie znajdują się informacje o schroniskach, punktach docelowych (atrakcjach), szlakach, pasmach górskich, rodzajach atrakcji. • Każde schronisko łączy się z wieloma punktami docelowymi, do każdego punktu można dojść z wielu schronisk. Kombinacje schronisk i punktów tworzą szlaki. • Każdy punkt należy do jednego pasma górskiego, każde pasmo może mieć wiele punktów. • Każdy punkt ma dokładnie jeden określony rodzaj (kategorię), np. szczyt, kotlina, dolina, staw, przełęcz itp. Minimalne informacje przechowywane w bazie: schroniska: nazwa, cena noclegu, ilość miejsc, czy jest darmowy wrzątek, opis punkty docelowe: nazwa, wysokość nad poziomem morza, atrakcyjność (przyjąć skalę liczbową), czy zamknięty? szlaki: kolor, trudność (przyjąć skalę liczbową), czas przejścia do punktu docelowego, czas przejścia od punktu docelowego, czy zamknięty? pasma górskie: nazwa rodzaje punktów: kategoria (np. szczyt, kotlina itp.) Widoki: vw_szlaki – dla każdego schroniska wypisuje wszystkie szlaki, tzn. punkty docelowe, ich atrakcyjność oraz czasy przejścia do danego punktu i z powrotem vw_trudnosc – dla każdego schroniska wypisuje średnią trudność wszystkich szlaków prowadzących z danego schroniska vw_atrakcyjnosc – dla każdego schroniska wypisuje średnią atrakcyjność wszystkich punktów docelowych, do których można dojść z tego schroniska vw_szukaj_szlaku – dla każdego punktu docelowego wypisuje wszystkie schroniska, z których można dojść do tego punktu oraz czasy przejścia Wyzwalacz: Aktualizacja szlaków w przypadku zamknięcia punktu docelowego. Minimalne dane: • przynajmniej 3 pasma górskie • przynajmniej 10 schronisk • przynajmniej 20 atrakcji • przynajmniej 50 szlaków • przynajmniej 4 rodzaje punktów docelowych Politechnika Śląska, WOIZ, Katedra IiE