content

Mobile & Cloud Development


Parcel Tracker on a mobile phone

Die Entwicklung von Software für mobile Endgeräte und intelligente Cloud-Lösungen haben mich schon immer sehr fasziniert.
Da ich sehr häufig Pakete von verschiedenen Paketdiensten geliefert bekomme, habe ich nach einer einfachen Möglichkeit gesucht den Lieferstatus meiner Pakete mit meinem Windows Phone zu überwachen. Für die Windows Phone Plattform gab es jedoch nichts in dieser Richtung, daher habe ich aus meiner Not heraus selber eine App geschrieben mit der ich seit der ersten Stunde im Windows Phone Marketplace vertreten bin. Das Ergebnis ist die erfolgreiche Windows Phone App „Parcel Tracker“, deren grobe Architektur ich nachfolgend skizzieren möchte.


Parcel Tracker - Packetverfolgung leicht gemacht Parcel Tracker download for Windows Phone


Powered by Windows Azure



Das folgende Diagramm zeigt die grobe Architektur der Parcel Tracker App und deren Backend-Dienste:


Parcel Tracker Architektur


Der Parcel Tracker besteht neben der Windows Phone App noch aus den zwei Microsoft Windows Azure Diensten „Parcel Tracker Service (Web Role)“ und „Parcel Tracker Worker (Worker Role)“.

Der Parcel Tracker Service ist als Windows Azure Web Role mit einem WCF-Endpoint implementiert und dient dazu die Paketinformationen zu einem Paket auf der Website des entsprechenden Paketdienstes abzufragen und für die Anzeige in der App aufzubereiten. Eine besondere Herausforderung besteht dabei darin, die unterschiedlichen HTML-Layouts der Paketdienste zu beherrschen und in ein einheitliches Datenformat zu überführen. Darüber hinaus ist der Parcel Tracker Service zuständig für die Synchronisation der Paketdaten, bestehend aus Paketnummer und Paketdienst für alle in der App verwalteten Pakete, zwischen der App und der Parcel Tracker Datenbank.

Der Parcel Tracker Worker ist als Windows Azure Worker Role implementiert und aktualisiert in regelmäßigen Abständen den Paketstatus für alle in der Datenbank gespeicherten Pakete. Wenn eine Veränderung des Paketstatus erkannt wird, werden über den Microsoft Push Notification Service (MPNS) Push Notifications an das betroffene Gerät geschickt und so der Nutzer über die Statusänderung informiert.

Als Datenbank wird eine SQL Azure Datenbank verwendet, um eine hohe Ausfallsicherheit und optimale Skalierbarkeit zu erreichen.

Ein wichtiges Ziel bei der Architektur des Parcel Trackers war es, eine möglichst kostengünstige Nutzung der Windows Azure Dienste zu ermöglichen. Gleichzeitig sollte die gesamte Lösung skalierbar sein, um bei einem höheren Nutzungsaufkommen zusätzliche Worker- und Web-Role Instanzen zuschalten zu können.

Insgesamt hat die Windows Azure Plattform die Entwicklung des Parcel Trackers erheblich erleichtert und die Investitionskosten für die ansonsten notwendige Server-Hardware verhindert.




HomeHome
LeistungenLeistungen
ProfilProfil
DevelopmentDevelopment
ReferenzenReferenzen
KontaktKontakt
ImpressumImpressum
a