Jerzy Redlarski Informatyka, rok 2, gr. 6 nr indeksu: Projekt Bazy Danych

Podobne dokumenty
2017/2018 WGGiOS AGH. LibreOffice Base

Baza danych sql. 1. Wprowadzenie

Spis treści OPIS PLIKU W FORMACIE CSV Z DANYMI PPE LUB EP 1

INFAKT API - opis (ver. 0.8)

Poczta Polska S.A. Opis struktury pliku z danymi przekazów pocztowych lub Ekspresów Pieniężnych. Wersja 2.1

Integracja sklepu internetowego z serwisem aukcyjnym Swistak.pl

Specyfikacja Techniczna 2.0. Specyfikacja techniczna usługi dystrybucji kodów dostępowych PayCode

Opis metody pracy Komisji podczas Kwalifikacji TestingCup 2017

Kod CPV zamówienia: Pakiety oprogramowania i systemy informatyczne

Załącznik nr 2 do Umowy Nr. o korzystanie z usługi Identyfikacji Przychodzących Płatności Masowych z dnia.

DOKUMENTACJA TECHNICZNA SMS API MT

Załącznik do rozporządzenia Ministra Spraw Wewnętrznych i Administracji z dnia 2008 r. (poz...) WZÓR STRUKTURALNY ELEKTRONICZNEJ KARTY ZAPYTANIA

Normalizacja baz danych

Format danych w pliku do importu przelewów

SUBIEKT GT IMPORT XLS Kontrahenci

MWS Mobile by CTI. Instrukcja

OPIS FORMATÓW PLIKÓW EKSPORTU HISTORII OPERACJI WYKORZYSTYWANYCH W BANKOWOŚCI ELEKTRONICZNEJ IDEA BANK S.A.

BANKOWOŚĆ ELEKTRONICZNA. Opis formatu pliku przekazów pocztowych XCM 110_61. Ver

Instrukcja użytkowania Systemu zamawiania identyfikacji wizualnej samochodów testowych dealerów SI.DATEXA.COM

Struktura pliku Płatnik dla importu zleceń

Instrukcja obsługi Zaplecza epk dla Pracowników Instytucji w zakresie administracji danymi instytucji

Opis usługi płatności masowych aktualnie zaimplementowanej u Zamawiającego

MWS Mobile by CTI. Instrukcja

PREZYDENT MIASTA ZIELONA GÓRA

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Pytania oferentów. 1. Czy Zamawiający dopuszcza podpisanie umowy drogą korespondencyjną?

Jerzy Skalski s9473, grupa WIs I.6-11c. System wspierający obsługę klienta dla firm sprzedających na Allegro

Formularz wniosku grantowego na realizację inicjatywy w obszarze ekonomii społecznej

Serwer pocztowy. QmaiLux. Dokumentacja techniczna mechanizmu książek adresowych (qbook)

Z A P Y T A N I E O F E R T O W E

Oferta dla Subskrybentów

Wybrane zmiany wprowadzone w pakiecie Oprogramowanie: SyriuszStd

WellCommerce Poradnik: Dodawanie języka i waluty. autor: Adrian Potępa (biuro@eclairsoaware.pl)

Regulamin Portalu Pacjenta

Komunikat szczegółowy NFZ * o listach oczekujących

ZAPROSZENIE DO ZŁOŻENIA OFERTY. ZAPYTANIE OFERTOWE

Z A P Y T A N I E O F E R T O W E

System zarządzania materiałami firmowymi

ZAPYTANIE OFERTOWE 1/10/2017

Struktura pliku wejściowego ipko biznes VideoTEL (14 polowy)

Sposób implementacji e-faktury w oprogramowaniu Sage. e-faktura. implementacja w oprogramowaniu

Dokumentacja programu Rejestr Informacji o Środowisku

Podręcznik Użytkownika Import wzorców

Opis funkcji Import transakcji - struktura oraz opis pliku importowego

FORMULARZ OFERTY.... dnia... (pieczęć firmowa wykonawcy) O F E R T A

Struktura pliku wejściowego ipko biznes przelewy zagraniczne (MT103 / CSV)

Dane słowa oraz wyrażenia są tłumaczone przy pomocy polecenia Przetwarzanie > Tłumaczenie

CitiDirect Ewolucja Bankowości

BSX PRINTER INSTRUKCJA UŻYTKOWNIKA. Autor: Karol Wierzchołowski 30 marca 2015

