Launix Data Organizer

Bei der Arbeit mit der Vermarktung der LED-Wände bin ich auf einmal vom Anwendungsprogrammierer zum Anwender geworden. Auf einmal mussten Adresslisten mit Telefonlisten verknüpft werden, Kunden ein Auftrag, sowie eine Rechnung zugeordnet werden und das alles, ohne aus den Augen zu verlieren, welche Geschäftsprozesse wann wie und wo stattgefunden haben. Dabei ist mir aufgefallen, dass es momentan noch kein Tool gibt, die täglich anfallenden Daten zu Geschäftsvorfällen mit ständig wechselnden Schemen zu organisieren. Doch warum passen die momentan verfügbaren Tools nicht?

Excel

Excel (bzw. das von mir benutzte Libreoffice Calc) ist in der Tat das geeigneteste Tool für den Übergang. Man kann sofort loslegen, Tabellen anzulegen. Allerdings schon bei Fremdschlüsselbeziehungen stößt das Tool an seine Grenzen: Will ich pro Kunde mehrere getätigte Anrufe vermerken, muss ich entweder auf mehr Spalten ausweichen, die ich aber vielleicht noch anderweitig benutzen will. Oder aber ich nehme Datenverluste in Kauf und vermerke immer den zuletzt getätigten Anruf. Ersteres ist unsauber, letzteres ist manchmal sogar ein No-Go. Fazit: Einfach, schnell, aber unzureichend.

Bare Metal SQL

Auf der reinen MySQL-Datenbank zu arbeiten, vielleicht noch mit einem PHPmyAdmin als Unterstützung hat sich für mich als komplett unpraktikabel herausgestellt. Hier gingen zwar Fremdbeziehungen, wie z.B. dass ein Kunde mehrere Anrufe hat, super abzubilden, aber die Bedienoberfläche ist einfach grottig. Man kann sich lediglich die Einzeltabellen ansehen, nicht aber einen Verbund, den man anschließend bearbeiten könnte.

Individualsoftware

Individualsoftware, eigentlich mein Hauptberuf, ist für eine Firma der Größe absolut unpraktikabel. Es wäre zwar die passendste Lösung in der Hinsicht, aber der Aufwand dafür wäre einfach zu hoch, auch wenn ich die Stunden der Programmierer nur intern abrechnen würde.

Fazit

Momentan gibt es noch kein hinreichendes Werkzeug, Daten mit komplexen Datenschemen hinreichend zu strukturieren und zu organisieren. Alle bisherigen Lösungen haben mindestens eine Schwachstelle, die die Mitarbeiter von Firmen zu suboptimalen Lösungen zwingen, notfalls sogar Papierarbeit.

Update zum Oktober 2016

Das Thema Datenverwaltung hat uns nicht mehr losgelassen. Mit dem Produkt Launix FOP glauben wir, eine Lösung auf das oben geschilderte Problem gefunden zu haben. Launix FOP verbindet die Mächtigkeit von SQL-Datenbanken, einfachen Bedienoberflächen und geringem Preis bei voller Individualisierbarkeit.

Warum ein Verbot von Verschlüsselung nichts bringt

Der Britische Premier Cameron versucht aktuell (Stand: Jan 2015), Verschlüsselung zu verbieten (Quelle). Ganz neu ist die Idee nicht. Bereits 1995 hat sich der Sicherheits-Professor Andreas Pfitzmann († 23. September 2010) über den Sinn und Unsinn einer Kryptoregulierung ausgelassen (Quelle), als damals die USA (federtreibend die NSA), sowie Deutschland versucht haben, Kryptografie zu verbieten bzw. abzuschwächen. Da er genau das Thema auf einem Informatikseminar, damals noch zu meiner Gymnasialzeit ca. 2006, in einem Vortrag ansprach, will ich die Argumente in diesem Blogbeitrag grob darlegen.

Verschlüsselung

Doch zuerst ein paar allgemeine Informationen: Was ist Verschlüsselung und wem nutzt sie? Unter Verschüsselung versteht man mathematische Verfahren, mit deren Hilfe man eine Nachricht, vorliegend im sogenannten “Klartext”, in einen Schlüsseltext übersetzt. Ein dazugehöriges Entschlüsselungsverfahren wandelt den Schlüsseltext wieder in den Klartext um. Der Schlüsseltext sieht für Außenstehende wie ein Haufen Datenmüll aus. Dadurch gelingt es dem Sender und Empfänger, gegenüber Dritten, die auf der Leitung mitlauschen, ein Geheimnis zu wahren. Damals (!2006) hat uns Herr Pfitzmann schon gesagt, dass vor allem die NSA an den über die weltweiten Datenleitungen gesendeten Informationen interessiert ist. Wir als Zuhörer haben es für interessante, aber nicht ernst zu nehmende Agenten-Märchen gehalten. 2013 wurden wir eines anderen belehrt, aber es scheint immer noch einige zu geben, die sich an einer Überwachung nicht stören.

