Cloud-native applications are intentionally designed for the cloud in order to leverage cloud platform features like korizontal scaling and elasicity - benefits coming along with cloud platforms. In addition to classical (and very often static) multi-tier deployment scenarios, cloud-native applications are typically operated on much more complex but elastic infrastructures. Furthermore, there is a trend to use elastic container platforms like Kubernetes, Docker Swarm or Apache Mesos. However, describing this service can be extensive and platform specific. Therefore, we developed a domain specific language for describing cloud-native applications, including features like model-to-model generation for specific elastic container platforms.
In this thesis, a graphical user interface for describing cloud-native application for multi-cloud deployments has to be implemented.
For this purpose, the following sub-tasks have to be dealt with and documented:
- Familiarization with UCAML (Universal Cloud Application Modeling Language), cloud-native applications (especially Docker), cloud computing and elastic container platforms
- Identification of the GUI requirements
- Design the software architecture of the GUI service
- Implementation and evaluation of the GUI
- Implementation of the GUI as a web-service
- Automatic validation of the user input
- Practical evaluation of the GUI by using it for describing a cloud-native demo application (e.g. the Sock Shop)
- Writing a developer documentation
Note: Should individual aspects shown to be to difficult to achieve during the processing of this work, the task can be adapted - after plausible proof of difficulty.