➖ Nächste Schritte zur Ablösung des Legacy-Servers
<2019-05-06>
Die schnelle Ablösung des veralteten Servers ist momentan das vordringliche Ziel. In diesem Artikel werden die jeweils nächsten Aktionen aufgelistet. 

Anliegende Aktionen:

Liste der derzeit wichtigsten Aufgaben: [ Hinweis: Dieser Abschnitt kann derzeit (noch) nicht im vereinfachten Modus dargestellt oder gedruckt werden ]

Weitere anliegende Aufgaben (noch nicht in obige Aufgaben-Liste übertragen):

Probleme und wichtige Schwachstellen fixen:
  • § Nach dem Starten des Editors muss er in das Blickfeld gescrollt werden
  • § Beim Aufrufen von (noch nicht vorhandenen?) Themenüberlappungen mit dem Editor crasht die App (mmm:wJjc)
  • § Die db-settings.json Datei ist manchmal verschwunden oder nicht lesbar: Nach dem Einlesen immer ein Backup schreiben. Falls das Einlesen 'mal nicht klappt, die Backup-Datei einlesen.
  • § Bei der Volltextsuche werden nach dem Start der Suche irritierende Wartemeldungen angezeigt.
  • § Beim Newsletter-Betreff werden die vom MSIE vermurksten Zeichen nicht in UTF-8 konvertiert.
  • § Im Newsletter sollte der Copyright-Hinweistext umgebrochen werden, wenn er zu breit für 128px ist.
Kleinere oder ergänzende Aktionen (für "zwischendrin" oder "bei Gelegenheit"):
  • >> Die debugger Statements reduzieren (durch obsolet machen)
  • => Beim Starten des (Referenzen-) Editors prüfen, ob zu allen Links auch korrekte Rückreferenzen eingetragen sind.
  • => Für SAY-Messages einen Type-Parameter einführen, der die Art der Meldung angibt und als Klassenname verwendet wird. Damit kann beispielsweise der Hintergrund eingestellt und der Background-Parameter teilweise abgelöst werden.
  • => Alle .dialog-Aufrufe bei wim-editors sind in ASK-Aufrufe umgewandelt. ".dialog" ist ausgemustert.
  • => Der Prototyp des Process-Objektes erhält eine Requestbearbeitung, die hilfsweise eingeschaltet wird, wenn ein Request für einen nicht (mehr) existierenden Prozess eintrifft.
  • => wim-obj-editor ist bereinigt: Alle nach wim-property-editor verschobenen Aktivitäten sind aus wim-obj-editor entfernt.
  • => Alle Links auf xxx.news-abo.eu sind auf newsletter.xxx umgeändert.
Weitere kleinere oder ergänzende Aktionen:
  • => Bereits beim Locking müssen die Schreibberechtigungen abgeprüft werden (sonst gibt es beim Locking von '*' ein Sicherheitsproblem)
  • § Bei abgewiesenen Reservierungen bleiben Service-Prozesse hängen.
  • => Sind mehrere Eigenschafts-Editoren aktiv, werden für den besseren Überblick die Editoren ohne Fokus gedimmt dargestellt.
  • => Beim Hinzufügen einer neuen Eigenschaft, wird der Editor dazu in den sichtbaren Bereich gescrollt.
  • => Für Obj mit wenig Eigenschaften (beispielsweise Blog-Einträge oder einfache Aufgaben) kommt eine alternative Editor-Ansicht ohne Gruppierung der Eigenschaften zum Einsatz. Es werden nur die (wenigen) Eigenschaften dargestellt und eine (lange) Liste der ergänzbaren Eigenschaften. Das sollte rein mittels CSS-Verfahren machbar sein.
  • => Bei strikter Lock-Verifizierung das Browserfenster in den Vordergrund holen.
  • => Geänderte Obj-Eigenschaftswerte werden per Event weitegemeldet, damit Änderungen (= Speicherungsbedarf) auch bei Projektgruppen und im Editor signalisiert werden können. Auch Abmeldungen von Änderungen werden gemeldet. Alles mit einem Entprell-Mechanismus zwecks Reduzierung des Rechenaufwands.
  • => Die Gruppenbereiche und Eigenschafts-Editor-Bereiche werden mittels
    geöffnet und geschlossen.
  • => Ein geänderter und nicht gespeicherter Wert einer Obj-Eigenschaft wird optisch gut erkennbar gekennzeichnet. (Andere Hintergrundfarbe?)
  • => Die geänderten Daten sämtlicher Eigenschaften-Editoren können per [Alles speichern] gemeinsam vom Editor-Objekt aus gespeichert werden.
  • => Die Toolbar der Werte-Editoren ist auch bei längeren Darstellungen noch gut erreichbar. (Die Höhe des Darstellungsbereichs der Eigenschafts-Editors begrenzen oder eine "fliegende" - zumindest per [...] -Knopf erreichbare - Toolbar einrichten? )
  • => Auch der Editor kann auf volle View-Breite (und wieder zurück) eingestellt werden.Oder einen Drawer einführen ?
  • => Bei den Werte-Editoren wird der Vergleich zwischen Original-Wert und editiertem Wert verzögert (entprellt) durchgeführt, um die Rechnerbelastung zu verringern.
  • => Beim HTML-Editor wird der Quelltext-Editor erst bei Bedarf eingerichtet, damit die Reaktionszeit auch bei größerer Datenmenge akzeptabel bleibt.
  • $ Funktion von mmm:Kontakt und edificia:contact testen (sendMail ohne Worker)
  • ?? Sollte per Strg-Alt-Klick direkt ein Property Editor von/in gestartet werden ??
  • => Für die Projekte sind die möglichen Zielgruppen definiert und (nur die) werden im Zielgruppen-Editor angeboten.