Regulierbarkeit

Versucht man nun, diese technischen Möglichkeiten zu regulieren, beispielsweise durch ein Gesetz, das die Herstellung, den Vertrieb und die Benutzung von Software, die starker Verschüsselung dient, verbietet oder zumindest einschränkt, erreicht man folgendes: Firmen haben Geschäftsgeheimnisse. Da diese sich aber an die Gesetze halten müssen, da sie verklagbar sind, müssen sie unverschlüsselt oder schwach verschlüsselt kommunizieren. Terroristen hingegen werden nicht reguliert. Ihre Kommunikation ist nicht reguliert und sie können weiterhin Anschlagspläne unerkannt von unserer Regierung besprechen. Im Endeffekt werden also nur die ehrlichen Menschen belauscht.

Schwache Verschlüsselung

Doch warum sorgt man nicht einfach dafür, dass lediglich die “Guten” unsere Nachrichten mitlesen können? Der Staat, insbesondere die NSA hat ein Milliardenbudget. Sie könnte einen Großrechner aufbauen, der die Leistung aller Rechner übertrumpft. Anschließend könnte man Kryptografie so regulieren, dass jede Verschlüsselung nur so stark sein darf, dass sie der Großrechner problemlos knacken kann. Für private Angreifer, beispielsweise im Rahmen von Wirtschaftsspionage, wird es dann schlicht zu teuer, Kommunikation abzuhören. Das Problem mit diesem Denkansatz ist, dass sich die Terroristen nicht an diese Regulierung halten werden und trotzdem stark verschlüsseln werden. Außerdem entwickelt sich die Geschwindigkeit von Großrechnern sehr schnell vorran und in wenigen Jahren steckt die Rechenleistung eines solchen Großrechners in jedem Handy. Eine geheime Kommunikation unter solcher Regulierung wäre also nur wenige Jahre lang geheim.

Wunderwaffe gegen Verschlüsselungsverbot: Verschleierung

Komplett ad absurdum geführt wird ein Verschlüsselungsverbot, wenn Steganografie ins Spiel kommt. Angenommen, der Staat verbietet Verschlüsselung. Angenommen, die NSA hätte eine Software, die prüft, ob eine Nachricht verschlüsselt ist und in diesem Fall ein SWAT-Team vorbeischickt, um den Übeltäter zu fassen. Terroristen wird es trotzdem gelingen, verschlüsselt zu kommunizieren. Der Vorteil von Schlüsseltext ist, dass er wie zufälliger Datenmüll aussieht. Diese sinnlos aussehenden Daten kann man in anderen, sinnvoll aussehenden Daten, verstecken. Eine beliebte Methode ist der Verstecken von Nachrichten im Rauschen von Bildern. Doch auch beliebige andere Methoden sind möglich. So könnte man lediglich anhand von der Position von Rechtschreibfehlern in sinnvollen Nachrichten (falsch gesetzte Kommas, falsche Groß- Kleinschreibung) Information in der Alltagskommunikation auf sozialen Netzwerken verstecken. Selbst wenn die NSA diese Informationen extrahieren konnte, kann sie weder den verschlüsselten Text entschlüsseln, noch überhaupt feststellen, ob es sich um eine sinnvolle Nachricht handelt. Vor Gericht kann man immer behaupten, es sind ganz normale Rechtschreibfehler.

Apell an die Politiker

Sehr geehrte Politiker,

prüfen Sie genau, welche Auswirkungen ein Verbot der Verschlüsselung hat. Anstatt unsere Sicherheit, die Sicherheit der Bürger, zu erhöhen, wird diese dadurch ausgehebelt. Terrorismus ist nicht verhinderbar, auch nicht durch totale Überwachung. Vielmehr ermöglicht der Aufbau eines Überwachungsapparat die Terrorisierung der Bevölkerung durch einen Unrechtsstaat. Ob unsere Demokratie so bestehen bleibt, weiß niemand. Hinterlassen Sie auf keinen Fall Strukturen, die eine Dikatur als Waffe gegen ihre Bevölkerung gebrauchen können!

Weiterer Lesestoff: Gutachten von Prof. Pfitzmann zur Erreichung von Datenschutz durch Verschüsselung

Prevedo: Ein Beispiel für verteilte Systeme

