INTERNETOWE BAZY DANYCH (notatki do wykładów)



Podobne dokumenty
Internetowe Bazy Danych. dr inż. Roman Ptak Instytut Informatyki, Automatyki i Robotyki roman.ptak@pwr.edu.pl

Pojęcie systemu baz danych

Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK

Wykład I. Wprowadzenie do baz danych

Bazy danych 2. Wykład 1

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład XII

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X

Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia

Praca przejściowa. Sklep internetowy. Tomasz Konopelski ZIP50-IWZ Katowice 2006

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.

Referat pracy dyplomowej

Opis Architektury Systemu Galileo

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

egroupware czy phpgroupware jest też mniej stabilny.

KATALOG MASZYN I POJAZDÓW ROLNICZYCH MASZYNY-3

Baza danych. Modele danych

Architektura systemu e-schola

Można rozpatrywać dwa sposoby zapewnienia obsługi informatycznej firmy:

Instrukcja użytkownika

Projektowani Systemów Inf.

System sprzedaŝy rezerwacji

ZAPYTANIE OFERTOWE. z dnia 20 grudnia 2013r.

Oferta szkoleniowa Yosi.pl 2012/2013

PRZEWODNIK PO PRZEDMIOCIE

7. zainstalowane oprogramowanie zarządzane stacje robocze

OPIS PRZEDMIOTU ZAMÓWIENIA

PROGRAM MICROSOFT DEVELOPER NETWORK ACADEMIC ALLIANCE MSDN AA

Wybrane działy Informatyki Stosowanej

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Dlaczego outsourcing informatyczny? Jakie korzyści zapewnia outsourcing informatyczny? Pełny czy częściowy?

Hurtownie danych i business intelligence - wykład II. Zagadnienia do omówienia. Miejsce i rola HD w firmie

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs.

Jednolite zarządzanie użytkownikami systemów Windows i Linux

1. Administrator baz danych (próba: 110 osób) 2. Administrator serwerów (próba: 88 osób) 3. Administrator sieci informatycznej (próba: 244 osoby) 4.

Elektroniczna Ewidencja Materiałów Wybuchowych

(argument dla męskiej m. ęści populacji)

Szczegółowy opis przedmiotu zamówienia

Dołącz do grona zadowolonych użytkowników systemu Belisama4CRM

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

AS Asystent Sprzedaży to nowoczesny, wielostanowiskowy system obsługi sprzedaży, przeznaczony dla małych i średnich firm. AS pozwala na usprawnienie

PROJEKT INŻYNIERIA OPROGRAMOWANIA. Temat: System obsługi kasy - projekt wzorcowy

Dokument Detaliczny Projektu

Uczysz się przez 4 lata w szkole i co dalej???

Specyfikacja techniczna GoBiz Virtual Office - systemu dostępu do zasobów wirtualnego biura przez Internet

PROPOZYCJA WYKONANIA SERWISU WWW

Firma Informatyczna ASDER. Prezentacja. Serwer danych lokalnych. Przemysław Kroczak ASDER

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

ZASADY KORZYSTANIA Z PLIKÓW COOKIES ORAZ POLITYKA PRYWATNOŚCI W SERWISIE INTERNETOWYM PawłowskiSPORT.pl

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

Zapytanie ofertowe

Ełk, dn r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, Ełk. Nip ZAPYTANIE OFERTOWE

PRZEWODNIK PO PRZEDMIOCIE

Dokument Detaliczny Projektu

Technologia informacyjna

ZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia r.

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Zajęcia prowadzone przez MCT, auditora wiodącego systemów bezpieczeństwa informacji.

WYDRA BY CTI. WYSYŁANIE DOKUMENTÓW ROZLICZENIOWYCH I ARCHIWIZACJA Instrukcja do programu

Regulamin korzystania z kiosku Szybka faktura w sklepach IKEA

RODO a programy Matsol

Opis przedmiotu zamówienia

Wymagania edukacyjne z przedmiotu Witryny i aplikacje internetowe klasa 2iA. tworzenia stron. animację - multimedia