FUNKCJE TEKSTOWE W MS EXCEL

2) załącznik nr 2 deklaracja o wysokości opłaty za gospodarowanie odpadami komunalnymi składana przez

12. Banner 125 x125 w serwisie 1 dzień 14,43 zł PROMOCJA. 13. Banner 125 x125 w serwisie 1 dzień 4 zł PROMOCJA

Struktura pliku wejściowego ipko biznes ELIXIR - O

ZAPYTANIE OFERTOWE. Godziny pracy: Strona internetowa: rubryka Ogłoszenia/Zamówienia do 30 tys. euro NIP:

SYSTEM ZARZĄDZANIA DANYMI OSOBOWYMI - INSTRUKCJA UŻYTKOWNIKA

ZATWIERDZA Dyrektor Gminnego Ośrodka Kultury w Papowie Biskupim Irena Modliborska POSTĘPOWANIE O UDZIELENIE ZAMÓWIENIA PUBLICZNEGO

Podręcznik użytkownika

EGZAMIN MATURALNY Z INFORMATYKI POZIOM PODSTAWOWY CZĘŚĆ II 13 MAJA 2019 WYBRANE: Czas pracy: 120 minut. Liczba punktów do uzyskania: 30

Struktura pliku importu do bazy Shark6

Krzysztof Kadowski. PL-E3579, PL-EA0312,

mbank CompanyNet, BRESOK Struktura zbioru importu w formacie BRESOK2

Standard pliku importu danych pracowników i firm do programu e-pity (od wersji e-pity 3.0)

Kampanie Ads. Google Ads dla Twojego biznesu. Oferta cenowa. e-commerce

MS Access - bazy danych

INF-U. Uwaga: Numer w rejestrze PFRON powinien być wpisywany na wszelkiej korespondencji kierowanej do PFRON.

PROCEDURY LINK4. INSTRUKCJA PŁATNOŚCI KARTĄ, BLIK i TubaPay

Technologie informacyjne: Arkusz kalkulacyjny

Projekt zespołowy Osoby wykonujące projekt:

Struktura pliku wejściowego ipko biznes ELIXIR-O

Internet to ogólnoświatowy zbiór wzajemnie połączonych ze sobą sieci komputerowych (lokalnych LAN i rozległych WAN). Za datę powstania Internetu

Biblioteka. Bazy danych I dokumentacja projektu. Cel projektu:

INSTRUKCJA OBSŁUGI Wersja: 1.8

LEM dyfuzja innowacji wśród MSP Instrukcja użytkownika modułu ewizyta dla Klienta

SEO.341-4/06 Gryfino, dnia 27 czerwca 2006r.

INSTRUKCJA KONFIGURACJI USŁUG DOSTĘPOWYCH DO SYSTEMU FIBARO

Rada Miasta Rybnika uchwala:

Instrukcja użytkownika. Eksport dokumentów do systemu Comarch EDI Wersja

Strona wizytówka od 400 zł

ZAPYTANIE OFERTOWE 1/12/2017

Pytania oferentów. 1. Czy Zamawiający dopuszcza podpisanie umowy drogą korespondencyjną?

Struktura pliku wejściowego ipko biznes ELIXIR-O

WYJAŚNIENIA ZAMAWIAJĄCEGO DOTYCZĄCE TREŚCI SIWZ

Instrukcja użytkownika. Panel Administratora CreamCRM

CHARAKTERYSTYKA ZASOBÓW INFORMACYJNYCH

Grundfos Extranet. Instrukcja użytkownika

FORMULARZ OFERTY wraz z załączonymi formularzami 1 6

Konfiguracja aplikacji pakietu SAWA do obsługi numerów nadawczych firmy Polska Grupa Pocztowa S.A.

E-czeki - zakładanie listy odbiorców, raport uprawnień (Bankowość Elektroniczna dla Klientów Korporacyjnych Getin Noble Bank SA)

Systemy baz danych. mgr inż. Sylwia Glińska

FORMULARZ OFERTOWY

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

Projektowanie bazy danych przykład

Diagramy związków encji ERD Ćwiczenia w modelowaniu danych

INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR

T: Aktualizowanie systemów operacyjnych.

Tajemnice skutecznego wyszukiwania na przykładzie

2 Rejestracja Rejestracją 3 Zakup online zasady ogólne

Bazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.

Projektowanie Systemów Informacyjnych

Rejestracja w serwisie martwekontabankowe.pl...2 Proces zamawiania usługi w serwisie martwekontabankowe.pl...4

