Home  | Impressum | Sitemap | KIT

Praxis der Software-Entwicklung (PSE)

Praxis der Software-Entwicklung (PSE)
Typ: Praktikum Links:
Lehrstuhl: ITM Abeck
Semester: Winter- und Sommersemester
Ort: Seminarraum 173
RZ/SCC (Geb. 20.20)
Zeit:

Donnerstags, 10:00 - 11:00 Uhr

Dozent:
Prof. Sebastian Abeck 
Roland Steinegger

Entwicklung einer Android-App zur Beacon-basierten Indoor-Navigation

Motivation

Die Forschungsgruppe Cooperation & Management (C&M) von Prof. Abeck beschäftigt sich mit der Entwicklung von verteilten, webbasierten Anwendungen. Ein Schwerpunkt liegt hierbei auf der Erforschung moderner Web-Technologien, die einen starken Einfluss auf unsere Projekte hat.

In diesem Semester wird in der Veranstaltung "Praxis der Softwareentwicklung" (PSE) der SmartCampus um eine Navigation basierend auf Beacons ergänzt. Hierdurch soll auch Studierenden und Angestellten mit Behinderungen ein innovatives und insbesondere hilfreiches Angebot bereitgestellt werden. Dazu zählt sowohl die Entwicklung eines flexiblen, auf einer Microservice-Architektur aufbauenden, Backends als auch eines interessanten und modernes Frontends. Unser Ziel ist die Bereitstellung des SmartCampus für die Studierenden als öffentlich zugänglichen Dienst.

 

AufgabenstellungPlatzierung von Beacons auf einem Flur zur späteren Indoor-Lokalisierung

Der SmartCampus wird um eine beacon-basierte Navigation im Innenbereich erweitert. Beacons sind kleine Geräte, die regelmäßig Signale per Bluetooth senden und so wichtige Orte markieren können. Ähnlich wie beim GPS mit Satelliten im großen Maßstab, ermöglichen Beacons die Lokalisierung von SmartPhones in Gebäuden. Zudem soll die smarte Interaktion mit Orten und Dingen durch die Platzierung von Beacons auf dem Campus möglich und durch die App unterstützt werden. Dabei könnt ihr kreativ eure eigenen Ideen mit in das Projekt einbringen und so zum Erfolg des Projekts beitragen.

Modellhafte Darstellung der Triangulation mit drei Sendern

Wir bieten:

  • Design von Microservices
  • Entwicklung von Front- und Backend
  • Continuous Integration / Delivery mit Docker
  • Neue und hochaktuelle Technologien
  • Ein PSE-Projekt das wirklich eingesetzt werden soll!

 

Das Projekt wird in Kooperation mit dem Studierendenzentrum für Sehgeschädigte (SZS) und der Beauftragten für Studierende mit Behinderung und chronischen Krankheiten entwickelt.

Technologien und Entwicklungsumgebung

Übersicht der Technologien (HTML5, CSS3, JavaScript, AngularJS, Cucumber, Apache Cordova, OpenAPI, Spring)Als Technologie wird clientseitig HTML5, CSS3 und JavaScript eingesetzt. Die Entwicklung wird durch Einsatz von verschiedenen Bibliotheken unterstützt. Angular JS 2 verwenden wir zur strukturierten Entwicklung im Frontend. Es erleichtert die Entwicklung an vielen Stellen und ermöglicht eine Modularisierung der Anwendung. Das CSS-Framework Bootstrap wird eingesetzt, um die Darstellung der Services des SmartCampus zu vereinheitlichen und um es dem Entwickler zu ermöglichen die Aufmerksamkeit auf die Funktionalität statt auf das Design setzen zu können. Zur Bereitstellung der Web-App auf mobilen Endgeräten wird das Framework Apache Cordova eingesetzt.

Auf der Server-Seite werden die SmartCampus-Services als Java-basierte RESTful Webservices mit Spring bereitgestellt. Mit Hilfe des Spring-Frameworks können mit wenigen Zeilen Java-Quellcode Services samt Datenbankanbindung aufgesetzt werden. So kann sich auch hier auf die Geschäftslogik der Dienste statt auf Infrastrukturaufgaben konzentriert werden.

Zur Einführung in die verschiedenen Technologien werden Workshops mit tatkräftiger Unterstützung unserer Bachelor- und Masterstudierenden angeboten. Einem reibungsfreien Start in das Praktikum und die Technologien steht somit nichts im Weg.

 

Hintergrund

Der SmartCampus ist eine webbasierte Anwendung, die seinen Benutzern – den Studierenden, Mitarbeitern und Gästen des KIT – den Campusalltag durch smarte Funktionen erleichtert. Die Services sollen die Benutzer auch über ihre mobilen Geräte – insbesondere ihren Smartphones – nutzen können.

Auf unserer Webseite gibt es mehr Informationen zu unserem SmartCampus-Projekt.

 

Eine Testversion des SmartCampusbarrierefrei kann unter smartcampus.cm.tm.kit.edu betrachtet werden.

Überblick über den SmartCampus, die verschiedenen Services und Technologien.

Organisatorisches

Ablauf der Veranstaltung

Die genauen Termine werden mit den Mitgliedern des Projektteams im ersten Teamtreffen besprochen und festgelegt. Geplant sind wöchentliche Besprechungstermine jeweils donnerstags von 10 bis 11 Uhr.

Die erste Besprechung findet am Donnerstag, den 02.11.2017, um 10.00 Uhr im Raum 173 im SCC (Geb. 20.20, rechter Flügel im ersten Stock) statt. Falls die Teameinteilung erst nach diesem Termin stattfindet, verschiebt sich der Auftakttermin um eine Woche nach hinten.

 

Arbeitsweise

Um einen reibungslosen Ablauf des Veranstaltung zu gewährleisten und um ein Zusammenarbeit zwischen Forschungs- und Lehrbetrieb zu ermöglichen, sind die Studierenden aufgefordert, sich an die in der C&M-Arbeitsweise bestehenden Rahmenbedingungen zu orientieren. Diese Rahmenbedingungen umfassen u.a.

  • Regelmäßige Projektteamtreffen zur Besprechung von Problemen und Aufgaben
  • Die Entwicklung erfolgt mit der Entwicklungsumgebung Eclipse und zur Entwicklung des Frontends und des Backends kommen verschiedene Franeworks zum Einsatz.
  • Die Ausarbeitung der abzugebenden Dokumente, wie z.B. Pflichtenheft, Entwurfsdokumentation, Implementierungsplan, etc. erfolgt durch MS Office und die KIT-Teamserver-Dienste (MS SharePoint)
  • Git als Versionskontrolle der Entwicklungsartefakte (Modelle, Quellcode, Konfiguration, Berichte, etc.) über MS Team Foundation Server