1 / 31

Wstęp do pracy magisterskiej – „Sklep I nternetowy – PHP5 i MySQL zastosowania e-commerce”

Wstęp do pracy magisterskiej – „Sklep I nternetowy – PHP5 i MySQL zastosowania e-commerce”. Konrad Pawłowski Poznań, 8.III.2007. Spis zagadnień. 1. Czy warto zaistnieć w internecie ? Pozyskanie większej ilości klientów Nakłonienie klientów do zwiększenia zakupów

akasma
Download Presentation

Wstęp do pracy magisterskiej – „Sklep I nternetowy – PHP5 i MySQL zastosowania e-commerce”

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Wstęp do pracy magisterskiej – „Sklep Internetowy – PHP5 i MySQLzastosowania e-commerce” Konrad Pawłowski Poznań, 8.III.2007

  2. Spis zagadnień 1. Czy warto zaistnieć w internecie? • Pozyskanie większej ilości klientów • Nakłonienie klientów do zwiększenia zakupów • Zmniejszenie kosztów realizacji zamówień • Ryzyko i zagrożenia 2. Projektowanie z uwzględnieniem możliwości rozbudowy witryny • Długookresowa funkcjonalności przy minimalnym nakładzie pracy • Zalety architektury trójwarstwowej • Warstwa prezentacji • Warstwa biznesowa • Warstwa danych 3. Wybór technologii i narzędzi projektowych • PHP • szablony Smarty • MySQL • moduł PEARL DB

  3. Czy warto zaistnieć w internecie? Przyczyny uruchomienia witryny internetowej: • chęć pozyskania większej liczby klientów; • nakłonienie dotychczasowych klientów do zwiększenia zakupów; • zmniejszenie kosztów realizacji zamówień;

  4. Pozyskanie większej liczby klientów • Najważniejszy powód rozpoczęcia inwestycji • Nieprawdą jest, że liczba klientów wzrośnie natychmiast, klient musi dowiedzieć się o istnieniu sklep (także klasycznego sklepu). • Sposoby pozyskiwania klientów • rejestrowanie w wyszukiwarkach internetowych i usługach katalogowych • tworzenie forów dyskusyjnych • budowanie list informacyjnych

  5. Nakłonienie klientów do zwiększenia zakupów • Jeśli klient nie jest zainteresowany produktem sklep internetowy tego nie zmieni. • Sklep w Internecie pomocny gdy: • Dotarcie do sklepu lub złożenie zamówienia jest wyjątkowo trudne. • Część towarów można kupić w innych dogodniejszych miejscach. • Godziny otwarcia sklepu pokrywają sie z godzinami pracy klientów. • Promowanie produktu jest bardzo trudne.

  6. Nakłonienie klientów do zwiększenia zakupów • Zakupy można dokonywać poza godzinami pracy lub bezpośrednio z komputerów firmowych. • Przemyślany interfejs może nakłonić do zakupu produktów zazwyczaj niepotrzebnych • Sezonowe promocje, nowości, produkty związane z wcześniej zamówionymi towarami • Brak kosztów z osobami nie dokonującymi zakupów • Możliwość zbierania informacji o klientach (np. adresy e-mail)

  7. Zmniejszenie kosztów realizacji zamówień • Formularz realizacji zamówień realizowany przez klientów (nie potrzeba pracownika) • Koszt rzeczywistego przetwarzania zamówienia bliski zeru (brak kasjerek, sprzedawców czy ochroniarzy) • Brak opłaty za lokal

  8. Ryzyko i zagrożenia • Do zagrożeń związanych z prowadzeniem sklepu internetowego należy zaliczyć: • działanie hakerów, • wyłudzanie z wykorzystaniem kart kredytowych, • awarie sprzętu, • zawodność dostawców, • błędy oprogramowania, • zmieniające się prawo (np. wirtualne apteki). Należy pamiętać o ich istnieniu i zabezpieczyć się przed ich skutkami.

  9. Ryzyko i zagrożenia • Sporządzanie kopii zapasowych ( 5 minut które są bardzo ważne) • Właściwe procedury logistyczne (terminowe dostarczanie zakupionych towarów)

  10. Projektowanie z uwzględnieniem możliwości rozbudowy • Wygląd strony ważny, ale nie najważniejszy • Wygląd zachęca do rozpoczęcia korzystania z serwisu, jeśli jednak jest powolny w działaniu, trudny w użyciu, i nie zapada w pamięć to wygląd strony wiele nie pomoże • Błędne przekonanie o wyższości części wizualnej nad sposobem implementacji • Przed rozpoczęciem należy wykonać pewne czynności przygotowywawcze: • określenie stawianych oczekiwań; • przygotowanie architektury aplikacji;

  11. Długookresowa funkcjonalności przy minimalnym nakładzie pracy • Powtórne wykorzystanie • Dodanie nowej opcji, nie powinno doprowadzać do zmiany projektu całej witryny. Wykorzystanie wcześniejszych rozwiązań, możliwość rozbudowy. • Elastyczna architektura • Złożona z łatwo dołączalnych komponentów. • Skalowalność architektury • Zdolność do liniowego zwiększania pojemności systemu przy zwiększaniu jego zasobów.

  12. Długookresowa funkcjonalności przy minimalnym nakładzie pracy • Stabilność • Stabilne działanie rozwiązania zapewnia spójny mechanizm obsługi błędów i stosowanie wydajnych relacyjnych baz danych. Umożliwia to właściwe przetwarzanie niekrytycznych błędów, bez przerywania pracy skryptów.

  13. Zalety architektury trójwarstwowej Każdy z modułów tworzonych na potrzeby witryny zawiera komponenty pochodzące z jednej z trzech wymienionych poniżej warstw serwera aplikacji: • warstwy prezentacji, • warstwy biznesowej, • Warstwy danych.

  14. Warstwa prezentacji • Składa się z elementów interfejsu użytkownika. • Obsługuje interakcje użytkownika z warstwą biznesową. • Na jej podstawie użytkownik wyrabia sobie pierwsze wrażenie. • Ponieważ omawiana aplikacja jest witryną WWW, jej warstwa prezentacji składa się z dynamicznych stron WWW.

  15. Warstwa biznesowa (warstwa pośrednia) • Przyjmuje żądania z warstwy prezentacji i przekazuje wyniki działania programu do warstwy prezentacji. • Większość zdarzeń zostaje obsłużonych w warstwie biznezowych. • Niektóre zdarzenia mogą być obsłużone lokalnie przez warstwę prezentacji. • Np. nieskomplikowane walidacje danych

  16. Warstwa danych(warstwa bazodanowa) • Jest odpowiedzialna za zarządzanie danymi aplikacji i za udostępnianie ich na żądanie warstwy biznesowej. • W przypadku projektowanej przeze mnie aplikacji w warstwie danych zostaną zgromadzone informacje na temat wszystkich produktów, użytkowników, koszyków z zakupami itp. • Zagwarantowanie szybkiego działania baz danych ma zasadnicze znaczenie dla uzyskania wysokiej wydajności całej aplikacji.

  17. Sposób przekazywania informacji w aplikacji trójwarstwowej • Głównym ograniczeniem trójwarstwowej architektury serwisu jest konieczność sekwencyjnego przekazywania danych między warstwami. • Warstwa biznesowa stanowi „mózg” aplikacji – komunikując się z pozostałymi warstwami i zarządzając przepływem informacji. Warstwa prezentacji Warstwa biznesowa Warstwa danych

  18. Użytkownik korzystający z przeglądarki internetowej 1 7 Internet Trójwarstwowa architektura aplikacji WWW zaimplementowana w systemie serwera WWW Warstwa prezentacji 2 6 Warstwa biznesowa 3 5 Sposób przekazywania informacji w aplikacji trójwarstwowej Tu będzie opis poszczególnych kroków Warstwa danych 4

  19. Produkt nie jest dostępny Poinformowanie użytkownika o tym, że produkt nie może zostać dodany do koszyka zakupów Kliknięcie przycisku „Dodaj do koszyka” Warstwa prezentacji Dodanie produktu do koszyka zakupów Warstwa biznesowa Jaki jest stan magazynowy produktu 0 Architektura trójwarstwowa – znaczenie liczb Tu będzie opis poszczególnych kroków Warstwa danych

  20. Architektura trójwarstwowa • Oprogramowanie każdej z warstw. • Wyznaczanie granic między warstwami bywa trudne. • Czasami architektura jest łamana, jeśli dane rozwiązanie zwiększa wydajność serwisu. • Rozwiązanie na poprzednim slajdzie wymaga dwóch odwołań, przy przeniesieniu części oprogramowania z warstwy biznesowej do warstwy danych możemy użyć pojedynczego odwołania wprowadzając metodę tupu DodajProduktJeśliJest • Nie należy odwoływać się bezpośrednio do warstwy danych z warstwy prezentacji. Nadmierna złożoność.

  21. Architektura trójwarstwowa • Trójwarstwowa architektura w projekcie pracy magisterskiej. • Wprowadzone reguły zapewniają elastyczność oraz możliwość rozbudowania z biegiem czasu. • Niezależność rozwiązania od wprowadzanych zmian. Np. w przypadku zmiany serwera MySQL bazą danych Oracle, zmiany nastąpią w warstwie danych oraz ewentualnie małe poprawki w warstwie biznesowej.

  22. Architektura trójwarstwowa • Dlaczego nie stosuje się większej liczby warstw? • Dopuszczalne stosowanie architektur warstwowych, większa ilość warstw może wprowadzać większą elastyczność i skalowalność aplikacji. • Punkt równowagi między czasem definiowania architektury a czasem poświęconym na jej implementacje. • Architektura dwuwarstwowa (klient-serwer) wykorzystywana w projektach o mniejszej złożoności. Trudniejsza do zarządzania i rozbudowy w dłuższym przedziale czasowym.

  23. Wybór technologii i narzędzi projektowych -PHP • Wykorzystanie języka PHP do generowania stron WWW, przyczyny popularności: • interpreter PHP jest dostępny za darmo; • Język PHP jest łatwiejszy do nauczenia niż inne języki skryptowe; • społeczność PHP działa bardzo efektywnie; • Interpreter PHP działa doskonale na różnych serwerach oraz w różnych systemach operacyjnych (platformy uniksowe, Windows, Mac OS X)

  24. Wybór technologii i narzędzi projektowych – szablony Smarty • Smarty • Jest on napisaną w języku PHP klasą, za pomocą której będziemy w stanie połączyć tworzone oddzielnie: kod źródłowy sterujący witryną WWW oraz opracowane w HTML-u szablony stron. • Nie jest konieczny, ale bardzo przydatny w profesjonalnych projektach.

  25. Wybór technologii i narzędzi projektowych – szablony Smarty • Istotne wady przeplatania instrukcji PHP z kodem HTML odpowiedzialnym za wygląd: • długie, złożone i trudne do analizowania listingi, są one trudne do zrozumienia już po tygodniu od napisania; • problem jednoczesnej pracy projektantów strony i programistów, wszyscy pracują na tych samych plikach zawierających kod HTML i PHP

  26. Wybór technologii i narzędzi projektowych – szablony Smarty • Zalety • bezpieczeństwo kodu źródłowego (projektanci układu strony nie mogą naruszyć struktury aplikacji); • nieprawidłowości w szablonach są ograniczone do systemu obsługi błędów Smarty; • projektanci mogą zmieniać lub kompletnie przebudowywać layout strony bez interwencji programistów; • szablony umożliwiają szybkie zaprezentowanie demonstracyjnej wersji produktu (a jest to bardzo ważne np. na etapie negocjacji).

  27. Wybór technologii i narzędzi projektowych – szablony Smarty Na rysunku została przedstawiona zależność między plikiem szablonu interfejsu (Smarty Design Template) i plikiem modułu dodatku Smarty.

  28. Wybór technologii i narzędzi projektowych - MySQL • Język PHP współdziała z wieloma RDBMS (RelationalDatabaseManagment System), wliczając w to MySQL, PostgreSQL, Oracle i inne. • Wiele firm udostępniających usługi internetowe oferuje dostęp do baz danych MySQL. • Co ułatwia uruchamianie w sieci nowych witryn. • MySQL charakteryzuje się tym, że jest: • darmowy (w niekomercyjnych aplikacjach); • szybki i stabilny;

  29. Wybór technologii i narzędzi projektowych - MySQL Wynik ankiety z której wynika, że MySQL jest najpopularniejszą bazą danych wśród programistów PHP. Tabela pochodzi z: http://www.zend.com/zend/php_survey_results.php (7.III.2007)

  30. Wybór technologii i narzędzi projektowych – moduł PEARL DB • Moduł PEARL DB odpowiada pewnej abstrakcyjnej warstwie bazodanowej, wchodzącej w skład pakietu PEARL. • Oferuje zunifikowany interfejs dostępu do różnego rodzaju źródeł danych. • Stosując rozszerzenia PEARL DB nie trzeba zmieniać kodu skryptu odpowiedzialnego za dostęp do bazy danych w przypadku zmiany serwera. • Np. z MySQL na PostgreSQL. • Przy tej zmianie należałoby np. zmienić mysql_connecti mysql_query na pg_connecti pq_query.

  31. Koniec Dziękuje za uwagę! Pytania? Konrad Pawłowski konradpaw@o2.pl

More Related