Systemy do zarządzania treścią to temat rzeka. Ile ludzi, tyle opinii.
Ile jest systemów CMS?
Większość doświadczonych developerów z którymi rozmawiałem, była w stanie podać mniej więcej 5 nazw różnych platform do zarządzania treścią. Ich wiedza zazwyczaj ograniczała się do połowy z nich, a doświadczenie do jednego lub dwóch.
Większość zapytanych wyrzuci z siebie następujące nazwy: WordPress, Drupal, Joomla, Alfresco, Tiny CMS. Czasami występują także inne, w zależności od doświadczeń.
Kiedy zacząłem badać temat CMS wydawało mi się, że liczą CMS o których warto w ogóle mówić, sięgnie być może 20, 30 projektów. Moje zdumienie było więcej niż spore, gdy okazało się, że liczba ta sięga raczej 1200 różnych platform. 1200 platform to liczba, która może przytłoczyć.
Po co się tym w ogóle przejmować?
Systemy CMS to nie edytowanie treści, raz łatwiejsze a innym razem trudniejsze, czy wstawianie obrazków i plików wideo. To serce, dusza i cały organizm z jego własną odpornością na choroby i możliwościami rozwoju.
Zdziwienie to zły znak
Na początku wszystko jest proste. Potem chcesz dostosowania. Rozwiązań, które na początku nawet nie przychodziły Ci do głowy. Najgorsze jest zdziwienie. To tego nie ma w tym CMS? To ten CMS nie trzyma artykułów bazie danych? Nie można wstawić dynamicznego modułu w środek artykułu? Nie można zrobić logowania SSL? Nie ma wersji Beta? Nie ma wsparcia dla wielojęzykowych serwisów? itd. Za każdym razem gdy zadajesz takie pytanie, jesteś coraz bardziej przywiązany do miejsca, w którym nie chcesz być.
Nie podoba mi się
Problem polega na tym, że wycofanie się i zmiana CMS, to nie jest przeinstalowanie pakietu Office. To często ogromne koszty idące w dziesiątki tysięcy dolarów rocznie, ale koszty to najmniejszy problem. Zmiana CMS to często zmiana zespołu, koszty i czas jego przekwalifikowania, zarządzanie potężną zmianą i wiele innych wyzwań, które co prawda fascynujące, ale same w sobie nie stanowią dla firmy wartości.
Jaki CMS wybrać?
Gdyby chodziło tylko o funkcjonalności to sprawa byłaby prosta. Problem polega na tym, że zazwyczaj masz już jakiś zespół developerów na pokładzie i będziesz go zdecydowanie potrzebował w przyszłości do dziesiątek jeżeli nie setek usprawnień.
Przyzwyczajenia to druga natura
Każdy developer czuje się świetnie w tym na czym się zna. Większość z nich nie lubi zmian i będą Cię zapewniać, że system CMS którego używają w zupełności wystarcza, że da się w nim wdroży wszystko czego chcesz.
Konkretne wymagania
Receptą na racjonalną rozmowę z zespołem jest rozmowa o funkcjonalnościach. Konkretne wymagania, poparte konkretnymi przykładami połączone z wyjaśnieniem “- jak to będzie działało w naszym wypadku?” – daje najlepsze rezultaty. To ludzie myślący bardzo trzeźwo i jedyne co pomoże im pokonać niechęć do zmian, jest racjonalna rozmowa.
Ograniczenia
Ograniczeń jest wiele i trzeba je brać pod uwagę. Koszty to pierwsze z nich. Niektóre systemy CMS potrafią kosztować grubo ponad 100 000$ o kosztach wdrożenia, szkoleń i usprawnień nie wspomnę. Druga to technologia Jeżeli masz na pokładzie ludzi znających się na PHP, JS to ciężko będzie ich zmusić do pracy nad systemami napisanymi C# czy Java. Ma to także wpływ na serwery, zarządzanie nimi itd. Problemy potrafią się piętrzyć wykładniczo.
Wzorcowy proces wyboru
Nie ma tutaj idealnego wzorca. Warto jednak podejść – jak zwykle – do problemu racjonalnie. Każdy przypadek będzie co prawda inny, ale są pewne zasady, które pozwolą Ci podjąć racjonalną decyzję. Zadaj sobie następujące pytania:
- Jaki mam budżet?
- Na czym zna się mój zespół?
- Czy mogę zmienić zespół?
- Ile będzie trwało wdrożenie?
- Jakie funkcjonalności są konieczne?
Szczegółowe odpowiedzi na te pytania, połączone ze szczegółową rozmową z zespołem developerów pozwoli świadomie wybrać optymalne rozwiązanie, które pogodzi umiejętności zespołu, czas wdrożenia, koszty i wymagane funkcjonalności.
Jaki CMS wybrać?
Pomimo szczerych chęci, nie będę w stanie odpowiedzieć na to pytanie – ponieważ każdy system jest inny. Na pewno jednak jestem w stanie podać funkcjonalności, które mogą Ci się przydać, a wcale nie są oczywiste we wszystkich systemach.
Funkcjonalności
Przechodzimy do klucza. Co to są w ogóle funkcjonalności systemów CMS i jakie to ma znaczenie dla zarządzania treścią strony? Na te pytania odpowiemy sobie poniżej.
Ogólnie
Wymienię tutaj funkcjonalności, które wydają mi się dosyć istotne z punktu widzenia prowadzenia serwisu B2B, szczególnie korporacyjnego.
Beta
Jeżeli dokonujesz większych zmiana na stronie www, to potrzebujesz wydzielonego obszaru przed produkcyjnego. Miejsca, które pozwoli na dokonywanie zmian, testowanie ich i zatwierdzanie bez stresu, że zobaczy to końcowy użytkownik. Zazwyczaj nazywane jest to betą – czyli miejscem, gdzie dokonuje się zmian dla wersji beta. W praktyce – najczęściej – jest tak, że alfa, zamienia się w betę, beta w RC aż końcu przechodzi RTM i dopiero wrzucany jest na produkcję. Mówiąc w skrócie: dobrze, żeby system pozwalał stworzyć szybko wersję beta, z aktualnej wersji serwisu wraz z wszystkimi danymi. Czasami trzeba postawić drugą niezależną instancję całego CMS – ale trudno to nazwać wersją beta, chociaż pełni swoją funkcję. Beta pozostaje w połączeniu z CMS i pozwala na płynną synchronizację.
Lokalizacja
Lokalizacja to nic innego jak wsparcie dla wersji językowych. Trzeba przyznać, że w przypadku serwisów B2B to jedna z ważniejszych funkcjonalności. Niestety, możesz się zdziwić ale bardzo wiele systemów CMS nie wspiera natywnie takich funkcjonalności. Trzeba je mocno modyfikować albo stawiać osobne instancje systemów CMS.
Proces publikacji
Gdy poprawiasz artykuł, zmieniasz treść, uzupełniasz grafiki i testujesz czy wszystko wygląda dokładnie tak jak powinno to powinieneś to widzieć tylko Ty, ewentualnie grupa ludzi. Na pewno nie jest to widok dla użytkownika końcowego. Jak już wstawisz wszystkie poprawki, wtedy artykuł powinien być zatwierdzony merytorycznie, językowo, wizualnie itd. Zazwyczaj dokonują tego różne osoby. Dlatego CMS powinien pozwalać na to, by opublikować można było tylko artykuł, który przeszedł mniej lub bardziej złożony proces zatwierdzania.
Geo-lokalizacja
To więcej niż tylko wsparcie dla systemu, który pozwala stwierdzić skąd przyszedł użytkownik. Chodzi o to by móc serwować różnym użytkownikom różne treści.
MOD REWRITE
Wsparcie dla dynamicznego przepisywania adresów URL to zarówno część UX jak i SEO. Zamiast adresu example.com/s=hiper&q=super&d=crazy otrzymamy example.com/hiper/super/crazy albo /h/s/crazy/ – jak wolisz. Jest to szczególnie przydatne w dynamicznych procesach jak wyszukiwanie, filtrowanie, itd.
Wersjonowanie
Copywrtier wstawił poprawki SEO i językowe, a na końcu Product Manager zmienił obrazek na inny. Dobrze trzymać całą historię zmian w systemie CMS. Powrót do wersji sprzed kilku zmian jednym kliknięciem to czasami jedna z bardziej przydatnych funkcji.
Modułowość
To już kwestia gustu czy filozofii tworzenia systemów CMS. Osobiście lubię gdy system jest modułowy. Biblioteka obrazków może być podzielona na tyle kategorii, ile stworzę w innym module. Każdy obrazek ma kilka właściwości – obowiązkowych i nieobowiązkowych. Obrazek mogę wstawić w dowolnym miejscu na stronie www i w wielu miejscach jednocześnie. Zmiana w jednym miejscu generuje zmiany w całym systemie.
Szczegółowe
Język programowania
Jeżyk programowania w którym został napisany CMS i w którym może być rozbudowywany. Ma to znacznie z co najmniej dwóch powodów: po pierwsze języki skryptowe jak PHP są wolniejsze niż np. JAVA lub C#. Po drugie wybierając CMS który został stworzony w danym języku, musisz pamiętać, żeby zespół miał umiejętności programowania w tym języku – to znacznie ułatwia pracę z CMS i jego rozbudowę.
System operacyjny
Każdy CMS będzie mógł współpracować ze określonym systemem operacyjnym. Należy o tym pamiętać, rozważając zakup CMS, który być może potrzebować nowego serwera.
Web server
System operacyjny to jedno, a Web Server to drugie. Możesz wybierać spośród takich jak na przykład Apache czy IIS.
Licencja
Sprawa z licencją jest stosunkowo prosta. Bądź jest to licencja zamknięta, w której kod nie jest ogólnie dostępny albo jest to licencja Open Source. Obywa podejścia mają swoje plusy i minusy, ich ocena należy już do Ciebie. Z pewnością Open Soruce bywa o wiele bardziej elastyczny, ma zazwyczaj dużo pluginów jednak niekoniecznie jest to rozwiązanie najlepsze.
Ograniczenie dostępu
Czy system powiada możliwość ograniczania dostępu do edycji poszczególnych podstron, sekcji i innych funkcji? Z początku może się to wydawać niezbyt istotne, ale z czasem ograniczanie dostępu do bardzo wąskiej części systemu CMS, pomoże budować bezpieczny przepływ pracy nad rozwojem treści i samej strony www.
Śledzenie autorów i zmian
Strona korporacyjna to źródło oficjalnych informacji. Zmiany wprowadzane w systemie powinny być rejestrowane. To ułatwia szybką identyfikację źródła zmian, weryfikację i ewentualne poprawki.
Sandbox
Możliwość tworzenia kontentu, testowania nowych rozwiązań bez obawy, że będzie to miało wpływ na widoczną część serwisu www.
Historia logowania
Czy system dostarcza szczegółowych danych, kto kiedy się zalogował, z jakiego IP.
Zarządzanie sesją
Czy administrator widzi, kto w danej chwili jest zalogowany i co robi?
Kompatybilność z SSL
Czy system jest kompatybilny z SSL?
Logowanie przez SSL
Czy użytkownik może się zalogować przez SSL?
Strony SSL
Czy użytkownik może oznaczyć określoną stronę jako zabezpieczoną SSL?
Load balancing
Umożliwia ładowanie serwisu z kilku serwerów jednocześnie, po to by zoptymalizować czas.
Zaawansowane cashowanie
Czy system umożliwia ustawienie określonego cashowania dla danej podstrony?
Workflow management
Czy system pozwala na to by ustawić złożony system przepływu pracy, akceptacji, edycji aż w końcu publikacji?
Sub-sites
Czy system pozwala na tworzenie niezależnych sub serwisów?
Zarądzanie reklamą
Czy system pozwala w łatwy sposób zarządzać reklamą – czyi wewnętrznymi kampaniami.
Zgodność z HTML5, WAI, DYREKTYWY EU 2009/136/EC
Czy system pozwala wykorzystać możliwości HTML5, jest zgodny z WAI oraz dostarcza rozwiązań dla dyrektywy UE dotyczącej polityki cookies?
Treść wielojęzykowa
Czy system dostarcza możliwości zarządzania serwisem wielojęzykowym?
Integracja treści wielojęzykowych
Czy system pozwala stworzyć artykuł, a potem zwielokrotniać go w kolejnych wersjach językowych bez potrzeby tworzenia osobnych podstron?
To tylko nieliczne szczegółowe funkcjonalności systemów CMS, które mogą mieć znaczący wpływ na płynność i komfort rozwoju serwisu internetowego.
Najczęstsze oczekiwania wobec CMS
Warto zwrócić uwagę, na co zwracają uwagę użytkownicy CMS w kontekście zmian technologicznych, a co za tym idzie oczekiwań.
- INTEGRACJA Z INNYMI PLATFORMAMI KLASY ENTERPRISE
- WSPARCIE DLA PERSONALIZACJI STRON
- WSPARCIE DLA TREŚCI TWORZONYCH PRZEZ UŻYTKOWNIKÓW
- UŁATWIONA INTEGRACJA Z SYSTEMAMI ANALITYKI
- UŁATWIONA INTEGRACJA Z MICROSOFT SHAREPOINT
- DOJRZAŁOŚĆ SYSTEMÓW CMS
- ROZWIĄZANIA AUTORSKIE
Odradzam stosowanie rozwiązań autorskich niewielkich agencji interaktywnych. Pomijając kwestie wsparcia technicznego, zazwyczaj systemy te co prawda mogą (teoretycznie) być skalowane dowolnie i uzupełniane o kolejne funkcje, ale mieści się to tylko w kategorii “obietnica” wsparta ewentualnie “szczerymi chęciami”.
MAGIC QUADRANT GARTNERA
Gartner dostarcza wartościowych raportów dotyczących dostawców i ich produktów, lokując ich na Magic Quadrant w następujących kategoriach: Challengers, Leaders, Niche Players, Visionaries.
CMS według GERTNERA na 3Q 2013
- Leaders: Adobe CQ, SiteCore, SDL, Oracle, HP, OpenText (dawniej RedDot).
- Challangers: Microsoft, IBM
- Niche Players: eZ Systems, Automatic, e-Sprint, Squiz
- Visionaries: Ektron, EPiServer, Acquia, GX software, CoreMedia
Podsumowanie
Zdecydowanie systemy CMS to jeden z najważniejszych elementów serwisu internetowego, nie tylko korporacyjnego. Jego wybór należy bardzo szczegółowo przeanalizować. Pomocne będą w tym wszelkiego rodzaju szczegółowe porównywarki ale także biznesowe analizy Forrestera czy Gartnera.