Moja definicja CMSa: jest to system przeznaczony do zarzadzania trescia, jej przeplywem (Worflow), obrobka i prezentacja.
Zazwyczaj posiada swoj wlasny Framework, ktory umozlliwia wlasnie to o czym wyzej wspomnialem.
Moze posiadac pluginy, ktore spelniaja role "ulatwiaczy" w zarzadzaniu trescia (np. plugin do RSSa) oraz moga byc traktowane jako zestawy bibliotek, ktore daja nowe mozliwosci w operacji na tresci - oba przypadki dzialaja na istniejacym w CMSie frameworku, ktory jest jakby API dla pluginow (bez niego musialy by same sobie radzic ze struktura dokumentow i dostepem do nich).
Co do workflow to mozna to zobrazowac jako algorytm (przy projektowaniu schematow workflow wyglada to wlasnie jak schemat blokowy), ktory ma za zadanie jakos obrobic tresc.
Dla przykladu: mamy dokument, ktory zostaje umieszczony w kolejce do wyslania. Teraz system pobiera sobie ten dokument i wzuca go do workflow (do danego schematu - schematow, moze byc wiele). Na podstawie zbudowanego schematu (naszego lub tez predefiniowanego w CMSie) do naszego dokumentu zostaje dodany np. obrazek, gdyz dalismy w schemacie warunek, ze jezeli dokument zawiera adresata o imieniu Tomek, to wlasnie dodajemy mu obrazek.
I tak przechodzimy kolejne etapy (jezeli jeszcze jakies sa) i w ktoryms tam miescu mamy infromacje, ze dokument trzeba juz wyslac. Wysylamy go, a workflow sie konczy (albo przechodzi dalej po swoim schemacie - to wszystko zalezy od tego jaki ten schemat jest).
Przyklad wygladu budowy workflow:
http://www.dstc.edu.au/Research/Projects/P...reeze/bred1.gifhttp://www.lims.nl/nederlands/workflow.gif(tego typu elementy przewaznie budowane sa w edytorach napsainych w Javie)
Czyli jednym slowem w CMSie operujemy na tresci - nie musimy tworzyc skryptow obslugi np. newsow, gdyz zapewnia nam to jako tako sam CMS: a dokladniej on ma za zadanie pobrac dane, przechowac je, a my np. przygotowac wzorce (templatey) do tego aby te dane jako spokazac (to samo tyczy sie tego aby jakos te dane pobrac od uzytkownika - czyli np. stworzyc formularz).
Jak widac mechanizm dzialania CMSa jest mocno rozbudowany i trzeba naprawde dlugo nad czyms takim posiedziec (i to nie w pojedynke) aby dojsc do sensownych rozwiazan.
Natomiast system portalowy to zlepek skryptow: newsow, sond etc., ktore co prawda dzialaja na tresci ale tak naprawde kazdy z tych elementow ma swoje wlasne mechanizmy, ktore oderwane od calego systemu portalowego i tak i tak beda dzialac po malych modyfikacjach - jednym slowem "pluginy" systemu portalowego sa to osobne skrypty, ktore zostaly tak zmodyfikowany aby np. dzielic wspolny dla danego systemu portalowego mechanizm autoryzacji.
Uff...