Die Erstellung und Bearbeitung von Objekt-Eigenschaften ist ausreichend nutzbar:
  1. => Die Aufgaben-Verknüpfungen (und -Eigenschaften) werden bei der Dokument-Darstellung ordentlich angezeigt.
  2. => (Nicht nur) Editor-Test:
    1. => Der Themenbaum für openWIM ist aufgeräumter, die Themenzuordnungen für die aktuell (noch) relevanten Dokumente sind (daran) angepasst.
    2. => Die Ziele + Aufgaben im openWIM -Bereich sind mittels Dokumenten mit task-Verknüpfungen geordnet dokumentiert. Dabei werden neue Task-Dokumente nur dann angelegt, wenn mehrere abhängige Tasks dazu vorhanden sind. Die Tasks sind in die verschiedenen "zuständigen" Projekte einsortiert - dabei kann es Querverbindungen geben.
    3. => Die Namen der Projektgruppen in GROSSBUCHSTABEN darstellen ?
    1. => Für die Übergangszeit Konversionsroutinen einsetzen
  3. => Die wim-Komponenten, die für die Einbettung in Dokument-Texte vorgesehen sind, in einer separate Datei zusammenfassen und für die Nutzer ordentlich dokumentieren.
  4. => Alle Obj-Arten können bearbeitet werden:
    1. => Projekt-Obj können bearbeitet werden:
      1. => Die wichtigsten Projekt-Settings können ausreichend komfortabel eingestellt werden.
      2. => Neue Projektgruppen und Projekte können erstellt werden. Beispielsweise P, P|v und P|c .
    2. => Klassifizierungs-Obj können bearbeitet werden
  5. => Bei Unlock die obsolet gewordenen (Server-)Prozesse abbauen.
  6. => wim-admin-v33.json als versionsbezogene Steuerungsdatei einführen. Fallback-Zugriff auf wim-admin.json)
  7. => Zum Login eine wim-app-Methode bereitstellen, die auch mit await aufgerufen werden kann.
  8. => Vom "test."-Server wird automatisch regelmäßig die Funktionsfähigkeit der verschiedenen Produktions-Domains (Zertifikate, ...) getestet und bei Bedarf Alarm geschlagen.
  9. => Die Connections zu den jeweiligen Master-Servern werden bei den Servern bereits beim Hochfahren eingerichtet. Die Steuerwerte dafür werden aus den Settings genommen und auf Änderungen der Settings für Aktualisierungen geachtet.
  10. => Beim Client wird die ASK-Mimik durchgehend eingesetzt. Die Eingabe(n) werden an den Aufrufer über die Promise-Mimik übergeben.
    • => Beim wim-Developer-Projekt ist (versuchsweise ?) eine Anmeldeschranke beim (Erst-)Aufruf eingebaut.
    • => Optional kann im Browser (localStorage) ein Auto-Login (oder ein Start-/Setup-Script ?) gespeichert werden.
Weitere Aktionen zur Erstellung und Bearbeitung von Objekt-Eigenschaften:
  • => "Optionale" Obj-Eigenschaften in möglichst nur 1 "Haupteigenschaft" mit Untereigenschaften zusammenführen. Beispielsweise (stets mitgeladener) "tasks"-Parameter für die Verknüpfungen plus "task" mit allen (nachladbaren)  Eigenschaftswerten (Unterparametern) für die Aufgabe?
  • ? Den lockingRecord in einen clientLockHandler-Objekt mit EventHandler-Methoden umwandeln ?
  • => "blog"(?)- und "blogItems"(?)-Eigenschaften sind eingeführt
  • => Beim Entfernen von Themen- und Dokument-Verknüpfungen werden die Rückverknüpfungen automatisch mit entfernt.
  • => Blog-Einträge werden analog zu zugeordneten Dokumenten verknüpft und rückverknüpft.
  • => Der Zustand des Editors wird unabhängig von den Messages immer erkennbar signalisiert.
    • Beispielsweise Editierfenster grau unterlegen, falls aktuell keine Speichermöglichkeit (= kein Login oder kein WriteLock) vorhanden ist; pulsierend rötlich unterlegen, wenn ein Countdown läuft oder durchgelaufen ist; ...
    • (I) Sollte das Klicken eines [?]-Knopfes den aktuellen Zustand erläutern lassen ?
  • => Die Locking Funktionalitäten des Clients wurden überprüft.
    • Liegt die Ursache des Problems bei der Übertragung der Messages zwischen Client(-Funktionen) und Services?
  • => Alle wesentlichen Datentypen der Obj-Eigenschaften können zumindest halbwegs komfortabel bearbeitet werden.
  • Die ASK-Mimik sollte auch vom Server-Admin (oder einem "Admin-Autopiloten") nutzbar sein. Beispielsweise für "spontane" Nachfragen an aktive Nutzer, wann ein Restart gemacht werden kann.
    • Auch die SAY-Mimik sollte via Server nutzbar sein. Generelle Mitteilungen, Hinweise (incl. "Werbung" ?) könnten "versandt" werden.
  • Systematische Abfrage von "internen" technischen Informationen des Servers (ggf. auch Android Clients) für Developer und ggf. Systemmanagement zur Analyse des Systemzustands. KEINE  Nutzung durch Admins! Beispielsweise Services, Prozesse, Warteschlangen, ... 
  • => Auch im Server und Worker steht wie beim Client bei den Prozess-Objekten eine getObjData-Methode für die einmalige Beschaffung von Obj-Daten zur Verfügung. Bei Bedarf wird dort intern die subscribeObjData genutzt. 
  • => <wim-details> wird im Simple-Modus ordentlich verarbeitet.
  • => Zum Hinzufügen eines <details> (oder <wim-details> ?) Elements in den HTML-Text einen Knopf bereitstellen.
  • => Der Aufwand für die Umstellung auf Polymer 3 ist abgeschätzt. Ggf. wird die Umstellung (bei CS07 ?) vollzogen. 
  • => Der Editor kann geschlossen und beendet werden.
    • => Obj-Darstellungen in der View können geschlossen werden
    • => Die Obj-Eigenschafts-Editoren können beendet werden.
  • => Tasks können rudimentär genutzt werden."taskDependencies"-Parameter?
  • => Bei den Client- "subscribeObjData" -Funktionalitäten die Fähigkeit einbauen, nach Neuaufbau einer zusammengebrochenen Verbindung mit dem Service alle Abos neu aufzusetzen. Das dürfte einfacher sein, wie der Neuaufbau bei den subscribeObjData-Auftraggebern
  • => Die Eigenschafts-Editoren verwalten und bearbeiten die über die Settings gesteuerte per JSON-Datenstrukturen implementierte Bearbeitung der Eigenschafts-Werte. Die ggf. alternativen Werte werden von "Werte-Editoren" (für HTML, Zeitpunkte, Klassifizierungen etc.) bearbeitet. Dieses erlaubt unter anderem sprach- oder versionsabhängige Werte der Obj-Eigenschaften.
  • => wimDetails kann vom Simple-Mode verarbeitet werden. (->
    , auch wenn Edge und MSIE zu dumm dafür sind?)
  • => Editier-Konflikte werden sauber behandelt:
    • => Das Locking funktioniert (beim Editor, ...) verlässlich und für die betroffenen Nutzer möglichst komfortabel auf der Ebene einzelner Obj-Eigenschaften. Dazu ist ein Statusdiagramm dokumentiert.
    • => Bei Editier-Reservierungs-Konflikten mit NICHT nutzer-initiierter Schließung des Editors werden die noch nicht gespeicherten Daten in objRecord.conflicts[pyName][n] gespeichert.
    • => Beim Editieren-Aufruf aller Eigenschaften wird auf vorhandene Konflikt-Daten hingewiesen, damit die Konflikte manuell gefixt werden können.
    • => Konfliktdaten können nach Abarbeitung gelöscht werden.
  • => Alle Editor-Knöpfe sind prinzipiell nutzbar.
  • => Der (alte) Web Worker ist ausgemustert und ansatzweise(!) durch einen Service-Worker abgelöst.
    1. => Restliche demandObjData sind umgemodelt oder entfernt
    2. => Es kann - im Prinzip - zwischen den online-, local- und offline-mode umgeschaltet werden, damit die Service-Worker Mimik ausprobiert werden kann.
    3. => Der Service Worker wird erst beim Umschalten in den local- oder offline-Modus nachgeladen und aktiviert.
  • => collectObjData und collectGroupObjData wurden abgelöst (von getObjData etc.)
  • => Nach dem (Neu-)Start eines Client treffen keine Messages aus der vorigen Sitzung mehr ein.
    • Ein Restart des Client bewirkt immer eine neue Sitzung.
    • Nach einem Server-Restart kann der Client ein "internes Reset" veranlassen und ohne Neustart /Neuladen mit dem neu gestarteten Server weitermachen.
  • => Während eines aktivierten Debug-Modus werden zu verschiedenen Vorgängen Protokolle gespeichert, die nicht automatisch dargestellt, sondern nur in begrenzter Menge im Hauptspeicher gesammelt werden.
    • Diese Protokolle können unter Angabe der jeweiligen Kennung (im Nachhinein) beim Server abgerufen werden.
    • Mit dem WHAT-Parameter können die Vorgänge bestimmt werden zu denen ein DEBUG-Eintrag abgerufen werden kann.
    • Ohne WHAT-Angabe wird ein DEBUG-Eintrag zu allen Vorgängen gelistet.
    • Die mit WHAT gekennzeichneten Einträge werden der Menge wegen normalerweise nicht im Logfile gespeichert.
  • § Beim Speichern geänderter Verknüpfungen geht beim anschließenden Update der Editor verloren.
  • => Im Client wird der gesetzte Terminating-Parameter der Messages ordentlich bearbeitet.
  • => Auch die subscription-ServiceProcess können (analog zu den lockObjData -ServiceProcss) beendet (= entfernt) werden.
  • => Auch für den Listener im Server wird ein Entprell-Mechanismus eingerichtet.
  • => showMessageToUser wurde von dialog oder Nutzumg eines Status-Messages-Bereichs abgelöst
  • => subscribeSettings( Paramlist, .... ) analog zu subscribeObjData anbieten.
    • => Die Settings werden in [ wimDataMixin | wim.process | Process | Service ].clientSettings zusammengefasst bereitgestellt ?
    • => Vom Server werden abonnierbare ServiceSettings bereitgestellt. Beispielsweise für für Admin-Messages oder aktuelle Favoriten usw. .
    • Bei Requests an den Service bei Bedarf einen relevanten Subset der Client Settings mitliefern.
    • Einige Settings generell auf Connection-/Service-Ebene automatisch aktualisieren.
  • ..
  • => Verlinkungen mit Themen oder Dokumenten können entfernt werden.
  • => Die Rückverlinkungen werden im Editor sauberer behandelt.
  • => Verknüpfungen zwischen Themen und Unterthemen sowie Dokumenten können entfernt werden.
  • => Unter- und Oberthemen können hinzugefügt werden.
  • => Task-Verknüpfungen können erstellt, bearbeitet und entfernt werden.
    1. Provisorisch zum Test zunächst mittels normaler Links realisieren.
  • #=> Sämtliche Arten von Objekten sind zumindest im Quelldaten-Format bearbeitbar
  • ..
  • => Zum Testen sind jeweils eigenständig laufende Server (test /preview /www) notwendig.
    • V32 könnte unter retired laufen
    • Für V33 sollten alle node.js -Module unter /[retired|www|preview|test]/common/ gespeichert /gepflegt werden. Data- und Users-Server sollten die von ihnen benötigten Module vom /common/ -Bereich holen
    • www-Version separat und preview plus test zusammen?
    • Testweise sollte CS07 als Vertreter des Cloud-Servers eingesetzt werden.
  • => Beim Hochfahren eines Services oder der Kontaktaufnahme nach Unterbrechungen wird von jedem Service an seine Master-Services eine Abfrage nach Objektversionen zu allen Objekten ab einem bestimmten Zeitpunkt gefragt. 
    • Obj-Aktualisierungen erfolgen auch zwischen den Servern.
    • Bei Bedarf werden die zwischenzeitlich geänderten Objektdaten vom Service bei seinem Master-Service abgerufen.
    • Ebenfalls wird dem Master-Service damit ein Abonnement auf alle weiteren Aktualisierungen von Obj-Daten mitgeteilt.
    • Sollte noch ein altes Abo beim Master-Server herumschwirren, wird dieses recycled anstatt ein neues aufzumachen.
    ..
  • => Die Obj-Daten werden (online am Worker vorbei) über die neue Message-Mimik beschafft.
    1. => Im Client wurden sämtliche demandObjData durch subcribeObjData oder getObjData abgelöst.
  • ..
  • => getWeekNumber und getWeekYear sollten auf Weltzeit und nicht Lokalzeit basieren.
    • => Das wöchentliche Backup wird auch ohne Server-Restart automatisch veranlasst.
    • => Backup-Dateien der Vorwoche mit gleichem Inhalt werden automatisch gelöscht.
  • => Die try - catch -Kombination wird nur noch dort verwendet, wo eine "konstruktive Aktion" daraus gemacht werden kann. Also beispielsweise ein ResponseHandler-Aufruf. Ansonsten ist das Abfangen eine Sache des Aufrufenden - außer im Fall, dass der Aufruf vom Browser- oder Node-Laufzeitsystem kommt, was dann darauf unschön reagiert.
  • => Bessere Doku:
    • => Bei Funktionen auch auflisten, welche verschiedenen Arten von Meldungen generiert werden. Zumindest die RESPONSEs.
  • => Sauber behandeln, wenn ein (lokaler?) Server (oder Worker) momentan keine Verbindung zu seinem Master-Service hat, also "offline" ist.
    • => Der Online-Status wird in den Client- (Projekt-)Settings nachgeführt. Alle Elemente, die von diesem Status abhängig sind (Editor etc.) sollten ein addSettingsListener verwenden. Wenn der Server nicht zugreifbar ist, wird dieses angezeigt.
    • => Im offline gegangenen Modus werden Aktionen dann möglichst alle lokal, anstatt "online" durchgeführt und Nutzer darüber informiert, dass der zentrale Cloud-Server derzeit nicht erreichbar ist.
    • => Sobald der Master-Service wieder online ist, wird versucht, die Daten vollautomatisch abzugleichen. Bei nicht automatisch lösbaren Konflikten könnte beispielsweise eine Kopie der geänderten Daten erstellt und bei nächster Gelegenheit eine Aufforderung zur manuellen Nacharbeit an den Nutzer geschickt werden.
  • => Nutzermeldungen werden ordentlich (nicht mehr per alert) angezeigt und können per OK-Knopf ausgeblendet werden. Teilweise blenden sich die Meldungen auch nach einer Wartezeit automatisch aus.
    • Für nur kurzzeitig sichtbare (Status-)Meldungen aus kurzen Texten einen einzeiligen Darstellungsbereich vorsehen.
    • Meldungen analog zum Handy von oben wie ein Rollo runter ziehen. Neueste oben anfügen. Ein- und ausklappbar mit immer sichtbarer komprimierter einzeiliger Titelliste. Bei selbstausblendenden Meldungen einen (ab)laufenden Balken einblenden.
  • => Die Login-Verifikation wird mit Hilfe des Users-Server durchgeführt.
  • ..
  • => Während des :hover über einer Mini-Themendarstellung werden verkleinerte Thema-Darstellungen auf Normalgröße vergrößert dargestellt
  • ..
  • => Die Blogs dürfen nur noch eine akzeptable Länge haben, damit sie mit dem neuen Editor editierbar werden und bleiben.
    • Ggf. müssen auch noch ältere Blogs aufgeteilt werden.
    • Ggf. Im HTML-Editor eine Bremse für den Update des Quelltext-Editors (oder umgekehrt) einbauen
    • Bei der Einzeldarstellung eines Blog-Beitrags deutliche Hinweiszeilen auf die Blogs, denen der Beitrag zugeordnet ist (vergleiche Youtube Playlists). Beispielsweise: "Mehr zu Protesten finden Sie in unserem Blog >PROTESTE< . Die kurzen Blog-Beiträge bekommen dadurch auch eine gewisse Länge.
  • Nach dem erfolgreichen Speichern und ohne zwischenzeitliche Änderungen die geänderten Daten aus dem Änderungsrecord löschen.
  • ...
Die mindestens notwendigen Tools und Techniken für Developer, Admin und Sysmgr sind nutzbar:
  1. => Alle Objektarten können geklont werden, falls die Berechtigung dazu vorhanden ist. Dabei kann auch eine spezielle Objektkennung angefordert werden. Die Klone bekommen dabei die Vorbereitungs-Rubrik zugeordnet (bzw. zukünftig die "In Vorbereitung" Kennzeichnung), damit sie nicht sofort öffentlich sichtbar sind oder über den Newsletter gemeldet werden.
  2. => Die wichtigsten Server-Einstellungen können ausreichend komfortabel durchgeführt werden.
  3. => Zum Monatswechsel wird automatisch per Timer gesteuert eine Datensicherung zu allen Projekten vorgenommen. Beim Starten der Server wird geprüft, ob die letzte fällige Datensicherung vorgenommen wurde und bei Bedarf nachgeholt.
  4. => Die Funktionalitäten sind sauber in verschiedene "Bibliotheken" aufgeteilt:
    1. wim-common für Client, Worker, Data- und User-Server
    2. wim-core-services für Worker sowie Data- und User-Server
    3. wim-data-services für Worker und Data-Server
    4. wim-core-server für Data- und User-Server
    5. Die Dateien wim-worker, wim-cloud-server und wim-user-server sowie wim-kernel mit diversen eingebundenen Client-Dateien bilden jeweils die Basis für die vier "Systeme".
Weitere Aktionen für nutzbare Tools und Techniken:
  1. => Alle Service-Requests im Worker usw. sauber mit Response- und Exceptionhandlern bearbeiten. Wenn das funktioniert, auch alle anderen Request-Arten umstellen.
  2. Die Cloud- und User-Server laufen unter preview. und machen den Weg für eine test.-Version frei
  3. => Der Internet-Server hat die Aufgabe des Primär-Servers übernommen, der Test-Server reicht die Änderungen an Objektdaten dorthin weiter.
  4. => Sowohl Client als auch Worker und die beiden Serverarten arbeiten durchgehend mit Response- und Exceptionhandlern (oder Promises .then /.catch). Die Kommunikation untereinander wird mit stark standardisierten Messages im neuen, durchgehend einheitlichen Format durchgeführt. Exception-Parameter haben ebenfalls durchgehend ein Message-Format - nur ohne den CLASS Parameter.
  5. => Datensicherheit: Bei jedem Speichern von Objektdaten danach einen Export mit Tagesdatum vom Objekt machen. Später möglichst jeden Export für n (50?) Stunden aufbewahren und den letzten Tages-Export mindestens x (64?) Tage (wenn  verlässlich ein monatiches volles Backup für alle Projekte gemacht wird)
  6. => In gesendeten und zurückerhaltenen Packages ist stets die Systemversion des Package-Erstellers notiert. Der jeweilige Package-Empfänger entscheidet ggf. anhand der Version über beispielsweise Reload oder Reject ("systemVersionMismatch")
  7. => Den Service-Requests kann eine Service-Adresse (beispielsweise Domainname) mitgegeben werden ( targetService:'test.openwim.org' ). Bei dem so adressierten Service angekommen wird der Service-Request nicht mehr weitergeleitet, sondern bearbeitet. Nützlich nicht nur für Statusabfragen einzelner Nicht-Primärserver. Falls keine Service-Adresse angegeben ist, wird der Request bis zum Primärserver weitergereicht.
  8. #=> Der Online-Modus funktioniert ausreichend:
    • Initial wird der Online-Modus gestartet
    • Der Worker wird im online-Modus nicht geladen. Erst beim Umschalten in den Offline- oder Local-Modus wird er nachgeladen
  9. => Admin-Tools:
    1. => Die gesamte Datenbasis kann mittels eines RegExp durchsucht werden.
      • Auch ein Exclude-RegExp kann dazu mitgegeben werden
    2. Eine vollständige Übertragung mit Konvertierung aller Objekte per "... tbd ..." veranlassen
      1. Falls bereits Objekte nur im neuen System geändert wurden, von ihnen ein Backup per Objekt-Export machen und nach Abschluss der Übertragung aller Objekte das Backup wieder importieren.
      2. Auch die Projekt- und Rubriken-Objekte müssen übertragen werden
      3. Sofern bei der Konvertierung oder an anderen Stellen ein Problem auftritt, dieses beseitigen (falls es relevant ist)
  10. ..
  11. #=> Alle Betriebsmodi (online, lokal, offline) sind durchgehend sauber implementiert. Zumindest der online Modus ist voll nutzbar.
    • => Der Worker wird nur noch im Local- und Offline-Modus benötigt und nur dann dafür nachgeladen.
    •  
  12. ...
Weitere notwendige Voraussetzungen für die Stilllegung des Servers:
  1. => Beim Produktionssystem wird (testweise) anstelle der staging-Zertifizierung die offizielle Zertifizierung verwendet.
      
  2. => Bei als "private" aufgesetzten Projekten wird beim Aufruf IMMER die Startseite mit einer Login-Möglichkeit dargestellt. Mit Ausnahme der für die Darstellung der Startseite benötigten Projektdaten werden im ausgeloggten Zustand keinerlei weitere Obj-Daten vom Server herausgerückt. Dadurch können Objekte des "private" gesetzten Projektes ausschließlich im eingeloggten und mit entsprechender Berechtigung ausgestatteten Zustand dargestellt werden. Auch die Startseite wird ggf. bis zum erfolgreichen Login mit ausreichender Berechtigung nur teilweise dargestellt.
     
  3. => Auf CS08 laufen neben der "test"-Version separate Server für www.* und preview.* als unabhängige Node.js-Instanzen.
    • Die Geany-Orga-Dateien im Versions-Verzeichnis speichern, damit sie mit der Version mitwandern und nicht bzw. einfach umeditiert werden müssen
  4. Projektgruppen ('p') und Projekte ('p|v', 'p|c') sowie Objekte aller anderen Typen können ohne Zugriffe auf das Legacy-System angelegt und genutzt werden.
     
  5. => Der Users-Server läuft mit Version 33 auf CS08
    1. => Die Login-Bearbeitung für Server ist nutzbar 
  6. => CS07 läuft als Master-Service /+ Vorbereitung für www-Server Betrieb +/
  7. => Version 33 läuft auf dem Cloud-Server:
    1. => Ein zweiter Cloud-Server läuft testweise auf einem neu eingerichteten System, von dem auch ein Image gespeichert wird.
    2. => Version 33 läuft auf dem temporären Cloud-Server. Schrittweise werden die Produktionsseiten dorthin rübergeholt und getestet.
    3. => Version 33 hat Version 32 als www-Server abgelöst.
    4. => Der "alte" Cloud-Server läuft mit dem neuen Image auf Version 33. Alle Internetpräsenzen werden schrittweise wieder zurückgeholt.
    5. => Der temporär beschaffte zweite Cloud-Server wird wieder abgeschafft.
  8. Einen Blog "wer, wie(?), was, wann, wo" mit Auswahlmöglichkeit für beispielsweise ZRM-Protest, ZRM~Politik, usw. und Zeitraum und Ort und Beteiligte, ... anbieten? Mit Direktauswahl-Aufruf in ähnlicher Form wie bisher.
Noch mehr notwendige Voraussetzungen für die Stilllegung des Servers:
  • ..
  • In einstellbaren Abständen automatisch ein Backup der Datenbank erstellen, falls Änderungen gemacht wurden (ohne das vorangegangene Backup zu überschreiben und zu viel Plattenplatz zu blockieren).
    • => Der Backup-Eintrag beim Objekt kann genutzt werden.
  • ..
  • Sobald sich die vielen Rubriken bei den Projektgruppen csit, pug und wim bewährt haben:
    • Auch zu den restlichen Projektgruppen (mmmm, news, verkehr) sind die zugeordneten Klassifizierungen vollständig eingetragen, damit alle relevanten Objekte in die neue DB übertragen wurden, bevor die Projektgruppen abgenabelt werden.
  • => SysMgr: Zu einer Projektgruppe kann ein neues Projekt hinzugefügt werden.
  • => SysMgr: Ein bis mehrere Projekte einer Projektgruppe können in eine neue Projektgruppe übertragen werden.
  • ..
  • subscribeObjData( ObjSpecs:[ .. ], Exclude:[..], FindStrings:[ .. ], Classifications:[ .. ], Activations:[ .. ], ... )  einsetzen ? Die Ergebnisdaten müssen zu allen angegebenen Filterangaben passen. Meist dürfte aber nur eine einzige Filterangabe verwendet werden. Beim Speichern eines Objektes müssen immer alle Abonnements überprüft werden. Problem: Es müssten dazu alle Abos zum Server übermittelt werden!
  • ...
Das Editieren ist sicherer und komfortabler:
  1. Die Editier-Funktionsknöpfe besser erreichbar machen (nicht scrollen und über einen [...]-Knopf aufblendbar? Begrenzte Höhe der Editierbox? Auf Doppelklick in den sichtbaren Bereich verschieben?)
  2. => Die Obj-Verknüpfungen können auch mit "agedWeight" (oder "timedweight") und reverse angezeigt und geändert werden
  3. Ein dateTime-Editor überprüft die korrekte Syntax der Eingabe. Es werden sowohl der "_" als auch das offizielle "T" akzeptiert. 
  4. > Einen bzw. "den" Plaintext-Editor mit Testpattern für verschiedene Zwecke erstellen ? Unterstützung durch paper-textarea möglich und nutzbar ? 
Weiteres zum sicheren und komfortablen Editieren:
  • => Die Topics- und Docs-Editoren sind (immer noch gut) nutzbar
    1. Hinzufügen neuer Themen zu Dokumenten,
    2. Hinzufügen von Dokumenten zu Themen,
    3. Hinzufügen neuer Themenverknüpfungen zu Themen
    4. Entfernen von verknüpften Themen,
    5. Entfernen von verknüpften Dokumenten
  • ..
  • => Beim Editieren kann ein zeitlich begrenztes exklusives Änderungsrecht für Objekte angefordert werden, damit beim parallelen Editieren eines Objektes keine Probleme entstehen. Dazu muss jedoch zunächst konzeptuelle Klarheit geschaffen werden.
    1. Eine erteilte exklusive Änderungsberechtigung in den Objektdaten (ohne Änderungsmeldung?) oder (im Hauptspeicher) beim Projekt notieren?
    2. Das exklusive Änderungsrecht jeweils nur zur gerade editierten Eigenschaft anstelle des gesamten Objektes anfordern, sobald die Eigenschaft zum Editieren aufgerufen wird?
  • => Sicherstellen, dass alle Objekte aller eingetragenen Rubriken aus der alten DB auch in der neuen DB angekommen sind und keine problematischen (Konvertierungs-)Fehler mehr enthalten.
    > Dazu die STATUS-Parameter aller Objekte (in der Esport-Datei?) überprüfen (und nach "PROBLEMS", "PROBLEM",  "objReconditionProblem", ... suchen).
  • => Die News-Liste wird schneller (unverzögert) aktualisiert. (Wichtig bei der Bearbeitung recht alter oder ganz neuer Objekte)
  • => Beim Speichern von Objekten prüfen, ob Eigenschaften enthalten sind, de nicht zum Typ des Objektes passen und diese anmeckern - später 'mal entfernen
    > Die Parameter legacyXxxx beachten!
  • ..
  • Editierfelder optisch (besser) abheben
  • Im Editor kennzeichnen, wenn ungespeicherte Änderungen vorhanden sind. Den Speichern-Knopf nur bei geänderten Inhalten aktiv setzen?
  • Knopf und Funktion zum ordentlichen Formatieren des Editor-Quelltextes
  • Weitere Editier-Funktionsknöpfe bereistellen.
  • ..
  • => In einem Sofort-Editier-Modus werden alle (scheinbar) "normal" dargestellten HTML-Texte (und ein paar andere Eigenschaften) mit contenteditable dargestellt, sodass eine Bearbeitung ohne besonderen Knopfdruck möglich ist (vergl. Google Notes etc.). Die Änderungen werden nach kurzer Wartezeit automatisch gespeichert.
  • ..
  • Knopf zum Exportieren eines Objektes (nur nach Login sichtbar), damit eingegebene Daten nicht so leicht verloren gehen.
    • Beim Exportieren vor dem Schreiben einer Datei die ggf. vorhandene Datei gleichen Namens renamen und dabei das Rename-Datum in den Namen einfügen.
    • Bald implementieren, um Sicherheit zu erhöhen !
    • Übergangsweise kann projekt.url/?export=objId verwendet werden (ohne objId -Angabe werden alle Objekte zum Projekt exportiert).
  • § Der Hamburger-Menüknopf der Obj-Darstellung wird nicht mit gescrollt. Macht sich beim Editor nicht gut.
  • =>  Verlinkungen können halbwegs komfortabel editiert werden.
    1. Hinzufügen von Themen
      1. Auch per Auswahl aus Subthemen und Oberthemen
      2. Auch per Auswahl aus verwandten Themen (mit Durchklicken durch das Themennetz)
    2. Neu sortieren der Referenzen-Listen
    3. komfortablere Bearbeitung von Rückverknüpfungen ...
  • => Der JSON-Editor ist komfortabler verwendbar
    > Bei JSON-Syntaxfehlern wird (auf Anforderung?) an der entsprechenden Position ein Marker (Symbolbild-Zeichen) eingefügt.
    > Analog zur JSON-Darstellung des FF gestalten?
  • => Sämtliche (prinzipiell editierbaren) Eigenschaften aller Objekttypen können komfortabler editiert werden.
  • Im Prinzip jeden Eigenschaftswert als JSON-Datentyp ansehen, der nach Evaluierung (beispielsweise Sprachauswahl) einen dieser Eigenschaft zugewiesenen Datentyp ergibt.
    > Aus dem JSON-Grundgerüst heraus kann für die eigentlichen "Datenbereiche" der zuständige Editor aufgerufen werden.
    > Der JSON-Editor ist quasi der "Super-Editor", der die eigentlichen Editoren aufruft und deren geänderte Datenwerte wieder in die JSON-Struktur einfügt
  • => Nur die wichtigsten Editor-"Knöpfe" werden dargestellt. Die restlichen Aktionen sind per Menü aufrufbar.
  • Bei der Konversion der WYSIWYG -Darstellung in den (HTML-) Quelltext eine prettyfy -Mimik einsetzen, damit der Quellcode übersichtlicher wird.
  • Automatische Speicherung des geänderten Inhalts aktivierbar machen (in Settings merken)
  • ..
  • Bei geänderten Objekten bei Bedarf die News-Listen der betroffenen Projekte schneller(!) aktualisieren
  • ...
Alle Daten, Domains und E-Mails sind auf den Cloud-Server transferiert oder gesichert:
  1. Die csit Projektgruppe möglichst bald umstellen, damit dort (auch per Handy) die Aktionslisten bearbeitet werden können. Ggf. zusätzliche Datenschutzmaßnahmen vornehmen. 
  2. "informationsdrehscheibe.de" rechtzeitig nach do.de transferieren
  3. Domains ohne Subdomains und E-Mails als erstes rüberschieben.
  4. ...
Arbeitsschritte zum "Abnabeln" einer Projektgruppe vom Legacy-Server:
  1. Die Domain mitsamt E-Mail-Accounts kann bereits vorab übertragen worden sein.
Weitere Arbeitsschritte zum "Abnabeln" einer Projektgruppe vom Legacy-Server:
  • Sicherstellen, dass sämtliche Rubriken mit noch benötigten Inhalten auch im neuen System eingetragen sind.
  • => Die exportierte Version eines gesamten Projektes kann wieder geladen werden (nicht nur die Daten eines einzelnen Objektes)
  • Obsolete Dateien vom alten Server putzen
  • Mit einer RegExp-basierten Suche können sämtliche Obj einer DB herausgesucht werden (analog zur entsprechenden Funktion im alten System)
  • Nach dem Entfernen obsoleter Dateien ein volles Backup aller Daten vom Server machen (soweit es der Plattenplatz hergibt)
  • ...