Transkrypt:

Projekt Bazy Danych Temat: Firmy software'owe produkują programy komputerowe. Sprzedawcy oprogramowania rozprowadzają te programy. Programy mogą pracować pod różnymi systemami operacyjnymi. 1. Założenia: Klientem jest wortal o oprogramowaniu komercyjnym. Zamierza udostępnić wyszukiwarkę oprogramowania na podstawie nazwy, producenta, obsługiwanych systemów operacyjnych oraz kategorii oprogramowania. Dla znalezionego oprogramowania będzie udzielał informacji o sprzedawcach u których można kupić dane oprogramowanie. Oprogramowanie może być dostępne w formie pakietów, wówczas pojawia się informacja o ofertach pakietów zawierających dany program. Sprzedawców będzie można posortować w zależności od ceny produktu oraz lokalizacji. Programy mogą mieć różne wersje (kolejne wydania, wersje językowe) i można je sortować w kolejności chronologicznej. Scenariusze użycia: Administrator dodaje firmę software'ową i jej programy. Administrator dodaje sprzedawcę i jego oferty. Użytkownik wyszukuje programy na podstawie kilku parametrów. Użytkownik sortuje sprzedawców na podstawie ceny lub lokalizacji. Użytkownik wyszukuje konkretną wersję programu (np. najnowsze wydanie). Wykluczenia: W skład bazy nie będą wchodziły takie informacje jak: programiści pracujący nad programem, adres i dane kontaktowe producenta oprogramowania, pracownicy firmy dystrybuującej oprogramowanie, dawne (nieaktualne) oferty. Jeśli oferta ulega zmianie, to będzie to dokonane przez zmianę istniejącej oferty lub usunięcie poprzedniej i dodanie nowej. Jeśli oferta się zakończyła, zostaje usunięta z bazy danych. Baza nie zawiera również transakcji zawieranych między użytkownikami a dystrybutorami wortal jedynie dostarcza informacji o ofertach, a nie pośredniczy w transakcjach. Przykładowe zapytania: Jakie programy producenta X są dostępne w sprzedaży? Jakie programy z kategorii X działają pod systemem operacyjnym Y? Jaka jest najnowsza wersja oprogramowania X, która jest dostępna w języku Y? Który dystrybutor oprogramowania oferuje najniższą cenę za program X? Który dystrybutor oprogramowania oferujący program X działa w miejscowości Y? 1/9

2. Diagram ERD 2/9

3. Opis diagramu ERD Zbiory encji: Kategorie Programy Nazwa Opis Szacowana liczebność Kategorie oprogramowania (np. edytory tekstowe, edytory grafiki, gry, pakiety biurowe). Programy komputerowe, pojedyncza encja reprezentuje wszystkie wersje programu. kilkadziesiąt kilka tysięcy Producenci Firmy software'owe produkujące programy komputerowe. kilkaset Systemy_operacyjne Zbiór istniejących systemów operacyjnych, każda wersja jest osobną encją. Wersje Wersje_językowe Wersje programów. Każda wersja każdego programu jest osobną encją. Dana wersja programu może być dostępna z różnymi tłumaczeniami. Ten zbiór encji reprezentuje każdy taki pakiet (program + dostępne języki) Np. program X z językami angielskim, chińskim i japońskim. kilkaset kilkadziesiąt tysięcy kilkaset tysięcy Języki Zbiór języków w których są wydawane programy. kilkadziesiąt Dystrybutorzy Firmy rozprowadzające oprogramowanie. kilkaset Oferty Formy_dostawy Atrybuty: Kategorie Oferty wystawiane przez dystrybutorów, dotyczą pakietu programów w konkretnej wersji z konkretnymi językami (pakiet może się składać z jednego lub więcej programów), mają określoną cenę (cena ostateczna to cena oferty + cena dostawy). Możliwe formy dostawy programu (np. zakup na miejscu, dostawa pocztą, kurierem płatne przy odbiorze, kurierem zapłacone z góry itp.). Każdy dystrybutor ma osobną grupę encji w tym zbiorze, gdyż mogą się różnić cenami. nazwa tak ciąg liter i spacji krótki (max 40 znaków) Nazwa kategorii. kilkaset tysięcy kilka tysięcy 3/9

