Puste procesowe

Transkrypt

Puste procesowe
Ekspertyza wykonana przez Karola Bregułę, w związku z
zamówieniem „Przygotowanie pisemnego opracowania
założeń do zmiany CMSa strony watchdog.org.pl”
(UD33/2013)
1. Istotne wymagania techniczne
1. Aplikacja winna być możliwa do uruchomienia na serwerze wspierającym technologie języka PHP lub Python i relacyjną bazę danych MySQL. Przykładowymi serwerami wspierającymi takie oprogramowanie są obecne użytkowane serwery:
1. "kaszub" (np. http://korkowe.samiswoje.pl),
2. u partnera SO-WP - Linuxpl.com (np. http://bip.siecobywatelska.pl).
2. Strona winna spełniać minimalne wymagania dla systemów teleinformatycznych rozporządzeniu Rady Ministrów z dnia 12 kwietnia 2012 r. w sprawie Krajowych Ram Interoperacyjności, minimalnych wymagań dla rejestrów publicznych i wymiany informacji w postaci
elektronicznej oraz minimalnych wymagań dla systemów teleinformatycznych (Dz.U. 2012
nr 0 poz. 526) oraz zostać zaprojektowana w sposób umożliwiający ich modyfikacje,
uwzględniających technologiczny rozwój systemu teleinformatycznego.
2. Istotne wymagania funkcjonalne
1. Strona winna zawierać w szczególności, ale nie wyłącznie:
◦ moduł administracyjny - element oprogramowania umożliwiający modyfikacje strony w szczególności w zakresie redakcje treści strony (publikacji artykułów, galerii,
danych adresowych itp.; dalej: treści redakcyjne) osobie zidentyfikowanej, autoryzowanej, uprawnionej,
◦ moduł wyszukujący - element oprogramowania umożliwiający przeszukiwanie treści
opublikowanych osobie nieautoryzowanej,
◦ moduł galerii - element oprogramowania umożliwiający publikację zgrupowanych obrazów,
◦ moduł komentarzy - element oprogramowania umożliwiający komentowanie wybranych treści redakcyjnej oraz skuteczną moderacje w ramach panelu administracyjnego umożliwiającą w szczególności, ale nie wyłącznie blokować zautomatyzowane komunikaty reklamowe oraz reagować na zgłoszenia naruszeń prawa w sposób prawem
przewidziany,
◦ moduł umożliwiający tworzenie blogów dla osób podejmujących działania zgodne z
założeniami programu,
◦ moduł kalendarza,
◦ moduł aktualności opatrzonych grafiką i "miniaturą wpisu",
◦ moduł artykułów statycznych lub publikacji wielorozdziałowych,
◦ możliwość wysyłki newslettera.
1/4
3. Analiza dostępnych rozwiązań
a. Drupal
1. Wymaga wiele większych nakładów związanych z konfiguracją początkową:
◦ utworzenie struktury dokumentów,
◦ zaprojektowanie przepływu dokumentów,
◦ uporządkowanie wszelkich bloków nawigacyjnych,
◦ przygotowanie do komunikacji z innymi systemami teleinformatycznymi w zakresie
prostej publikacji tekstów na innych stronach.
2. Nie posiada wbudowanych lub prostych dodatkowych mechanizmów umożliwiających publikacje wybranych treści na kompatybilnych systemach teleinformatycznych,
3. Kompatybilny z wszystkimi wykorzystywanymi przez Stowarzyszenie serwerami
4. Posiada szerokie wsparcie społeczności
5. W zakresie bezpieczeństwa należy wyróżnić:
◦ moduł automatycznej aktualizacji silnika oraz modułów dodatkowych,
◦ przechowywanie haseł w formie bezpiecznej uniemożliwiającej ponowne ich wykorzystanie w innym miejscu,
◦ szerokie przebadanie w zakresie bezpieczeństwa przez wielu światowej sławy ekspertów.
◦ wsparcie i kompatybilność przez okres ok.2-3 roku w obrębie wersji niekompatybilnych wersji głownych ,
6. Trudniejsza obsługa oraz istotne błędy w usability1,
7. Posiada budowę modularną,
8. Istotnie większa złożoność przystosowania skórki, szczególnie istotne przy ograniczonych zasobach osobowych.
b. Wordpress
1. Utworzenie struktury dokumentów jest fakultatywne.
2. Oprogramowanie jest nowoczesne, zgodne z powszechnymi zasadami projektowania aplikacji, stale rozwijane i aktualizowane,
3. Istnieją ogólnodostępne, bezpłatne mechanizmy umożliwiające w prosty sposób publikacje
wybranych treści na prekonfigurowanych stronach internetowych (np. z watchdog.org.pl na
siecobywatelska.pl, jeżeli siecobywatelska.pl również zostanie zmigrowana na Wordpress)
4. Wymaga PHP>=5.2.4 i MySQL>=5, co oznacza kompatybilność ze wszystkimi obecnie wykorzystywanymi przez Stowarzyszenie serwerami,
5. Posiada szerokie wsparcie społeczności, wiele bezpłatnych modułów rozszerzających funkcjonalność (tu: pluginy/wtyczki)
6. Posiada architekturę modularną. Należy zauważyć, że dzięki temu możliwe jest ponowne wy1
http://drupal.org/usability-test-university-baltimore-community-solutions/
2/4
korzystanie publicznie dostępnych modułów,
7. Lepsze dopasowanie UX, szczególnie istotne przy świadczeniu usług dla zewnętrznych strażników / strażniczek,
8. W zakresie bezpieczeństwa należy wyróżnić:
◦ moduł automatycznej aktualizacji silnika oraz modułów, który zapewnia niezwłoczne
wprowadzanie poprawek bezpieczeństwa bez aktywności obsługi, a pozostałe aktualizacje są projektowane z myślą o jak najmniejszych trudnościach (backward compatibility),
◦ przechowywanie haseł w formie bezpiecznej uniemożliwiającej ponowne ich wykorzystanie w przypadku przełamania zabezpieczeń,
◦ szerokie przebadanie w zakresie bezpieczeństwa przez wielu światowej sławy ekspertów.
c. Rekomendacje
Mając na względzie powyższe, a także zasoby osobowe Stowarzyszenia Sieć Obywatelska Watchdog Polska rekomenduje wykorzystywanie oprogramowania Wordpress w procesie modernizacji stron Stowarzyszenia.
4. Wydajność ładowania stron
Jest to bardzo szeroki problem o którym wiele książek napisano. Należy wskazać następujące
główne czynniki wpływające na wydajność strony:
•
wydajność serwera i łącza - wydajność transmisji serwer<->użytkownik,
•
wydajność bazy danych - dotychczasowa przyczyna problemu w watchdog.org.pl - zapytanie do bazy danych to w istocie poszukiwanie 1 elementu lub kilku spełniających kryteria nieprawidłowo zbudowany opis poszukiwań tego elementu, który pomija np. istniejące indeksy elementów prowadzi do spowolnienia strony, która oczekuje na odpowiedź bazy danych,
•
wydajność kodu aplikacji ze względu na wykonywanie złożonych obliczeń (np. niespotykane
w życiu Stowarzyszenia - zmniejszanie rozmiaru obrazów za każdym ich żądaniem),
W zakresie architektury strony WWW za właściwe wydaje mi się przytoczenie sposobu komunikacji wszystkich wymienionych przedstawionego przez mnie w formie prezentacji: http://prezi.com/yqnon3vr4hb7/serwer-www/
Wordpress jest zdecydowanie lżejszy.
5. Internacjonalizacja (i18n)
W podanym zakresie pozwolę sobie przytoczyć definicję tytułowego pojęcia z Wikipedii "Internacjonalizacja – umiędzynaradawianie oprogramowania, czyli wprowadzenie do programu możliwości
obsługi wyświetlania komunikatów i dokumentacji w wielu różnych językach. Blisko spokrewnione z
pojęciem lokalizacji (l10n). Pojęcie jest często skracane do i18n, pochodzącego od ang. internationalization (i + 18 liter pośrodku + n)."
Oba silniki są przystosowane do l10n i i18n.
Uważam, że lepiej wykonać osobne strony, gdyż pozwoli wzmocnić sprofilowanie przekazów - do
odbiorców krajowych lub do odbiorców międzynarodowych, a nie sprawia to większych trudności.
3/4
6. Bezpieczeństwo
1. Należy podjąć następujące kroki w zakresie bezpieczeństwa:
•
Wdrożyć zasadę zasada minimalnego uprzywilejowania (Każdy element systemu informatycznego, w tym użytkownik winien mieć dostęp tylko do tych informacji i zasobów, które są niezbędne do spełnienia wyznaczonego mu celu lub zadania) w tym
odizolować systemy danych wrażliwych od systemów danych publicznych,
•
Wprowadzić wymóg wprowadzania zmian przez centralne repozytorium systemu kontroluiwersji kodu w celu:
•
wzajemnego przeglądu i korekty kodu w szczególności, ale nie wyłącznie bezpieczeństwa,
•
ustalenia osób odpowiedzialnych za dany fragment kodu z względu na autorstwo.
7. Centralny System Logowania (CAS)
W zakresie centralnego systemu logowania należy uznać powstawanie go za nieuzasadnionego.
Nie jest to też uzasadnione koniecznością zwiększenia skuteczności zarządzania użytkownikami
(odejścia, przyjścia, włamania), a skala ewentualnego wdrożenia byłaby nieznaczna.
System ds. centralnego logowania wywołuje konieczność zarządzania nim, aktualizacje, konserwacyjne prace administracyjne, co w świetle przedstawionych wyżej argumentów, niepotrzebnie będzie angażować nasze skąpe zasoby administratorów.
8. System Q&A
Serwis typu Q&A (np.http://stackoverflow.com/) jest pewnego rodzaju forum internetowym,
gdzie użytkownicy zadają pytania, dostają odpowiedzi, a najlepsza odpowiedź jest wyróżniana.
Tworzone jest archiwum.
Nie uważam za celową integracje w obrębie watchdog.org.pl modułów świadczących Q&A, ponieważ tekst opublikowany zawiera całą literaturę przedmiotu.
9. Patrz także
•
http://mikeschinkel.com/blog/17-reasons-wordpress-is-a-better-cms-than-drupal/
4/4

Podobne dokumenty