Anmelden

Anwendunggsfälle Adhocracy-Extension

Aktuell gibt es mit hoher Sicherheit noch keine TYPO3-Extension für Adhocracy, d.h. wer diese will muss sie programmieren.

Die gewünschte Extension hat aber vordergründig die Aufgabe einer vereinfachten Befragung. Adhocracy ist vordergründig kein Befragungswerkzeug, sondern hat auf Basis Themen, Versionen Vorschlägen, Kommentaren, Abstimmungen komplexere Anwendungsfälle (siehe oben). Anwendungsfälle, die über das bloße Lesen und Bewerten des Vorschlagtextes hinausgeht, sind für einfache Extension weniger sinnvoll. Ebenso die Kommentierung von Vorschlägen.  

Grundsätzlich kann es aber verschiedene Anwendungsfälle für eine Adhocracy-Extension im Web geben. Der folgende Block zeigt frei Extension-Anwendungsfällen. Alle gehen von vorgerfertigten Themen oder Vorschlägen aus.

  • Einfache Befragung: einfache Befragung basiert auf der Bewertung eines vorgegebenen nicht änderbaren Textes, der einen Forderung oder eine Behauptung aufstellt. In Adhocracy steht dafür das Element des Vorschlages ohne Bezug zu einem Thema.
    • Der Nutzer stimmt dafür, dagegen oder enthält sich und bekommt das Abstimmungsergebnis angezeigt. Besonderheiten:
    • Adhocracy verfolgt eine dynamische Abstimmung, d.h. der Nutzer kann seine Stimme bis zur Schließung der Abstimmung ändern
    • Es können mit dieser Art Abstimmung keine mehrwertigen, Single-Choice oder Multiple-Choice-Befragung durchgeführt werden, wie man es von Befragungssystemen kennt.
  • Bewertung von Varianten: der Nutzer bekommt zu einem Thema mehrere vorgefertigte Varianten(Versionen, Vorschläge) angeboten und kann die Versionen bewerten (Pro/Contra)
    • er muss sich nicht für eine Variante entscheiden, sondern kann alle Varianten mit dafür, dagegen, neutral bewerten. Single-Choice oder Multiple-Choice-Modus vermischen hier zu einem allgemeingültigen Konzept.
    • im Ergebnis sieht er die Gesamtbewertung der Varianten und damit die favourisierte Variante.
  • Forum mit Abstimmung: die Adhocracy-Kommentierung eines Vorschlages entspricht einem konventionellen Forum oder Blog. D.h. Adhocracy könnte die Grundlage eines Forensystems sein. Ziel des Forums ist die offene Diskussion zwischen Nutzern (Achtung: jegliche textbasierte Diskussionen unterliegt der Gefahr des Populismus, Beinflussung anderer Nutzer durch rethorische Fähigkeiten. Folgende Besonderheiten sind zu beachten:
    • Die Adhocracy-Kommentierung hat die Möglichkeit der Eigen und Fremdbearbeitung von Kommentaren sowie die Anzeige der Bearbeitungshistorie
    • Die Adhocracy-Kommentierung hat die Möglichkeit, der Bewertung von Kommentaren andere Nutzer (dafür, dagegen, neutral)
    • Die Adhocracy-Kommentierung hat nicht die Möglichkeit, Kommentare zu betiteln, was bei Blogs und Foren häufig der Fall ist.

TYPO3-Integration

Die Integration Adhocracy mit CMS könnte ein CMS um Interaktivität bereichern und könnte andererseits den Zugang zu Liquid Democracy erleichtern. Adhocracy ist in seiner jetzigen Form nicht für den spontanen Gebrauch geeignet, da es bei der Webzielgruppe noch keine breite Benutzererfahrung gibt, die über das Bloggen bzw. einfache Abstimmen hinausgeht.

Integrationstechnologien

CMS sind nicht für alle Informations- und Interaktionsaufgaben geeignet. Eine Integration von CMS und Anwendungen ist heutzutage sehr verbreitet. Ziele sind Corporate Identiy und Strukturen zu leben, die Gesamtlandschaft der Dienste nutzerfreundlicher, wartungsfreundliche zu machen, und von Synergien zu profitieren. Integration erfolgt auf verschiedenen Ebenen (Layout, Stile, Navigationsstrukturen, Nutzerverwaltung oder Anwendungsdaten).

Extensions sind eine Integrationstechnologie. Sie sind meistens wenig komplexe Anwendungsfälle fokussiert. Komplexere Anwendungsfälle (z.B. die auf mehreren Sichten basieren) sind mit Extensionen in CMS technologisch schwieriger realisierbar, weil das CMS immer die Hauptkontrolle über die Extension behält. Sie werden daher oft zu eigenständigen Anwendungen. 

Durch Extensions (Erweiterungen) wird Anwendungcode in das von CMS verwaltete Web im Inhaltsbereich einer CMS-Seite oder auf mehreren CMS-Seiten über das Randbereichs-Framework eingebettet. Extensions werden oft für den Zugriff auf bestehende externe Datenbanken verwendet, zumeist für die Anzeige (aber auch Änderung möglich) von Kontaktdaten, Termine, Aktuelles, Produktangebote. Auch Umfragen oder Foren sind Anwendungsfälle für Extensionen. 

Programmiertechnische Aspekte/ Besonderheiten

Adhocracy bietet folgende Zugangsmöglichkeiten für Fremdprodukte (wozu auch die TYPO3-Extension zählt)

 

 

SQL Datenmodell 

Man kann auf das SQL Datenmodell von Adhocracy zugreifen. Hierbei umgeht man alle Funktionsmodule oder API. Anwendungen versuchen, den direkten (SQL) Datenbankzugriff zu vermeiden, weil die Fremdanwendung die Anforderungen an Datenkonsistenz kennen und berücksichtigen muss und außerdem ist das Verharen anfällig gegenüber Softeare-Updates. Aus diesem Grund werden häufig APIs oder Applikationsserver (Webservices, XML, JSON) angeboten. Letzeres sind bzgl. Programmiersprache offener als native APIs.

Auch ist zu beachten das der Memcache von Adhocracy abgeschaltet werden muss, wenn auf das Datenmodell zurückgegriffen wird.

adhocracy.model

Ist ein Python-Modul basierend auf SQLAlchemy (ORM-Framework), welches Datenzugriffe abstrahiert und komplexe Transaktionen ausführt (DAL). Auf das Modell wird mittels Frontends oder Prozessen zugegriffen werden, die ebenfalls mit Python programmiert sind.

JSON

Ist ein HTTP basiertes API, über welches Datenstrukturen in JavaScript-ähnlichen Notationen ähnlich zum Server gesendet und vom Server empfangen werden können.

Konzeption einer TYPO3-Extension

Eine TYPO3-Extension ist immer eine Art PHP-Programm, welches vom Bearbeiter in TYPO3-Seiten eingebunden und parametrisiert werden kann. 

  • Zügänge/ Programmiersprachen zum Datenmodell
  • Einsatz clientbasierter Web 2.0 Techniken (JQuery/AJAX)
  • Cross-Domain-Extensions,
  • CMS-übergtrefende Extensions

Mittels PHP kann man nicht direkt auf Phyton Funktionsmodule (z.B. Adhocracy Datenmodell) zugreifen. Somit bleiben folgende Wege:

  • Man kann mit PHP direkt mittels auf das SQL Datenmodell von Adhocracy (PostgreSQL oder MySQL) zugreifen. Hierbei umgeht man alle Funktionsmodule oder APIs.

    In der Praxis sind aber Datenbankzugriffe immer wieder anzutreffen, da viele System keine geeigneten Schnittstellen mitbringen. Auch sind Lösungen mit Datenbankzugriff performancemäßig im Vorteil und insgesamt schneller erstellbar (codeärmer und unkomplizierter) und immer plattformunabhängig.

  • Ein zweiter meist gangbarer Weg ist die Arbeit mit Proxies. Hierbei besteht die Extension aus eine Client- und Server-Komponente, die programmteschnisch entkoppelt sind. Hier werden zumeist HTML, XML oder JSON-Schnipsel über HTTP transportiert. Dieses Vorgehen ist im Umfeld von dynamischem Laden von Extensioninhalten mittels AJAX/JQuery auch aus Performancegründen sehr verbreitet. Beim Laden einer Webseite wird zunächst ein gecachter Inhalt geladen (wenn im TYPO3-Cache verfügbar). Gleichzeitig wird ein asynchrone Aktualisierung des Inhalts über die Server-Komponente initiiert und gecacht (Cache dient hier, um das initiale laden der Seite zu beschleunigen), ebenfalls bei Nutzerinteraktion. Der ausgegebene Inhalt der Extension wird clientseitig mittels AJAX-Technologie smart (ohne Reload- oder Flackereffekte) ersetzt. Für TYPO3/PHP hat sich die JQuery-Bibliothek durchgesetzt. Auf der Serverseite (Python) könnte das JSON-API zum Einsatz kommen (bzw. müssen Python-Scripte erstellt werden).

Nutzeranmeldung

Grundsätzlich erfordert die Arbeit Adhocracy nicht zwingend eine Nutzeranmeldung. Wenn man jedoch Abstimmungen tätigen will ist eine Nutzeranmeldung bei Adhocracy erforderlich (was aus Sicherheitsgründen logisch ist). D.h. wenn man anonyme Abstimmungen machen will, müsste man dynamisch Nutzer in Adhocracy erzeugen

  • bisherige anonyme Abstimmungen gehen ähnlich vor, basieren meistens auf Cookies (IP-Adresse nicht nutzbar). Im Browser wird ein dynamischer User erzeugt, mittels dessen im Server geprüft werden kann auf welche Frage der Browser abgestimmt hat. Dieses Verfahren ist aber anfällig gegen Nutzung mehrere Browser auf gleichem oder verschiedenen Computern des Nutzers, sowie Löschung der Cookies. Ein Nutzer könnte sich somit theoretisch beliebig viele Stimmen auf eine Befragung verschaffen.
  • Ein sicherer Ansatz wäre, dass man die Nutzer des CMS mit Nutzerkonten ausstattet, wobei man für TYPO3 und Adhocracy eine gemeinsame Nutzerverwaltung realisiert. Diese Vorgehensweise ist naheliegend, da beide Systeme flexible Anmeldemechanismen (Loginanbieter genannt) unterstützen. Konkret würde man entweder durch die Loginanbieter auf eine gemeinsame Nutzerdatenbank zugreifen, oder beide Nutzerdatenbanken im Einweg synchronisieren. Ein öffentliche Debatte wird aber durch Nutzerkonten behindet, wobei man sagen muss, dass man bei kritischen Abstimmungsvorgängen nicht um Nutzerkonten herum kommt.
  • In Adhocracy ist die Möglichkeit vorgesehen, bestehende Fremdkonten des Nutzers z.B. bei Google, Yahoo, Twitter, openId zu verwenden. Vermutlich wird hier eine Authentifizierung über den Fremddienst vorgenommen und der Nutzername anschließend vertrauenswürdig in die Adhocracy-Nutzerverwaltung ohne Kennwort importiert. Genaueres muss noch recherchiert werden.
  • Für die Nutzung von Online-Anwendungen mit Nutzeranmeldung innerhalb einer Organisation muss der Nutzer zusätzlich als Organisationsmitglied verifiziert werden muss (weil meistens eine Differenzierung von Mitgliedern und Nichtmitgliedern ist für Autorisierunfsaufgaben gefragt ist). Das wird in der Regel durch eine bestehende Nutzerverwaltung realisiert, in der die Kontenerstellung mit der Mitgliederverwaltung gekoppelt ist. Dieses Verfahren sollte bei Einsatz von TYPO3 und Adhocracy in Organisationen Vorrang haben. Daneben ist die Kooexistenz mehrere Nutzerkontenarten in TYPO3 oder Adhocracy möglich. Genaueres muss noch recherchiert werden.
   
Top

Wir arbeiten mit Software von http://www.campus21.de.

Verantwortlich für angezeigte Daten ist der Webdomain-Eigentümer laut Impressum.

Suche