Am Donnerstag, den 06.11.2014 feierte die Chemnitzer Kommunikationsfirma BASEG ihren 18. Geburtstag. Eines der Highlights war sicherlich die gigantischen Präsentationswände, die unter der Marke „Prevedo“ vermarktet werden. Die Software hinter dem System wurde von Launix entwickelt.

PrevedoEin Problem in der frühen Entwicklung von Prevedo war, dass ein einzelner Computer mit einer großen Grafikkarte zu schwach ist, flüssig Bilder zu liefern. Die ersten Messeauftritte der Firma BASEG zeigten also lediglich Standbilder. Trotz moderner Hardware sind PCs immer noch so aufgebaut, dass sie eine Reihe von Befehlen hintereinander abarbeiten. Will man also mehr Leistung aus einem System herausholen, muss man lediglich den Takt erhöhen, in dem die Befehle abgearbeitet werden.

Den Takt zu erhöhen hat in den letzten 40 Jahren 30 Jahre lang funktioniert. Doch seit etwa 10 Jahren wird ein Problem immer größer: Je höher der Takt, desto größer die Verlustleistung der Chips. Im Klartext heißt das: Ein Computerchip erzeugt mehr Hitze pro Fläche als eine Herdplatte. Daraus resultieren zwei Probleme: Zum einen verbraucht man sehr viel Strom, um lediglich zu heizen, zum anderen muss man die Wärme durch geeignete Kühlung abführen, um eine Zerstörung des Chips oder gar einen Brand abzuwenden.

Ein anderer Ansatz setzt sich langsam durch, der Abhilfe verschafft: Anstatt mit immer höheren Taktraten zu arbeiten, werden einfach mehrere Recheneinheiten mit niedriger Taktfrequenz betrieben. Da sich der Stromverbrauch zur Taktrate quadratisch verhält, der Stromverbrauch zur Anzahl der Recheneinheiten allerdings nur proportional steigt, macht dies durchaus Sinn. Doch mit stärker parallelisierten Systemen muss man anders arbeiten. Man kann nicht mehr eine große Aufgabe schnell genug auf einer Recheneinheit ausführen, sondern muss diese in viele kleine Teilaufgaben zerlegen und mit geschickter Kommunikation auf Recheneinheiten verteilen.

Genau das ist beim Prevedo-System passiert. Wir haben uns entschieden, einen großen PC mit sehr teurer Spezial-Hardware, der 8 Bildschirme ansteuert, durch 8 kleine PCs, die jeweils einen Bildschirm zu „betreuen“ haben, ersetzt. Untereinander wurden die Mini-PCs mit einem Ethernet-Netzwerk verbunden. Die Herausforderung bestand nun darin, große hochauflösende Filme in kleine Schnipsel zu zerlegen und jedem Bildschirm einen Schnipsel zuzuteilen. Die einzelnen Bildschirme mussten dann nur noch übers Netzwerk kommunizieren, um im Gleichtakt die Filme abzuspielen, sodass es wie ein Gesamtsystem aussieht.

Finanziell hat sich die Aktion auch gelohnt: Die 8 Mini-PCs waren insgesamt günstiger als der große Spezial-PC und hatten zudem im Team mehr Leistung.

Wieviel kostet eine Softwareentwicklung?

Eine genaue Antwort kann man darauf nicht geben. Eine Software umfasst mehr als nur die reine Programmierung: Die Software muss installiert werden, die künftigen Anwender müssen in die Software eingewiesen werden, Fehler müssen nachträglich behoben werden und bei Abstürzen wollen Sie ja auch, dass der Hersteller schnell reagiert.

Um die Installation zu vereinfachen, kann der Softwarehersteller zusätzlich passende Hardware verkaufen, auf der die Software vorinstalliert ist. Der Kunde braucht nur noch einen Einschub in Ihr Serverregal schieben, Strom und Internet anschließen und die Software ist einsatzbereit. Auch kann man durch die Schaffung intuitiver und leicht bedienbarer Nutzerinterfaces die Schulungskosten gegen Null treiben. Gegen Fehler in der Software kann man im Vorhinein gut testen. Beispielsweise Stresstests, Bedienungs-Tests, Unit-Tests.

Kleine Projekte sind schon für kleineres Geld erledigt, insbesondere, wenn eine gute Zuarbeit des Kunden kommt. In diesem Fall ist man am besten mit dem Stundensatz-Modell beraten. Je mehr Zeit der Softwarehersteller einspart, desto billiger wird die Software.

Doch trotz all dieser kostenoptimierenden Maßnahmen ist eine Software immer eine Investition, die auch ins Budget mit eingeplant werden muss.