Since I managed to come up with an initial working approach, I wanted to share the result (which likely can be further extended and improved):
\documentclass{book}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{positioning,matrix,fit,arrows.meta}
\usepackage{adjustbox}
% Use a sans serif font
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
% To add the list of figures etc. to the table of contents
\usepackage{tocbibind}
% To have clickable links for TOC, references etc.
\usepackage{hyperref}
\hypersetup{colorlinks=true,linkcolor=blue,citecolor=blue,urlcolor=blue}
\usepackage{nameref}
\begin{document}
\frontmatter
\tableofcontents
\listoffigures
\mainmatter
\chapter{Introduction} \label{chap:introduction}
Test...
\section{Test}
Test...
\section{Structure}
Graphic of structure
\begin{figure}[h]
\centering
\begin{adjustbox}{max width=\textwidth}
\begin{tikzpicture}
\pgfdeclarelayer{background} % Declare a background layer
\pgfdeclarelayer{chapter_background} % Declare a layer for the chapter backgrounds
\pgfsetlayers{background,chapter_background,main} % Set the order of the layers (main is the standard layer)
\tikzstyle{part_name} = [rectangle, align=left, text width=2.5cm]
\tikzstyle{part} = [matrix, rectangle, inner sep=0.3cm, node distance=0.05, align=left, fill=black!05]
\tikzstyle{part_background} = [rectangle, inner sep=0.2cm, node distance=0.05, align=left, fill=black!05]
\tikzstyle{chapter} = [rectangle, rounded corners, inner sep=0.05cm, node distance=0.65cm and 0cm, align=center, text width=6cm, draw=black!70, fill=black!20]
\tikzstyle{chapter_text} = [node distance=0.65cm and 0cm, align=center, text width=6cm]
\tikzstyle{chapter_number} = [circle, inner sep=0, minimum width=0.8cm, node distance=0.65cm and 0cm, draw, fill=white]
\tikzstyle{arrow} = [ultra thick, -Triangle]
\newcommand{\drawchapter}[5]{
\node[chapter_number#1] (#2) {#4};
\node[chapter_text, right=of #2] (tx) {#5};
\begin{pgfonlayer}{chapter_background} % Select the chapter background layer
\node[chapter, fit=(#2)(tx), draw] (#3) {};
\end{pgfonlayer}
}
\newcommand{\drawpartbox}[2]{
\begin{pgfonlayer}{background} % Select the background layer
\node[part_background, fit=#1] (#2) {};
\end{pgfonlayer}
}
\drawchapter{}{n1}{c1}{\ref{chap:introduction}}{\nameref{chap:introduction}}
\node[part_name, left=of n1] (part_intro) {Intro};
\drawchapter{, below=of n1}{n2}{c2}{\ref{chap:next}}{\nameref{chap:next}}
\drawchapter{, below=of n2}{n3}{c3}{\ref{chap:another}}{\nameref{chap:another}}
\drawpartbox{(part_intro)(c1)(c2)(c3)}{p1}
\drawchapter{, below=of n3}{n4}{c4}{...}{...}
\node[part_name, left=of n4] (part_middle) {...};
\drawchapter{, below=of n4}{n5}{c5}{...}{...}
\drawpartbox{(part_middle)(c4)(c5)}{p2}
\drawchapter{, below=of n5}{n6}{c6}{\ref{chap:conclusion_and_outlook}}{\nameref{chap:conclusion_and_outlook}}
\node[part_name, left=of n6] (part_end) {...};
\drawpartbox{(part_end)(c6)}{p3}
\draw[arrow] (c1) -- (c2);
\draw[arrow] (c2) -- (c3);
\draw[arrow] (c3) -- (c4);
\draw[arrow] (c4) -- (c5);
\draw[arrow] (c5) -- (c6);
\end{tikzpicture}
\end{adjustbox}
\caption{Structure of the document}
\label{fig:structure}
\end{figure}
\chapter{Next chapter} \label{chap:next}
Test...
\chapter{Another chapter} \label{chap:another}
Test...
\chapter{Conclusion and Outlook} \label{chap:conclusion_and_outlook}
\end{document}
The result looks like this:
