Abschlussarbeiten (Bachelor/Master) auf der JVM-Plattform bei Prof. Knabe
Ich bin von der Leistungsfähigkeit und Eleganz von Scala
so begeistert,
dass ich Abschlussarbeiten, die auf dieser Plattform angefertigt werden, trotz meiner Pensionierung noch betreuen möchte.
Folgende Themen finden mein besonderes Interesse.
- Microservices mit Lagom evaluieren. Dies ist ein Mittel, Enterprise-Applikationen modularisiert als eigenständige Applikationen (z.B. in der Cloud) ablaufen zu lassen. 19-10-21
- Evaluation der Web-Service-Entwicklung mit Akka HTTP
- Evaluation der Entwicklung von Web APIs mit GraphQL. Siehe Vortrag und Links unter Scala Berlin Meetup 10.04.17. In der Java-Welt gibt es z.B. einen Spring-Boot-Starter für GraphQL. Siehe auch One API, Many Facades? 17-06-30
- Evaluation der Cloud-Service-Entwicklung mit AWS Lambda und Amazon API Gateway. Siehe Einsatz bei Trade Machines und JavaMagazin 12.2016. 17-03-28
- Entwicklung einer didaktischen Anwendung nach dem Ansatz Domain Driven Design. Diese gibt es in der älteren objektorientierten Ausprägung mit fachlichen Methoden als auch in der neueren
ereignisorientierten Ausprägung mit fachlichen Kommandos und Ereignissen. 17-09-21
- Apache ISIS evaluieren. Dies ist ein Java-basiertes Werkzeug zur schnellen (Prototyp-)Entwicklung nach dem NakedObjects/Domain-Driven-Design-Ansatz. 17-01-20
- Websockets mit Scala.js evaluieren.
- Vergleichende Lasttests eines REST-Services in Synchroner vs. Asynchroner Architektur
- Evaluation von Scala Macros und Expecty:
Macros sind ab Scala 2.10 eine mächtige Technik zur Quelltextmanipulation.
Man kann damit mächtigere DomainSpecificLanguages (DSLs) definieren als bisher. Z.B. für ein Testframework. Ein Vertreter davon ist Expecty.
Aufgabe z.B.: Eine bestehende Testsuite mittels Expecty und eigener Assert-Makros vereinfachen. Als Anregung siehe meine Assertions
in der fb6-Software: UtAssert
und RichAssertions.
- Entwicklung portabler mobiler Applikationen. Dazu müssten Frameworks wie Haxe, Oracle MAF, Xamarin, ionic+Cordova verwendet werden. 17-01-20
- Entwicklung mobiler Applikationen auf Android, am liebsten mit Scala
- Combinator Parsing in Scala: Eine Evaluation mit dem Meerkat-Parser.
Es soll für eine kleine Sprache eine Grammatik definiert und in Scala ein Parser und Übersetzer geschrieben werden, der diese Sprache in eine Zielsprache übersetzt.
- Testautomation in diversen Geschmacksrichtungen
- Tooling-Aufgaben wie z.B. Aufbau einer Toolchain für Entwicklung, Test, Doku, Continuous Integration
- Compilerbaunahe Aufgaben wie Entwicklung von Präprozessoren oder Domain Specific Languages
Interessante abgeschlossene Arbeiten
Jahr | Autor | Grad | Titel |
2017 | David Kaatz | Ba. | Entwicklung einer auf Microservices basierenden Big-Data-JSON-API zurAggregation von für Sicherheitsforscher relevanten Informationen über Web-Applikationen und Firmen |
2016 | Simon Lischka | Ba. | Entwicklung ereignisorientierter Web-Applikationen mit Akka.js |
2015 | Sebastian Dassé | Ba. | Evaluierung von Scala.js für interaktive Web-Oberflächen |
2015 | Robin Steller | Ba. | Entwicklung einer Testautomatisierungs-Infrastruktur für mobile Applikationen |
2012 | Oliver Normann | Dipl. | Testen von Web-Aplikationen mittels Selenium 2 und ScalaTest |
2010 | Thomas Fiedler | Dipl. | Entwicklung mit dem Scala-basierten Webframework Lift.
Aus dieser Arbeit entstand ein Fachbuch und die von SS 2011 bis WS 15/16 laufende Lehrkraftnews-Applikation des Fachbereichs VI.
|