Weitere Aktionen:
  1. => Der Worker sollte nur/erst dann den Scriptcode für "Service"-Funktionen (nach)laden, wenn er auch tatsächlich einen nennenswerten eigenen Service anbieten kann oder muss.
  2. => Ein Worker sollte auch als "Server" für andere ("externe") Clients agieren können. Dazu meldet er seine aktuelle IP-Adresse bei einen Vermittlungsserver an. Möglichst sollte er im "aktiven" Modus direkte Aufrufe zulassen, falls denn Firewalls das nicht verhindern. Alternativ muss im "passiven" Modus der Vermittlungsserver die Pakete kreuzweise weiterleiten.
  3. => Alle Aufrufe der ExceptionHandler-Callbacks systematisch gleich behanden und von den Exception-Funktionen gleichartig bearbeiten lassen. Sicherstellen, dss das mit der Promisses- .catch-Mimik kompatibel ist.
  4. => Statische Verzeichnisse werden mit Hilfe der staticRedir-Einträge aus dem wim-admin.json auf den dort definierten Pfad umgeleitet (Laermrechner, young, /docs/Schadstoffe/*/*, /docs/till-behrens-88/* ...)
  5. => Leicht nutzbare übersichtliche Nutzungsauswertung für die Optimierung der (wichtigsten) Themen und Artikel
  6. => Der Datenaustausch zwischen Client und Worker sowie Server(n) ist mit "Streams" realisiert: Beispielsweise "streamObjData" statt "demandObjData".
  7. => Es werden Daten zur Beschleunigung und Ergebnisverbesserung der Volltext-Suche in eine textsDB eingetragen
  8. ...
Erledigt:
  • => Bearbeitete Verknüpfungen können gespeichert werden.
  • => Themenüberlappungen (und Task-Verknüpfungen?) können einschließlich Rückverknüpfungen bearbeitet werden.
  • => Die Themen- und Dokumente-Verknüpfungen werden in den Editoren inklusive ihrer Rückverknüpfungen bearbeitet.
  • => WriteLocks werden erst dann angefordert, wenn die erste Änderung am Eigenschaftswert vorgenommen wurde ("lazyLocking") und gleich wieder freigeben, sobald die geänderten Daten erfolgreich gespeichert wurden.
  • => CLEAR( MessageNames ) und clearMessages sind nutzbar.
  • => Bei Nutzermeldungen anstelle von "OK", "PROBLEM", etc. Emojis ( ✔️, ⚠️ usw. ) verwenden ( [ Hinweis: Dieser Abschnitt kann derzeit (noch) nicht im vereinfachten Modus dargestellt oder gedruckt werden ])
  • => Vom wimEditorMixin werden reload- und store- Methoden bereitgestellt und von solchen abgeleiteten Werte-Editoren genutzt, die eigenständig Obj-Daten verwalten (beispielsweise Rückverlinkungen)
  • => Die Editoren werden über Parent-Children Verknüpfungen (editorControler, _valueEditors) miteinander verbunden. Werteänderungen (Value, ...) und Aktionswünsche (valueModified, reload, store, ...) werden über Methoden-Aufrufe übermittelt.
    • Bei der Übergabe von Objekten werden stets Kopien der eigenen Objekte weitergereicht.
  • => Für das einfachere Handling von Write-Locks steht über das wimEditorMixin eine eigenständige Mimik (simpleLockObjData) bereit, die von den Editoren genutzt werden kann.
  • => Ein wimEditorMixin stellt ergänzend zu wimDataMixin gemeinsame Funktionalitäten für die Werte-Editoren bereit und wird mit dem Editor-Modul geladen.
  • => Im Client steht bei den Prozess- (= Element-)Objekten die getObjData-Methode für die einmalige Beschaffung von Obj-Daten zur Verfügung. Bei Bedarf wird dort intern die subscribeObjData genutzt und simpleGetData ausgemustert. 
  • => Geänderte Quelldaten sind speicherbar.
  • => Beim ClientService eine SAY-Methode einrichten, mit der Meldungen beim Client ausgegeben werden können.
  • => Beim Anklicken des Stop-Knopfes von dargestellten Meldungen wird der Timer zum automatischen Entfernen gestoppt und die Meldung bleibt voll sichtbar erhalten, bis sie vom Nutzer geschlossen oder vom System durch eine aktualisierte Meldung erneuert wird.
  • => Die dargestellten Meldungen verblassen mit der Zeit bis sie automatisch (ganz) ausgeblendet werden. 
  • => Die Darstellung und das Handling von Meldungen an die Nutzer ist allgemeingültiger (per Events und mit dem wim-app-mixin?) gelöst.
  • => Beim Editor werden nur solche Eigenschaften zur Ergänzung vorgeschlagenen, die für den Objekttyp vorgesehen sind.
  • => Der Editor bildet den Rahmen für das Editieren und verwaltet Gruppen von Eigenschaften (Kopfteil, Rumpf, Verknüpfungen, Organisatorisches, Aufgaben, ...). Die Werte der einzelnen Eigenschaften werden von Eigenschafts-Editoren verwaltet, die beim "Aufklappen" der Eigenschaft aktiviert werden.
  • => Umbenennen: ServiceId in ConnectionId  /* Grund: Verringerung der Verwechslungsgefahr mit "ServiceRef" */
  • => Über einen Bereich mit Status-Meldungen werden die Nutzer pro Eigenschaften-Werte-Editor über den aktuellen Stand informiert.
  • => Innerhalb der Editor-Eigenschaften-Gruppen können die einzelnen Eigenschafts-Editoren einzeln geöffnet, bearbeitet, gespeichert und geschlossen werden.
  • Diese Gruppen von Obj-Eigenschaften können aufgeklappt werden und zeigen dann die Titel der eingetragenen Eigenschaften sowie einen Knopf [+ Hinzufügen] für weitere in der jeweiligen Gruppe ergänzbare Eigenschaften an.
  • => Der Editor wird als eigenständige Obj-Darstellung per ... /?edit=ObjSpec.ParamName aufgerufen.
  • => Alle workerRequest Aufrufe wurden abgelöst.
  • § Der Hauptspeicher-Cache des Servers wird nicht mit aktualisiert, wenn neue Daten vom Legacy-Server geladen wurden.
  • => Meldungen können über die ServiceProcess-Objekte erzeugt werden.
  • => Themen können mit weiteren Dokumenten verknüpft werden.
  • => Beim Speichern von Obj-Daten werden diejenigen Abonnenten informiert, deren Abo davon betroffen ist.
  • => Das write-lock wird bei Bedarf verlängert oder beendet. Dabei meldet der Server das baldige Ende des Writelock an den Client.
  • => exportObjData ist auf das neue Message-Handling umgestellt.
  • => Beim Speichern von Objekt-Daten wird immer auch ein Export der neuen Daten (mit Tagesstempel) veranlasst.
  • => Sämtliche Eigenschaftswerte eines Objektes können zum Editieren ( per "*"-Angabe; siehe auch subscribeObjData) vom Server angefordert werden.
  • => In den Editor nur die typspezifischen Parameterwerte oder noch besser "*" (= alle) laden
  • => Dokumente können mit weiteren Themen verknüpft werden
  • => Der Editor läuft vollständig mit der neuen Message-Mimik.
  • => Auch das Ändern von Objektdaten läuft über die neue Message-Mimik und beachtet den write-lock.
    1. Änderungen an den Daten des Primär-Services werden über die neue Message-Mimik an die Sekundär-Service weitergemeldet. Dazu melden sich die Sekundär-Services beim Hochfahren bei ihren Masterservices an und abonnieren alle Daten: ['*','*'] .
  • => Es können mit getObjData und subscribeObjData alle Eigenschaften eines Objektes mit '*'-Angabe anstelle der Parameterliste geladen werden.
  • => Auch die Login-Mimik läuft über die neue Message-Mimik; die alte wird ausgemustert.
  • => Weitere tbd der neuen Message-Mimik sind implementiert und getestet.
  • => Ein Write-Lock für zu editierende Objekte wird gesetzt und abgefragt.
    1. => Mehrere Objekte können mit einem einzelnen Auftrag gesperrt werden.
    2. => Einzelne Eigenschaften können gezielt gesperrt werden.
  • => Die Message-Übermittlung zwischen Client(s) und Services ist mittels Prozess-, Connection- und Service-Objekten sauberer implementiert. Dazu sind die Objekte und Funktionalitäten systematischer auf verschiedene Dateien verteilt.
  • => Von einzelnen Objekten kann im Login-Zustand ein Backup als Datei (incl. Tagesstempel) gespeichert werden.
  • => Auf max. Breite vergrößert oder besonders schmal dargestellte Objekte können per Menü-Option auf Normalbreite zurückgestellt werden.
  • => Falls der Browser das beherrscht, kann die Darstellung eines Objektes auf die am Inhalt orientierte Minimalbreite eingestellt werden.
  • => Rubrik-Objekte können - zumindest über die Quelldaten - bearbeitet werden
  • => Projekt-Objekte können - zumindest über die Quelldaten - bearbeitet werden
  • § Der Quelltext Editor "spinnt": Ein eingegebenes "<"-Zeichen wird in ein "<" umgewandelt und andere Effekte
  • § Beim Aufruf von  mmm:prDm gibt es ein Url-Problem (wegen Umlaut, Dokument PUuG) mit  http://wim2.de/img/MM/tArtikelGueterzug.Witzenh%25e4user_Allgemeine.jpg
  • => Themen-Verlinkungen können eingerichtet werden
  • => Objekt-Verlinkungen können per Textsuche nach zu verlinkenden Objekten eingerichtet werden
  • => Objekt-Verlinkungen können per Angabe einer Objektkennung eingerichtet werden
  • => Die Darstellung der Themenwolke ist deutlich kompakter (Problem mit transform:scale(...) -Rendering )
  • => Eine textbasierte Suche auf Objektdaten im Speicher ist im Client und Server einsetzbar.
  • => Undo und Redo im HTML-Editor für Handies bereitstellen.
  • => Die Werte der Eigenschaften topics, docs und topicOverlaps können eingestellt werden (testen mit wim:what, ...)
  • => Auch wenn ein Obj erst nach dem Login aufgerufen, wird das Login (im Menü) bemerkt.
  • => Der gesamte Quellcode eines Objektes kann mit den JSON-Editor bearbeitet werden.
  • Beim Speichern einers geänderten topics-Parameters taucht im Server ein "undefined" -Parametername auf.
  • Rubrikzuordnungen /Klassifizierungen können komfortabler bearbeitet werden.
  • Editor-Funktions-Knöpfe für Ein- und Ausrücken anbieten.
  • Für die Handynutzung Editor-Knöpfe für bold usw. anbieten
  • Wenn ein Zugriff von einem "abgenabelten" Projekt auf den Legacy-Server erfolgt, einen Logfile-Eintrag machen (passiert unter anderem bei unbekannten Objekt-Kennungen)
  • Parameter mit "leerem" JSON-Parameterwert werden gelöscht
  • => Sämtliche (prinzipiell editierbaren) Eigenschaften aller Objekttypen können "irgendwie" editiert werden.
  • Der Veröffentlichungszeitpunkt ist ("irgendwie") leicht änderbar
  • > Beim Editieren des Textes die Hintergrundfarbe auf "rötlich" ändern, wenn der Inhalt kein ordentliches JSON-Format darstellt.
  • => Der JSON-Editor ist verwendbar
  • => Der Simple-Text Editor ist verwendbar
  • => Zu jedem WIM-Datentyp ist festgelegt, welcher Editor verwendet werden soll (ggf. Alternativen für Nutzer bereitstellen).
  • => Zu jeder Standard-Obj-Eigenschaft ist definiert, welcher WIM-Datentyp es (am Ende) sein muss, welche besonderen Editier-Berechtigungen man benötigt usw.
  • Knopf zum Setzen des aktuellen Aktivierungszeitpunktes.
  • Sämtliche wim-Rubriken im wim:wim -Objekt eintragen.
  • Die Knöpfe im Editor "3d" darstellen
  • Einen "Full-View"-Knopf zum komfortableren Editieren einführen.
  • Editier-Option im Obj-Menu (nur nach Login sichtbar)
  • Editor-Quelltext mit ausblendbar machen
  • ### ANFANG der Liste ###
Themen hierzuAssciated topics:

Aktuelle Vorgänge Problem-Analyse Zu erledigen Gewünschte Features

Das könnte Sie auch interessierenFurther readings:
Neues und Geändertes beim openWIM-System
<2019-02-03>
In diesem Artikel werden Neuigkeiten Änderungen zu Funktion und Aussehen des openWIM-Systems aufgelistet.   Mehr »
Weiterentwicklung des openWIM-Systems
<2018-08-07>
Das openWIM-System wird seit 1999 ständig weiterentwickelt. Welche wesentlichen Verbesserungen zur Zeit anstehen, können Sie in diesem Artikel erfahren.   Mehr »
Wie kann der ordnungsgemäße Betrieb von openWIM-Systemen überwacht werden?
Von: @VB <2015-03-16>
Für eine zuverlässige Nutzung von openWIM-Systemen ist es unerlässlich, dass der laufende Betrieb "in Realzeit" überwacht werden kann. Der openWIM-Monitor wird dazu verwendet und hier beschrieben.   Mehr »
Problem: Langsamer Server; scheinbar leere DB; ...
<2013-06-03>
Die Dateien einer Perl-Datenbasis können irgendwie /plötzlich /unerklärlich "kaput gehen". Mögliche Auswirkungen sind sehr vielfältig!   Mehr »
CSS3-Macken und Tipps
<2014-02-16>
CSS3 spielt eine wichtige Rolle bei der WIM-Darstellung - und fällt manchmal aus der Rolle. Hier werden Macken und Tipps zusammengestellt.   Mehr »
Perl-Macken und Tipps
<2015-03-15>
Perl ist eine sehr mächtige Scriptsprache, aber manchmal sehr kryptisch und auch fehleranfällig. Hier sind ein paar Tipps zur Arbeit mit Perl zusammengestellt.   Mehr »
Wann oder warum wird eine Internet­präsenz im verein­fachten Darstellungs­modus angezeigt bzw. betrieben?
<2018-08-08>
Kann oder soll eine Internetpräsenz nicht im komfortablen Standardmodus betrieben werden, wird ein vereinfachter Modus verwendet. Das kann verschiedene Anlässe bzw. Gründe haben.   Mehr »
Was sind die nächsten anliegenden Aktionen bei der WIM-Implementierung ?
<2014-08-31>
Vom WIM-System ist erst ein beschränkter Teil des Konzeptes und der geplanten Features verfügbar. Hier werden die als nächstes zu erreichenden Meilensteine für verschiedene Implementierungsbereiche aufgelistet.   Mehr »
Offene Wünsche von Projektbetreibern bzw. Serviceanbietern
Was ist zur Realisierung vorgemerkt oder in der Diskussion ?
<2014-03-08>
Das WIM-System ist noch nicht "fertig" - und wird es wohl auch nie werden. Welche Fehlerbeseitigungen und Features zur Bearbeitung anstehen und welche in der Diskussion sind, ist hier zu lesen.   Mehr »
WIM-Features und offene Wünsche aus Nutzersicht
Was bietet das WIM-System und was ist noch für mehr Zufriedenheit der Nutzer mit dem System zu tun ?
<2014-03-11>
Das WIM-System bietet für seine Nutzer verschiedenste Fähigkeiten. Aber es ist noch nicht "fertig" - und wird es wohl auch nie werden. In dieser Info sind vorhandene, unvollständige /unbefriedigende und geplante weitere Fähigkeiten sowie Meilensteine für die Realisierungsarbeiten aufgeführt.   Mehr »
Offene Wünsche von Autoren und Redakteuren
Was ist zur Realisierung vorgemerkt oder in der Diskussion ?
<2014-01-13>
Diejenigen, die Inhalte in Projekten erstellen, haben spezifische offene Wünsche an das WIM-System. Diese sind hier zusammengefasst.   Mehr »
Handlungsbedarfe für und Wünsche von Software-Entwicklern
Welche Punkte stehen als nächstes zur Bearbeitung an?
<2014-09-04>
Einige Probleme sind zu lösen, verschiedene Beteiligte /Nutzer der WIM-Systeme haben ihre "Wunschlisten". Hier werden die aus den Wunschlisten abgeleiteten "technischen" Aktionen /Implementationen aufgeführt - aber auch die "eigenen" Wünsche der Entwickler.   Mehr »
Offene Wünsche von WIM-Admins und -Systemmanagern
Was ist zur Realisierung vorgemerkt oder in der Diskussion ?
<2013-08-19>
Das WIM-System ist noch nicht "fertig" - und wird es wohl auch nie werden. Welche Fehlerbeseitigungen und Features zur Bearbeitung anstehen und welche in der Diskussion sind, ist hier zu lesen.   Mehr »
Welche Aufgaben liegen für die Bearbeitung von Dokumenten an?
Von: @VB <2015-03-31>
Die Erstellung und Bearbeitung von Dokumenten ist eine der zentralen Aufgaben des openWIM. Hier werden die bekannten Unzulänglichkeiten, anliegende Aufgaben und mögliche Verbesserungen beschrieben.   Mehr »
Wie erfolgt die Zuordung von Requests zu Sitzungen beim Server ?
<2018-03-09>
Bei der Kommunikation zwischen Client und Server ist eine eindeutige Zuordnung der Meldungen notwendig. Cookies sind dafür nicht immer ausreichend und werden nicht verwendet.   Mehr »
Die Bildrechte werden in der Online-Version angegeben.For copyright notice look at the online version.

Bildrechte zu den in diese Datei eingebundenen Bild-Dateien:

Hinweise:
1. Die Bilder sind in der Reihenfolge ihres ersten Auftretens (im Quelltext dieser Seite) angeordnet.
2. Beim Anklicken eines der nachfolgenden Bezeichnungen, wird das zugehörige Bild angezeigt.
3, Die Bildrechte-Liste wird normalerweise nicht mitgedruckt,
4. Bildname und Rechteinhaber sind jeweils im Dateinamen des Bildes enthalten.