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 010
Geb. 50.34

Zeit:

Mittwochs, 12:00 - 13:00 Uhr

Dozent:
Prof. Sebastian Abeck 
Michael Schneider 

Entwicklung einer mobilen App zur IoT-basierten Bestimmung der Pool-Auslastung

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 soll um eine IoT-basierte Belegungsanzeige von Lernplätzen erweitert werden. Das Ziel hierbei ist, die Suche nach einem freien Arbeitsplatz für Studierende zu vereinfachen. Hierzu soll eine App entwickelt werden, mit der die Belegung des Poolraums anzeigt werden kann. Es ist hierbei nicht nur die aktuelle Belegung der Lernplätze relevant, sondern auch die Bestimmung der zukünftigen Belegung des Poolraums. Zur Bestimmung der zukünftigen Belegung wird unter anderem die Auslastung der WLAN-Access-Points herangezogen. Basierend auf Berechnungen und der Historie soll die voraussichtliche Belegung und die Tendenz der Belegung des Poolraums bestimmt werden. Dadurch können Studierende leichter bestimmen, wie die aktuelle Auslastung des Poolraums ist und wann ein freier Arbeitsplatz zur Verfügung steht.

Dabei könnt ihr kreativ eure eigenen Ideen mit in das Projekt einbringen und so zum Erfolg des Projekts beitragen. Beispielsweise kann auch eine Reservierung der Plätze umgesetzt werden.

 

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 der ATIS und dem IOSB 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 Mittwoch, den 02.05.2018, um 12.00 Uhr im Raum 010 (Erdgeschoss) in Geb. 50.34,  statt.

 

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