bo od menedżera wymaga się perfekcji ANKIETY ONLINE W SYSTEMIE BUSINESS NAVIGATOR

GoBiz System platforma współpracy marektingowej

produkować, promować i sprzedawać produkty, zarządzać i rozliczać przedsięwzięcia, oraz komunikować się wewnątrz organizacji.

STUDIA STACJONARNE I STOPNIA Przedmioty kierunkowe

System wspomagający organizację konferencji MARBLE PROJECT

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

Sklep Internetowy (HTML/xHTML, CSS, JavaScript, PHP, MySQL)

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

Barcinek, (miejsce i data)

Administratorem danych osobowych RehShop.pl (dalej Administrator), czyli odpowiedzialnym za zapewnienie bezpieczeństwa Twoim danym osobowym jest:

STUDIA NIESTACJONARNE I STOPNIA Przedmioty kierunkowe

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c

System Obsługi Wniosków

RELACYJNE BAZY DANYCH

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

BCC ECM Autorskie rozwiązanie BCC wspomagające zarządzanie dokumentami oraz procesami biznesowymi

Czym jest baza danych?

evolpe Consulting Group

Zarządzaj projektami efektywnie i na wysokim poziomie. Enovatio Projects SYSTEM ZARZĄDZANIA PROJEKTAMI

AUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7

Podpis elektroniczny dla firm jako bezpieczna usługa w chmurze. mgr inż. Artur Grygoruk

Praca klienta biura rachunkowego na wspólnej bazie

SM-EX System Multipłatności - EX

Inżynieria oprogramowania II

OPTYMALIZACJA PRODUKCJI

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

Administracja bazami danych. dr inż. Grzegorz Michalski

Faza Określania Wymagań

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor

System Profesal. Zarządzanie przez fakty

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Bezpieczne strony WWW dla edukacji, organizacji non-profit i uŝytkowników indywidualnych.

AUMS Billing Basic. aums.asseco.com

Szkolenie autoryzowane. MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2

Transkrypt:

INTERNETOWE BAZY DANYCH (notatki do wykładów) dr inż. Paweł Skrobanek Wrocław 2006

2 Spis treści: 1. Bazy danych w Internecie... 3 1.1. Wprowadzenie... 3 1.2. Wybór technologii oraz architektury... 5 X. Bibliografia... 11

3 1. Bazy danych w Internecie 1.1. Wprowadzenie Internetowe bazy danych takie, do których dostęp jest możliwy z sieci Internet. Cele projektów informatycznych wykorzystujących bazy danych: zastąpienie dotychczasowego systemu w celu poprawienia wydajności (gdy system ręczny lub komputerowy nie nadąża z przetwarzaniem dużej ilości transakcji lub nie umożliwia ich realizacji na dużą skalę), obniżkę kosztów związanych z realizacją transakcji lub dystrybucją informacji (np. rezygnacja z papierowego przekazywania informacji w dużych firmach), a w przypadku sklepów internetowych brak kosztów związanych z obsługą osób nie dokonujących żadnych transakcji, uzyskanie lepszego obiegu informacji w przypadku systemów związanych z jej dystrybucją lub zwiększenie liczby klientów, poprawę image przedsiębiorstwa, zwiększenie dostępności firmy dla klienta (nie jest problemem 24 h dostęp), uzyskanie możliwości zbierania informacji o guście i upodobaniach klientów (w tym zakresie stosowane są nawet techniki znane wcześniej ze zwykłych sklepów, np. ustawianie przy kasach odpowiednich produktów = np. wyświetlanie w odpowiedni sposób informacji w oknie koszyka). Ryzyko i zagrożenia: związane z projektem (typowo: złe oszacowanie kosztów przedsięwzięcia, niedopracowany lub nieprzemyślany projekt interfejsu, trudności z dotarciem odbiorcy do naszej witryny, trudności z implementacją nieprzewidzianych wcześniej elementów skalowalność systemu, niezrozumienie lub zła specyfikacja potrzeb zleceniodawcy i odbiorcy projektu przez informatyków ), działania hakerów, awarie sprzętu oraz błędy w oprogramowaniu, często zmieniające się przepisy prawne, zawodność dostawców, aktualizacja danych (np. modyfikacja cen).

