Final Thesis: Product Architecture Modeling with PostgreSQL and GraphQL

Abstract: In today’s software development, Free / Libre and Open Source Software (FLOSS) is becoming more and more common used. The management of complex dependencies between the open source components used is an essential part of this. Without such management, license compliance will be impossible, export restrictions will not be upheld, and security vulnerabilities will remain unknown to vendors. The Product Model Toolkit helps you to manage third-party open source dependencies. It combines a product’s architecture with licence compliance information of each incorporated component, to derive license compliance relevant artifacts. But is is unclear how such a graph of components should be represented in a relational database.

In this thesis we design a PostgreSQL database schema that can represent components and its dependencies to other components, as well as additional metadata for a component or dependency. It tested it using a GraphQL interface, where PostGraphile provides the GraphQL interface for the data.

Keywords: Open source software, product model,

PDF: Bachelor Thesis

Reference: Yu Heydemann. Product Architecture Modeling with PostgreSQL and GraphQL. Bachelor Thesis. Friedrich-Alexander-Universität Erlangen-Nürnberg: 2020.