Informatik-Entwickler – Teil 2
6. Februar 2015 - 20:55 Uhr Martin Hager HFU Informatik
Wichtig für den Informatik-Entwickler: Sicherheit, Testing, Cross-mobile App

Nur für Informatik-Allrounder mit guten Nerven – Teil 2!


Für den Informatik-Entwickler lohnt es sich, folgende Themen detaillierter zu betrachten:

  • Sicherheit: welche Vorkehrungen sind nötig, dass auf einem Bildschirm im Schaufenster nicht plötzlich ein Video der Konkurrenz läuft.
  • Testing: welches sind die Killer-Fehler und müssen unbedingt verhindert werden.
  • Cross-mobile App für Android und iOS: welche Tools können eingesetzt werden.


Informatik-Entwickler: Sicherheit

Stellen Sie sich vor, im Schaufenster einer Modeboutique läuft ein Werbefilm der Konkurrenz oder noch schlimmer ein Film über die Herstellung von Pelzmänteln. Aus Sicht der Modeboutique eine absolute Katastrophe. Folgende Vorkehrungen wurden getroffen:

  • Jeder Kunde hat einen eigenen Zugang mit Username / Passwort.
  • Bilder und Videos werden im Filesystem gespeichert. Der Filename besteht aus einer zufälligen Sequenz von Zahlen und Buchstaben. So ist es nicht möglich, anhand des Filenamens Rückschlüsse auf den Inhalt oder den Kunden zu ziehen.
  • Die Bilder und Videos werden auf den Geräten auf einer externen Speicherkarte gespeichert. Damit nicht einfach die Speicherkarte oder einzelne Files ausgewechselt werden können, wird zu jedem File eine Checksumme in der Datenbank des Gerätes gespeichert. Vor dem Abspielen eines Videos oder Bildes wird die Checksumme berechnet und verglichen. Bei einem manipulierten File stimmt die Checksumme nicht mehr und das Gerät zeigt das Bild oder den Video nicht.


Informatik-Entwickler: Testing

Mit möglichst wenig Testfällen optimale Abdeckung erzielen

Beim Testen stellt sich immer die gleiche Frage: Wie kann mit möglichst wenig Testfällen eine optimale Abdeckung erzielt werden. Das Herzstück ist das Gerät, welches 7×24 h laufen muss. Das System besteht aus 2 unabhängigen Komponenten:

  • Web-Anwendung (Verwaltungs-Software)
  • Geräte mit einer App für Android und iOS

 

 

 







Datenaustausch über Web-Services

Die Grundfunktionalität kann autonom (jede Komponente für sich) getestet werden. Spannender wird der Verbund der Komponenten mit dem Datenaustausch über Web-Services. Speziell beachtet werden muss:

  • WLAN-Verbindung: keine / schlechte / gestörte / gute Verbindung.
  • Abbruch der WLAN-Verbindung während dem Download eines Files.
  • Download einer neuen Playlist im Hintergrund: Die alte Playlist läuft solange, bis die neue geladen ist. Bilder und Videos werden asynchron heruntergeladen.
  • Welche mobilen Geräte müssen unterstützt werden (Android-Tablets, Android TV-Box, iPad).
  • Funktioniert es mit allen TV-Geräten, welche einen HDMI-Anschluss haben.


Cross-mobile App

Die Anforderung des Kunden lautet, dass die Werbeinformationen auch auf einem iPad (ohne TV-Gerät) gezeigt werden müssen. Es gibt verschiedene Möglichkeiten, cross-mobile Apps zu entwickeln:

  • Auf Basis von HTML5, CSS und JavaScript (z.B. PhoneGap)
  • Eigenes Framework (z.B. Corona)
  • Auf Basis von Hochsprachen (z.B. Xamarin mit C#)


 Die App enthält viel Business-Logik

Weil die App viel Business-Logik enthält und es keine eigentliche Bedienoberfläche gibt (die App spielt die Werbeinformationen selbständig ohne Benutzeraktion), wird Xamarin mit C# verwendet. Dabei können dieselben C#-Datenstrukturen für die Web-Services von der Web-Anwendung und der App verwendet werden.
Wie das automatische Update der App ohne Benutzerinteraktion funktioniert, bleibt vorläufig das Geheimnis des Entwicklers.


Ein NDS Informatik an der HFU? Damit es noch mehr solche Entwickler gibt.


Martin Hager
Bereichsleiter Informatik HFU













Der Autor betreut als Bereichsleiter u.a. den Studiengang dipl. Techniker HF Informatik und das Nachdiplomstudium Web Engineering an der HFU.

Neuer Kommentar schreiben
300/300