4 Bardzo ważnym problem stanowią przepisy prawne związane między innymi z ochroną danych osobowych (konieczność rejestracji baz danych przechowujących tego rodzaju informacje), koniecznością odpowiedniego rejestrowania transakcji oraz odpowiednie metody jej dokumentowania. Z tym wiąże się również problem składowania całej dokumentacji oraz okresy jej przechowywania. W przypadku dokumentacji sprzedaży typowym okresem jest 5 lat, a np. dla dokumentów płacowych jest to 50 lat. Stosowanie podpisu elektronicznego, wymagane certyfikaty w tym zakresie to kolejne problemy z jakimi można się zetknąć. Dobrze byłoby w przypadku serwisów związanych z biznesem zasięgnąć opinii prawnika, jeśli pewne zagadnienia związane z jego funkcjonowaniem nie są dla nas w pełni zrozumiałe. Być może konieczna będzie również opieka prawna w ramach outsourcing u. Pewnych zagrożeń nie można uniknąć i trzeba odpowiednio im zapobiegać. W zakresie zabezpieczenia przed niepowołanym dostępem konieczna jest współpraca na kilku płaszczyznach: administratora systemu, webmastera oraz administratora bazy danych. Jeśli planujemy przedsięwzięcie związane z Internetem, to należy te dodatkowe koszty (np. związane ze stworzeniem stanowiska pracy lub outsourcing iem) uwzględnić. Typowe zastosowania Internetowych baz danych: serwisy WWW - m. in. uniezależnienie prezentowanych treści od wyglądu witryny, e commerce, inne usługi np. serwer poczty WWW, forum internetowe, baza dokumentów. Pierwsze rozwiązanie może być wykorzystane w firmach do uniezależnienia strony wizualnej od serwisu WWW. Może zostać utworzona baza danych zawierająca informacje, które są następnie umieszczane na stronach internetowych. Można pójść dalej i wykorzystując architekturę trój warstwową oddzielić warstwę związaną z prezentacją danych od warstwy kodu php i bazy danych. Rozważmy prosty przykład. Sekretariat szkoły policealnej umieszcza na stronach WWW informacje dotyczące oferty szkoły (wysokość czesnego, opłat miesięcznych, informacje o realizowanych przedmiotach i programie nauczania, itp.). W celu aktualizacji tych informacji przekazuje w formie wydruku tekst informatykowi, który następnie aktualizuje stronę WWW. W przypadku, gdy prywatna firma obsługuje wiele szkół, to taka procedura ma miejsce dla każdej szkoły, a czasem dla każdego przedmiotu (ponieważ informacje o zajęciach podają

5 również wykładowcy). Jeśli strony WWW zawierają kod PHP, to dodatkowo zmiany może wprowadzać tylko informatyk posiadający umiejętności w tym zakresie. Dodatkowe niebezpieczeństwo tkwi także w tym, iż przez przypadek można spowodować np. skasowanie jakiegoś fragmentu kodu php i konieczne będzie wówczas znalezienie błędu. Jeśli zostałaby zastosowana w tym przypadku architektura 3 warstwowa, to pracownik sekretariatu loguje się do bazy danych i w odpowiednim miejscu modyfikuje zapisane informacje. W tej sytuacji jednak konieczne jest odpowiednie przeszkolenie pracownika lub dostarczenie mu stosownej instrukcji obsługi. Które z podanych rozwiązań będzie lepsze, to zależy od wielu czynników, począwszy od ilości zmian serwisu w ciągu roku, posiadanych w bieżącym momencie czasu rozwiązań (firma mogła zaczynać od jednej strony WWW, która była rozwijana w serwis i obecna zmiana koncepcji wymagałaby znacznych nakładów czasu oraz finansowych), zasobów sprzętowych, a nawet zdolności technicznych personelu oraz doświadczeń i umiejętności projektanta. 1.2. Wybór technologii oraz architektury Według ankiety serwisu zend (http://www.zend.com/zend/php_survey_results.php) statystyka wykorzystywanych baz danych z dostępem przez php jest następująca (UWAGA: jedna osoba mogła zaznaczyć kilka serwerów): Jakiego rodzaju bazy danych wykorzystuje twoja firma w projektach php Liczba odpowiedzi MySQL 3220 93% PostgreSQL 773 22% Oracle 500 14% Microsoft SQL Server 565 16% Sybase 74 2% LDAP 309 9% SAP 33 1% Żadne 50 1% Inne 204 6% Udział procentowy Zatem było ok. 3462 ankietowanych (według moich obliczeń ).. Należy jednak pamiętać, iż oprócz php istnieją również inne możliwości dostępu do baz danych, a niektóre bazy danych są z nimi częściej użytkowane, np. JSP i Oracle.

6 Porównanie kosztów wybranych rozwiązań (na podstawie: [2]): Rozwiązanie ASP /SQL Server CouldFusion MX /SQL Server JSP /Oracle PHP /MySQL PHP /PostgreSQL Narzędzia do tworzenia oprogramowania Serwer RDBMS 1 (Relational Database Management System) 0 7500 zł 3000 zł 15 000 zł 1800 zł 7000 zł 15 000 zł 0 6000 zł 0 100 000 zł 60 000 zł 0-750 zł 0 zł 0 660 zł 0 750 zł 0 zł 0 (? ) zł Różniece pomiędzy serwerami MySQL oraz PostgreSQL możemy przedstawić następująco: MySQL darmowy w zasadzie dla wszystkich rozwiązań, które nie będą dystrybuowane (dyskusyjną pozostaje sprawa, czy sprzedaż oprogramowania do bazy MySQL w przypadku, gdy klient sam instaluje sobie serwer MySQL nie wymaga opłaty, natomiast pewne jest, że jeśli dołączymy przy sprzedaży serwer MySQL do komercyjnego oprogramowania to trzeba zapłacić), bardzo popularny, bogata literatura, szybszy oraz wygodny dla mniejszych baz danych PostgreSQL darmowy (wymaga zamieszczenia informacji o autorach i o tym, że nie ponoszą odpowiedzialności, jeśli niewłaściwie będzie działał) mniej popularny, brak książek do najnowszych wersji (ciężko znaleźć), od niedawna dla WIN32, nieco wolniejszy dla małych baz danych, ale lepszy w zastosowaniach dla większych systemów Czym się kierujemy przy wyborze systemu operacyjnego, serwera WWW, oraz DBMS? Jednym z czynników jest doświadczenie i umiejętności zespołu. Bywa nawet tak, że jest to czynnik decydujący. Ważne jest jednak, by nie miała miejsca sytuacja, w której wszystkie projekty, niezależnie od potrzeb, robimy w taki sam sposób. Przykład (z innej dziedziny). Spotkałem się z sytuacją, gdzie istotnym było (system czasu rzeczywistego), by każde urządzenie otrzymało, co pewien czas możliwość przesłania wyników pomiaru końcowego produktu (w przeciwnym razie, jeśli wyniki nie zostały zapisane na serwerze, produkt otrzymywał najniższą klasę i huta traciła pieniądze). Urządzenia połączono z wykorzystaniem technologii ETHERNET, a następnie bardzo wiele 1 System Zarządzania Relacyjną Bazą Danych

7 czasu poświęcono nad taką konstrukcją oprogramowania, by wspomniany warunek spełniało. Na pytanie, dlaczego nie zastosowano technologii token ring, padła odpowiedź, że nie używano jej wcześniej w projektach, a było mało czasu (o ile dobrze pamiętam, to zespół miał kilka miesięcy). Innym czynnikiem decydującym o wyborze DBMS (systemu zarządzającego bazą danych) jest oprogramowanie, które posiada klient. O ile czynnik ten ma marginalne znaczenie w przypadku, gdy usługi będą realizowane na dedykowanym serwerze, to jest już bardzo istotny w sytuacji, gdy przeznaczeniem produktu (gotowej aplikacji) jest sprzedaż dla indywidualnego klienta. Przykład mogą stanowić programy księgowe. Architekturę możemy rozpatrywać w dwóch płaszczyznach: 1) podział aplikacji na modułu realizujące określone usługi, 2) podział aplikacji na warstwy ze względu na sposób przetwarzania danych. Pierwszy z tych podziałów jest ściśle związany z rzeczywistością, którą ma opisywać projekt. Jeśli decydujemy się na modułową realizację programu, to bardzo istotne jest ustalenie, czy i w jaki sposób realizowana będzie wymiana informacji pomiędzy modułami. Często stosowaną techniką jest export/import danych do pliku, ale nawet w tym przypadku pojawiają się pytania, np. czy inicjowany i wykonywany przez użytkownika,. czy też przez wyzwalacz, czy jego realizacja pociąga za sobą zmiany w bazie danych (np. rejestracja operacji w odpowiednim miejscu i/lub blokowanie rekordów). Innym problemem są wymogi prawne. Zachęcam do obejrzenia witryny www.janosik.net (dotyczy problemów z konstrukcją alternatywnego programu w miejsce PŁATNIKA, do transmisji danych do ZUS). Najczęściej stosowana architektura to dwu lub trójwarstwowa. Pierwsze rozwiązanie jest zapewne znane. Mamy wówczas warstwę danych oraz warstwę aplikacji, która stanowi interfejs pomiędzy użytkownikiem i bazą danych. Drugie rozwiązanie, omówione np. w [3], pokazuje rysunek obok. WARSTWA PREZENTACJI.

