Technologia w e-commerce
Teoria i praktyka
Poradnik menedżera
Nadzór nad procesem tworzenia i utrzymaniem sklepu internetowego lub dowolnej innej
formy obecności firmy na rynku e-commerce jest naprawdę trudnym zadaniem. Wymaga
ogromnej wiedzy i ogromnego doświadczenia w kwestiach biznesowych i prawnych, a przede
wszystkim technicznych. Do pracy nad tą książką Piotr Karwatka zaprosił grono
uznanych ekspertów: dyrektorów IT oraz niezależnych konsultantów, którzy zajmują
się m.in. wdrożeniami, audytami oraz utrzymaniem produkcyjnym zaawansowanych sklepów
internetowych. Znajdziesz tutaj odpowiedzi na kluczowe pytania, dotykające całego
spektrum technicznych zagadnień związanych z handlem w internecie.
Technologia w e-commerce… wypełnia ważną niszę na rynku wydawniczym, ponieważ
proponuje kompleksowe podejście do zagadnień, które do tej pory omawiane były osobno w
ramach literatury informatycznej i biznesowej.
Większość dostępnych dziś książek skupia się albo na technicznych aspektach
e-handlu (sposoby korzystania z baz danych, języków programowania i frameworków), albo
na ujęciu biznesowym. Autorzy niniejszej publikacji starali się połączyć te dwa
światy i stworzyć swoiste FAQ e-biznesu. Jeśli wciąż masz wątpliwości, czy dobrze
prowadzisz swój e-biznes, sięgnij po tę pozycję. Tak cennej wiedzy nie znajdziesz
nigdzie indziej!
Z tej książki dowiesz się między innymi:
jak dokonać dobrego wyboru platformy sklepowej i na jakie aspekty zwrócić uwagę
w jaki sposób zintegrować się z systemami ERP, stworzyć szynę wymiany danych
oraz umiejscowić system w obecnym środowisku informatycznym
jak poradzić sobie z dużym obciążeniem i wykorzystać skalowalność oraz jakich
narzędzi użyć
jak zapewnić bezpieczeństwo danych i nie narazić się GIODO
jak stworzyć procedury w zespole wdrożeniowym i przestrzegać tych procedur
jak dbać o jakość projektów od etapu analitycznego po wdrożenie i utrzymanie
jak zapewnić wysoką dostępność aplikacji, SLA oraz wydajny hosting i
wirtualizację
Podziękowania (13)
Wstęp (15)
Informacje o autorach (19)
Rozdział 1. Zarządzanie projektem i komunikacja (33)
- Jak przeprowadzić projekt z sukcesem? (34)
- Jak prowadzić projekt? (34)
- Co robić w sytuacjach kryzysowych? (37)
- Jak być dobrym project managerem? (39)
- Jak porządkować komunikację z firmą wdrożeniową? (41)
- Myślimy o komunikacji już na etapie podpisywania umowy (42)
- Etap analityczny i projektowy (43)
- Testy i odbiór (45)
- Utrzymanie (46)
- Jak budować i rozwijać zespół technologiczny? (50)
- Przede wszystkim - wspólny cel i szacunek dla pracy innych (50)
- Dobra atmosfera (51)
- Elitarność i autorytet (52)
- Odpowiedzialność (53)
- Nowe technologie (53)
- Wymiana wiedzy (54)
- Jak zapewnić sprawną współpracę project managera i programistów? (56)
- Jaką wybrać metodykę? Scrum i Kanban (61)
- Metodyki zwinne (62)
- Jak działa Scrum? (63)
- Czym jest Kanban i jak może pomóc? (65)
- Jakie są różnice pomiędzy Scrumem a Scrumbanem? (67)
- Jaką metodykę wybrać? (67)
Rozdział 2. Projekt i dokumentacja (69)
- Jak skutecznie zebrać wymagania? (70)
- Jak radzić sobie ze zmianami wymagań? (74)
- Wpływ zmian na projekt (76)
- Jak wdrażać zmiany? (77)
- Czym jest i co powinien zawierać projekt funkcjonalny? (81)
- Czym jest projekt funkcjonalny? (81)
- Jak przygotować projekt? (82)
- Projektowanie a użyteczność - podstawy podstaw (87)
- Co powinna zawierać dokumentacja techniczna? (94)
- Dokumentacja techniczna projektu (94)
- Dokumentacja wdrożeniowa (95)
- Dokumentacja użytkownika (95)
- Zawartość dokumentacji (96)
- Testowanie dokumentacji (100)
Rozdział 3. Wybór platformy (101)
- Dedykowana platforma, oprogramowanie pudełkowe czy open source? (102)
- Platforma dedykowana (104)
- Oprogramowanie pudełkowe (105)
- Oprogramowanie pudełkowe zamknięte, oprogramowanie w formie dzierżawy (105)
- Mit rozwiązań komercyjnych (106)
- Oprogramowanie pudełkowe otwarte - open source (107)
- Licencje open source (109)
- Porównanie dostępnych opcji (111)
- Dla praktyków - najpopularniejsze platformy (113)
- Jak ocenić oprogramowanie pod kątem dalszego rozwoju? (115)
- Przede wszystkim - licencja (116)
- Portfolio wdrożeń (117)
- Wsparcie producenta (117)
- Dokumentacja (117)
- Architektura (118)
- Testy automatyczne (119)
- Historia dotychczasowych zmian (120)
Rozdział 4. Jakość i rozwój oprogramowania (121)
- Jak w odpowiedzialny sposób poprawiać jakość techniczną projektu? (122)
- Motywacje i cele (123)
- Jak refaktoryzować? (125)
- Jak planować rozwój oprogramowania oraz pracę? (127)
- Obawy użytkowników (128)
- Organizacja wiedzy (129)
- Jak wypracować nawyki związane z jakością? (135)
- Jak wydawać kolejne wersje oprogramowania? (139)
- Ciągła integracja (139)
- Przed wdrożeniem (144)
- Wdrożenie (145)
- Sposób wdrażania (146)
- Jak i kiedy aktualizować kod platformy oraz jak dbać o jego bezpieczeństwo? (148)
- Zmiany wykonywane w trakcie wdrożenia (149)
- Śledzenie historii zmian (150)
- Testy i zarządzanie wersjami (151)
- Jak przejąć nieznany projekt od firmy trzeciej i dalej go rozwijać? (152)
- Dokumentacja i szkolenia (152)
- Wywiad i poznanie systemu (154)
- Uruchomienie i podstawowe czynności (154)
- Analiza kodu źródłowego (154)
- Zespół do zadań specjalnych (156)
- Testy jednostkowe (156)
- System kontroli wersji i śledzenie zmian (157)
- Dziennik (log) projektu i dokumentacja (157)
Rozdział 5. Hosting (159)
- Jak wybrać dostawcę hostingu i na co zwracać uwagę w umowach hostingowych? (160)
- Świadomy wybór firmy hostingowej (160)
- Po pierwsze: pytaj i zapisz w umowie lub regulaminie (161)
- Na co zwracać uwagę (161)
- Poziom jakości usług (163)
- Normy i standardy (164)
- Polska, Europa, świat (164)
- Umowa powierzenia przetwarzania danych (165)
- Co to jest SLA i jakie powinno mieć parametry? (169)
- Dostępność systemu (170)
- Tryb monitorowania, raportowania i eskalacji (171)
- Tryb zgłaszania problemów (172)
- Zakres asysty technicznej (172)
- Czas reakcji (172)
- Czas naprawy i obejścia błędu (173)
- Czas przywracania kopii zapasowych (173)
- Niezawodność sprzętu (174)
- Czas naprawy lub wymiany sprzętu (174)
- Przepustowość łączy i limity transferu (175)
- Dostępność sieci (175)
- Wirtualizacja. Jakie są plusy i minusy? (176)
- Czym jest wirtualizacja? (176)
- Wady i zalety (178)
- Najpopularniejsze technologie wirtualizacji (181)
- Czy to się opłaca? (182)
- Jak użyć chmury obliczeniowej do skalowania? (184)
- Wzorce pracy serwisów internetowych (184)
- Klęska urodzaju (186)
- W czym mogą pomóc nam chmury? (188)
- Jak migrować? (190)
Rozdział 6. Bezpieczeństwo danych (197)
- Jak bezpiecznie przetwarzać informacje? (198)
- Centrum przetwarzania (199)
- Serwery i osprzęt sieciowy (200)
- Systemy (202)
- Bazy danych (205)
- Jak bezpiecznie przetwarzać korespondencję masową? (211)
- Komponenty (211)
- Zgody i regulaminy (213)
- Zagrożenia i dodatkowa ochrona (214)
- Jakim testom bezpieczeństwa poddać aplikację? (217)
- Środowisko testowe (217)
- Głębokość testów (218)
- Wybór (223)
- Ustawiczne testowanie (224)
- System śledzenia błędów (225)
- Jak sprawić, aby pracownicy dbali o bezpieczeństwo danych? (226)
- Ufać czy kontrolować? (226)
- Zabezpieczenia (226)
- Kontrola administracyjna (227)
- Kontrola techniczna (227)
- Kontrola fizyczna (228)
- Kontrola prewencyjna, monitorująca i korygująca (228)
- Polityka czystego biurka i czystego ekranu (229)
Rozdział 7. Aspekty prawne (231)
- Jakie gwarancje powinna mi dawać firma wdrożeniowa? (232)
- Wdrożenie (233)
- Utrzymanie (238)
- Jak zadbać o bezpieczeństwo danych osobowych? (244)
- Chronić należy nie tylko dane osobowe (245)
- Klient sklepu internetowego nie jest anonimowy (245)
- Dane osobowe to nie tylko imię i nazwisko (245)
- Zbiór danych osobowych a baza danych w systemie informatycznym (246)
- Wymagania techniczne wobec oprogramowania sklepu (247)
- Zabezpieczenie transmisji przez internet (248)
- Kopie zapasowe (249)
- Dokumentacja i procedury (249)
- Konsekwencje prawne niezabezpieczenia danych (251)
- Podsumowanie (252)
- Na co zwracać uwagę przy współpracy z firmą informatyczną? (253)
- Jak reagować na przypadki niewłaściwego realizowania umowy przez wykonawcę? (255)
- Jak ma się zachować zamawiający wobec wykonawcy, jeśli aplikacja zawiera wady? (256)
- Jak dokumentować przypadki wadliwego wykonywania umowy? (258)
- Jakie problemy występują w praktyce w trakcie współpracy zamawiającego z
wykonawcą? (260)
- Jakie są skutki odstąpienia od umowy z firmą wdrożeniową? (272)
- Prawne znaczenie protokołów odbioru (273)
- Jak obsługiwać i rozwijać oprogramowanie bez udziału wykonawcy? (276)
- Co się dzieje, jeśli wykonawca "bankrutuje" w trakcie realizacji umowy?
(281)
- Wybrane zagadnienia z zakresu open source (283)
- Jak chronić wartość intelektualną? (287)
- Prawne zabezpieczenia własności intelektualnej w branży e-commerce (287)
Rozdział 8. Integracje (295)
- W jaki sposób zintegrować system księgowy ze sklepem? (296)
- Jakie systemy wymieniają dane? (296)
- Jakie dane są wymieniane? (298)
- Jak zapewnić sprawną komunikację? (301)
- Jak działa komunikacja ESB? (302)
- Platformy wymiany danych (303)
- Jak zaprojektować protokoły komunikacji? (306)
- Zależności pomiędzy protokołami (307)
- Zagadnienia projektowania (308)
- Bezpieczeństwo (311)
- Dokumentowanie protokołu (313)
- Jak monitorować komunikację oraz zapewnić jej ciągłość? (314)
- Wypadki chodzą po firmach (314)
- Monitorowanie komunikacji (316)
- Zapewnianie ciągłości komunikacji (320)
- Ciągłość i monitoring w ujęciu biznesowym (322)
Rozdział 9. Skalowalność i wysoka dostępność (323)
- Co to jest wysoka dostępność? (324)
- Podstawy wysokiej dostępności (326)
- Wysoka dostępność jako proces (328)
- Czy Twój system jest wystarczająco dostępny? (328)
- Jak zapewnić dostępność bazy danych i aplikacji? (331)
- Redundancja sprzętowa (332)
- Nadmiarowość serwerów aplikacji (332)
- Replikacja bazy danych (333)
- Rozproszony system plików (335)
- Wirtualizacja (336)
- Chmury obliczeniowe (337)
- Czym jest skalowalność? (339)
- Po pierwsze - oprogramowanie (340)
- Po drugie - sprzęt (343)
- Skalowanie poziome warstwy aplikacji (344)
- Skalowanie warstwy bazy danych (346)
- Skalowanie warstwy przechowującej pliki (349)
- Gotowe rozwiązania (349)
- Dla praktyków (350)
- Co zrobić, jeśli sklep ma problemy wydajnościowe? (354)
- Monitoruj i wcześnie wykrywaj problemy (354)
- Stosuj pamięć podręczną - cache (355)
- Odciąż serwery aplikacji (355)
- Zainstaluj moduł mod_pagespeed (357)
- Stosuj osobny serwer bazy danych (357)
- Trzymaj sesje w bazie danych lub pamięci podręcznej (358)
- Dodawaj serwery aplikacji (358)
- Wybieraj dobre oprogramowanie (359)
- Ostatnie, ale nie mniej ważne - testuj (359)
- Co dalej? (359)
- Dla praktyków (359)
- Jak dbać o kopie zapasowe i szybkość ich przywracania? (361)
- Kopie zapasowe należy wykonywać (361)
- Archiwizacja danych a kopia zapasowa (361)
- RAID to nie kopia zapasowa (362)
- Na jakich nośnikach wykonywać i archiwizować kopie zapasowe (363)
- Systematyczność (364)
- Narzędzia (365)
- Odtwarzanie (366)
- Jak długo przechowywać (366)
- Jak uchronić się przed awarią centrum przetwarzania danych? (367)
- Procesy biznesowe w organizacji (367)
- Planowanie ciągłości działania (367)
- Disaster Recovery, czyli odtwarzanie po awarii (368)
- Ile jest czasu na przywrócenie i ile danych można utracić (369)
- Zasoby i procesy biznesowe (369)
- Zagrożenia i ich wpływ (370)
- Przeciwdziałanie i odtwarzanie po awarii (371)
- Bilans korzyści (373)
Rozdział 10. Interfejs użytkownika, SEO (375)
- Jakie warunki powinna spełniać dostępna witryna internetowa? (376)
- Jak zapewnić dostępność do serwisu osobom niepełnosprawnym? (377)
- Testowanie serwisu (382)
- Korzyści (384)
- Jakie aspekty SEO wpływają na wysoką pozycję w wynikach wyszukiwania? (385)
- Bezbłędny i semantyczny kod HTML (386)
- Każda strona sklepu powinna mieć tytuł i opis (386)
- Mapa sklepu - plik sitemap.xml (388)
- Plik robots.txt (388)
- Przyjazne adresy URL (388)
- Odnośniki (389)
- Obrazki i ich opisy (390)
- Integracja z Google Analytics (390)
- Oznaczone dane strukturalne zgodnie ze schema.org (390)
- Integracja z serwisami społecznościowymi (391)
- Krótki czas ładowania stron = wyższa pozycja (392)
- Podsumowanie (392)
- Jak zwiększyć widoczność produktu w wyszukiwarce? (393)
- Google Rich Snippets - rozszerzony widok danych strukturalnych (393)
- Czym są dane strukturalne? (395)
- Od czego zacząć? (396)
- Jak optymalizować szybkość witryny? (399)
- Zmniejsz liczbę żądań HTTP (400)
- Minimalizuj rozmiar plików CSS i JavaScript (401)
- Pisz semantyczny kod HTML i unikaj skomplikowanych selektorów CSS (401)
- Włącz kompresję (403)
- Kompresuj pliki graficzne (403)
- Wykorzystaj pamięć podręczną przeglądarki (404)
- Używaj sieci dystrybucji treści (ang. CDN - Content Delivery Network) i rozprosz
zasoby na kilka domen (405)
- Umieszczaj pliki arkuszy stylów CSS w sekcji <head> (406)
- Umieszczaj skrypty na końcu kodu HTML (407)
- Umieszczaj style CSS i skrypty JavaScript w zewnętrznych plikach (408)
- Optymalizacja szybkości ładowania witryn pod kątem urządzeń mobilnych (408)
- Jak wdrożyć wersję mobilną serwisu? (410)
- Czy ktoś pamięta jeszcze, co oznacza skrót WML? (411)
- Nadeszły czasy HTML5 i CSS3 (412)
- Projektowanie pod urządzenia mobilne (412)
- Brak kursora myszy (412)
- Grube palce (413)
- Niskie rozdzielczości powracają! (414)
- Niska przepustowość łącza (414)
- Responsive Web Design (415)
- Elastyczny układ strony (416)
- Elastyczne zdjęcia (418)
- CSS3 Media Queries (419)
- Testowanie (420)
- Responsive Web Design to nie jedyne słuszne rozwiązanie (421)
Rozdział 11. Porady praktyczne (423)
- Jakie testy powinny być przeprowadzane? (424)
- Testy użyteczności interfejsu użytkownika (ang. UI Tests) (425)
- Testy bezpieczeństwa (426)
- Testy obsługi sytuacji wyjątkowych (error handling tests) (427)
- Testy funkcjonalne, testy podstawowych scenariuszy i ścieżek (428)
- Testy regresyjne i testy dymne (smoke tests) (428)
- Testy przywracania systemu (recovery tests) (429)
- Testy obciążeniowe (430)
- Testy integracyjne (430)
- Jakie testy są obowiązkowe? (431)
- Jak napisać scenariusze testów funkcjonalnych? (432)
- Zakres testów (433)
- Założenia (434)
- Jak może wyglądać scenariusz? (434)
- Inne scenariusze testowe (437)
- Jak przetestować wydajność sklepu internetowego? (438)
- Co testować? (439)
- Jak testować? (439)
- Czym testować? (439)
- Jak testować integracje z systemami? (446)
- Czy warto testować? (447)
- Scenariusze testowe (447)
- Jak testować? (448)
- O czym należy pamiętać przy zmianie platformy? (450)
- Testy (450)
- Katalog produktów (452)
- Treści statyczne (452)
- SEO (453)
- Metody dostawy i płatności (454)
- Integracje (455)
- Poczta, domena, certyfikat SSL (455)
- Zgodność z prawem (456)
- W jaki sposób monitorować dostępność aplikacji? (457)
- Nie możesz zarządzać tym, czego nie mierzysz (457)
- Monitoring rozproszony geograficznie (458)
- Monitorowanie procesu zakupowego (458)
- Polecane narzędzia (458)
- Dostępność serwisu a jego wygląd w przeglądarce (459)
- Jakie są typy i zastosowania certyfikatów SSL w e-commerce? (460)
- Jakie dane zawierają certyfikaty? (460)
- Czy istnieje podział certyfikatów ze względu na moc szyfrowania? (461)
- Podział certyfikatów ze względu na sposób weryfikacji wraz z krótkim opisem procesu
weryfikacji (461)
- Zastosowanie certyfikatów - gdzie stosować certyfikaty i dlaczego? (463)
Skorowidz (467)
480 stron, Format: 16.0x23.0cm, oprawa miękka