Programy id tak liczba naturalna Nazwa programu może się czasem powtórzyć u różnych producentów, zatem trzeba wprowadzić numer id. nazwa nie ciąg dowolnych znaków opis nie ciąg dowolnych znaków długi (max 2000 znaków) Pełna nazwa programu, bez wersji. Ogólny opis programu (dane prawdziwe dla każdej wersji programu). Producenci id tak liczba naturalna Firmy mogą być z różnych krajów, więc numery NIP i REGON nie mogą pełnić funkcji klucza głównego. nazwa nie ciąg dowolnych znaków Pełna nazwa firmy, może zawierać dowolne znaki. państwo nie dwie duże litery Państwo w którym działa producent (potrzebne, żeby odróżnić producentów o tej samej nazwie działających w różnych krajach) zapisane jako jego dwuliterowe oznaczenie ISO_3166-1 Np. "US", "PL" Systemy_operacyjne id tak liczba naturalna Kluczem mogła by być para atrybutów (nazwa, wersja), jednak żeby uniknąć złożonego klucza z ciągami znaków warto wprowadzić numer id. nazwa nie ciąg znaków alfanumerycznych i spacji krótki (max 20 znaków) wersja nie ciąg znaków alfanumerycznych, kropek i spacji krótki (max 20 znaków) Nazwa systemu operacyjnego, z podziałem na duże wydania i dystrybucje. Np. "Windows XP", "Mac OS X", "Ubuntu" Wersja systemu operacyjnego (service packi w przypadku systemów z rodziny Windows). Tylko numer, bez 'nazwy' wersji typu "Snow Leopard". Np. "SP 1", "10.6", "5.0.3" 4/9

Wersje id tak liczba naturalna Różne programy mogą mieć tak samo oznaczony numer wersji, więc dla rozróżnienia trzeba wprowadzić numer id. wersja nie ciąg znaków alfanumerycznych, kropek i spacji krótki (max 20 znaków) data_wydania nie data (dzień, miesiąc, rok), bez godzin opis nie ciąg dowolnych znaków długi (max 2000 znaków) Numer wersji programu. np. "0.9", "1.0.5", "10.4 RC" Data wydania danej wersji. Potrzebna do chronologicznego sortowania wersji i wyszukiwania wersji np. najnowszych. Opis danej wersji programu. Może zawierać opis funkcjonalności danej wersji lub różnice między daną wersją a poprzednią. Wersje_językowe id tak liczba naturalna Wersje językowe różnych programów mogą mieć tą samą nazwą, więc dla rozróżnienia trzeba wprowadzić numer id. nazwa nie ciąg dowolnych znaków Nazwa pakietu językowego. Np. "Języki europejskie", "Języki wschodnioazjatyckie", "Wersja spolszczona", "Wersja oryginalna", "Wersja wielojęzyczna" Języki oznaczenie tak trzy małe litery Trzyliterowe oznaczenie języka, według standardu ISO 639-5 Np. "eng", "pol", "jpn" pełna_nazwa nie ciąg dowolnych znaków krótki (max 40 znaków) Pełna nazwa języka. Np. "angielski", "polski", "japoński" 5/9

Dystrybutorzy id tak liczba naturalna Firmy mogą być z różnych krajów, więc numery NIP i REGON nie mogą pełnić funkcji klucza głównego. nazwa nie ciąg dowolnych znaków Pełna nazwa firmy, może zawierać dowolne znaki. państwo nie dwie duże litery Państwo w którym znajduje się siedziba dystrybutora zapisane jako jego dwuliterowe oznaczenie ISO_3166-1 Np. "US", "PL" miejscowość nie ciąg liter i spacji krótki (max 40 znaków) adres nie ciąg dowolnych znaków kod_pocztowy nie 6 znaków (2 cyfry, minus 3 cyfry) strona_internetowa nie poprawny adres URL krótki (max 80 znaków) Miejscowość w której znajduje się siedziba dystrybutora, nazwa może być wieloczłonowa (np. Pruszcz Gdański). Opcjonalne (dystrybutor może działać przez internet i podawać wyłącznie stronę internetową). Ulica i numer budynku. Opcjonalne (jak wyżej). Kod pocztowy w formacie "??-???" gdzie? to dowolna cyfra Opcjonalne (jak wyżej). Adres strony internetowej dystrybutora. Opcjonalne (dystrybutor może prowadzić wyłącznie sprzedaż na miejscu i nie posiadać strony internetowej). Oferty id tak liczba naturalna Oferty nie posiadają naturalnego klucza, zatem trzeba stworzyć numer id. cena nie typ walutowy (liczba z dokładnością do dwóch miejsc po przecinku) link nie poprawny adres URL krótki (max 200 znaków) Cena za jaką dystrybutor oferuje dany program lub pakiet programów. Link do konkretnej oferty dystrybutora (może nie występować, jeśli programu nie da się kupić przez internet). 6/9