8 Stanowi wizytówkę naszej firmy. Zachęca (lub odstrasza) klientów do zapoznania z ofertą, zakupami lub zachęca do odwiedzania naszej strony (to z kolei zapewnia np. finansowanie ze strony reklamodawców). Może także zawierać proste procedury sprawdzające poprawność wprowadzonych danych. Przy jej realizacji możemy korzystać z gotowych szablonów lub opracować własne. WARSTWA BIZNESOWA Obsługuje żądania z warstwy prezentacji, przekazując je do warstwy danych. Może to być podanie danych operacji do zapisania w bazie danych. Wówczas zapytanie to zostanie przetworzone na zrozumiałe dla warstwy danych i do niej przekazane. WARSTWA DANYCH Odpowiada za zarządzanie danymi. Wadą tej architektury w porównaniu z poprzednim rozwiązaniem jest trudniejsza realizacja oraz zwiększenie czasu przetwarzania (sekwencyjne przetwarzanie danych). Dodatkowy narzut czasu powstaje, gdy zastosujemy szablony i choć w typowych rozwiązaniach nie jest to istotne (użytkownik tego nie zauważy ze względu na dużą szybkość serwera w porównaniu z transmisją przez Internet), to w niektórych przypadkach może to mieć znaczenie. Pozostaje wówczas możliwość stworzenia własnych szablonów lub poszukanie innych rozwiązań. Zaletą jest natomiast rozdzielenie logiczne aplikacji umożliwiające łatwą skalowalność i elastyczność projektu oraz łatwiejsze przeniesienie na inną platformę gdyby było konieczne (choć niektórzy twierdzą, iż w praktyce taka sytuacja ma miejsce rzadko, gdyż przeniesienie i tak najczęściej wiąże się z modyfikacją całego systemu i ten aspekt ma marginalne znaczenie). W porównaniu z architekturą dwuwarstwową wydłuża się także czas projektu. Przy bardzo złożonych projektach celowe może być wykorzystanie większej niż 3 liczby warstw. Zwróćmy uwagę, kto uczestniczy w procesie projektowania systemu informatycznego: zamawiający, inwestor, projektant (architekt), urzędnicy (przepisy prawne, normy, standardy związane zarówno z dziedziną informatyki, jak i modelowanej rzeczywistości),

9 wykonawca (np. technik implementujący projekt, dokonujący jego instalacji, wdrożenia i walidacji), użytkownicy, otoczenie (zarówno fizyczne oddziaływanie systemu, jak i inni użytkownicy), operator, konserwator. Przyjmijmy, iż jesteśmy prezesami firmy, która zamierza poszerzyć działalność towarów sprzedaż towarów i usług, potocznie sklepu. Dostępne możliwości stojące przed zamawiającym, czyli nami: ROZWIĄZANIA zakupić kasy fiskalne zakupić kasy fiskalne oraz oprogramowanie UWAGI problemy, zalety itp. Trzeba wpisać towary do kas fiskalnych, prowadzić papierową dokumentację sprzedaży (m. in. rejestr VAT, dokumentację księgową), ale jeśli już posiadamy oprogramowanie księgowe, to tylko rejestracja sprzedaży dziennej, rozwiązanie proste, nie wymagające szkolenia personelu (osoby szkolone w zawodzie sprzedawcy taką umiejętność powinny posiadać, można też zatrudnić personel z taką umiejętnością) Decydując się na gotowy produkt mamy zapewnioną aktualizację w związku ze zmianami przepisów prawnych, ale oprogramowanie nie zawsze jest dopasowane do naszych usług. Dodatkowo dochodzą koszty szkolenia pracowników (niektóre firmy liczą sobie nawet kilka tysięcy za 3 dni szkolenia). Produkty mogą również wymagać konkretnych rozwiązań technicznych i mogą nie zawsze współpracować z każdym urządzeniem. Do pozytywów zaliczyć trzeba dostęp do wsparcia technicznego.