Formy_dostawy id tak liczba naturalna Formy dostawy są osobne dla każdego dystrybutora, ale wartości atrybutów mogą się powtarzać, zatem trzeba wprowadzić numer id. nazwa nie ciąg liter i spacji Nazwa danej formy dostawy. cena nie typ walutowy (liczba z dokładnością do dwóch miejsc po przecinku) Związki: Nazwa związku Zbiory encji Liczność Zbiór encji 1 Zbiór encji 2 związku Dodatkowa opłata za daną formę dostawy ( 0 zł jeśli brak). wyprodukował Producenci Wersje 1 : 0..n Może się zdarzyć, że różne wersje programu wyprodukują różni producenci. Zakładamy jednak, że jedną wersję produkuje jeden producent. Dany producent mógł wyprodukować wiele wersji różnych programów (mógł nie wyprodukować jeszcze żadnej). działa Wersje Systemy_op eracyjne wystawia Dystrybutor zy 0..n : n Opis Dana wersja programu działa na działa na różnych systemach operacyjnych (co najmniej na jednym). Na jednym systemie operacyjnym mogą działać różne programy (możliwe, że żaden z będących w sprzedaży). Oferty 1 : 0..n Dystrybutor wystawia różne oferty (może nie wystawiać w danej chwili żadnej oferty). Oferta jest wystawiona przez jednego producenta. należy Programy Kategorie 0..n : n Program należy do kategorii (może należeć do kilku, jeśli nie należy do żadnej to zostaje podłączony do kategorii "pozostałe". Do kategorii może należeć wiele programów (może w danej chwili nie być żadnego). 7/9

dotyczy Oferty Wersje_języ kowe umożliwia Oferty Formy_dosta wy 0..n : n 0..n : n Oferta dotyczy pakietu programów w konkretnej wersji językowej (co najmniej jednego programu). Danego programu może dotyczyć wiele ofert (nawet żadna). Oferta może umożliwiać kilka form dostawy (co najmniej jedną). Forma dostawy może występować w wielu ofertach (również w żadnej). jest_wersją Wersje Programy 0..n : 1 Wersja programu jest wersją konkretnego programu. Program może mieć wiele wersji (również żadnej, jeśli jeszcze nie został wydany). występuje_jako Wersje Wersje_języ kowe zawiera oferuje Wersje_języ kowe Dystrybutor zy 1 : 0..n Wersja programu może występować jako różne pakiety z językami (może się zdarzyć, że takie pakiety nie są jeszcze utworzone). Jeden pakiet programu z językami zawiera konkretną wersję programu. Języki 0..n : n Pakiet programu z językami zawiera różne tłumaczenia (co najmniej jedno). Dany język może występować w różnych pakietach (również w żadnym). Formy_dosta wy 1 : 0..n Dystrybutor może oferować różne formy dostawy (mógł jeszcze żadnej nie udostępnić). Forma dostawy jest powiązana z konkretnym dystrybutorem (ponieważ dystrybutor może ustalić cenę danej formy dostawy). 8/9

4. Schemat RBD Kategorie (nazwa) Programy (id, nazwa, opis) Producenci (id, nazwa, państwo) Systemy_operacyjne (id, nazwa, wersja) Wersje (id, wersja, data_wydania, opis, program.id REF Programy, producent.id REF Producenci) Wersje_językowe (id, nazwa, wersja.id REF Wersje) Języki (oznaczenie, pełna_nazwa) Dystrybutorzy (id, nazwa, państwo, miejscowość, adres, kod_pocztowy, strona_internetowa) Oferty (id, link, cena, dystrybutor.id REF Dystrybutor) Formy_dostawy (id, nazwa, cena, dystrybutor.id REF Dystrybutor) należy (kategoria.nazwa REF Kategorie, program.id REF Programy) działa (system.id REF Systemy_operacyjne, wersja.id REF Wersje) zawiera (wersja.id REF Wersje_językowe, język.oznaczenie REF Języki) dotyczy (wersja.id REF Wersje_językowe, oferta.id REF Oferty) umożliwia (oferta.id REF Oferty, dostawa.id REF Formy_dostawy) 9/9