10 Zakupić kasy fiskalne, zastosować system bazy danych np. ACCESS, MySQL i opracować interfejs do bazy zakupić kasy fiskalne i wszystko opracować zrezygnować Znacznie większe koszty projektu oraz niebezpieczeństwa związane z niewłaściwym procesem projektowania. Większe możliwości rozbudowy, elastyczność i skalowalność. Tylko dla dużych przedsięwzięć lub specyficznych zastosowań, np. zastosowania związane z przetwarzaniem czasu rzeczywistego, niezawodnością lub duże systemy np. rezerwacji i sprzedaży biletów, sterowania ruchem lotniczym itp. Nic nie kosztuje, ale i nic nie zyskamy.

11 X. Bibliografia [1]pod. red. J.Górski Inżynieria oprogramowania w projekcie informatycznym, MIKOM 2000 [2] T.Converse, J.Park, C.Morgan PHP5 i MySQL Biblia, Helion 2005 [3] E.Balanescu, M.Bucica C.Darie PHP5 i MySQL Zastosowania e-commerce, Helion 2005 [4] J. Perkins PostgreSQL, MIKOM 2002 [i1] http://www.php.net/ - do php [i2] http://www.zend.com/manual/ - do php [i3] http://smarty.php.net szablony Smarty [i4] http://dev.mysql.com/doc/ - serwer MySQL [i5] http://www.postgresql.org/docs/ - PostgreSQL [i6] http://www.biznesplan.com.pl/swot.html - analiza SWOT [i7] http://prace.sciaga.pl/42962.html - analiza SWOT [i8] http://www.netmba.com/strategy/swot/ - analiza SWOT [i9] http://www.dbf.pl/faq/faq_pcbd.html - forum (bazy danych) Przepisy prawne (do zadania z Fakturą VAT): art. 106-108 - Ustawa z dnia 11 marca 2004 r. o podatku od towarów i usług (Dz.U. Nr 54, poz. 535 z późn. zm.) Rozporządzenie Ministra Finansów z dnia 25 maja 2005 r. w sprawie zwrotu podatku niektórym podatnikom, zaliczkowego zwrotu podatku, wystawiania faktur, sposobu ich przechowywania oraz listy towarów i usług, do których nie mają zastosowania zwolnienia od podatku od towarów i usług (Dz.U. Nr 95, poz. 798)