├── .github └── workflows │ └── docker-image.yml ├── .gitignore ├── LICENSE.md ├── README.md ├── degree-thesis ├── Dockerfile ├── Makefile ├── PSIThesis.cls ├── appendices │ ├── appendixA.tex │ ├── appendixB.tex │ └── appendixC.tex ├── chapters │ ├── chapter1.tex │ └── chapter2.tex ├── deps.txt ├── examples │ ├── color-hsb.pdf │ ├── color-mono.pdf │ ├── color-plots-mono.pdf │ ├── color-plots.pdf │ ├── color-saturation.pdf │ ├── diagram-direction.pdf │ ├── diagram-dominance.pdf │ ├── diagram-emphasis.pdf │ ├── diagram-entities.pdf │ ├── diagram-explanations.pdf │ ├── diagram-flowchart.pdf │ ├── diagram-labelsinside.pdf │ ├── diagram-labelsoutside.pdf │ ├── diagram-relationships.pdf │ ├── diagram-tree.pdf │ ├── diagram-variations.pdf │ ├── gestalt-closure.pdf │ ├── gestalt-connectedness.pdf │ ├── gestalt-continuity.pdf │ ├── gestalt-figureground.pdf │ ├── gestalt-proximity.pdf │ ├── gestalt-similarity.pdf │ ├── gestalt-symmetry.pdf │ ├── graphs-barcharts.pdf │ ├── graphs-histograms.pdf │ ├── graphs-linecharts.pdf │ ├── info-orga-continuum.pdf │ ├── info-orga-hierarchy.pdf │ ├── plot.py │ └── wiggled-line.pdf ├── figures │ ├── barplot-after.png │ ├── barplot-before.png │ ├── cat.pdf │ └── plot.pdf ├── fonts │ ├── LICENSE-Roboto.txt │ ├── LICENSE-iosevka.md │ ├── Roboto-Bold.otf │ ├── Roboto-BoldItalic.otf │ ├── Roboto-Italic.otf │ ├── Roboto-Regular.otf │ ├── iosevka-ss04-bold.ttf │ ├── iosevka-ss04-bolditalic.ttf │ ├── iosevka-ss04-italic.ttf │ └── iosevka-ss04-regular.ttf ├── literature.bib ├── main.tex └── misc │ ├── UB_Logo_20mm_CMYK.pdf │ ├── commands.tex │ ├── setup.tex │ └── titlepage.tex └── psi-thesis-guide-v20200913.pdf /.github/workflows/docker-image.yml: -------------------------------------------------------------------------------- 1 | name: Docker Image CI 2 | 3 | on: 4 | push: 5 | branches: [ "master" ] 6 | pull_request: 7 | branches: [ "master" ] 8 | 9 | jobs: 10 | 11 | build: 12 | 13 | runs-on: ubuntu-latest 14 | 15 | steps: 16 | - name: Checkout repository 17 | uses: actions/checkout@v4 18 | - name: Build the Docker image 19 | run: | 20 | cd degree-thesis 21 | make docker 22 | - name: Upload PDF 23 | uses: actions/upload-artifact@v4 24 | with: 25 | name: PDF 26 | path: degree-thesis/pdf 27 | compression-level: 0 28 | - name: Upload logs 29 | uses: actions/upload-artifact@v4 30 | with: 31 | name: logs 32 | path: | 33 | degree-thesis/main.aux 34 | degree-thesis/main.bbl 35 | degree-thesis/main.bcf 36 | degree-thesis/main.blg 37 | degree-thesis/main.log 38 | degree-thesis/main.out 39 | degree-thesis/main.run.xml 40 | degree-thesis/main.toc 41 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # ---> TeX 2 | ## Core latex/pdflatex auxiliary files: 3 | *.aux 4 | *.lof 5 | *.log 6 | *.lot 7 | *.fls 8 | *.out 9 | *.toc 10 | *.fmt 11 | *.fot 12 | *.cb 13 | *.cb2 14 | .*.lb 15 | 16 | ## Intermediate documents: 17 | *.dvi 18 | *.xdv 19 | *-converted-to.* 20 | # these rules might exclude image files for figures etc. 21 | # *.ps 22 | # *.eps 23 | 24 | # the typeset document 25 | main.pdf 26 | 27 | ## Generated if empty string is given at "Please type another file name for output:" 28 | .pdf 29 | 30 | ## Bibliography auxiliary files (bibtex/biblatex/biber): 31 | *.bbl 32 | *.bcf 33 | *.blg 34 | *-blx.aux 35 | *-blx.bib 36 | *.run.xml 37 | 38 | ## Build tool auxiliary files: 39 | *.fdb_latexmk 40 | *.synctex 41 | *.synctex(busy) 42 | *.synctex.gz 43 | *.synctex.gz(busy) 44 | *.pdfsync 45 | 46 | ## Build tool directories for auxiliary files 47 | # latexrun 48 | latex.out/ 49 | 50 | ## Auxiliary and intermediate files from other packages: 51 | # algorithms 52 | *.alg 53 | *.loa 54 | 55 | # achemso 56 | acs-*.bib 57 | 58 | # amsthm 59 | *.thm 60 | 61 | # beamer 62 | *.nav 63 | *.pre 64 | *.snm 65 | *.vrb 66 | 67 | # changes 68 | *.soc 69 | 70 | # comment 71 | *.cut 72 | 73 | # cprotect 74 | *.cpt 75 | 76 | # elsarticle (documentclass of Elsevier journals) 77 | *.spl 78 | 79 | # endnotes 80 | *.ent 81 | 82 | # fixme 83 | *.lox 84 | 85 | # feynmf/feynmp 86 | *.mf 87 | *.mp 88 | *.t[1-9] 89 | *.t[1-9][0-9] 90 | *.tfm 91 | 92 | #(r)(e)ledmac/(r)(e)ledpar 93 | *.end 94 | *.?end 95 | *.[1-9] 96 | *.[1-9][0-9] 97 | *.[1-9][0-9][0-9] 98 | *.[1-9]R 99 | *.[1-9][0-9]R 100 | *.[1-9][0-9][0-9]R 101 | *.eledsec[1-9] 102 | *.eledsec[1-9]R 103 | *.eledsec[1-9][0-9] 104 | *.eledsec[1-9][0-9]R 105 | *.eledsec[1-9][0-9][0-9] 106 | *.eledsec[1-9][0-9][0-9]R 107 | 108 | # glossaries 109 | *.acn 110 | *.acr 111 | *.glg 112 | *.glo 113 | *.gls 114 | *.glsdefs 115 | 116 | # gnuplottex 117 | *-gnuplottex-* 118 | 119 | # gregoriotex 120 | *.gaux 121 | *.gtex 122 | 123 | # htlatex 124 | *.4ct 125 | *.4tc 126 | *.idv 127 | *.lg 128 | *.trc 129 | *.xref 130 | 131 | # hyperref 132 | *.brf 133 | 134 | # knitr 135 | *-concordance.tex 136 | # TODO Comment the next line if you want to keep your tikz graphics files 137 | *.tikz 138 | *-tikzDictionary 139 | 140 | # listings 141 | *.lol 142 | 143 | # makeidx 144 | *.idx 145 | *.ilg 146 | *.ind 147 | *.ist 148 | 149 | # minitoc 150 | *.maf 151 | *.mlf 152 | *.mlt 153 | *.mtc[0-9]* 154 | *.slf[0-9]* 155 | *.slt[0-9]* 156 | *.stc[0-9]* 157 | 158 | # minted 159 | _minted* 160 | *.pyg 161 | 162 | # morewrites 163 | *.mw 164 | 165 | # nomencl 166 | *.nlg 167 | *.nlo 168 | *.nls 169 | 170 | # pax 171 | *.pax 172 | 173 | # pdfpcnotes 174 | *.pdfpc 175 | 176 | # sagetex 177 | *.sagetex.sage 178 | *.sagetex.py 179 | *.sagetex.scmd 180 | 181 | # scrwfile 182 | *.wrt 183 | 184 | # sympy 185 | *.sout 186 | *.sympy 187 | sympy-plots-for-*.tex/ 188 | 189 | # pdfcomment 190 | *.upa 191 | *.upb 192 | 193 | # pythontex 194 | *.pytxcode 195 | pythontex-files-*/ 196 | 197 | # tcolorbox 198 | *.listing 199 | 200 | # thmtools 201 | *.loe 202 | 203 | # TikZ & PGF 204 | *.dpth 205 | *.md5 206 | *.auxlock 207 | 208 | # todonotes 209 | *.tdo 210 | 211 | # easy-todo 212 | *.lod 213 | 214 | # xcolor 215 | *.xcp 216 | 217 | # xmpincl 218 | *.xmpi 219 | 220 | # xindy 221 | *.xdy 222 | 223 | # xypic precompiled matrices 224 | *.xyc 225 | 226 | # endfloat 227 | *.ttt 228 | *.fff 229 | 230 | # Latexian 231 | TSWLatexianTemp* 232 | 233 | ## Editors: 234 | # WinEdt 235 | *.bak 236 | *.sav 237 | 238 | # Texpad 239 | .texpadtmp 240 | 241 | # LyX 242 | *.lyx~ 243 | 244 | # Kile 245 | *.backup 246 | 247 | # KBibTeX 248 | *~[0-9]* 249 | 250 | # auto folder when using emacs and auctex 251 | ./auto/* 252 | *.el 253 | 254 | # expex forward references with \gathertags 255 | *-tags.tex 256 | 257 | # standalone packages 258 | *.sta 259 | 260 | ~$*.* 261 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | # License of Template and Guide 2 | 3 | We have chosen a license that allows you to use the template 4 | for your thesis and make changes as needed. You are *not* 5 | required to publish your thesis or its source code under the 6 | same license. If you fork the template or the guide, however, 7 | you have to comply with the following licensing restrictions. 8 | 9 | This guide and the template are made available 10 | under the Creative Commons license CC BY-SA 4.0 (http://creativecommons.org/licenses/by-sa/4.0/) 11 | with two exceptions: 12 | 13 | - Some excerpts, figures, and tables in Chapter 2 and 14 | Appendix B have been taken from the literature. The 15 | respective elements are explicitly marked with a citation 16 | and a note regarding the permission to re-use. They are not 17 | covered by the CC license. Permission to re-use and 18 | distribute these figures, tables, and excerpts must be 19 | obtained from the respective copyright holders. 20 | 21 | - Parts of Chapter 1 and Appendix C contain content from the 22 | MastersDoctoralThesis template, which is licensed under 23 | CC BY-SA 3.0. The original content has been written by 24 | Sunil Patel (www.sunilpatel.co.uk) and Vel 25 | (LaTeXTemplates.com). 26 | 27 | As this guide contains copyrighted material from third parties, 28 | you cannot host your own copy of this guide online. Please use 29 | the URLs printed on the title page of the Guide to link to it. 30 | 31 | The files PSIThesis.cls, setup.tex, and titlepage.tex 32 | are made available under the LPPL v1.3c 33 | (http://www.latex-project.org/lppl). 34 | 35 | The fonts that are included in this template in the fonts 36 | directory are licensed under the Apache License 2.0 (Roboto 37 | sans-serif font) and the SIL OFL Version 1.1 (Iosevka monospace 38 | font). 39 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PSIThesis 2 | 3 | ### A LuaLaTeX Template and Thesis Writing Guide 4 | 5 | This repository contains a LaTeX template and a guide for writing a thesis.. 6 | 7 | **Scroll down to see some preview images.** 8 | 9 | **[Download Guide – latest version v20200913](https://github.com/UBA-PSI/psi-thesis-guide/raw/master/psi-thesis-guide-v20200913.pdf) (PDF, 4 MB)** 10 | 11 | **[Download LaTeX Template – latest version v20200913](https://github.com/UBA-PSI/psi-thesis-guide/archive/v20200913pub.zip) (ZIP, 10 MB)** 12 | 13 | The **guide** is typeset with the PSIThesis template, and it contains a lot 14 | of **concrete recommendations (Chapter 2)** that may help you write 15 | a compelling scientific thesis. A particular focus is on the topic of 16 | **designing useful figures and tables (Appendix B)**. 17 | 18 | Read Chapters 1 and 2 in the guide for instructions on using the template. 19 | All source files that are needed to build the guide are contained in this 20 | repository. You can refer to the source files to see how the template is used 21 | in a real-world document. 22 | 23 | Note that the guide contains some figures that have been reproduced from 24 | the literature with permission of the publishers and the authors. As we do not 25 | have permission to redistribute these figures, they are not contained in 26 | this repository. 27 | 28 | The **template** consists of a document class (PSIThesis.cls) and 29 | additional TeX files. It is based on the MastersDoctoralThesis template 30 | (https://www.latextemplates.com/template/masters-doctoral-thesis). 31 | 32 | 33 | ### Who Made This and Why? 34 | 35 | The template and the guide have been created by members of the **Chair 36 | of Privacy and Security in Information Systems** (“PSI”) at the **University 37 | of Bamberg in Germany** (https://www.uni-bamberg.de/psi/). We had 38 | collected recommendations on thesis writing for many years and wanted 39 | to help our students submit a high-quality Bachelor's or Master's thesis. 40 | The template could also be used for for seminar reports and PhD dissertations. 41 | As the material is of general interest, we have released everything publicly 42 | under an open license. 43 | 44 | We encourage our students to use the template without any changes. The 45 | PSIThesis template and the guide reflect, at least to some degree, the personal 46 | taste of members of the chair. If you *do* have a different opinion on a particular 47 | aspect of the template or the guide, we will be happy to hear you out. 48 | 49 | You can reach us via Twitter [(@herdom)](https://twitter.com/herdom) or [email](mailto:dh.psi@uni-bamberg.de). 50 | 51 | ### Changes and Contributions 52 | 53 | The template and the guide are available under an open license (CC BY SA 4.0). 54 | If you want to use the template for a thesis submitted at a different 55 | department or organization, feel free to make changes at your discretion. 56 | Redistribution of the guide and the template is subject to the license (see 57 | details explained in LICENSE.md and the Guide). 58 | 59 | If you wish to contribute to the template or the guide, you may create an 60 | Issue or a Pull Request in the GitHub repository. 61 | 62 | 63 | --- 64 | 65 | ## Preview of the Content of the Guide and the Look of the Template 66 | 67 | ### Title Page 68 | 69 | ![s1](https://user-images.githubusercontent.com/6500007/89696457-40edf300-d918-11ea-8932-f3455d4a1601.png) 70 | 71 | --- 72 | 73 | ### Table of Contents 74 | 75 | ![s2](https://user-images.githubusercontent.com/6500007/89696471-4fd4a580-d918-11ea-974d-676bd055a17c.png) 76 | 77 | --- 78 | 79 | ### Layout with Wide Margin 80 | 81 | ![s3](https://user-images.githubusercontent.com/6500007/89696473-52cf9600-d918-11ea-923d-efc250110db7.png) 82 | 83 | --- 84 | 85 | ### Language and Style 86 | 87 | ![s4](https://user-images.githubusercontent.com/6500007/89696476-54995980-d918-11ea-8a77-5f994534f3ce.png) 88 | 89 | --- 90 | 91 | ### Chapter Heading 92 | 93 | ![s5](https://user-images.githubusercontent.com/6500007/89696478-56631d00-d918-11ea-8622-95b7cc836d9d.png) 94 | 95 | --- 96 | 97 | ### Designing Figures 1 98 | 99 | ![s6](https://user-images.githubusercontent.com/6500007/89696480-582ce080-d918-11ea-8556-d79bd80f6158.png) 100 | 101 | --- 102 | 103 | ### Designing Figures 2 104 | 105 | ![s7](https://user-images.githubusercontent.com/6500007/89696481-59f6a400-d918-11ea-810c-3b01bf517567.png) 106 | --- 107 | 108 | ### Designing Tables 3 109 | 110 | ![s8](https://user-images.githubusercontent.com/6500007/89696485-5bc06780-d918-11ea-8f14-4a7d146e70b2.png) 111 | 112 | --- 113 | 114 | ### Designing Tables 115 | 116 | 117 | ![s9](https://user-images.githubusercontent.com/6500007/89696487-5cf19480-d918-11ea-862e-2325011ce61f.png) 118 | -------------------------------------------------------------------------------- /degree-thesis/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alpine:3.19 2 | 3 | # update and install system dependencies 4 | RUN apk update 5 | RUN apk add --no-cache \ 6 | wget \ 7 | gpg \ 8 | make \ 9 | bash \ 10 | perl \ 11 | python3 \ 12 | py3-pygments 13 | 14 | # install texlive 15 | RUN mkdir install-tl 16 | RUN wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz; \ 17 | tar -xvf install-tl-unx.tar.gz -C install-tl --strip-components=1; \ 18 | echo "selected_scheme scheme-basic" > install-tl/texlive.profile; \ 19 | install-tl/install-tl -profile install-tl/texlive.profile; \ 20 | rm -rf install-tl; \ 21 | rm install-tl-unx.tar.gz 22 | 23 | ENV PATH="/usr/local/texlive/2024/bin/x86_64-linuxmusl:${PATH}" 24 | 25 | # setup a work directory 26 | WORKDIR /build 27 | 28 | # only copy the depenency file to avoid reinstalling on every file change 29 | COPY deps.txt /build/deps.txt 30 | 31 | # Update tlmgr to make sure we are using the latest version 32 | RUN tlmgr update --self 33 | 34 | # Install packages from deps.txt 35 | RUN grep -v '^#' deps.txt | xargs tlmgr install 36 | 37 | # copy the rest of the files 38 | COPY . /build 39 | 40 | # setup a volume for the build 41 | VOLUME ["/build"] 42 | 43 | # build the pdf 44 | ENTRYPOINT ["make"] 45 | -------------------------------------------------------------------------------- /degree-thesis/Makefile: -------------------------------------------------------------------------------- 1 | # define the tex sources to be used 2 | SOURCES = main.tex misc/setup.tex misc/titlepage.tex $(wildcard chapters/*.tex) $(wildcard appendices/*.tex) literature.bib 3 | 4 | # define depenencies for the docker build 5 | DOCKERSOURCES = Dockerfile deps.txt 6 | 7 | # define the options for the lualatex compiler 8 | OPTS = -shell-escape -interaction=nonstopmode 9 | 10 | # this is the main target, it will compile the pdf 11 | main.pdf: $(SOURCES) 12 | lualatex $(OPTS) main.tex && biber main && lualatex $(OPTS) main.tex && lualatex $(OPTS) main.tex 13 | $(MAKE) move 14 | 15 | # this target will compile the pdf in a docker container, the results will be moved to the main directory 16 | docker: $(SOURCES) $(DOCKERSOURCES) 17 | # build the image 18 | docker build . -t build 19 | # run the image as container, autoremoves the container after the run 20 | docker run --rm -v "${PWD}:/build" --name build build 21 | # remove the image (will not effect cached partial images) 22 | docker rmi build 23 | 24 | # remove all the files that are created during the compilation 25 | clean: 26 | latexmk -c && rm -f main.pdf && rm -f main.bbl && rm -f main.run.xml 27 | 28 | # move the pdf to the pdf directory 29 | move: 30 | if [ -d pdf ]; then \ 31 | mv *.pdf pdf/.; \ 32 | else \ 33 | mkdir pdf; \ 34 | mv *.pdf pdf/.; \ 35 | fi 36 | -------------------------------------------------------------------------------- /degree-thesis/PSIThesis.cls: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % PSI Chair Thesis Template 4 | % Version 2020-08-25 5 | % 6 | % based on MastersDoctoralThesis.cls 7 | % Version 1.6 (27/8/17) 8 | % 9 | % which was obtained from: 10 | % http://www.LaTeXTemplates.com 11 | % 12 | % Authors of original class file: 13 | % Vel (vel@latextemplates.com) 14 | % Johannes Böttcher 15 | % 16 | % Changes for PSI Chair @ University of Bamberg by 17 | % Dominik Herrmann and Fabian Lamprecht 18 | % - Simplified Layout of Abstract page 19 | % - Changed Caption Setup 20 | % 21 | % Notes: 22 | % 1) This class file defines the structure and layout of the template file (main.tex). 23 | % 2) It has been written in such a way that under most circumstances you should not need 24 | % to edit it; updating it to a newer version will be harder. If you do make changes, please change the name of 25 | % the file and add comments to make your changes more visible. 26 | % 27 | % Class license: 28 | % LPPL v1.3c (http://www.latex-project.org/lppl) 29 | % 30 | % Changes: 31 | % * 2020-08-25: corrected capitalization of classname in \classname 32 | % 33 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 34 | 35 | %---------------------------------------------------------------------------------------- 36 | % CLASS DEFINITION AND PARAMETERS 37 | %---------------------------------------------------------------------------------------- 38 | 39 | \NeedsTeXFormat{LaTeX2e}[1996/12/01] 40 | \newcommand{\classname}{PSIThesis} 41 | \ProvidesClass{\classname}[2020/08/25] 42 | \providecommand{\baseclass}{book} 43 | \RequirePackage{etoolbox} 44 | \RequirePackage{xparse} 45 | \newbool{nolistspace} 46 | \newbool{chapteroneline} 47 | \newbool{listtoc} 48 | \newbool{toctoc} 49 | \newbool{parskip} 50 | \newbool{minted} 51 | \newbool{hyperrefsupport} 52 | \booltrue{hyperrefsupport} 53 | \newbool{headsepline} 54 | \newbool{consistentlayout} 55 | 56 | \DeclareOption{nohyperref}{\boolfalse{hyperrefsupport}} 57 | \DeclareOption{nolistspacing}{\booltrue{nolistspace}} 58 | \DeclareOption{liststotoc}{\booltrue{listtoc}} 59 | \DeclareOption{chapterinoneline}{\booltrue{chapteroneline}} 60 | \DeclareOption{minted}{\booltrue{minted}} 61 | \DeclareOption{toctotoc}{\booltrue{toctoc}} 62 | \DeclareOption{parskip}{\booltrue{parskip}} 63 | \DeclareOption{headsepline}{\booltrue{headsepline}} 64 | \DeclareOption{consistentlayout}{\booltrue{consistentlayout}} 65 | \DeclareOption*{\PassOptionsToClass{\CurrentOption}{\baseclass}} 66 | 67 | \ProcessOptions\relax 68 | 69 | \LoadClass{\baseclass} 70 | 71 | % Simple interface for the user to customize the chapter titles 72 | \ProvideDocumentCommand{\abovechapterskip}{}{\vspace*{20pt}} 73 | \ProvideDocumentCommand{\chapterbelowskip}{}{\vspace*{40pt}} 74 | \ProvideDocumentCommand{\chapterinbetweenskip}{}{\vspace*{20pt}} 75 | \ProvideDocumentCommand{\autodot}{}{} 76 | \ProvideDocumentCommand{\mdtChapapp}{}{} 77 | \ProvideDocumentCommand{\chapteralign}{}{\raggedright} 78 | \ProvideDocumentCommand{\chapterfont}{}{\Huge\bfseries} 79 | \ProvideDocumentCommand{\chapterprefixfont}{}{\LARGE\bfseries} 80 | \DeclareDocumentCommand{\@makechapterhead}{ m }{% 81 | \abovechapterskip 82 | {\parindent \z@ \chapteralign \normalfont 83 | \ifnum \c@secnumdepth >\m@ne 84 | \if@mainmatter 85 | \ifbool{chapteroneline}{% 86 | \chapterfont \mdtChapapp\thechapter\autodot\enspace 87 | }{% 88 | \chapterprefixfont \@chapapp\space \thechapter 89 | \par\nobreak 90 | \chapterinbetweenskip 91 | }% 92 | \fi 93 | \fi 94 | \interlinepenalty\@M% 95 | \chapterfont #1\par\nobreak 96 | \chapterbelowskip 97 | } 98 | \thispagestyle{\chapter@p@gestyle} 99 | } 100 | \def\@makeschapterhead#1{% 101 | \abovechapterskip 102 | {\parindent \z@ \chapteralign 103 | \normalfont 104 | \interlinepenalty\@M 105 | \chapterfont #1\par\nobreak 106 | \chapterbelowskip 107 | } 108 | \thispagestyle{\chapter@p@gestyle} 109 | } 110 | 111 | 112 | % Addchap provides unnumbered chapters with an entry in the table of contents as well as an updated header 113 | \ProvideDocumentCommand{\addchap}{ s o m }{% 114 | \chapter*{#3}% 115 | \markboth{}{}% 116 | \IfBooleanTF{#1}{% 117 | }{% 118 | \IfNoValueTF{#2}{% 119 | \addchaptertocentry{#3}% 120 | \markboth{\MakeMarkcase{#3}}{\MakeMarkcase{#3}}% 121 | }{% 122 | \addchaptertocentry{#2}% 123 | \markboth{\MakeMarkcase{#2}}{\MakeMarkcase{#2}}% 124 | }% 125 | }% 126 | }% 127 | 128 | \ProvideDocumentCommand{\addsec}{ s o m }{% 129 | \section*{#3}% 130 | \markright{}% 131 | \IfBooleanTF{#1}{% 132 | }{% 133 | \IfNoValueTF{#2}{% 134 | \addcontentsline{toc}{section}{#3}% 135 | \markright{\MakeMarkcase{#3}}%% 136 | }{% 137 | \addcontentsline{toc}{section}{#2}% 138 | \markright{\MakeMarkcase{#2}}% 139 | }% 140 | }% 141 | }% 142 | 143 | %---------------------------------------------------------------------------------------- 144 | % CLASS OPTIONS 145 | %---------------------------------------------------------------------------------------- 146 | 147 | \ifbool{parskip}{\RequirePackage{parskip}} % If the parskip option is passed to the class, require the parskip package 148 | 149 | 150 | \ifbool{listtoc}{% If the liststotoc option has been passed to the class, add the lists to the table of contents 151 | \patchcmd{\listoftables}{\@starttoc{lot}}{% 152 | \addchaptertocentry{\listtablename}\@starttoc{lot}% 153 | }{}{}% 154 | \patchcmd{\listoffigures}{\@starttoc{lof}}{% 155 | \addchaptertocentry{\listfigurename}\@starttoc{lof}% 156 | }{}{}% 157 | } 158 | 159 | \ifbool{toctoc}{% If the toctotoc options has been passed to the class, add the table of contents to the table of contents 160 | \patchcmd{\tableofcontents}{\@starttoc{toc}% 161 | }{% 162 | \addchaptertocentry{\contentsname}\@starttoc{toc}}{}{}% 163 | } 164 | 165 | \patchcmd{\tableofcontents}{\MakeUppercase}{\MakeMarkcase}{}{} 166 | \patchcmd{\tableofcontents}{\MakeUppercase}{\MakeMarkcase}{}{} 167 | \patchcmd{\listoffigures}{\MakeUppercase}{\MakeMarkcase}{}{} 168 | \patchcmd{\listoffigures}{\MakeUppercase}{\MakeMarkcase}{}{} 169 | \patchcmd{\listoftables}{\MakeUppercase}{\MakeMarkcase}{}{} 170 | \patchcmd{\listoftables}{\MakeUppercase}{\MakeMarkcase}{}{} 171 | 172 | % If the option `nolistspacing' is given, the spacing in the different lists is reduced to single spacing. This option is only useful, if the spacing of the document has been changed to onehalfspacing or doublespacing. 173 | \ifbool{nolistspace}{ 174 | \patchcmd{\listoffigures}{% 175 | \@starttoc{lof} 176 | }{% 177 | \begingroup% 178 | \singlespace\@starttoc{lof}\endgroup% 179 | }{}{}% 180 | \patchcmd{\listoftables}{% 181 | \@starttoc{lot} 182 | }{% 183 | \begingroup% 184 | \singlespace\@starttoc{lot}\endgroup% 185 | }{}{}% 186 | \patchcmd{\tableofcontents}{% 187 | \@starttoc{toc} 188 | }{% 189 | \begingroup% 190 | \singlespace\@starttoc{toc}\endgroup% 191 | }{}{}% 192 | }{} 193 | 194 | 195 | %---------------------------------------------------------------------------------------- 196 | % TABLE OF CONTENTS SETUP 197 | %---------------------------------------------------------------------------------------- 198 | 199 | % solution inspired from https://tex.stackexchange.com/questions/178510/how-can-i-reproduce-this-beautiful-table-of-contents 200 | \usepackage{etoc} 201 | \etocsetlevel{section}{2} 202 | \etocsetlevel{subsection}{3} 203 | 204 | \etocsettocdepth{section} % set to subsection for adding subsections to toc (not recommended) 205 | 206 | \newlength{\tocleft} 207 | \setlength{\tocleft}{2.5cm} % must be set to fit the innermargin defined in geometry (change only if you have changed the margins) 208 | 209 | \newlength{\tocsep} 210 | \setlength{\tocsep}{2em} 211 | 212 | \usepackage{textcase} 213 | 214 | 215 | \etocsetstyle{chapter} 216 | {} 217 | {} 218 | {\etocifnumbered 219 | {\makebox[0pt][r] 220 | % we use \etocthenumber instead of \etocnumber to avoid the href, which is part of \etocthenumber, messing with MakeTextLowercase 221 | {\textsc{\MakeTextLowercase\chaptername\ \MakeTextLowercase\etocthenumber}\hspace{\tocsep}}% 222 | \textbf{\etocname\kern1em\relax\etocpage}% 223 | }% 224 | {\textbf{\etocname\kern1em\relax\etocpage}}% 225 | \par\vspace{3ex}% 226 | }% 227 | {} 228 | 229 | \etocsetstyle{section} 230 | {\vspace{-2ex}} % Muss von den 3ex aus Chapter abgezogen werden 231 | {} 232 | % see the comment regarding etocthenumber in the chapter style definition 233 | {\makebox[0pt][r]{\textsc{\MakeTextLowercase\etocthenumber}\hspace{\tocsep}}% 234 | \etocname\kern1em\etocpage\par% 235 | }% 236 | {\addvspace{3ex}} % 3ex falls danach Chapter kommt 237 | 238 | \etocsetstyle{subsection} 239 | {\vspace{0ex}} 240 | {} 241 | {\makebox[3em][l]{\etocnumber}\etocname\kern1em\etocpage\par} 242 | {\addvspace{2ex}} % 2ex falls danach Section kommt 243 | 244 | \etocsettocstyle{\chapter*{\contentsname} 245 | \thispagestyle{plain}% 246 | \leftskip\tocleft\parindent0pt}{} 247 | 248 | 249 | %---------------------------------------------------------------------------------------- 250 | % HEADINGS SETUP (CHAPTERS, SECTIONS, …) 251 | %---------------------------------------------------------------------------------------- 252 | 253 | \usepackage[explicit]{titlesec} 254 | \newcommand{\hsp}{\hspace{20pt}} 255 | 256 | \setcounter{secnumdepth}{3} 257 | 258 | % We use lining figures for headers (tlfstyle) because they fit better with uppercase letters than old-style figures. 259 | 260 | % chapters have a vertical line between number and title 261 | \titleformat{\chapter}[hang]{\Huge\bfseries\tlfstyle}{\color{black}\thechapter}{20pt}{\begin{tabular}[t]{@{\color{ubblue60}\vrule width 2pt\hsp}p{0.85\textwidth}}\raggedright #1\end{tabular}} 262 | 263 | % sections 264 | \titleformat{\section}[hang]{\bfseries\large\tlfstyle}{{\color{ubblue}\thechapter.\arabic{section}}}{1ex}{{\color{ubblue} #1}}{} 265 | 266 | % subsections 267 | \titleformat{\subsection}[hang]{\bfseries\large\tlfstyle}{{\color{ubblue}\thechapter.\arabic{section}.\arabic{subsection}}}{1ex}{{\color{ubblue} #1}}{} 268 | 269 | % subsubsections 270 | \titleformat{\subsubsection}[hang]{\bfseries\tlfstyle}{{\color{ubblue}\thechapter.\arabic{section}.\arabic{subsection}.\arabic{subsubsection}}}{1ex}{{\color{ubblue} #1}}{} 271 | 272 | % vertical spacing for headings ============== 273 | \titlespacing*{\section} 274 | {0pt}{7ex}{3ex} 275 | 276 | \titlespacing*{\subsection} 277 | {0pt}{4ex}{2ex} 278 | 279 | \titlespacing*{\subsubsection} 280 | {0pt}{4ex}{2ex} 281 | % end of vertical spacing ==================== 282 | 283 | %---------------------------------------------------------------------------------------- 284 | % REQUIRED PACKAGES 285 | %---------------------------------------------------------------------------------------- 286 | 287 | \RequirePackage{babel} % Required for automatically changing names of document elements to languages besides english 288 | 289 | \RequirePackage{scrbase} % Required for handling language-dependent names of sections/document elements 290 | 291 | \RequirePackage{scrhack} % Loads fixes for various packages 292 | 293 | \RequirePackage{setspace} % Required for changing line spacing 294 | 295 | \RequirePackage{longtable} % Required for tables that span multiple pages (used in the symbols, abbreviations and physical constants pages) 296 | 297 | \RequirePackage{siunitx} % Required for \SI commands 298 | \RequirePackage{textcomp} % I am sure it does something, probably font related 299 | 300 | \RequirePackage{graphicx} % Required to include images 301 | \graphicspath{{figures/}{./}} % Specifies where to look for included images 302 | 303 | \RequirePackage{booktabs} % Required for better table rules 304 | 305 | \RequirePackage{caption} % Required for customising the captions 306 | \captionsetup{format=plain,justification=RaggedRight,font=small,labelfont=bf,margin=0pt,singlelinecheck=true,tableposition=top,figureposition=bottom} 307 | 308 | %---------------------------------------------------------------------------------------- 309 | % DEFINE CUSTOM THESIS INFORMATION COMMANDS 310 | %---------------------------------------------------------------------------------------- 311 | 312 | \NewDocumentCommand{\thesistitle} { o m }{% 313 | \IfValueTF{#1}{\def\shorttitle{#1}}{\def\shorttitle{#2}}% 314 | \def\@title{#2}% 315 | \def\ttitle{#2}% 316 | } 317 | \DeclareDocumentCommand{\author}{m}{\newcommand{\authorname}{#1}\renewcommand{\@author}{#1}} 318 | \NewDocumentCommand{\supervisor}{m}{\newcommand{\supname}{#1}} 319 | \NewDocumentCommand{\examiner}{m}{\newcommand{\examname}{#1}} 320 | \NewDocumentCommand{\degree}{m}{\newcommand{\degreename}{#1}} 321 | \NewDocumentCommand{\addresses}{m}{\newcommand{\addressname}{#1}} 322 | \NewDocumentCommand{\university}{m}{\newcommand{\univname}{#1}} 323 | \NewDocumentCommand{\department}{m}{\newcommand{\deptname}{#1}} 324 | \NewDocumentCommand{\group}{m}{\newcommand{\groupname}{#1}} 325 | \NewDocumentCommand{\faculty}{m}{\newcommand{\facname}{#1}} 326 | \NewDocumentCommand{\subject}{m}{\newcommand{\subjectname}{#1}} 327 | \NewDocumentCommand{\keywords}{m}{\newcommand{\keywordnames}{#1}} 328 | 329 | \newcommand{\checktoopen}{% New command to move content to the next page which prints to the next odd page if twosided mode is active 330 | \if@openright\cleardoublepage\else\clearpage\fi 331 | \ifdef{\phantomsection}{\phantomsection}{}% The \phantomsection command is necessary for hyperref to jump to the correct page 332 | } 333 | 334 | \NewDocumentCommand{\bhrule}{}{\typeout{--------------------}} 335 | \NewDocumentCommand{\tttypeout}{m}{\bhrule\typeout{\space #1}\bhrule} 336 | 337 | \newcommand{\HRule}{\rule{.9\linewidth}{.6pt}} % New command to make the lines in the title page 338 | \newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}} % New command for a rule to be used under figures 339 | \newcommand{\decoRuleFlex}[1]{\rule{#1}{.4pt}} 340 | 341 | 342 | \setcounter{tocdepth}{2} % The depth to which the document sections are printed to the table of contents 343 | \ProvideDocumentCommand{\addchaptertocentry}{ m }{% 344 | \addcontentsline{toc}{chapter}{#1}% 345 | } 346 | 347 | %---------------------------------------------------------------------------------------- 348 | % COLOURS 349 | %---------------------------------------------------------------------------------------- 350 | 351 | \usepackage{xcolor} % Required for specifying custom colours 352 | 353 | \colorlet{mdtRed}{red!50!black} 354 | 355 | % University of Bamberg color codes 356 | % 357 | % Base Color value obtained from UB Corporate Identity Manual 358 | \definecolor{ubblue}{HTML}{00457D} 359 | \definecolor{ubblue80}{HTML}{336A97} 360 | \definecolor{ubblue60}{HTML}{668FB1} 361 | \definecolor{ubblue40}{HTML}{99B5CB} 362 | \definecolor{ubblue20}{HTML}{CCDAE5} 363 | 364 | \definecolor{ubyellow}{HTML}{FFD300} 365 | \definecolor{ubyellow25}{HTML}{FFF4BF} 366 | 367 | \definecolor{ubred}{HTML}{e6444F} 368 | 369 | \definecolor{ubgreen}{HTML}{97BF0D} 370 | 371 | \definecolor{gray75}{gray}{0.75} 372 | \definecolor{gray50}{gray}{0.50} 373 | 374 | %---------------------------------------------------------------------------------------- 375 | % MARGINS 376 | %---------------------------------------------------------------------------------------- 377 | 378 | \RequirePackage{geometry} 379 | % Using the layout from kaobook 380 | \geometry{ 381 | paper=a4paper, 382 | head=13.6pt, 383 | top=27.4mm, 384 | bottom=27.4mm, 385 | inner=24.8mm, 386 | %outer=24.8mm, 387 | %right=2.183cm, 388 | textwidth=107mm, 389 | marginparsep=8.2mm, 390 | marginparwidth=49.4mm, 391 | %textheight=49\baselineskip, 392 | includemp, 393 | % showframe 394 | } 395 | 396 | % Wide figures span text and margin. 397 | % Use the pre-calculated length \widefigurewidth in \includegraphics. 398 | \def\widefigurewidth{\dimexpr(\marginparwidth + \textwidth + \marginparsep)} 399 | 400 | \raggedbottom 401 | 402 | %---------------------------------------------------------------------------------------- 403 | % PENALTIES 404 | %---------------------------------------------------------------------------------------- 405 | 406 | \doublehyphendemerits=10000 % No consecutive line hyphens 407 | \brokenpenalty=10000 % No broken words across columns/pages 408 | \widowpenalty=10000 % Almost no widows at bottom of page 409 | \clubpenalty=10000 % Almost no orphans at top of page 410 | \interfootnotelinepenalty=9999 % Almost never break footnotes 411 | 412 | %---------------------------------------------------------------------------------------- 413 | % HEADERS AND FOOTERS 414 | %---------------------------------------------------------------------------------------- 415 | 416 | \RequirePackage[markcase=used]{scrlayer-scrpage} 417 | \providepairofpagestyles{thesisSimple}{% 418 | \clearpairofpagestyles% 419 | \automark[chapter]{chapter} 420 | \ihead{\headmark}% Inner header 421 | \ohead[\pagemark]{\pagemark}% Outer header 422 | } 423 | \ifoot{}% Inner footer 424 | \ofoot{}% Outer footer 425 | 426 | \pagestyle{thesisSimple} 427 | \providepairofpagestyles[thesisSimple]{thesis}{% 428 | \automark*[section]{}% 429 | } 430 | \providepairofpagestyles[thesisSimple]{review}{% 431 | \ofoot[\shorttitle/\authorname]{\shorttitle/\authorname} 432 | \ifoot[\today]{\today} 433 | } 434 | \pagestyle{thesis} 435 | \ifbool{headsepline}{\KOMAoption{headsepline}{true}}{} 436 | \PreventPackageFromLoading[\ClassError{\classname}{Package `fancyhdr' is 437 | incompatible\MessageBreak with this class}{The pagesyles are defined 438 | using package `scrlayer-scrpage', please consult the\MessageBreak 439 | KOMA-script documentation for details.}]{fancyhdr} 440 | 441 | 442 | \newcommand{\blank@p@gestyle}{empty} 443 | \newcommand{\chapter@p@gestyle}{plain} 444 | \NewDocumentCommand{\blankpagestyle}{ m }{% 445 | \ClassWarning{\classname}{\string\blankpagestyle\space is 446 | obsolete,\MessageBreak use \string\setblankpagestyle \space instead}\renewcommand{\blank@p@gestyle}{}{#1} 447 | } 448 | \NewDocumentCommand{\setblankpagestyle}{ m }{\renewcommand{\blank@p@gestyle}{#1}} 449 | \NewDocumentCommand{\setchapterpagestyle}{ m }{\renewcommand{\chapter@p@gestyle}{#1}} 450 | 451 | \DeclareDocumentCommand\cleardoublepage{}{\clearpage\if@twoside \ifodd\c@page\else 452 | \hbox{} 453 | \thispagestyle{\blank@p@gestyle} 454 | \newpage 455 | \if@twocolumn\hbox{}\newpage\fi\fi\fi% 456 | } 457 | 458 | % new header/footer, from kaobook; we could probably remove the original definitions from the cls 459 | \renewpagestyle{thesis}{ 460 | {\hspace{-\marginparwidth}\hspace{-\marginparsep}\makebox[\overflowingheadlen][l]{\textup{\thepage}\quad\rule[-\dp\strutbox]{1pt}{\baselineskip}\quad{}\textup{\textsc{\MakeLowercase \leftmark}}}} % left page two sided 461 | {\makebox[\overflowingheadlen][r]{\textup{\textsc{\MakeLowercase \rightmark}}\quad\rule[-\dp\strutbox]{1pt}{\baselineskip}\quad\textup{\thepage}}} % right page two sided 462 | % TODO ifthispageodd appears to not effect the header of even/odd pages in onesided layouts 463 | {\ifthispageodd{\makebox[\overflowingheadlen][l]{\textup{\thepage}\quad\rule[-\dp\strutbox]{1pt}{\baselineskip}\quad{}\textup{\textsc{\MakeLowercase \leftmark}}}}{\makebox[\overflowingheadlen][l]{\textup{\thepage}\quad\rule[-\dp\strutbox]{1pt}{\baselineskip}\quad{}\textup{\textsc{\MakeLowercase \rightmark}}}}} % one sided 464 | }{ 465 | {}% 466 | {}% 467 | {} 468 | } 469 | \renewpagestyle{plain.thesis}{ 470 | {}% 471 | {}% 472 | {} 473 | }{ 474 | {\hspace{-\marginparwidth}\hspace{-\marginparsep}\makebox[\overflowingheadlen][l]{\textup{\textsc{\thepage}}\quad\rule[-\dp\strutbox]{1pt}{\baselineskip}}} % left page two sided 475 | {\makebox[\overflowingheadlen][r]{\rule[-\dp\strutbox]{1pt}{\baselineskip}\quad\textup{\textsc{\thepage}}}} % right page two sided 476 | {\makebox[\overflowingheadlen][l]{\textup{\textsc{\thepage}}\quad\rule[-\dp\strutbox]{1pt}{\baselineskip}}} % one sided 477 | } 478 | 479 | \newlength{\overflowingheadlen} 480 | \setlength{\overflowingheadlen}{\textwidth} 481 | \addtolength{\overflowingheadlen}{\marginparsep} 482 | \addtolength{\overflowingheadlen}{\marginparwidth} 483 | 484 | 485 | 486 | %---------------------------------------------------------------------------------------- 487 | % LISTINGS 488 | % %---------------------------------------------------------------------------------------- 489 | 490 | \ifbool{minted}{ 491 | %True 492 | \usepackage{minted} 493 | 494 | % set up a new environment using minted for latex code 495 | \newenvironment{latex} 496 | {\VerbatimEnvironment 497 | \begin{minted}{latex}} 498 | {\end{minted}} 499 | 500 | } { 501 | % False 502 | \usepackage{listings} 503 | \definecolor{darkgray}{rgb}{.4,.4,.4} 504 | 505 | \lstdefinelanguage{JavaScript}{ 506 | keywords={typeof, new, true, false, catch, function, return, null, catch, switch, var, if, in, while, do, else, case, break}, 507 | ndkeywords={class, export, boolean, throw, implements, import, this}, 508 | sensitive=false, 509 | comment=[l]{//}, 510 | morecomment=[s]{/*}{*/}, 511 | morestring=[b]', 512 | morestring=[b]" 513 | } 514 | 515 | \lstset{ 516 | aboveskip={1\baselineskip}, 517 | abovecaptionskip=-1\baselineskip, 518 | belowcaptionskip=2ex, 519 | basicstyle=\footnotesize\ttfamily\linespread{4}, 520 | breaklines=true, 521 | columns=flexible, 522 | commentstyle=\color{gray50}\ttfamily\itshape, 523 | escapechar=@, 524 | extendedchars=true, 525 | frame=l, 526 | framerule=.5pt, 527 | identifierstyle=\color{black}, 528 | inputencoding=latin1, 529 | keywordstyle=\color{ubblue80}\bfseries, 530 | ndkeywordstyle=\color{ubblue80}\bfseries, 531 | numbers=left, 532 | numbersep=1.25em, 533 | numberstyle=\scriptsize\ttfamily, 534 | prebreak = \raisebox{0ex}[0ex][0ex]{\ensuremath{\hookleftarrow}}, 535 | stringstyle=\color{ubblue60}\ttfamily, 536 | upquote=true, 537 | showstringspaces=false, 538 | } 539 | 540 | \lstset{literate=% 541 | *{0}{{{\color{darkgray}0}}}1 542 | {1}{{{\color{darkgray}1}}}1 543 | {2}{{{\color{darkgray}2}}}1 544 | {3}{{{\color{darkgray}3}}}1 545 | {4}{{{\color{darkgray}4}}}1 546 | {5}{{{\color{darkgray}5}}}1 547 | {6}{{{\color{darkgray}6}}}1 548 | {7}{{{\color{darkgray}7}}}1 549 | {8}{{{\color{darkgray}8}}}1 550 | {9}{{{\color{darkgray}9}}}1 551 | } 552 | 553 | \lstnewenvironment{latex} 554 | {\lstset{language=[LaTeX]TeX}} 555 | {} 556 | } 557 | 558 | %---------------------------------------------------------------------------------------- 559 | % Symbols 560 | %---------------------------------------------------------------------------------------- 561 | 562 | \usepackage{pifont} 563 | \let\oldding\ding% Store old \ding in \oldding 564 | \renewcommand{\ding}[2][1]{\scalebox{#1}{\oldding{#2}}}% Scale \oldding via optional argument 565 | % usage \ding{number} or |ding[factor]{number} 566 | 567 | 568 | %---------------------------------------------------------------------------------------- 569 | % ABBREVIATIONS PAGE DESIGN 570 | %---------------------------------------------------------------------------------------- 571 | 572 | \newcommand{\abbrevname}{List of Abbreviations} 573 | \providecaptionname{english,british,american}{\abbrevname}{List of Abbreviations} 574 | \providecaptionname{ngerman,german,austrian,naustrian}{\abbrevname}{Abk\"urzungsverzeichnis} 575 | \NewDocumentEnvironment{abbreviations}{ m }{% 576 | \ifbool{nolistspace}{\begingroup\singlespacing}{} 577 | \ifbool{listtoc}{\addchap{\abbrevname}}{\addchap*{\abbrevname}} 578 | \begin{longtable}{#1} 579 | }{% 580 | \end{longtable} 581 | \addtocounter{table}{-1}% Don't count this table as one of the document tables 582 | \ifbool{nolistspace}{\endgroup}{} 583 | } 584 | 585 | %---------------------------------------------------------------------------------------- 586 | % ABSTRACT PAGE DESIGN 587 | %---------------------------------------------------------------------------------------- 588 | 589 | \DeclareDocumentCommand{\abstractauthorfont}{}{} 590 | \DeclareDocumentCommand{\abstracttitlefont}{}{} 591 | \newcommand{\byname}{by} 592 | \newcommand{\abstractname}{Abstract} 593 | \providecaptionname{german,ngerman,austrian,naustrian}{\byname}{von} 594 | \providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\byname}{by} 595 | \ifbool{consistentlayout}{ 596 | \DeclareDocumentEnvironment{abstract}{ O{} }{% 597 | \addchap*{\abstractname}% 598 | %{\chapteralign\normalsize\abstractauthorfont \authorname \par}% Author name 599 | %\vspace{\baselineskip} 600 | %{\chapteralign\parbox{.7\linewidth}{\chapteralign\normalsize\itshape\abstracttitlefont\@title}\par}% Thesis title 601 | %\bigskip\noindent\ignorespaces 602 | }% 603 | {}%end alt-abstract 604 | }{% 605 | \DeclareDocumentEnvironment{abstract}{ O{\null\vfill} }{ 606 | \checktoopen 607 | \tttypeout{\abstractname} 608 | #1%added to be able to have abstract more than one page long 609 | \thispagestyle{plain} 610 | \begin{center} 611 | {\normalsize \MakeUppercase{\univname} \par}% University name in capitals 612 | \bigskip 613 | {\huge\textit{\abstractname} \par} 614 | \bigskip 615 | {\normalsize \facname \par}% Faculty name 616 | {\normalsize \deptname \par}% Department name 617 | \bigskip 618 | {\normalsize \degreename\par}% Degree name 619 | \bigskip 620 | {\normalsize\bfseries \@title \par}% Thesis title 621 | \medskip 622 | {\normalsize \byname{} \authorname \par}% Author name 623 | \bigskip 624 | \end{center} 625 | } 626 | { 627 | \vfill\null 628 | } 629 | } 630 | 631 | \DeclareDocumentEnvironment{extraAbstract}{ O{\null\vfill} }{ 632 | \checktoopen 633 | \tttypeout{\abstractname} 634 | #1%added to be able to have abstract more than one page long 635 | \thispagestyle{empty} 636 | \begin{center} 637 | {\normalsize \MakeUppercase{\univname} \par}% University name in capitals 638 | \bigskip 639 | {\huge\textit{\abstractname} \par} 640 | \bigskip 641 | {\normalsize \facname \par}% Faculty name 642 | {\normalsize \deptname \par}% Department name 643 | \bigskip 644 | {\normalsize \degreename\par}% Degree name 645 | \bigskip 646 | {\normalsize\bfseries \@title \par}% Thesis title 647 | \medskip 648 | {\normalsize \byname{} \authorname \par}% Author name 649 | \bigskip 650 | \end{center} 651 | } 652 | { 653 | \vfill\null 654 | } 655 | 656 | %---------------------------------------------------------------------------------------- 657 | % ACKNOWLEDGEMENTS PAGE DESIGN 658 | %---------------------------------------------------------------------------------------- 659 | 660 | \usepackage{xcolor} 661 | \colorlet{mdtRed}{red!50!black} 662 | \newcommand{\acknowledgementname}{Acknowledgements} 663 | \providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish} {\acknowledgementname}{Acknowledgements} % Acknowledgement text for English countries 664 | \providecaptionname{german,ngerman,austrian,naustrian}{\acknowledgementname}{Danksagung} % Acknowledgement text for Germanic countries 665 | 666 | \ifbool{consistentlayout}{ 667 | \DeclareDocumentEnvironment{acknowledgements}{}{% 668 | \tttypeout{\acknowledgementname} 669 | \addchap*{\acknowledgementname} 670 | } 671 | } 672 | { 673 | \DeclareDocumentEnvironment{acknowledgements}{}{% 674 | \checktoopen 675 | \tttypeout{\acknowledgementname} 676 | \thispagestyle{plain} 677 | \begin{center}{\huge\textit{\acknowledgementname}\par}\end{center} 678 | } 679 | { 680 | \vfil\vfil\null 681 | } 682 | } 683 | 684 | %---------------------------------------------------------------------------------------- 685 | % DECLARATION PAGE DESIGN 686 | %---------------------------------------------------------------------------------------- 687 | 688 | \newcommand{\authorshipname}{Declaration of Authorship} 689 | \providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\authorshipname}{Declaration of Authorship} % Declaration of Authorship text for English countries 690 | \providecaptionname{german,ngerman,austrian,naustrian}{\authorshipname}{Eidesstattliche Erkl\"arung} % Declaration of Authorship text for Germanic countries 691 | 692 | \ifbool{consistentlayout}{ 693 | \DeclareDocumentEnvironment{declaration}{}{ 694 | \addchap*{\authorshipname} 695 | }{}% 696 | }{ 697 | \DeclareDocumentEnvironment{declaration}{}{ 698 | \checktoopen 699 | \tttypeout{\authorshipname} 700 | \thispagestyle{plain} 701 | \null\vfil 702 | {\noindent\huge\bfseries\authorshipname\par\vspace{10pt}} 703 | }{} 704 | } 705 | 706 | %---------------------------------------------------------------------------------------- 707 | % DEDICATION PAGE DESIGN 708 | %---------------------------------------------------------------------------------------- 709 | 710 | \ifbool{consistentlayout}{ 711 | \DeclareDocumentCommand{\dedicatory}{ 712 | m O{\vspace*{.7\textheight} } }{ 713 | \checktoopen\tttypeout{Dedicatory} 714 | \markboth{}{} 715 | #2 716 | {\hfill\parbox{.4\textwidth}{\flushright#1\par}} 717 | } 718 | }{ 719 | \newcommand\dedicatory[1]{ 720 | \checktoopen 721 | \tttypeout{Dedicatory} 722 | \null\vfil 723 | \thispagestyle{plain} 724 | \begin{center}{\Large #1}\end{center} 725 | \vfil\null 726 | } 727 | } 728 | 729 | 730 | %---------------------------------------------------------------------------------------- 731 | % PHYSICAL CONSTANTS PAGE DESIGN 732 | %---------------------------------------------------------------------------------------- 733 | 734 | \newcommand{\constantsname}{Physical Constants} 735 | \providecaptionname{english,british,american}{\constantsname}{Physical Constants} 736 | \providecaptionname{ngerman,german,austrian,naustrian}{\constantsname}{Physikalische Konstanten} 737 | 738 | \NewDocumentEnvironment{constants}{ m }{% 739 | \ifbool{nolistspace}{\begingroup\singlespacing}{} 740 | \ifbool{listtoc}{\addchap{\constantsname}}{\addchap*{\constantsname}} 741 | \begin{longtable}{#1} 742 | }{% 743 | \end{longtable} 744 | \addtocounter{table}{-1}% Don't count this table as one of the document tables 745 | \ifbool{nolistspace}{\endgroup}{} 746 | } 747 | 748 | %---------------------------------------------------------------------------------------- 749 | % SYMBOLS PAGE DESIGN 750 | %---------------------------------------------------------------------------------------- 751 | 752 | \newcommand{\symbolsname}{List of Symbols} 753 | \providecaptionname{english,british,american}{\symbolsname}{List of Symbols} 754 | \providecaptionname{ngerman,german,austrian,naustrian}{\symbolsname}{Symbolverzeichnis} 755 | 756 | \NewDocumentEnvironment{symbols}{ m }{% 757 | \ifbool{nolistspace}{\begingroup\singlespacing}{} 758 | \ifbool{listtoc}{\addchap{\symbolsname}}{\addchap*{\symbolsname}} 759 | \begin{longtable}{#1} 760 | }{% 761 | \end{longtable} 762 | \addtocounter{table}{-1}% Don't count this table as one of the document tables 763 | \ifbool{nolistspace}{\endgroup}{} 764 | } 765 | 766 | %---------------------------------------------------------------------------------------- 767 | 768 | \ifbool{hyperrefsupport}{% If the nohyperref class option has not been specified 769 | \AtEndPreamble{\RequirePackage{hyperref} 770 | \hypersetup{pdfpagemode={UseOutlines}, 771 | bookmarksopen=true, 772 | bookmarksopenlevel=0, 773 | hypertexnames=false, 774 | colorlinks=true,% Set to false to disable coloring links 775 | citecolor=magenta,% The color of citations 776 | linkcolor=red,% The color of references to document elements (sections, figures, etc) 777 | urlcolor=mdtRed,% The color of hyperlinks (URLs) 778 | pdfstartview={FitV}, 779 | unicode, 780 | breaklinks=true, 781 | } 782 | 783 | \pdfstringdefDisableCommands{% If there is an explicit linebreak in a section heading (or anything printed to the pdf-bookmarks), it is replaced by a space 784 | \let\\\space% 785 | } 786 | } 787 | }{%nothing 788 | } 789 | 790 | %---------------------------------------------------------------------------------------- 791 | 792 | \endinput 793 | % lazyLizardTracer 794 | -------------------------------------------------------------------------------- /degree-thesis/appendices/appendixA.tex: -------------------------------------------------------------------------------- 1 | % Appendix A 2 | 3 | \chapter{Further Recommendations} 4 | \label{appendixa} 5 | 6 | This appendix contains further recommendations, which our students found useful in the past. 7 | 8 | \section{Introduction, Related Work, and Conclusion} 9 | 10 | \subsection{Introduction Chapter} 11 | 12 | Don’t be boring! Pull in the reader with a peculiar observation or a surprising result of your thesis. 13 | 14 | Approaches to structure your introduction: 15 | \begin{itemize} 16 | \item Start with the general, close with the specific. 17 | \item Start with what is already well-known, move on to what has only recently become known. 18 | \item State the objective of the thesis, then describe your approach. 19 | \end{itemize} 20 | 21 | End the introduction with a paragraph \emph{Outline of the Thesis} that describes its structure in prose. 22 | 23 | \subsection{Related Work Chapter} 24 | 25 | Think about a story and which message you want to convey. Some common themes are: 26 | \begin{itemize} 27 | \item “It used to be a difficult problem, but we know how to solve it.” 28 | \item “While a lot of proposals exist, none has gained traction in reality. X found that one of the primary reasons for that situation is …” 29 | \item “The field is a cat-and-mouse game between refined attacks and defenses. A common theme is … and overlooked areas are …” 30 | \item “While most of the current literature focuses on X, it would make sense to apply techniques from field Y to the problem. One could then refine the problem as …” 31 | \end{itemize} 32 | 33 | \subsection{Conclusion Chapter} 34 | 35 | A basic recipe for a conclusion chapter: 36 | \begin{itemize} 37 | \item a summary, 38 | \item a critical assessment of what you have achieved, 39 | \item pointers to related other topics, 40 | \item a statement of the impact of the results, and 41 | \item pointers to future work. 42 | \end{itemize} 43 | 44 | \section{Thesis Length} 45 | 46 | Typical theses range from 25 to 150 pages. There have been excellent theses at both ends of this spectrum. Do not worry too much about the page count. Write everything that is necessary to assess and reproduce your work, but no more. Less is more! 47 | 48 | Check the individual parts for an appropriate length: Do not write five pages in the introduction if the main part has only 15 pages. 49 | 50 | 51 | \section{Practices to Avoid} 52 | 53 | \begin{itemize} 54 | \item Colloquial style: “Computation power has skyrocketed in the last few years.” 55 | \item Widespread knowledge: “The Internet is becoming more and more important.” 56 | \item Superlatives: “One of the most beautiful concepts,” “great possibilities.” 57 | \item Be careful with strong claims: “the only possibility,” “the best solution,” “impossible.” 58 | \end{itemize} -------------------------------------------------------------------------------- /degree-thesis/appendices/appendixB.tex: -------------------------------------------------------------------------------- 1 | % Appendix B 2 | 3 | \chapter{Designing Figures and Tables} 4 | \label{cha:designingfigtab} 5 | \label{appendixb} 6 | 7 | In Section~\ref{sec:tablesfigureslistings}, we have shown how you can integrate tables, figures, and listings into your thesis. In this appendix, we give recommendations on a higher level. In the following sections, we focus on \emph{designing} compelling figures and tables, i.\,e., how you can present material effectively. For figures, we will cover both graphs as well as diagrams. 8 | 9 | We\marginnote{While this guide is published under a Creative Commons license (cf. Sect.~\ref{sec:license}), this license does not apply to the reproduced figures. Elsevier and/or the authors hold the copyright for the reproduced figures.} 10 | have compiled most of the content in this appendix from the following two books (permission to reproduce the respective figures has been obtained from Elsevier): 11 | \begin{itemize} 12 | \item the book \emph{Designing Science Presentations: A Visual Guide to Figures, Papers, Slides, Posters, and More} by Matt Carter, © 2012 \cite{Carter12} and 13 | \item the book \emph{Information Visualization: Perception for Design} by Colin Ware, © 2012 \cite{Ware12}. 14 | \end{itemize} 15 | 16 | Another useful resource is the book \emph{Universal Principles of Design: 125 Ways to Enhance Usability, Influence Perception, Increase Appeal, Make Better Design Decisions, and Teach Through Design} \cite{Lidwell10}. 17 | 18 | \section{Fundamental Concepts} 19 | 20 | We start by revisiting the fundamentals of visual perception as well as information organization. The following section will apply the concepts shown in this section. 21 | 22 | When you design figures, you should be aware of the Gestalt laws and the HSB color model, which will be described in the following two sections. After that, we will revisit the basics of information organization, which apply to figures and tables alike. 23 | 24 | \subsection{Gestalt Laws} 25 | 26 | The Gestalt laws have been known since the early 1900s. They describe how we perceive patterns. In the following, we will discuss the following Gestalt laws: proximity, similarity, connectedness, continuity, symmetry, closure, and relative size. 27 | 28 | \begin{marginfigure} 29 | \centering 30 | \includegraphics[width=1\textwidth]{gestalt-proximity} 31 | \caption{\label{fig:proxi} Spacing makes us perceive rows or columns (reproduced from \cite{Ware12} with permission).}%[-1\baselineskip] 32 | \end{marginfigure} 33 | 34 | 35 | The first law, \textbf{proximity}, refers to the spatial relationships between groups of objects. Objects that are closer together form a group. We are very sensitive to spatial relationships. Even small changes in spacing can change our interpretation of a scene (cf. Fig.~\ref{fig:proxi}). Therefore, you should ``place symbols and glyphs representing related information close together.'' 36 | \cite{Ware12}. The proximity law is the reason why adding additional vertical space between (groups of) rows helps us with reading a table. 37 | 38 | \begin{marginfigure}[-2\baselineskip] 39 | \centering 40 | \includegraphics[width=1\textwidth]{gestalt-similarity} 41 | \caption{\label{fig:simi} We perceive similar elements as a group (reproduced from \cite{Ware12} with permission).} 42 | \end{marginfigure} 43 | 44 | \textbf{Similarity} is the second Gestalt law. Visual similarities such as color or shape allow us to identify groups of objects with ease (cf. Fig.~\ref{fig:simi}). Large tables, for instance, can benefit from alternated shading of rows. A downside of shading is the additional visual clutter. We prefer to add extra space every three to five rows to keep tables readable. The similarity law is also essential in diagrams that use different shapes or styles. Visual differences help the reader group similar elements. 45 | 46 | 47 | \textbf{Connectedness} is a powerful principle that is stronger than proximity, shape, and style (cf. Fig.~\ref{fig:connectedness}). Consider connecting related objects with lines. 48 | \begin{marginfigure}[-2\baselineskip] 49 | \centering 50 | \includegraphics[width=1\textwidth]{gestalt-connectedness} 51 | \caption{\label{fig:connectedness} Connections are more powerful than similarity (reproduced from \cite{Ware12} with permission).} 52 | \end{marginfigure} 53 | 54 | The next principle, \textbf{continuity}, ``states that we are more likely to construct visual entities out of visual elements that are smooth and continuous, rather than ones that contain abrupt changes in direction'' \cite{Ware12}. It is, therefore, not surprising that node-link diagrams with smooth lines are easier to read than those with straight lines (cf. Fig.~\ref{fig:continuity}). 55 | 56 | \begin{marginfigure}[-1\baselineskip] 57 | \centering 58 | \includegraphics[width=1\textwidth]{gestalt-continuity} 59 | \caption{\label{fig:continuity} Continuity makes the left-hand diagram easier to read (reproduced from \cite{Ware12} with permission).} 60 | \end{marginfigure} 61 | 62 | \begin{figure} 63 | \centering 64 | \includegraphics[width=1\textwidth]{gestalt-symmetry} 65 | \sidecaption{\label{fig:symmetry} We can spot differences in these age distribution plots faster when data is plotted symmetrically (Data source: \url{https://destatis.de}, own illustration).}[-6\baselineskip] 66 | \end{figure} 67 | 68 | Another principle is \textbf{symmetry}. Symmetrical figures are visually pleasing, and we are good at detecting asymmetry. Symmetry is a form of high-level similarity. If you organize groups of elements in a diagram symmetrically, readers will assume that this means that they are similar. If you design diagrams asymmetrically, the asymmetric parts get emphasized. Our ability to check for symmetry can also be useful during visual data analysis (cf. Fig.~\ref{fig:symmetry}). 69 | 70 | \begin{marginfigure} 71 | \centering 72 | \includegraphics[width=1\textwidth]{gestalt-closure} 73 | \caption{\label{fig:closure} Left: closure makes us perceive a full circle (reproduced from \cite{Ware12} with permission); right: the orange dot is perceived to sit inside of a rectangle.} 74 | \end{marginfigure} 75 | 76 | We are also on the lookout for \textbf{closure and common ground}. Closed contours are perceived as objects. Our search for closure is so strong that our brain interpolates missing parts of contours to form whole objects. As a result, we see a rectangle and a complete circle on the left-hand side of Fig.~\ref{fig:closure} instead of a circle with a missing segment. Moreover, contours create a notion of common ground with an ``inside'' and an ``outside''. 77 | 78 | Common grounds are perceived for complete contours as well as for contours that we perceive due to closure. Thus, on the right-hand side of Fig.~\ref{fig:closure}, we perceive the orange dot to be inside an imaginary rectangle built by shapes. Ware recommends: ``Consider putting related information inside a closed contour. A line is adequate for regions having a simple shape. Color or texture can be used to define regions that have more complex shapes'' \cite{Ware12}. 79 | 80 | The final Gestalt law to discuss is \textbf{figure and ground}. Figures are perceived as objects that are positioned in the foreground. The ground lies behind the figures. We perceive an object as a figure when it consists of a closed contour that forms a common ground and is considerably smaller compared to its surroundings. 81 | 82 | \begin{marginfigure} 83 | \centering 84 | \includegraphics[width=1\textwidth]{gestalt-figureground} 85 | \caption{\label{fig:figureground} Figure and ground are difficult to pick apart in this diagram; also note how PowerPoint fails to draw straight connectors (own illustration).}%[-1\baselineskip] 86 | \end{marginfigure} 87 | 88 | This principle is important when drawing diagrams that use contours to demarcate the boundaries of various systems. When multiple systems are nested, and the size differences are too small, it can become difficult to perceive the difference between figure and ground. Consider the diagram shown in Fig.~\ref{fig:figureground}). On the left-hand side of this diagram, too many rectangular shapes have been nested. Due to equal amounts of whitespace around every shape, multiple interpretations are possible. The right-hand side of the diagram is slightly better because the circles are considerably smaller than the surrounding rectangle. Moreover, together with the arrows the circles are perceived as a (symmetric) shape, which is easily perceived as a figure sitting on the rectangle in the background. 89 | 90 | 91 | % Gestalt Theory and Instructional Design , Moore and Fitz 1993 92 | % http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.1026.6390&rep=rep1&type=pdf 93 | 94 | 95 | \subsection{Color} 96 | \label{sec:color} 97 | 98 | You are probably used to defining colors in terms of red, green, and blue (RGB) or cyan, magenta, yellow, and black (CMYK). A third way, which is more useful, is the \textbf{HSB model}. It defines color in terms of hue, saturation, and brightness.\sidenote{Read the primer at \url{https://learnui.design/blog/the-hsb-color-system-practicioners-primer.html} for more details.} Consider the color picker shown in Fig.~\ref{fig:hsb} for an example. 99 | 100 | \begin{figure} 101 | \centering 102 | \includegraphics[width=0.85\textwidth]{color-hsb} 103 | \sidecaption{\label{fig:hsb} A HSB color picker (\url{https://codepen.io/HunorMarton/full/eWvewo})}[-2\baselineskip] 104 | \end{figure} 105 | 106 | The first value, \textbf{hue}, defines the color according to its position (given in degrees ranging from 0 to 360) on the color wheel. For instance, the value of 60 corresponds to the hue yellow. \textbf{Saturation} (0 to 100) corresponds to the richness of the color, where 0 means that there is no trace of the hue, i.\,e., a gray color between white and black. The value 100 means that the hue is fully present, i.\,e., the color is as colorful as possible. The final value is \textbf{brightness} (0 to 100). A value of 0 corresponds to a solid black, a value of 100 corresponds to the brightest version of the hue at the given saturation. 107 | 108 | \begin{marginfigure} 109 | \centering 110 | \includegraphics[width=1\textwidth]{color-plots} 111 | \caption{\label{fig:coloredgraphs} Using colors to ease visual perception (reproduced from \cite{Carter12} with permission).}%[-1\baselineskip] 112 | \end{marginfigure} 113 | 114 | Different colors are often used to ease visual perception (cf. Fig.~\ref{fig:coloredgraphs}). For instance, it can be used for emphasis, to group subsets of elements, or to make it easier to distinguish different elements that have a similar shape. 115 | 116 | Be aware of the monochrome representation of colors, which makes it impossible to distinguish a subset of colors. Red and green are particularly difficult to differentiate in monochrome print, especially if they have the same saturation and brightness (cf. Fig.~\ref{fig:monochrome}). 117 | 118 | \begin{marginfigure}[-5\baselineskip] 119 | \centering 120 | \includegraphics[width=0.8\textwidth]{color-mono} 121 | \caption{\label{fig:monochrome} Colors in monochrome (reproduced from \cite{Carter12} with permission).} 122 | \end{marginfigure} 123 | 124 | The risk of confusion in monochrome prints is not the only reason why changing the hue is problematic. Different hues are difficult to make out when the area is small, as in the line plot in Fig.~\ref{fig:coloredgraphs}. Moreover, different colors (hues) have different connotations (such as green means good, red means danger). Finally, different colors have a different visual weight that may create unwanted emphasis (blue is heavier than orange). 125 | 126 | Therefore, it is often better to stick with one hue and use different levels of brightness or saturation to ease visual perception. Figure~\ref{fig:monographs} uses three shades of gray and is easier to read than the colorful version in Fig.~\ref{fig:coloredgraphs}. 127 | 128 | 129 | \begin{marginfigure} 130 | \centering 131 | \includegraphics[width=1\textwidth]{color-plots-mono} 132 | \caption{\label{fig:monographs} Shades of gray can be very effective (reproduced from \cite{Carter12} with permission).}%[-1\baselineskip] 133 | \end{marginfigure} 134 | 135 | When you use more than four different grayscale colors, however, the differences become too small to perceive with ease. Too many grayscale colors are especially problematic when color is used on its own, such as in line plots. It is less problematic in bar plots, because the bars can be sorted with decreasing brightness levels to create (good) redundancy. If brightness is used to encode values of data, darker colors should be used for higher values. 136 | 137 | Similar principles apply for saturation: ``If using color saturation to encode numerical quantity, use greater saturation to represent greater numerical quantities. Avoid using a saturation sequence to encode more than three values'' \cite{Ware12}. Consider varying both brightness and saturation at the same time to create shades that are easier to distinguish from another. 138 | 139 | \begin{marginfigure} 140 | \centering 141 | \includegraphics[width=1\textwidth]{color-saturation} 142 | \caption{\label{fig:saturation} Use less saturation for large shapes, and more for thin lines (reproduced from \cite{Ware12} with permission).}%[-2\baselineskip] 143 | \end{marginfigure} 144 | 145 | The effects of different levels of saturation vary depending on the size of the colored area (cf. Fig.~\ref{fig:saturation}). If you consider varying saturation, stick to the following guidelines: ``Use more saturated colors when color coding small symbols, thin lines, or other small areas. Use less saturated colors for coding large areas'' \cite{Ware12}. 146 | 147 | 148 | \section{Organizing Information} 149 | \label{sec:organizinginfo} 150 | 151 | In this section, we will review selected design concepts to organize information in a meaningful way. The book by Lidwell et al. contains more information on the ideas \cite{Lidwell10}. 152 | 153 | \subsection{Advance Organizer} 154 | 155 | An often-cited principle for giving a speech is summarized as follows: first, you announce what you are going to talk about; second, you talk about that; third, you review what you talked about. A design concept that implements this advice is an \emph{advance organizer}. Advance organizers are short chunks of information that are presented before new material. This way, readers will find it easier to learn new concepts. 156 | 157 | Note that an advance organizer is not just a summary or an abstract. Its purpose is to relate new pieces of information to previously covered material and explain how this fits into the big picture. There are two kinds of advance organizers: expository and comparative. 158 | 159 | \emph{Expository advance organizers}, as Lidwell et al. \cite{Lidwell10} explain, ``are useful when audiences have little or no knowledge similar to the information being taught.'' Expository advance organizers are effective when they provide a concise overview of the new material and how it fits together and into the big picture. 160 | 161 | On the other hand, \emph{comparative advance organizers} ``are useful when audiences have existing knowledge similar to the information being presented. [They] compare and contrast features and operations between the familiar and the new'' \cite{Lidwell10}. 162 | 163 | You can create advance organizers in the form of diagrams or as plain text. As a first step, you can add a \emph{signpost paragraph} at the beginning of chapters and sections. 164 | 165 | \subsection{Hierarchy} 166 | 167 | Complicated relationships are often explained using a hierarchical approach. 168 | There are three basic ways to represent hierarchy: trees, nests, and stairs (cf. Fig.~\ref{fig:hierarchy}). 169 | 170 | 171 | \begin{marginfigure} 172 | \centering 173 | \includegraphics[width=1\textwidth]{info-orga-hierarchy} 174 | \caption{\label{fig:hierarchy} You can visualize hierarchies with trees, nests, and stairs (own illustration).}%\cite{Lidwell10}.} 175 | \end{marginfigure} 176 | 177 | 178 | \emph{Trees} are useful to visualize structures that consist of parent-child relationships such as A dominates B and C, B dominates of D and E, and so on. 179 | Usually, child elements are located below or to the right of their parents. As Lidwell et al. \cite{Lidwell10} observe, ``tree structures grow large quickly, and become tangled when multiple parents share common child elements. Tree structures are commonly used to represent overviews or high-level maps of system organization.'' 180 | 181 | \emph{Nest visualizations} are especially useful in visualizing parent elements that \emph{contain} child elements. Nest visualizations can be challenging to read when relationships are complicated. 182 | 183 | Finally, \emph{stair structures} stack child elements below and to the right of parent elements. Stair visualizations are common in outlines. They can be used to capture arbitrarily complex hierarchies, especially when used interactively and individual nodes can be collapsed. Stair visualization also has a disadvantage: it may falsely imply a sequential relationship between the stacked child elements. 184 | 185 | \subsection{Five Ways of Organization} 186 | \label{sec:fivehatracks} 187 | 188 | The so-called \emph{Five Hat Racks} design principle suggests five common ways to organize information: by category, time, location, alphabet, and continuum \cite{Lidwell10}. 189 | 190 | \begin{enumerate} 191 | \item \textbf{Organization by category} relies on similarity or relatedness of elements. Sometimes, categories can be organized hierarchically fashion.Note, Category is a nominal attribute, i.\,e., there is no natural order. If categories \emph{have} to be ordered, you can rely on alphabetical order or use an apparent order such as ``start with all the \emph{normal} categories, followed by the special ones.'' 192 | 193 | \item \textbf{Organization by time} is based on some chronological sequence. Ordering by time feels very natural. Note, however, that a chronological organization is not always useful. A literature review that merely presents one paper after another chronologically will not generate much insight. 194 | 195 | \item \textbf{Organization by location} relies on geographical or spatial properties of the elements. Location can also be purely a logical concept, for instance, components that make up a system (which is also a hierarchy). It is common to describe systems by explaining one component (location) after another. 196 | 197 | \item \textbf{Alphabetical organization} is another common technique. As Lidwell et al. \cite{Lidwell10} remark, ``organize information alphabetically, when information is referential, when efficient nonlinear access to specific items is required, or when no other organizing strategy is appropriate.'' 198 | 199 | \item \textbf{Organization by continuum} relies on a numeric property of the elements (e.\,g., ordering from highest to lowest or best to worst). Lidwell et al. \cite{Lidwell10} recommend to ``organize information by continuum when comparing things across a common measure.'' Organization by continuum can improve the readability of bar plots (cf. Fig.~\ref{fig:continuum}) 200 | \end{enumerate} 201 | 202 | 203 | \begin{marginfigure} 204 | \centering 205 | \includegraphics[width=1\textwidth]{info-orga-continuum} 206 | \caption{\label{fig:continuum} Bar plots benefit from ordering the bars by length, an application of organization by continuum (own illustration).}%\cite{Lidwell10}.} 207 | \end{marginfigure} 208 | 209 | 210 | \section{Diagrams} 211 | 212 | You can use diagrams to describe concepts and their relationship, the structure of systems, interactions, and (experimental) procedures. 213 | 214 | %\subsection{Common Problems} 215 | % infohq 216 | % examples 217 | 218 | \subsection{Before You Start} 219 | 220 | Your first task is to decide \emph{whether a visualization makes sense at all}. Sometimes it makes sense to choose a text-only representation such as pseudo-code instead of a diagram. Ware \cite{Ware12} shares the example of a flow chart, which is supposed to make it easier to understand the program flow (cf. Fig.~\ref{fig:flowchart}). He argues that pseudo code is superior. After all, the flow chart takes more effort to parse than the natural language used in the pseudo code (and, as Edward Tufte would argue, the flow chart contains more visual clutter than the pseudo code). 221 | 222 | \begin{figure}[t] 223 | \centering 224 | \includegraphics[width=1\textwidth]{diagram-flowchart} 225 | \decoRuleFlex{1\textwidth} 226 | \sidecaption{\label{fig:flowchart} In comparison to pseudo code a flow chart is a poor representation of program flow (reproduced from \cite{Ware12} with permission).}[-6\baselineskip] 227 | \end{figure} 228 | 229 | On the other hand, Ware argues, there are concepts that we can grasp much faster if we see a visual representation. Consider the following statements about a management hierarchy \cite{Ware12}: 230 | 231 | \begin{itemize} 232 | \item Jane is Jim’s boss. 233 | \item Jim is Joe’s boss. 234 | \item Anne works for Jane. 235 | \item Mark works for Jim. 236 | \item Anne is Mary’s boss. 237 | \item Anne is Mike’s boss 238 | \end{itemize} 239 | 240 | 241 | \begin{marginfigure} 242 | \centering 243 | \includegraphics[width=1\textwidth]{diagram-tree} 244 | \caption{\label{fig:tree} A tree helps us grasp static relationships (reproduced from \cite{Ware12} with permission).}%[-2\baselineskip] 245 | \end{marginfigure} 246 | 247 | It is challenging to keep track of all relationships in this presentation. You might even feel the urge to draw a tree. And, indeed, a graphical representation is much more accessible (cf. Fig.~\ref{fig:tree}). Ware concludes: ``Diagrams should be used to express structural relationships among program elements, whereas words should be used to express detailed procedural logic'' \cite{Ware12}. 248 | 249 | 250 | Now, if you decide that you do want to create a diagram, you should ask yourself the following questions \cite{Carter12}: 251 | \begin{itemize} 252 | \item What is absolutely necessary to show? 253 | \item What is not necessary to show? 254 | \item What is most important and should be emphasized? 255 | \item What is not important and should be secondary to the main message? 256 | \item What are the relationships between individual elements? 257 | \item Does the diagram require a precise depiction of time? 258 | \item Does the diagram require a precise depiction of distance? 259 | \item What symbols should be consistent throughout the diagram? 260 | \end{itemize} 261 | 262 | In the following sections, we will explain the most important aspects to create useful diagrams. 263 | 264 | \subsection{Elements and Relationships} 265 | 266 | According to the Gestalt laws, you should 267 | ``use small, closed shapes to represent data entities, and use the color, shape, and size of those shapes to represent attributes of those entities'' \cite{Ware12}. Figure~\ref{fig:entities} shows the effect of different properties of shapes. 268 | 269 | \begin{figure}[t] 270 | \centering 271 | \includegraphics[width=1\textwidth]{diagram-entities} 272 | \sidecaption{\label{fig:entities} Semantics of four properties of shapes (reproduced from \cite{Ware12} with permission).}[-5\baselineskip] 273 | \end{figure} 274 | 275 | Many diagrams are supposed to visualize relationships of elements. Ware recommends to use ``connecting lines, enclosure, grouping, and attachment to represent relationships between entities. The shape, color, and thickness of lines and enclosures can represent the types of relationships'' \cite{Ware12}. Figure~\ref{fig:relationships} visualizes ten alternatives and how we perceive them. 276 | 277 | Of note are the tapered lines in Number 6 of Fig.~\ref{fig:relationships}. As explained by Ware, these are easier to recognize than arrows \cite{Ware12}, especially in busy diagrams. If you only use straight lines, you can use skinny triangles to create tapered lines. The broad end is located at the source of the line. 278 | 279 | For more complex lines, you need a vector drawing tool like Inkscape, Adobe Illustrator, and Affinity Designer. Such tools also allow you to draw the wiggly line shown in Number 7 of Fig.~\ref{fig:relationships}. Most drawing tools enable you to create shapes with receptacles (cf. Number 9 of Fig.~\ref{fig:relationships}) by creating unions and differences of shapes. 280 | 281 | 282 | 283 | \begin{figure}[t] 284 | \centering 285 | \includegraphics[width=1\textwidth]{diagram-relationships} 286 | \sidecaption{\label{fig:relationships} Semantics of ten types of visual relationships (reproduced from \cite{Ware12} with permission).}[-5\baselineskip] 287 | \end{figure} 288 | 289 | 290 | 291 | \subsection{Emphasizing Elements} 292 | 293 | Useful diagrams are self-explanatory and guide the reader's attention. Humans continuously search for patterns and deviations. Consistent use of shapes and colors indicates that the presented elements are similar (cf. Fig.~\ref{fig:emphasis}). Deviations from the norm indicate differences that need attention. Be aware of that, and do not create emphasis unintentionally. 294 | 295 | \begin{figure}[t] 296 | \centering 297 | \includegraphics[width=1\textwidth]{diagram-emphasis} 298 | \sidecaption{\label{fig:emphasis} Deviations from the norm create emphasis (reproduced from \cite{Carter12} with permission).}[-6\baselineskip] 299 | \end{figure} 300 | 301 | Do not choose the size of elements arbitrarily. Differences translate into dominance relationships. Larger elements usually appear to control the smaller ones (cf. Fig.~\ref{fig:dominance}) 302 | 303 | \begin{figure}[t] 304 | \centering 305 | \includegraphics[width=1\textwidth]{diagram-dominance} 306 | \sidecaption{\label{fig:dominance} Relative differences in size indicate dominance relationships (reproduced from \cite{Carter12} with permission).}[-6\baselineskip] 307 | \end{figure} 308 | 309 | 310 | \subsection{Layout} 311 | 312 | In the absence of strong emphasis, readers process diagrams similar to text (cf. Fig.~\ref{fig:direction}). In western cultures, readers will start in the top left corner and proceed horizontally in a zig-zag pattern. The general flow of information should be consistent with this expectation. 313 | 314 | \begin{marginfigure} 315 | \centering 316 | \includegraphics[width=1\textwidth]{diagram-direction} 317 | \caption{\label{fig:direction} Respect the expected flow of information in western cultures (reproduced from \cite{Carter12} with permission).}%[-1\baselineskip] 318 | \end{marginfigure} 319 | 320 | 321 | Ensure that all elements of a diagram are correctly aligned. Alignment helps readers to grasp the overall structure. Proper alignment can also save you from creating additional outlines to depict (systems) boundaries – proximity and neat alignment can create strong cohesion by themselves (closure). 322 | 323 | Make conscious decisions about distances and dimensions (proximity, repetition). You \emph{can} use a \emph{grid} to enforce consistent distances. Note, however, that snapping every element to the grid lines, may \emph{still} cause misalignment.\sidenote{Consider a shape that is five grid lines high. Then, a horizontal line that leaves the box cannot be aligned in the middle.} Make use of the horizontal and vertical alignment tools that space out elements equally. An advanced technique is to create a dummy box shape to measure and compare dimensions yourself. 324 | 325 | \subsection{Labels} 326 | 327 | Many diagrams consist of shapes and lines, annotated with text labels. 328 | 329 | A common technique is to use bold print to express some property of an element. For instance, the labels of shapes corresponding to systems are printed in bold to differentiate them from the shapes that correspond to exchanged messages. In general, we recommend avoiding this practice. Reserve bold print to emphasize \emph{one particular element} in a diagram. Use another visual style to show differences, such as shading, colors, or shape form. Consider giving an element no surrounding shape at all, for instance, if the notion of its \emph{boundary} is not relevant or if the arrangement of sub-elements establishes a common ground due to the Gestalt law of \emph{closure}. 330 | 331 | In any case, the labels should be as close as possible to the shapes (Gestalt law proximity) and precisely aligned. Whenever possible, consider moving the labels \emph{into} the shapes (Fig.~\ref{fig:labelsinside}). Inside labels rely on the Gestalt law of \emph{common ground}. They reduce visual clutter and make it easier to create a well-balanced diagram with no ragged edges (laws of symmetry and closure). 332 | 333 | \begin{figure}[t] 334 | \centering 335 | \includegraphics[width=1\textwidth]{diagram-labelsinside} 336 | \sidecaption{\label{fig:labelsinside} Moving the labels inside objects reduces clutter. Note how the left-hand-side figure is centered in the left part of the figure to keep the figure balanced (reproduced from \cite{Carter12} with permission).}[-6\baselineskip] 337 | \end{figure} 338 | 339 | \begin{marginfigure} 340 | \centering 341 | \includegraphics[width=1\textwidth]{diagram-labelsoutside} 342 | \caption{\label{fig:labelsoutside} Outside labels should not distract the reader (own illustration, inspired by \cite{Carter12}).}%[-1\baselineskip] 343 | \end{marginfigure} 344 | 345 | Figure~\ref{fig:labelsoutside} illustrates critical principles when labels are \emph{outside} of a shape. First of all, keep the lines as short as possible (proximity). Consider removing the arrowheads from the lines that point into an object to avoid confusion with other arrows in the diagram. Also, avoid crossing lines. Align labels on the left-hand side of an object flush right and vice versa (symmetry). Aim for consistency by making the lines parallel. Keep adequate amounts of surrounding whitespace. 346 | 347 | Diagrams that visualize structures can work fine with few labels. In contrast, diagrams that visualize procedures or more complex relationships need more textual explanation. Consider adding longer descriptions right next to the corresponding locations (proximity) as shown in Fig.~\ref{fig:explanations}. 348 | 349 | \begin{figure}[t] 350 | \centering 351 | \includegraphics[width=1\textwidth]{diagram-explanations} 352 | \sidecaption{\label{fig:explanations} Complex diagrams benefit from integrated explanations. Source of figure as cited by \cite{Ware12}: R Chandler and J. Sweller (1991). Cognitive load theory and the format of instruction. \emph{Cognition and Instruction}, 8:4, 293–332, DOI: 10.1207/s1532690xci0804\_2, \url{www.tandfonline.com}. This figure is not subject to the Creative Commons License under which this guide is published (cf. Sect.~\ref{sec:license}); copyright is held by the publisher and/or the authors.}[-9\baselineskip] 353 | \end{figure} 354 | 355 | 356 | \subsection{Variations} 357 | 358 | \begin{figure*}[t] 359 | \centering 360 | \includegraphics[width=1\widefigurewidth]{diagram-variations} 361 | \sidecaption{\label{fig:diagvariations} Eight variations resulting from combining different outline, shade, and arrow styles.}[-1\baselineskip] 362 | \end{figure*} 363 | 364 | Common drawing tools provide a large number of shapes. What is missing, however, is guidance on how to combine them reasonably. Figure~\ref{fig:diagvariations} displays eight combinations.\sidenote{The advice in the following paragraphs has been compiled from \url{https://www.slideshare.net/otikik/how-to-make-awesome-diagrams-for-your-slides/19-Size_doesnt_mean_long_name}.} 365 | 366 | The first variation in the left-hand column shows a style useful for depicting information exchange between systems, such as servers and clients. The second variation uses an arrow shape, which emphasizes the activity represented by the arrow. The third and fourth examples in the left-hand column depict two steps from a process without too much visual clutter. We prefer the latter one because the text wraps at sensible points. 367 | 368 | The right-hand column shows variations without outlines. At first glance, this sounds like a good idea: it avoids visual clutter (the outlines). Note, however, that shapes without outlines need more saturated and darker color to differentiate them from the background. If the number of shapes in a diagram is large, this approach can make it more difficult to read the diagram because all shapes appear to be emphasized simultaneously. 369 | 370 | If you use dark shapes, you should avoid having white text on dark background for small font sizes. As shown in the second variation on the right-hand side of Fig.~\ref{fig:diagvariations}, you will have to make changes to some shapes. 371 | 372 | In any case, you should choose the sizes of shapes consciously. Represent objects with identical properties with shapes of the same size. If the labels do not fit into the shapes, you can either reduce the font size, put the labels next to the box, or increase the size of all shapes (by rearranging the diagram). 373 | 374 | Finally, consider the option of using negative space, as shown in the bottom-right corner of Fig.~\ref{fig:diagvariations}. Again, this can be a useful means to avoid visual clutter. However, if you increase the width of the surrounding white stroke (as was done for the example figure), the (vertical) padding in the shape will become too narrow. Moreover, you cannot easily align such shapes with other shapes with thinner strokes. 375 | 376 | 377 | \section{Graphs} 378 | 379 | In this section, we review common design principles for graphs (also called charts or plots). Besides our guidelines, we will present the examples shown by Carter \cite{Carter12}. 380 | 381 | The first step in data visualization is to \textbf{pick a reasonable chart type}. Most visualization needs that arise in a thesis can be addressed with line charts, bar charts, and histograms, and scatter plots. There are many more chart types such as Chord Diagrams, Sankey Diagrams, and the Nightingale Rose Chart.\sidenote{For comprehensive overviews and guidance see \url{https://datavizcatalogue.com}, \url{https://depictdatastudio.com/charts/}, \url{https://www.data-to-viz.com/img/poster/poster_big.png} and \url{https://www.labnol.org/images/2008/data-chart-type.png}.} 382 | These and other advanced chart types \emph{can} be useful in particular situations. In general, however, we recommend sticking to more basic chart types. In particular, \textbf{avoid pie charts} unless you know what you are doing. 383 | 384 | General advice for any graph is to have \textbf{legible axis labels} and, if more than one data series is visualized, a legend for the data series. Moreover, remember to use colors effectively (cf. Sect.~\ref{sec:color}). 385 | 386 | The following sections provide more information on two essential chart types, line charts and bar charts. The recommendations are very concrete. You may find that you cannot follow all of them using your plotting tool of choice. If this limitation bothers you, consider editing the plotting tool's output with a vector drawing program such as Inkscape or Adobe Illustrator. 387 | 388 | \subsection{Line Charts} 389 | 390 | Line charts show how one variable (the one on the y-axis) changes when another one varies within a given range. Line charts are particularly useful to visualize time series. 391 | 392 | Often, there are many lines to be plotted. Resist the temptation to add more than three lines into one line chart if the lines overlap. Instead, create multiple charts that have one of the lines in common. This line serves as a baseline, easing comparison. 393 | 394 | Figure~\ref{fig:linecharts} summarizes Carter's advice on line charts. 395 | 396 | \begin{figure*}[t] 397 | \centering 398 | %\vspace{3\baselineskip} 399 | \includegraphics[width=1\widefigurewidth]{graphs-linecharts} 400 | \sidecaption{\label{fig:linecharts} Advice for line charts (reproduced from \cite{Carter12} with permission). %Remark on the layout: As seen in this case, putting a wide figure below another one does not look very pleasing. 401 | }[-1\baselineskip] 402 | \end{figure*} 403 | 404 | \subsection{Bar Charts} 405 | 406 | The top row of Fig.~\ref{fig:barcharts} summarizes Carter's advice on bar charts. 407 | Bar charts are useful to compare the value of a single variable under different circumstances. The value of the variable corresponds to the length of a bar. In principle, a single bar chart can also show the values of \emph{different} variables. Note, however, that such a chart is more challenging to read, especially when the variables need differently scaled Y-axes (one to the left and one to the right of the chart). 408 | 409 | The bars can be drawn horizontally and vertically.\sidenote{See \url{https://depictdatastudio.com/when-to-use-horizontal-bar-charts-vs-vertical-column-charts/} for more guidance.} It is common to use vertical bars for time series (time on the x-axis). You can also use vertical bars if the values on the x-axis are on an ordinal scale (i.\,e., they are arranged in their natural order). Vertical bars do not work well with long labels. Rotating labels makes them challenging to read. On the other hand, horizontal bar charts work well with longer labels (align the labels flush right next to the bars). 410 | 411 | The advice in this section assumes vertical bars. In vertical bar charts, the Y-axis corresponds to the value of the variable, and the X-axis is typically used for a categorial variable, which represents the different circumstances. 412 | 413 | An advanced version of a classical bar chart is a stacked bar chart, an excellent alternative to visualize proportions of a whole. In contrast, to pie charts, which can be deceiving, stacked bar charts are more accurate and can be easily compared. 414 | 415 | \begin{figure*}[t] 416 | \centering 417 | \vspace{4\baselineskip} 418 | \includegraphics[width=1\widefigurewidth]{graphs-barcharts} 419 | 420 | \bigskip 421 | 422 | \includegraphics[width=1\widefigurewidth]{graphs-histograms} 423 | \sidecaption{\label{fig:barcharts} Advice for bar charts and histograms (reproduced from \cite{Carter12} with permission).} 424 | \end{figure*} 425 | 426 | \paragraph{Histograms} A special kind of bar charts is a histogram. Carter gives a concise explanation of the purpose of a histogram: ``A histogram shows the distribution of data and the relative frequency with which the data occur. It essentially offers the audience an estimate of the probability distribution of a dataset'' \cite{Carter12}. The bottom row of Fig.~\ref{fig:barcharts} summarizes Carter's advice on histograms. 427 | 428 | %\begin{figure*}[t] 429 | %\centering 430 | %\vspace{4\baselineskip} 431 | %\includegraphics[width=1\widefigurewidth]{graphs-histograms} 432 | %\sidecaption{\label{fig:histograms} Advice for histograms \cite{Carter12}.} 433 | %\end{figure*} 434 | 435 | 436 | 437 | 438 | 439 | 440 | \section{Tables} 441 | \label{sec:tableguide} 442 | 443 | Tables are useful to display multiple properties for several entities. This section summarizes Carter's guidelines for designing effective tables \cite{Carter12}. Moreover, you will see how to apply the principles of organizing information (cf. Sect.~\ref{sec:organizinginfo}). 444 | 445 | Often, the properties of entities have different scales and units. Readers usually expect that rows correspond to entities, and columns correspond to properties. This organization makes it easier to compare entities in terms of individual properties by focusing on the values in particular columns. It is easy to spot exceptional cases if they are printed vertically and the eye can move downwards. The example in Table~\ref{tab:colrows} shows this effect with two tables that contain the same data. 446 | 447 | \begin{table*}[tb] 448 | \caption{\label{tab:colrows} The table to the left is easier to read than the table to the right (reproduced from \cite{Carter12} with permission).} 449 | \centering 450 | \footnotesize % use smaller fontsize in the table 451 | {\renewcommand{\arraystretch}{1.1} % increase vertical space between rows 452 | \begin{tabularx}{0.45\linewidth}{@{}Xccr@{}} % @{} omits outer horizontal margins, the "X" column uses up all remaining available space 453 | \toprule 454 | Lake & Area ($\mathrm{km}^2$) & Length (km) & Depth (m)\\ 455 | \midrule 456 | Malawi & 30,044 & 579 & 706 \\ 457 | Tanganyika & 32,893 & 676 & 1470 \\ 458 | Victoria & 59,485 & 322 & 84\\ 459 | \bottomrule 460 | \end{tabularx} 461 | \hspace{\fill} 462 | \begin{tabularx}{0.45\linewidth}{@{}Xccr@{}} % @{} omits outer horizontal margins, the "X" column uses up all remaining available space 463 | \toprule 464 | Lake & Malawi & Tanganyika & Victoria\\ 465 | \midrule 466 | Area ($\mathrm{km}^2$) & 30,044 & 32,893 & 59,485 \\ 467 | Length (km) & 579 & 676 & 322 \\ 468 | Depth (m) & 706 & 1470 & 84\\ 469 | \bottomrule 470 | \end{tabularx} 471 | } 472 | \end{table*} 473 | 474 | Follow the Gestalt principle of Hierarchy when you display information that can be grouped. Often, there is more than one way how to group data. Make a conscious decision about how you organize the table. Different forms of organization emphasize different aspects. For instance, the table to the left in Table~\ref{tab:groups} emphasizes the comparison between men and women. In contrast, the table to the right highlights the differences between the years. 475 | 476 | \begin{table*}[tb] 477 | \caption{Number of men and women selected by NASA to be astronauts by year of selection (reproduced from \cite{Carter12} with permission).} 478 | \label{tab:groups} 479 | \centering 480 | \footnotesize % use smaller fontsize in the table 481 | {\renewcommand{\arraystretch}{1.1} % increase vertical space between rows 482 | \begin{tabularx}{0.53\linewidth}{@{}Xcccccc@{}} % @{} omits outer horizontal margins, the "X" column uses up all remaining available space 483 | \toprule 484 | & \multicolumn{3}{c}{\tabhead{Men}} & \multicolumn{3}{c}{\tabhead{Women}} \\ 485 | \cmidrule(lr){2-4} \cmidrule(l){5-7} 486 | & \tabhead{1980} & \tabhead{1990} & \tabhead{2000} & \tabhead{1980} & \tabhead{1990} & \tabhead{2000}\\ 487 | \midrule 488 | Mission specialist & 9 & 12 & 7 & 2 & 4 & 3\\ 489 | Pilot & 8 & 6 & 7 & 0 & 1 & 0\\ 490 | \midrule 491 | Total & 17 & 18 & 14 & 2 & 5 & 3\\ 492 | \bottomrule 493 | \end{tabularx} 494 | \hspace{\fill} 495 | \begin{tabularx}{0.42\linewidth}{@{}Xcccccc@{}} % @{} omits outer horizontal margins, the "X" column uses up all remaining available space 496 | \toprule 497 | & \multicolumn{2}{c}{\tabhead{1980}} & \multicolumn{2}{c}{\tabhead{1990}} & \multicolumn{2}{c}{\tabhead{2000}}\\ 498 | \cmidrule(lr){2-3} \cmidrule(lr){4-5} \cmidrule(l){6-7} 499 | & \tabhead{M} & \tabhead{F} & \tabhead{M} & \tabhead{F} & \tabhead{M} & \tabhead{F}\\ 500 | \midrule 501 | Mission specialist & 9 & 2 & 12 & 4 & 7 & 3\\ 502 | Pilot & 8 & 0 & 6 & 1 & 7 & 0\\ 503 | \midrule 504 | Total & 17 & 2 & 18 & 5 & 14 & 3\\ 505 | \bottomrule 506 | \end{tabularx} 507 | } 508 | \end{table*} 509 | 510 | Make a conscious decision on how to order the columns. Revisit the five hat racks design principle in Sect.~\ref{sec:fivehatracks}. If there is no logical ordering, e.\,g., from very generic properties to more specific ones, order the columns alphabetically. Usually, derived pieces of information, results, and insights are to the right of labels and descriptive pieces of information. 511 | 512 | Choosing an adequate order also applies to rows. Instead of sorting the rows alphabetically based on their label in the first column, consider sorting them based on a particular column's value. The resulting order can improve legibility a lot (principle of \emph{continuity}). Note that sorting the table by a specific column puts some emphasis on that particular column. This principle is visualized in Table~\ref{tab:roworder}. 513 | 514 | \begin{table*}[tb] 515 | \caption{\label{tab:roworder} Listing planets in order from the sun, in alphabetical order, and in descending order of diameter (reproduced from \cite{Carter12} with permission).} 516 | \centering 517 | \footnotesize % use smaller fontsize in the table 518 | {\renewcommand{\arraystretch}{1.1} % increase vertical space between rows 519 | \begin{tabularx}{0.3\linewidth}{@{}Xrr@{}} % @{} omits outer horizontal margins, the "X" column uses up all remaining available space 520 | \toprule 521 | Planet & Diameter & Mass \\ 522 | \midrule 523 | Mercury & 0.38 & 0.06 \\ 524 | Venus & 0.95 & 0.82 \\ 525 | Earth & 1.00 & 1.00 \\ 526 | Mars & 0.53 & 0.11 \\ 527 | Jupiter & 11.21 & 317.80 \\ 528 | Saturn & 9.45 & 95.20 \\ 529 | Uranus & 4.01 & 14.60 \\ 530 | Neptune & 3.88 & 17.20 \\ 531 | \bottomrule 532 | \end{tabularx} 533 | \hspace{\fill} 534 | \begin{tabularx}{0.3\linewidth}{@{}Xrr@{}} % @{} omits outer horizontal margins, the "X" column uses up all remaining available space 535 | \toprule 536 | Planet & Diameter & Mass \\ 537 | \midrule 538 | Earth & 1.00 & 1.00 \\ 539 | Jupiter & 11.21 & 317.80 \\ 540 | Mars & 0.53 & 0.11 \\ 541 | Mercury & 0.38 & 0.06 \\ 542 | Neptune & 3.88 & 17.20 \\ 543 | Saturn & 9.45 & 95.20 \\ 544 | Uranus & 4.01 & 14.60 \\ 545 | Venus & 0.95 & 0.82 \\ 546 | \bottomrule 547 | \end{tabularx} 548 | \hspace{\fill} 549 | \begin{tabularx}{0.3\linewidth}{@{}Xrr@{}} % @{} omits outer horizontal margins, the "X" column uses up all remaining available space 550 | \toprule 551 | Planet & Diameter & Mass \\ 552 | \midrule 553 | Jupiter & 11.21 & 317.80 \\ 554 | Saturn & 9.45 & 95.20 \\ 555 | Uranus & 4.01 & 14.60 \\ 556 | Neptune & 3.88 & 17.20 \\ 557 | Earth & 1.00 & 1.00 \\ 558 | Venus & 0.95 & 0.82 \\ 559 | Mars & 0.53 & 0.11 \\ 560 | Mercury & 0.38 & 0.06 \\ 561 | \bottomrule 562 | \end{tabularx} 563 | } 564 | \end{table*} -------------------------------------------------------------------------------- /degree-thesis/appendices/appendixC.tex: -------------------------------------------------------------------------------- 1 | % Appendix C 2 | 3 | \chapter{About the Template} 4 | \label{appendixc} 5 | \label{appendix-more-details-on-template} 6 | 7 | This appendix provides additional information about less-often needed features of the template. Moreover, it contains a brief overview of the template's history. 8 | 9 | \section{Further Template Features}\label{ThesisFeatures} 10 | 11 | This section explains customization options and technical details. For a thesis at the PSI Chair, you should stick with the defaults. 12 | 13 | \subsection{Printing Format} 14 | 15 | This thesis template is designed for double-sided printing (i.\,e., content on the front and back of pages) as most theses are printed and bound this way.\sidenote{At the PSI Chair, we highly encourage you to use double-sided printing.} 16 | Switching to one-sided printing is as simple as uncommenting the \option{oneside} option of the \code{documentclass} command at the top of the \file{main.tex} file. You may then wish to adjust the margins to suit specifications from your institution. 17 | 18 | The headers for the pages contain the page number on the outer side (so it is easy to flick through to the page you want) and the chapter name on the inner side. 19 | 20 | The font size is set to 11 points by default with single line spacing; again, you can tune the text size and spacing using the options at the top of \file{main.tex}. The spacing can be influenced by replacing the \option{singlespacing} with \option{onehalfspacing} or \option{doublespacing}. 21 | 22 | \subsection{Using US Letter Paper} 23 | 24 | The paper size used in the template is A4, which is the standard size in Europe. If you are using this thesis template elsewhere, for instance, in the United States, then you may have to change the A4 paper size to the US Letter size. 25 | 26 | Due to the differences in the paper size, the resulting margins may differ from what you like or require. You may need to adapt the page geometry settings in \file{setup.tex} in this case. 27 | 28 | \subsection{References} 29 | 30 | The template uses \code{biblatex} to format the bibliography and references such as this one \cite{murdoch_steven_j._chip_2010}. The template uses a citation style that creates in-text citations with the author(s) initials and the year of the publication. Multiple references are separated by semicolons (e.\,g., \cite{solat_security_2017, bond_chip_2014}). To see how you use references, look at the source files of this guide. If you choose a suitable BibTeX reference manager, you can copy and paste or drag and drop references into the document. 31 | 32 | The bibliography is typeset with references listed in alphabetical order by the first author's last name. To see how LaTeX typesets the bibliography, look at the end of this document (or just click on the reference links in in-text citations). 33 | 34 | \paragraph{BibTeX Backend} 35 | 36 | As the ``old'' \code{bibtex} backend does not correctly handle Unicode character encoding (i.\,e., ``international'' characters), we use the more modern \code{biber} BibTeX engine in this template. 37 | 38 | Here, we cite a lot of references so that the list of references gets populated \cite{murdoch_steven_j._chip_2010,anderson_ross_emv:_2014,kou_weidong_secure_2003,solat_security_2017,bond_chip_2014,ortiz_s._is_2006,haselsteiner_security_2006,galloway_visa_2019,zhou_nshield_2014,lalehTaxonomyFraudsFraud2009,ferradiWhenOrganizedCrime2016,Yang10,Kopsell06,VilaGM03,Herrmann12-ipv6prefix,Herrmann14-diss,HBF:2013,Herrmann11-NordSec,AcarEEJND14,Herrmann09,WangG13,Raymond00,Hintz02,Herrmann14-encdns,Goodson12-privacy,WendolskyHF07,chaum81,BertholdFK00,Dingledine04,rfc5246,LoesingMD10,FuchsHF13}. 39 | 40 | 41 | 42 | \section{Contributors and History} 43 | 44 | This guide has been written by Dominik Herrmann. The LaTeX template has been created by Dominik Herrmann with support by Fabian Lamprecht. Dominik and Fabian are affiliated with the Privacy and Security in Information Systems Group at University of Bamberg (\url{https://www.uni-bamberg.de/psi/}). 45 | 46 | 47 | The PSI Template has its own \emph{document class}, \file{PSIThesis.cls}. It has been derived from \file{MastersDoctoralThesis.cls} (\url{https://www.latextemplates.com/template/masters-doctoral-thesis}). 48 | 49 | The MastersDoctoralThesis LaTeX thesis template is based initially on a LaTeX style file created by Steve R.\ Gunn from the University of Southampton (UK), department of Electronics and Computer Science. You can find his original thesis style file at his site at 50 | \url{http://www.ecs.soton.ac.uk/~srg/softwaretools/document/templates/} (link not available as of 2019). 51 | 52 | Steve's \file{ecsthesis.cls} was then taken by Sunil Patel, who modified it by creating a skeleton framework and folder structure for a thesis. The resulting template is available on Sunil's site at 53 | \url{http://www.sunilpatel.co.uk/thesis-template}. 54 | 55 | Sunil's template was made available through \url{http://www.LaTeXTemplates.com} where it was modified many times based on user requests and questions. Version 2.0 and onwards of this template represents a significant modification to Sunil's template and is, in fact, hardly recognizable. The work to make version 2.0 possible was carried out by \href{mailto:vel@latextemplates.com}{Vel} and Johannes Böttcher. 56 | 57 | 58 | \section{License} 59 | \label{sec:license} 60 | 61 | We have chosen a license that allows you to use the template for your thesis and make changes as needed. You are \emph{not} required to publish your thesis or its source code under the same license. If you fork the template or the guide, however, you have to comply with the following licensing restrictions. 62 | 63 | This guide and the template are made available under the Creative Commons license 64 | CC BY-SA 4.0 (\url{http://creativecommons.org/licenses/by-sa/4.0/}) with two exceptions: 65 | 66 | \begin{enumerate} 67 | \item Some excerpts, figures, and tables in \Cref{Chapter2} and \Cref{appendixb} have been taken from the 68 | literature. The respective elements are explicitly marked with a citation and a note 69 | regarding the permission to re-use. They are not 70 | covered by the CC license. Permission to re-use and distribute 71 | these figures, tables, and excerpts must be obtained from the 72 | respective copyright holders. 73 | 74 | \item Parts of \Cref{Chapter1} and \Cref{appendix-more-details-on-template} contain content from the 75 | MastersDoctoralThesis template mentioned above, which is licensed under 76 | CC BY-SA 3.0 (\url{http://creativecommons.org/licenses/by-nc-sa/3.0/}). 77 | The original content has been written by 78 | Sunil Patel (\href{http://www.sunilpatel.co.uk}{www.sunilpatel.co.uk}) and 79 | Vel (\href{http://www.LaTeXTemplates.com}{LaTeXTemplates.com}). 80 | \end{enumerate} 81 | 82 | As this guide contains copyrighted material from third parties, you cannot host your own copy of this guide online. Please use the URLs printed on the title page to link to this document. 83 | 84 | The files \texttt{PSIThesis.cls}, \texttt{setup.tex}, and \texttt{titlepage.tex} are made available under 85 | the LPPL v1.3c (\url{http://www.latex-project.org/lppl}). 86 | 87 | The fonts that are included in this template in the \texttt{fonts} directory are licensed under the Apache License 2.0 (\emph{Roboto} sans-serif font) and the SIL OFL Version 1.1 (\emph{Iosevka} monospace font). 88 | -------------------------------------------------------------------------------- /degree-thesis/chapters/chapter1.tex: -------------------------------------------------------------------------------- 1 | \chapter{The PSIThesis Template} % Main chapter title 2 | 3 | \label{Chapter1} % For referencing the chapter elsewhere, use \ref{Chapter1} 4 | 5 | 6 | This introductory chapter will give you an overview of the PSI Thesis template and its usage. 7 | It also contains pointers to recommended reading for learning \LaTeX{}. 8 | 9 | The remainder of this document presents conventions and recommendations that will help you create a coherent and visually appealing thesis. \Cref{Chapter2} explains the most critical aspects of scientific writing, including citations, URLs, tables, figures, typography, and layout. 10 | 11 | Additional advice, which our students found useful in the past, follows in \Cref{appendixa}. Advice on designing compelling figures and tables follows in \Cref{appendixb}. Less-often needed details about the template, its history, and licensing details can be found in \Cref{appendixc}. 12 | 13 | \section{A Quick Welcome} 14 | 15 | Welcome to this LaTeX thesis template guide.% 16 | \sidenote{It is based on the guide of the \emph{MastersDoctoralThesis} template. The original text has been revised and extended. \emph{MastersDoctoralThesis} is available at \url{https://www.latextemplates.com/template/masters-doctoral-thesis}.} 17 | The PSIThesis template has been created mainly for students who want to submit a high-quality Bachelor's or Master's thesis to the \emph{Chair of Privacy and Security in Information Systems} at the University of Bamberg (\url{https://www.uni-bamberg.de/psi/}). The template can also be used for seminar reports and PhD dissertations. 18 | 19 | The PSITemplate and this thesis guide reflect, at least to some degree, the personal taste of members of the chair. 20 | We encourage our students to use the template without any changes.\sidenote{If you \emph{do} have a different opinion on a particular aspect of the template or the guide, we will be happy to hear you out.} 21 | 22 | The template and the guide are available under an open license (cf. Sect.~\ref{sec:license}). If you want to use the template for a thesis submitted at a different department or organization, feel free to make changes at your discretion.\sidenote{Redistribution of this guide and the template is subject to the details outlined in Sect.~\ref{sec:license}.} 23 | 24 | If you wish to contribute to the template or the guide, you may create an Issue or a Pull Request in the public GitHub repository at \url{\githuburl}. 25 | 26 | \section{Learning LaTeX} 27 | 28 | If you are new to LaTeX, we recommended to carry on reading this section. 29 | 30 | If you are writing a thesis and its subject is technical, then creating it in LaTeX is highly recommended. LaTeX allows you to focus on the essential writing without having to worry over formatting or wasting time arguing with your word processor. 31 | 32 | LaTeX can professionally typeset documents that run to hundreds or thousands of pages long. With simple mark-up commands, it automatically sets out the table of contents, margins, headers, and footers and keeps the formatting consistent and visually pleasing. One of its main strengths is the way it can easily typeset mathematics, even \emph{heavy} mathematics. 33 | 34 | LaTeX is not a \textsc{wysiwyg} (What You See is What You Get) tool, unlike word processors such as Microsoft Word or Apple's Pages. Instead, a document written for LaTeX is a simple, plain text file that contains \emph{no formatting}. 35 | LaTeX is a \enquote{mark-up} language (like HTML): You tell the LaTeX processor about the desired formatting in simple commands amongst the text. For instance, if you want to use \emph{italic text for emphasis}, you write the \verb|\emph{text}| command and put the text you want in italics in between the curly braces. 36 | 37 | \subsection{Introduction to LaTeX} 38 | 39 | If you are new to LaTeX, there is an excellent eBook, \enquote{The Not So Short Introduction to LaTeX} (aka ``lshort''), which is freely available online.\sidenote{\url{http://www.ctan.org/tex-archive/info/lshort/english/lshort.pdf}.} 40 | 41 | To learn how LaTeX works, we recommend creating small test documents to reduce complexity. You can also learn from others by looking at other templates. 42 | 43 | \paragraph{A Short Math Guide for LaTeX} 44 | 45 | If you are writing a technical or mathematical thesis, you may want to read \enquote{A Short Math Guide for LaTeX}.\sidenote{Find it under the \enquote{Additional Documentation} section towards the bottom of the page at \url{http://www.ams.org/tex/amslatex.html}.} 46 | LaTeX supports many mathematical symbols, and it would take a great effort to memorize the commands for all of them. Sunil Patel's website shows the most common ones.\sidenote{% 47 | \url{http://www.sunilpatel.co.uk/latex-type/latex-math-symbols/}} 48 | You can use Sunil's page as a reference or crib sheet. The symbols are rendered as large, high-quality images, so you can quickly find the LaTeX command for the symbol you need. 49 | 50 | \subsection{LaTeX Distributions} 51 | 52 | The LaTeX distribution is available for Windows, Linux, and macOS\@. 53 | On Windows and Linux systems, the recommended distribution is \textsc{TeX Live} (\url{https://www.tug.org/texlive/}). 54 | The package for macOS is called \textsc{MacTeX} (\url{http://www.tug.org/mactex/}), and it contains all the applications you need -- bundled together and pre-customized -- for a fully working LaTeX environment and workflow. 55 | \textsc{MacTeX} includes a custom dedicated LaTeX editor called \textsc{TeXShop} for writing your `\file{.tex}' files and \textsc{BibDesk}, a program to manage your references and create your bibliography section. 56 | 57 | 58 | 59 | \section{Required Software} 60 | \label{sec:requirements} 61 | 62 | To use the PSIThesis template, you need a working LaTeX installation with \textbf{LuaLaTeX}, \textbf{biblatex}, and \textbf{biber}.% 63 | \sidenote{This guide is known to work fine on TeX Live Version 2019 (LuaLaTeX 1.10.0, biber 2.14) and 2020 (LuaHBTeX 1.12.0, biber 2.15).} 64 | Usually, these tools are available in a typical LaTeX installation. We have tested the template with TeX Live 2019 and 2020. We recommend to perform a \textbf{full installation} to ensure that all required LaTeX packages are available right away. 65 | 66 | \paragraph{Known Issues} 67 | 68 | If you are using an outdated version of lualatex, compilation may fail with \textbf{error: (vf): invalid DVI command (1)}. This is a known bug\sidenote{\url{https://de.comp.text.tex.narkive.com/fC1xfeb2/lualtex-microtype-error-vf-invalid-dvi-command-1}} in old versions of lualatex that is triggered by the \texttt{microtype} package. In this case, we recommend upgrading to a current version of TeX Live. 69 | 70 | Moreover, there is a known layout issue with old versions of the \texttt{caption} package. This issue causes the captions of margin figures and wide figures to be laid out incorrectly. Versions 3.4 and 3.5 of the caption package (released in 2019 and 2020, respectively) are known to work well. You can update your TeX Live installation by running \texttt{tlmgr}. 71 | 72 | Use a current version of TeX Live that is available at \url{https://www.tug.org/texlive/}. As of 2020, the TeX Live version packaged by \textbf{Debian Linux} contains outdated versions of lualatex and the caption LaTeX package, which will likely result in incorrectly laid out documents. This is why it is \textbf{recommended to install LaTeX on Linux using the TeX Live installer}. 73 | 74 | \paragraph{Using Overlaf and XeTeX} 75 | 76 | As of December 2019, the template does not work with \url{https://www.overleaf.com}. Overleaf uses the outdated version lualatex~1.07 from TeX Live 2018, which is subject to the bug mentioned above that prevents compilation of documents that use the \code{microtype} package. 77 | 78 | The template includes \code{microtype}, not only because of the better typography but also because it uses microtype's command \verb|\textls{text}| to change the letter spacing of the uppercase text on the title page. 79 | 80 | You \emph{can} use the template with Overleaf if you remove the line that loads the \code{microtype} package in \file{setup.tex}. Moreover, you will have to remove all calls to \code{textls}. 81 | 82 | Another option is typesetting the template with XeTeX. To compile the template with XeTeX, you have to remove the line that loads the package \code{luainputenc} from \file{setup.tex} as well as all calls to \code{textls}. 83 | 84 | 85 | \section{Getting Started with the Template} 86 | 87 | Once you are familiar with LaTeX, you should explore the directory structure of the template (cf. \Cref{sec:folders,sec:files}). Before you start to make changes, we recommend you to compile this guide on your machine (cf. \Cref{sec:compile}). 88 | If there are no errors, it is time to place your details into the THESIS INFORMATION block of the \file{main.tex} file (cf. \Cref{sec:fillingdetails}). 89 | You will also have to make some changes to the file \file{misc/titlepage.tex}, which sets up the title page.\marginnote{Additional features of the template are described in \Cref{ThesisFeatures}.}[-1\baselineskip] 90 | 91 | 92 | \subsection{Folder Structure} 93 | \label{sec:folders} 94 | 95 | This template comes as a single ZIP file that expands out to several files and folders. The folder names are mostly self-explanatory: 96 | 97 | \keyword{Appendices} -- this is the folder where you put the appendices. Each appendix should go into a separate \file{.tex} file. You have to include your appendix files in \file{main.tex}. 98 | 99 | \keyword{Chapters} -- this is the folder where you put the thesis chapters. Each chapter should go into a separate \file{.tex} file that is included from \file{main.tex}.\sidenote{The structure of a thesis may look like this: 100 | \begin{itemize} 101 | \item Chap. 1: Introduction 102 | \item Chap. 2: Background information 103 | \item Chap. 3: Experimental setup 104 | \item Chap. 4: Implementation considerations 105 | \item Chap. 5: Presentation of results 106 | \item Chap. 6: Discussion of results \& limitations 107 | \item Chap. 7: Conclusion and future directions 108 | \end{itemize} 109 | This chapter layout is specialized for an experimental thesis; your thesis may be different. 110 | } 111 | 112 | \keyword{Examples} -- this folder contains a Python script to generate a figure used in this guide. You do not need that folder for your thesis. 113 | 114 | \keyword{Figures} -- this folder contains all figures for the thesis. These are the final images that will go into the thesis document. 115 | 116 | Two additional folders contain files that are internally used by the template. The folder \keyword{fonts} contains the TTF and OTF files of the template's fonts, the folder \keyword{misc} contains \file{setup.tex}, \file{titlepage.tex}, and the logo of University of Bamberg. 117 | 118 | \subsection{Files} 119 | \label{sec:files} 120 | 121 | Most of the template's files are plain text, and you can see their contents in a text editor. Important files are: 122 | 123 | \keyword{literature.bib} -- This is a BibTeX file that contains all the bibliographic information for literature that you cite in the thesis. 124 | You can write it manually, but there are reference manager programs (such as JabRef or BibDesk on macOS) that will create and manage it for you. Bibliographies in LaTeX are a subject of their own, and you may need to read about BibTeX before starting with this. 125 | 126 | \keyword{main.pdf} -- This is your typeset thesis created by LaTeX. It is part of the template's ZIP file. When you compile the template, you should get an identical version. 127 | 128 | \keyword{main.tex} -- This is the file that you tell LaTeX to compile to produce \file{main.pdf}. 129 | It contains the framework and constructs that tell LaTeX how to layout the thesis. It contains many comments that explain the purpose of each line of code. Fill in your details into the THESIS INFORMATION block. 130 | 131 | \keyword{titlepage.tex} -- This file creates the title page. In its original form, several elements (e.\,g., displaying your supervisor) are commented out because \file{titlepage.tex} sets up the title page of this document (i.\,e., the PSIThesis Guide). Please check the content next to the TODO markers and remove the comments as instructed. 132 | 133 | \keyword{PSIThesis.cls} -- This is the class file that tells LaTeX how to format the thesis. You should not have to make changes here. 134 | 135 | \keyword{setup.tex} -- This file loads and sets up additional LaTeX packages. 136 | It controls the layout of the thesis. If you want to change the layout, you should do that here. 137 | 138 | During compilation, LuaLaTeX and biber will create additional auxiliary files such as as 139 | \file{main.aux}, \file{main.bbl}, \file{main.aux}, \file{main.blg}, 140 | \file{main.lof}, \file{main.log}, \file{main.lot}, and \file{main.out}. 141 | The auxiliary files can be ignored or deleted. They will be regenerated as needed. 142 | 143 | 144 | \subsection{Compiling the PDF} 145 | \label{sec:compile} 146 | 147 | You have to compile this template with \texttt{lualatex} (or XeTeX, cf. Sect.~\ref{sec:requirements}). Using \texttt{pdfLaTeX} is not possible, because the template uses TTF and OTF fonts. 148 | 149 | On Windows, you can use the TeXworks application for compilation. To obtain the final PDF, you have to compile \file{main.tex} with \code{lualatex}, then run \code{biber}, and once more compile \file{main.tex} with \code{lualatex}. 150 | 151 | On Linux and macOS, you can use the provided \keyword{Makefile}.\sidenote{Alternatively, you should be able to compile the thesis by running \code{latexmk -lualatex -pdf main.tex}. If you use an IDE that does not support \emph{latexmk}, you can still compile the document by manually executing \emph{lualatex}, then \emph{biber}, and \emph{lualatex} once again.} 152 | Just navigate to the ``en'' directory and enter \code{make} in a terminal. Running \code{make} will automatically call the programs \code{lualatex} (which creates the PDF) and \code{biber} (which is used to compile the bibliography). 153 | 154 | The \code{make} command keeps track of changes in your source files. If you add additional files that should be tracked for changes, you should edit the list of files at the top of the \file{Makefile}. 155 | Otherwise, \code{make} may refuse to compile a new version because it believes that \file{main.pdf} is already up to date. In this case, a call to \code{make clean} will help: It removes all files generated during compilation. After that, a call to \code{make} will regenerate them, including \file{main.pdf}. 156 | 157 | 158 | We haven't prepared the template to be used with the convenient LaTeX editor \textsc{LyX}.\sidenote{\url{https://www.lyx.org}} LyX hides the LaTeX code from authors and offers a user interface that resembles a word processor. 159 | If LaTeX code puts you off, check out LyX and start writing there. Eventually, you can still export the LaTeX source code and copy and paste it into the PSIThesis template. Be sure to reserve some days to debug compatibility issues. 160 | 161 | \subsection{Filling in Your Information in \emph{main.tex}}\label{sec:fillingdetails} 162 | 163 | You will need to personalize the thesis template by filling in your details in \file{main.tex} with a text editor or your favorite LaTeX environment. 164 | 165 | Open the file and scroll down to the third large block titled \emph{THESIS INFORMATION}. You will see entries for \emph{University Name}, \emph{Department Name}, etc. Fill out the information about yourself, your group, and institution.% 166 | \sidenote{If you write a thesis at the PSI Chair at the University of Bamberg, you can keep the defaults.} 167 | You can also insert web links; if you do, make sure you use the full URL, including the \code{http://} for this. If you don't want these to be linked, remove the \verb|\href{url}{name}| and only leave the name. 168 | 169 | Next, open the file \file{misc/titlepage.tex}. Remove and add the comments as instructed by the \emph{TODO} notes.\marginnote{\textbf{Do not forget to edit \emph{titlepage.tex}!}} 170 | 171 | When you have done this, save all changed files and recompile \code{main.tex}. All the information you filled in should now be in the PDF. You can now begin writing your thesis. 172 | 173 | %---------------------------------------------------------------------------------------- 174 | 175 | \subsection{More Information on \emph{main.tex}} 176 | 177 | The \file{main.tex} file sets up the structure of the thesis. There are plenty of comments that explain the purpose of the code. 178 | Each major document element is divided into commented blocks with titles in all capitals. Initially, there seems to be a lot of LaTeX code. Most of that code takes care of the formatting of the thesis, so don't worry about it. 179 | 180 | Begin by checking that your information on the title page is correct. For the thesis declaration, your institution may insist on something different than the text given. If this is the case, replace the text in the \emph{DECLARATION PAGE} block. 181 | 182 | After that, you can insert a page with a quote (disabled by default). 183 | Next up is the abstract page, which concisely summarizes your work. 184 | After the abstract, you can insert an acknowledgments page (disabled by default). 185 | You can use this space to thank your supporters. 186 | 187 | The table of contents and the list of figures and tables are taken care of for you.% 188 | \sidenote{If you write a thesis at the PSI chair, your thesis should \emph{only} contain a Table of Contents (i.\,e., neither a List of Figures nor a List of Tables). Therefore, all remaining lists are disabled by default. You must change \file{main.tex}, if you want to add these lists to your document.} 189 | The next pages are optional: a list of abbreviations, a list of the physical constants and numbers, and a list of mathematical symbols. 190 | The next optional page contains a one-line dedication. 191 | 192 | After the definitions of the lists, there is a block that includes all the individual chapters. Each chapter should be saved in a separate file and put into the \emph{chapters} folder. 193 | Uncomment the respective lines (delete the \code{\%} character) as you add chapters to your thesis. Similarly for the appendices, uncomment the respective lines as you need them. Appendices should be saved in the \emph{appendices} folder. 194 | 195 | The next block sets up the bibliography. The template uses the bibliography style \emph{alpha}. The alpha style creates reference labels that contain the first letters or initials of authors and a two-digit number for the year, such as \cite{Hintz02}. 196 | 197 | 198 | \section{Your Turn Now} 199 | 200 | The easiest way to start your thesis is to replace text in the existing files. You might want to keep copies of the \file{.tex} to look up the source code as you move on. 201 | 202 | We hope that this template helps you get up to speed. The tedious task of setting up the structure has been taken care of for you. It's now your job to create the content. 203 | 204 | Good luck and happy writing! 205 | 206 | -------------------------------------------------------------------------------- /degree-thesis/deps.txt: -------------------------------------------------------------------------------- 1 | latexmk 2 | luatex 3 | etoolbox 4 | parskip 5 | babel-german 6 | koma-script 7 | xpatch 8 | setspace 9 | siunitx 10 | booktabs 11 | caption 12 | xcolor 13 | luainputenc 14 | luatexbase 15 | newtx 16 | xkeyval 17 | fontspec 18 | cochineal 19 | titlesec 20 | etoc 21 | textcase 22 | marginnote 23 | marginfix 24 | ragged2e 25 | microtype 26 | biblatex 27 | csquotes 28 | todonotes 29 | cleveref 30 | datetime 31 | fmtcount 32 | listings 33 | sidenotes 34 | changepage 35 | enumitem 36 | txfonts 37 | biber 38 | 39 | # Minted as code highlighting alternative and its dependencies 40 | minted 41 | fancyvrb 42 | upquote 43 | 44 | # Add your own packages below this line 45 | -------------------------------------------------------------------------------- /degree-thesis/examples/color-hsb.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/color-hsb.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/color-mono.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/color-mono.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/color-plots-mono.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/color-plots-mono.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/color-plots.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/color-plots.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/color-saturation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/color-saturation.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-direction.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-direction.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-dominance.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-dominance.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-emphasis.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-emphasis.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-entities.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-entities.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-explanations.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-explanations.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-flowchart.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-flowchart.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-labelsinside.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-labelsinside.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-labelsoutside.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-labelsoutside.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-relationships.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-relationships.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-tree.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-tree.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/diagram-variations.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/diagram-variations.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/gestalt-closure.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/gestalt-closure.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/gestalt-connectedness.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/gestalt-connectedness.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/gestalt-continuity.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/gestalt-continuity.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/gestalt-figureground.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/gestalt-figureground.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/gestalt-proximity.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/gestalt-proximity.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/gestalt-similarity.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/gestalt-similarity.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/gestalt-symmetry.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/gestalt-symmetry.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/graphs-barcharts.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/graphs-barcharts.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/graphs-histograms.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/graphs-histograms.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/graphs-linecharts.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/graphs-linecharts.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/info-orga-continuum.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/info-orga-continuum.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/info-orga-hierarchy.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/info-orga-hierarchy.pdf -------------------------------------------------------------------------------- /degree-thesis/examples/plot.py: -------------------------------------------------------------------------------- 1 | """ 2 | Overlapping densities ('ridge plot') 3 | 4 | Source: 5 | https://seaborn.pydata.org/examples/kde_ridgeplot.html 6 | ==================================== 7 | 8 | 9 | """ 10 | import numpy as np 11 | import pandas as pd 12 | import seaborn as sns 13 | import matplotlib.pyplot as plt 14 | sns.set(style="white", rc={"axes.facecolor": (0, 0, 0, 0)}) 15 | 16 | # Create the data 17 | rs = np.random.RandomState(1979) 18 | x = rs.randn(500) 19 | g = np.tile(list("ABCDEFGHIJ"), 50) 20 | df = pd.DataFrame(dict(x=x, g=g)) 21 | m = df.g.map(ord) 22 | df["x"] += m 23 | 24 | # Initialize the FacetGrid object 25 | pal = sns.cubehelix_palette(10, rot=-.25, light=.7) 26 | g = sns.FacetGrid(df, row="g", hue="g", aspect=30, height=.5, palette=pal) 27 | 28 | # Draw the densities in a few steps 29 | g.map(sns.kdeplot, "x", clip_on=False, shade=True, alpha=1, lw=1.5, bw=.2) 30 | g.map(sns.kdeplot, "x", clip_on=False, color="w", lw=2, bw=.2) 31 | g.map(plt.axhline, y=0, lw=2, clip_on=False) 32 | 33 | 34 | # Define and use a simple function to label the plot in axes coordinates 35 | def label(x, color, label): 36 | ax = plt.gca() 37 | ax.text(0, .2, label, fontweight="bold", color=color, 38 | ha="left", va="center", transform=ax.transAxes) 39 | 40 | 41 | g.map(label, "x") 42 | 43 | # Set the subplots to overlap 44 | g.fig.subplots_adjust(hspace=-.25) 45 | 46 | # Remove axes details that don't play well with overlap 47 | g.set_titles("") 48 | g.set(yticks=[]) 49 | g.despine(bottom=True, left=True) 50 | 51 | g.savefig("plot.pdf", bbox_inches='tight') 52 | 53 | 54 | -------------------------------------------------------------------------------- /degree-thesis/examples/wiggled-line.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/examples/wiggled-line.pdf -------------------------------------------------------------------------------- /degree-thesis/figures/barplot-after.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/figures/barplot-after.png -------------------------------------------------------------------------------- /degree-thesis/figures/barplot-before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/figures/barplot-before.png -------------------------------------------------------------------------------- /degree-thesis/figures/cat.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/figures/cat.pdf -------------------------------------------------------------------------------- /degree-thesis/figures/plot.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/figures/plot.pdf -------------------------------------------------------------------------------- /degree-thesis/fonts/LICENSE-Roboto.txt: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. -------------------------------------------------------------------------------- /degree-thesis/fonts/LICENSE-iosevka.md: -------------------------------------------------------------------------------- 1 | The font is licensed under SIL OFL Version 1.1. 2 | 3 | The support code is licensed under Berkeley Software Distribution license. 4 | 5 | --- 6 | --- 7 | 8 | Copyright (c) 2015-2020 Belleve Invis (belleve@typeof.net). 9 | 10 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 11 | * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 12 | * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 13 | * Neither the name of Belleve Invis nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 14 | 15 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BELLEVE INVIS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 16 | 17 | ----------------------- 18 | 19 | --- 20 | 21 | Copyright 2015-2020, Belleve Invis (belleve@typeof.net). 22 | 23 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 24 | 25 | This license is copied below, and is also available with a FAQ at: 26 | http://scripts.sil.org/OFL 27 | 28 | -------------------------- 29 | 30 | 31 | SIL Open Font License v1.1 32 | ==================================================== 33 | 34 | 35 | Preamble 36 | ---------- 37 | 38 | The goals of the Open Font License (OFL) are to stimulate worldwide 39 | development of collaborative font projects, to support the font creation 40 | efforts of academic and linguistic communities, and to provide a free and 41 | open framework in which fonts may be shared and improved in partnership 42 | with others. 43 | 44 | The OFL allows the licensed fonts to be used, studied, modified and 45 | redistributed freely as long as they are not sold by themselves. The 46 | fonts, including any derivative works, can be bundled, embedded, 47 | redistributed and/or sold with any software provided that any reserved 48 | names are not used by derivative works. The fonts and derivatives, 49 | however, cannot be released under any other type of license. The 50 | requirement for fonts to remain under this license does not apply 51 | to any document created using the fonts or their derivatives. 52 | 53 | 54 | Definitions 55 | ------------- 56 | 57 | `"Font Software"` refers to the set of files released by the Copyright 58 | Holder(s) under this license and clearly marked as such. This may 59 | include source files, build scripts and documentation. 60 | 61 | `"Reserved Font Name"` refers to any names specified as such after the 62 | copyright statement(s). 63 | 64 | `"Original Version"` refers to the collection of Font Software components as 65 | distributed by the Copyright Holder(s). 66 | 67 | `"Modified Version"` refers to any derivative made by adding to, deleting, 68 | or substituting -- in part or in whole -- any of the components of the 69 | Original Version, by changing formats or by porting the Font Software to a 70 | new environment. 71 | 72 | `"Author"` refers to any designer, engineer, programmer, technical 73 | writer or other person who contributed to the Font Software. 74 | 75 | 76 | Permission & Conditions 77 | ------------------------ 78 | 79 | Permission is hereby granted, free of charge, to any person obtaining 80 | a copy of the Font Software, to use, study, copy, merge, embed, modify, 81 | redistribute, and sell modified and unmodified copies of the Font 82 | Software, subject to the following conditions: 83 | 84 | 1. Neither the Font Software nor any of its individual components, 85 | in Original or Modified Versions, may be sold by itself. 86 | 87 | 2. Original or Modified Versions of the Font Software may be bundled, 88 | redistributed and/or sold with any software, provided that each copy 89 | contains the above copyright notice and this license. These can be 90 | included either as stand-alone text files, human-readable headers or 91 | in the appropriate machine-readable metadata fields within text or 92 | binary files as long as those fields can be easily viewed by the user. 93 | 94 | 3. No Modified Version of the Font Software may use the Reserved Font 95 | Name(s) unless explicit written permission is granted by the corresponding 96 | Copyright Holder. This restriction only applies to the primary font name as 97 | presented to the users. 98 | 99 | 4. The name(s) of the Copyright Holder(s) or the Author(s) of the Font 100 | Software shall not be used to promote, endorse or advertise any 101 | Modified Version, except to acknowledge the contribution(s) of the 102 | Copyright Holder(s) and the Author(s) or with their explicit written 103 | permission. 104 | 105 | 5. The Font Software, modified or unmodified, in part or in whole, 106 | must be distributed entirely under this license, and must not be 107 | distributed under any other license. The requirement for fonts to 108 | remain under this license does not apply to any document created 109 | using the Font Software. 110 | 111 | 112 | 113 | Termination 114 | ----------- 115 | 116 | This license becomes null and void if any of the above conditions are 117 | not met. 118 | 119 | 120 | DISCLAIMER 121 | 122 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 123 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 124 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 125 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 126 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 127 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 128 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 129 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM 130 | OTHER DEALINGS IN THE FONT SOFTWARE. 131 | -------------------------------------------------------------------------------- /degree-thesis/fonts/Roboto-Bold.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/Roboto-Bold.otf -------------------------------------------------------------------------------- /degree-thesis/fonts/Roboto-BoldItalic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/Roboto-BoldItalic.otf -------------------------------------------------------------------------------- /degree-thesis/fonts/Roboto-Italic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/Roboto-Italic.otf -------------------------------------------------------------------------------- /degree-thesis/fonts/Roboto-Regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/Roboto-Regular.otf -------------------------------------------------------------------------------- /degree-thesis/fonts/iosevka-ss04-bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/iosevka-ss04-bold.ttf -------------------------------------------------------------------------------- /degree-thesis/fonts/iosevka-ss04-bolditalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/iosevka-ss04-bolditalic.ttf -------------------------------------------------------------------------------- /degree-thesis/fonts/iosevka-ss04-italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/iosevka-ss04-italic.ttf -------------------------------------------------------------------------------- /degree-thesis/fonts/iosevka-ss04-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/fonts/iosevka-ss04-regular.ttf -------------------------------------------------------------------------------- /degree-thesis/literature.bib: -------------------------------------------------------------------------------- 1 | %% This BibTeX bibliography file was created using BibDesk. 2 | %% http://bibdesk.sourceforge.net/ 3 | 4 | %% Created for dh at 2020-03-06 11:02:56 +0100 5 | 6 | 7 | %% Saved with string encoding Unicode (UTF-8) 8 | 9 | 10 | 11 | @inproceedings{LoesingMD10-tor, 12 | Author = {Karsten Loesing and Steven J. Murdoch and Roger Dingledine}, 13 | Booktitle = {Financial Cryptography (FC)}, 14 | Crossref = {DBLP:conf/fc/2010w}, 15 | Date-Added = {2020-03-06 09:45:27 +0100}, 16 | Date-Modified = {2020-03-06 09:47:58 +0100}, 17 | Pages = {203--215}, 18 | Title = {A Case Study on Measuring Statistical Data in the Tor Anonymity Network}, 19 | Year = {2010}, 20 | Bdsk-Url-1 = {https://doi.org/10.1007/978-3-642-14992-4%5C_19}} 21 | 22 | @proceedings{DBLP:conf/fc/2010w, 23 | Date-Added = {2020-03-06 09:45:27 +0100}, 24 | Date-Modified = {2020-03-06 09:47:01 +0100}, 25 | Publisher = {Springer}, 26 | Series = {LNCS}, 27 | Title = {Financial Cryptography and Data Security, {FC} 2010 Workshops, RLCPS, WECSR, and {WLC} 2010, Tenerife, Canary Islands, Spain, January 25-28, 2010, Revised Selected Papers}, 28 | Url = {https://doi.org/10.1007/978-3-642-14992-4}, 29 | Volume = {6054}, 30 | Year = {2010}, 31 | Bdsk-Url-1 = {https://doi.org/10.1007/978-3-642-14992-4}} 32 | 33 | @book{Lidwell10, 34 | Author = {Lidwell, W. and Holden, K. and Butler, J. and Elam, K.}, 35 | Date-Added = {2020-01-01 00:41:03 +0100}, 36 | Date-Modified = {2020-01-01 00:41:03 +0100}, 37 | Edition = 2, 38 | Publisher = {Rockport Publishers}, 39 | Title = {Universal Principles of Design, Revised and Updated: 125 Ways to Enhance Usability, Influence Perception, Increase Appeal, Make Better Design Decisions, and Teach Through Design}, 40 | Year = {2010}} 41 | 42 | @book{Ware12, 43 | Address = {San Francisco, CA, USA}, 44 | Author = {Ware, Colin}, 45 | Date-Added = {2019-12-30 14:25:55 +0100}, 46 | Date-Modified = {2019-12-30 14:26:02 +0100}, 47 | Edition = {3}, 48 | Isbn = {9780123814647}, 49 | Publisher = {Morgan Kaufmann Publishers Inc.}, 50 | Title = {Information Visualization: Perception for Design}, 51 | Year = {2012}} 52 | 53 | @book{Carter12, 54 | Address = {USA}, 55 | Author = {Carter, Matt}, 56 | Date-Added = {2019-12-29 22:23:15 +0100}, 57 | Date-Modified = {2019-12-29 22:23:27 +0100}, 58 | Isbn = {9780123859709}, 59 | Publisher = {Academic Press, Inc.}, 60 | Title = {Designing Science Presentations: A Visual Guide to Figures, Papers, Slides, Posters, and More}, 61 | Year = {2012}} 62 | 63 | @inproceedings{murdoch_steven_j._chip_2010, 64 | Address = {Oakland, CA, USA}, 65 | Author = {{Murdoch, Steven J.} and {Drimer, Saar} and {Anderson, Ross} and {Bond, Mike}}, 66 | Booktitle = {2010 {IEEE} {Symposium} on {Security} and {Privacy}}, 67 | Isbn = {9781424468942}, 68 | Language = {en}, 69 | Pages = {433--446}, 70 | Publisher = {IEEE}, 71 | Title = {Chip and {PIN} is {Broken}}, 72 | Url = {http://ieeexplore.ieee.org/document/5504801/}, 73 | Year = {2010}, 74 | Bdsk-Url-1 = {http://ieeexplore.ieee.org/document/5504801/}} 75 | 76 | @article{anderson_ross_emv:_2014, 77 | Author = {{Anderson, Ross} and {Murdoch, Steven J.}}, 78 | Doi = {10.1145/2602321}, 79 | Issn = {00010782}, 80 | Journal = {Communications of the ACM}, 81 | Language = {en}, 82 | Month = jun, 83 | Number = {6}, 84 | Pages = {24--28}, 85 | Shorttitle = {{EMV}}, 86 | Title = {{EMV}: why payment systems fail}, 87 | Url = {http://dl.acm.org/citation.cfm?doid=2602695.2602321}, 88 | Volume = {57}, 89 | Year = {2014}, 90 | Bdsk-Url-1 = {http://dl.acm.org/citation.cfm?doid=2602695.2602321}, 91 | Bdsk-Url-2 = {https://doi.org/10.1145/2602321}} 92 | 93 | @incollection{kou_weidong_secure_2003, 94 | Address = {Berlin, Heidelberg}, 95 | Author = {{Kou, Weidong} and {Agnew, Gordon}}, 96 | Booktitle = {Payment {Technologies} for {E}-{Commerce}}, 97 | Doi = {10.1007/978-3-662-05322-5_10}, 98 | Isbn = {9783642078873 9783662053225}, 99 | Language = {en}, 100 | Pages = {211--226}, 101 | Publisher = {Springer Berlin Heidelberg}, 102 | Shorttitle = {Secure {Electronic} {Transactions}}, 103 | Title = {Secure {Electronic} {Transactions}: {Overview}, {Capabilities}, and {Current} {Status}}, 104 | Url = {http://www.springerlink.com/index/10.1007/978-3-662-05322-5_10}, 105 | Year = {2003}, 106 | Bdsk-Url-1 = {http://www.springerlink.com/index/10.1007/978-3-662-05322-5_10}, 107 | Bdsk-Url-2 = {https://doi.org/10.1007/978-3-662-05322-5_10}} 108 | 109 | @article{solat_security_2017, 110 | Abstract = {This comprehensive survey deliberated over the security of electronic payment systems. In our research, we focused on either dominant systems or new attempts and innovations to improve the level of security of the electronic payment systems. This survey consists of the Card-present (CP) transactions and a review of its dominant system i.e. EMV including several researches at Cambridge university to designate variant types of attacks against this standard which demonstrates lack of a secure "offline" authentication method that is one of the main purpose of using the smart cards instead of magnetic stripe cards which are not able to participate in authentication process, the evaluation of the EMV migration from RSA cryptosystem to ECC based cryptosystem 3. The evaluation of the Card-not-present transactions approaches including 3D Secure, 3D SET, SET/EMV and EMV/CAP, the impact of concept of Tokenization and the role of Blind Signatures schemes in electronic cash and E-payment systems, use of quantum key distribution (QKD) in electronic payment systems to achieve unconditional security rather than only computational assurance of the security level by using traditional cryptography, the evaluation of Near Field Communication (NFC) and the contactless payment systems such as Google wallet, Android Pay and Apple Pay, the assessment of the electronic currency and peer to peer payment systems such as Bitcoin. The criterion of our survey for the measurement and the judgment about the quality of the security in electronic payment systems was this quote: "The security of a system is only as strong as its weakest link"}, 111 | Author = {Solat, Siamak}, 112 | Journal = {arXiv:1701.04556 [cs]}, 113 | Month = jan, 114 | Note = {arXiv: 1701.04556}, 115 | Shorttitle = {Security of {Electronic} {Payment} {Systems}}, 116 | Title = {Security of {Electronic} {Payment} {Systems}: {A} {Comprehensive} {Survey}}, 117 | Url = {http://arxiv.org/abs/1701.04556}, 118 | Year = {2017}, 119 | Bdsk-Url-1 = {http://arxiv.org/abs/1701.04556}} 120 | 121 | @inproceedings{bond_chip_2014, 122 | Abstract = {EMV, also known as "Chip and PIN", is the leading system for card payments worldwide. It is used throughout Europe and much of Asia, and is starting to be introduced in North America too. Payment cards contain a chip so they can execute an authentication protocol. This protocol requires point-of-sale (POS) terminals or ATMs to generate a nonce, called the unpredictable number, for each transaction to ensure it is fresh. We have discovered two serious problems: a widespread implementation flaw and a deeper, more difficult to fix flaw with the EMV protocol itself. The first flaw is that some EMV implementers have merely used counters, timestamps or home-grown algorithms to supply this nonce. This exposes them to a "pre-play" attack which is indistinguishable from card cloning from the standpoint of the logs available to the card-issuing bank, and can be carried out even if it is impossible to clone a card physically. Card cloning is the very type of fraud that EMV was supposed to prevent. We describe how we detected the vulnerability, a survey methodology we developed to chart the scope of the weakness, evidence from ATM and terminal experiments in the field, and our implementation of proof-of-concept attacks. We found flaws in widely-used ATMs from the largest manufacturers. We can now explain at least some of the increasing number of frauds in which victims are refused refunds by banks which claim that EMV cards cannot be cloned and that a customer involved in a dispute must therefore be mistaken or complicit. The second problem was exposed by the above work. Independent of the random number quality, there is a protocol failure: the actual random number generated by the terminal can simply be replaced by one the attacker used earlier when capturing an authentication code from the card. This variant of the pre-play attack may be carried out by malware in an ATM or POS terminal, or by a man-in-the-middle between the terminal and the acquirer. We explore the design and implementation mistakes that enabled these flaws to evade detection until now: shortcomings of the EMV specification, of the EMV kernel certification process, of implementation testing, formal analysis, and monitoring customer complaints. Finally we discuss countermeasures. More than a year after our initial responsible disclosure of these flaws to the banks, action has only been taken to mitigate the first of them, while we have seen a likely case of the second in the wild, and the spread of ATM and POS malware is making it ever more of a threat.}, 123 | Author = {Bond, M. and Choudary, O. and Murdoch, S. J. and Skorobogatov, S. and Anderson, R.}, 124 | Booktitle = {2014 {IEEE} {Symposium} on {Security} and {Privacy}}, 125 | Keywords = {EMV, Pre-Play, cloning}, 126 | Month = may, 127 | Pages = {49--64}, 128 | Shorttitle = {Chip and {Skim}}, 129 | Title = {Chip and {Skim}: {Cloning} {EMV} {Cards} with the {Pre}-play {Attack}}, 130 | Year = {2014}} 131 | 132 | @article{ortiz_s._is_2006, 133 | Author = {{Ortiz, S.}}, 134 | Issn = {0018-9162}, 135 | Journal = {Computer}, 136 | Language = {en}, 137 | Month = mar, 138 | Number = {3}, 139 | Pages = {18--20}, 140 | Title = {Is {Near}-{Field} {Communication} {Close} to {Success}?}, 141 | Url = {http://ieeexplore.ieee.org/document/1607943/}, 142 | Volume = {39}, 143 | Year = {2006}, 144 | Bdsk-Url-1 = {http://ieeexplore.ieee.org/document/1607943/}} 145 | 146 | @article{haselsteiner_security_2006, 147 | Abstract = {This paper gives a comprehensive analysis of security with respect to NFC. It is not limited to a certain application of NFC, but it uses a systematic approach to analyze the various aspects of security whenever an NFC interface is used. The authors want to clear up many misconceptions about security and NFC in various applications. The paper lists the threats, which are applicable to NFC, and describes solutions to protect against these threats. All of this is given in the context of currently available NFC hardware, NFC applications and possible future developments of NFC.}, 148 | Author = {Haselsteiner, Ernst and Breitfu{\ss}, Klemens}, 149 | Language = {en}, 150 | Month = jan, 151 | Pages = {11}, 152 | Title = {Security in {Near} {Field} {Communication} ({NFC})}, 153 | Year = {2006}} 154 | 155 | @online{galloway_visa_2019, 156 | Abstract = {Visa card vulnerability can bypass contactless transaction limits using a {MITM} attack}, 157 | Author = {Galloway, Leigh-Anne and Yunusov, Timur}, 158 | Date = {2019-07-29}, 159 | File = {Snapshot:/home/cptpie/Zotero/storage/GXG38JY6/visa-card-vulnerability-can-bypass-contactless-limits.html:text/html}, 160 | Langid = {english}, 161 | Note = {Accessed: 2019-08-13}, 162 | Title = {Visa card vulnerability can bypass contactless limits}, 163 | Url = {https://www.ptsecurity.com/ww-en/about/news/visa-card-vulnerability-can-bypass-contactless-limits/}, 164 | Urldate = {2019-08-13}, 165 | Bdsk-Url-1 = {https://www.ptsecurity.com/ww-en/about/news/visa-card-vulnerability-can-bypass-contactless-limits/}} 166 | 167 | @inproceedings{zhou_nshield_2014, 168 | Abstract = {The Near Field Communication ({NFC}) technology is gaining increasing popularity among mobile users. However, as a relatively new and developing technology, {NFC} may also introduce security threats that make mobile devices vulnerable to various malicious attacks. This work presents the first system study on the feasibility of and defense again passive {NFC} eavesdropping. Our experiments show that commodity {NFC}-enabled mobile devices can be eavesdropped from up to 240 cm away, which is at least an order of magnitude of the intended {NFC} communication distance. This finding challenges the general perception that {NFC} is largely immune to eavesdropping because of its short working range. We then present the design of a hardware security system called {nShield}. With a small form factor, {nShield} can be attached to the back of mobile devices to attenuate the signal strength against passive eavesdropping. At the same time, the absorbed {RF} energy is scavenged by {nShield} for its perpetual operation. {nShield} intelligently determines the right attenuation level that is just enough to sustain reliable data communication. We implement a prototype of {nShield}, and evaluate its performance via extensive experiments. Our results show that {nShield} has low power consumption (23 {uW}), can harvest significant amount of power (55 {mW}), and adaptively attenuates the signal strength of {NFC} in a variety of realistic settings, while only introducing insignificant delay (up to 2.2 s).}, 169 | Author = {Zhou, Ruogu and Xing, Guoliang}, 170 | Booktitle = {Proceedings of the 12th annual international conference on Mobile systems, applications, and services - {MobiSys} '14}, 171 | Date = {2014}, 172 | Eventtitle = {the 12th annual international conference}, 173 | Isbn = {978-1-4503-2793-0}, 174 | Langid = {english}, 175 | Location = {Bretton Woods, New Hampshire, {USA}}, 176 | Pages = {95--108}, 177 | Publisher = {{ACM} Press}, 178 | Shorttitle = {{nShield}}, 179 | Title = {{nShield}: a noninvasive {NFC} security system for mobiledevices}, 180 | Url = {http://dl.acm.org/citation.cfm?doid=2594368.2594376}, 181 | Urldate = {2019-08-18}, 182 | Bdsk-Url-1 = {http://dl.acm.org/citation.cfm?doid=2594368.2594376}} 183 | 184 | @inproceedings{lalehTaxonomyFraudsFraud2009, 185 | Abstract = {Fraud is growing noticeably with the expansion of modern technology and the universal superhighways of communication, resulting in the loss of billions of dollars worldwide each year. Several recent techniques in detecting fraud are constantly evolved and applied to many commerce areas. The goal of this paper is to propose a new taxonomy and a comprehensive review of different types of fraud and data mining techniques of fraud detection. The novelty of this paper is collecting all types of frauds that can detect by data mining techniques and review some real time approaches that have capability to detect frauds in real time.}, 186 | Author = {Laleh, Naeimeh and Abdollahi Azgomi, Mohammad}, 187 | Booktitle = {Information {{Systems}}, {{Technology}} and {{Management}}}, 188 | Editor = {Prasad, Sushil K. and Routray, Susmi and Khurana, Reema and Sahni, Sartaj}, 189 | File = {/home/xandy/Zotero/storage/TA6IH3PN/Laleh and Abdollahi Azgomi - 2009 - A Taxonomy of Frauds and Fraud Detection Technique.pdf}, 190 | Isbn = {978-3-642-00405-6}, 191 | Keywords = {Bagging,Fraud Detection,Intrusion Detection,Spike Detection,Stacking}, 192 | Language = {en}, 193 | Pages = {256-267}, 194 | Publisher = {{Springer Berlin Heidelberg}}, 195 | Series = {Communications in {{Computer}} and {{Information Science}}}, 196 | Title = {A {{Taxonomy}} of {{Frauds}} and {{Fraud Detection Techniques}}}, 197 | Year = {2009}} 198 | 199 | @article{ferradiWhenOrganizedCrime2016, 200 | Abstract = {This paper describes the forensic analysis of what the authors believe to be the most sophisticated smart card fraud encountered to date. In 2010, Murdoch et al. [7] described a man-inthe-middle attack against EMV cards. [7] demonstrated the attack using a general purpose FPGA board, noting that ``miniaturization is mostly a mechanical challenge, and well within the expertise of criminal gangs''. This indeed happened in 2011, when about 40 sophisticated card forgeries surfaced in the field.}, 201 | Author = {Ferradi, Houda and G{\'e}raud, R{\'e}mi and Naccache, David and Tria, Assia}, 202 | File = {/home/xandy/Zotero/storage/ASY6T76N/Ferradi et al. - 2016 - When organized crime applies academic results a f.pdf}, 203 | Issn = {2190-8508, 2190-8516}, 204 | Journal = {Journal of Cryptographic Engineering}, 205 | Language = {en}, 206 | Month = apr, 207 | Number = {1}, 208 | Pages = {49-59}, 209 | Shorttitle = {When Organized Crime Applies Academic Results}, 210 | Title = {When Organized Crime Applies Academic Results: A Forensic Analysis of an in-Card Listening Device}, 211 | Volume = {6}, 212 | Year = {2016}} 213 | 214 | @online{emvco_emvco_website, 215 | Author = {{EMVCo}}, 216 | File = {Snapshot:/home/cptpie/Zotero/storage/FJ5SU3SY/document-search.html:text/html}, 217 | Langid = {american}, 218 | Month = nov, 219 | Note = {Accessed: 2019-08-19}, 220 | Title = {{EMVCo} specification documents regarding {EMV}}, 221 | Titleaddon = {{EMVCo}}, 222 | Url = {https://www.emvco.com/document-search/}, 223 | Urldate = {2019-08-19}, 224 | Year = {2011}, 225 | Bdsk-Url-1 = {https://www.emvco.com/document-search/}} 226 | 227 | @online{emvco_emvco_book1, 228 | Author = {{EMVCo}}, 229 | File = {EMVCo - EMVCo - EMV Specification Book 1.pdf:/home/cptpie/Zotero/storage/4XK6CHIY/EMVCo - EMVCo - EMV Specification Book 1.pdf:application/pdf;Snapshot:/home/cptpie/Zotero/storage/TFBIAYFQ/terms-of-use.html:text/html}, 230 | Langid = {american}, 231 | Month = nov, 232 | Note = {02011}, 233 | Title = {{EMVCo} - {EMV} Specification Book 1}, 234 | Titleaddon = {{EMVCo}}, 235 | Url = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_1_ICC_to_Terminal_Interface_2012060705394541.pdf}, 236 | Urldate = {2019-08-19}, 237 | Year = {2011}, 238 | Bdsk-Url-1 = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_1_ICC_to_Terminal_Interface_2012060705394541.pdf}} 239 | 240 | @online{emvco_emvco_book2, 241 | Author = {{EMVCo}}, 242 | File = {EMVCo - EMVCo - EMV Specification Book 2.pdf:/home/cptpie/Zotero/storage/SB9JN6YV/EMVCo - EMVCo - EMV Specification Book 2.pdf:application/pdf}, 243 | Langid = {american}, 244 | Month = nov, 245 | Note = {00000}, 246 | Title = {{EMVCo} - {EMV} Specification Book 2}, 247 | Titleaddon = {{EMVCo}}, 248 | Url = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_2_Security_and_Key_Management_20120607061923900.pdf}, 249 | Urldate = {2019-08-19}, 250 | Year = {2011}, 251 | Bdsk-Url-1 = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_2_Security_and_Key_Management_20120607061923900.pdf}} 252 | 253 | @online{emvco_emvco_book3, 254 | Author = {{EMVCo}}, 255 | File = {EMVCo - EMVCo - EMV Specification Book 3.pdf:/home/cptpie/Zotero/storage/Q5FF9U26/EMVCo - EMVCo - EMV Specification Book 3.pdf:application/pdf}, 256 | Langid = {american}, 257 | Month = nov, 258 | Note = {00000}, 259 | Title = {{EMVCo} - {EMV} Specification Book 3}, 260 | Titleaddon = {{EMVCo}}, 261 | Url = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_3_Application_Specification_20120607062110791.pdf}, 262 | Urldate = {2019-08-19}, 263 | Year = {2011}, 264 | Bdsk-Url-1 = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_3_Application_Specification_20120607062110791.pdf}} 265 | 266 | @online{emvco_emvco_book4, 267 | Author = {{EMVCo}}, 268 | File = {EMVCo - EMVCo - EMV Specification Book 3.pdf:/home/cptpie/Zotero/storage/968SRZFW/EMVCo - EMVCo - EMV Specification Book 3.pdf:application/pdf}, 269 | Langid = {american}, 270 | Month = nov, 271 | Note = {02011}, 272 | Title = {{EMVCo} - {EMV} Specification Book 4}, 273 | Titleaddon = {{EMVCo}}, 274 | Url = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_3_Application_Specification_20120607062110791.pdf}, 275 | Urldate = {2019-08-19}, 276 | Year = {2011}, 277 | Bdsk-Url-1 = {https://www.emvco.com/wp-content/plugins/pmpro-customizations/oy-getfile.php?u=/wp-content/uploads/documents/EMV_v4.3_Book_3_Application_Specification_20120607062110791.pdf}} 278 | 279 | @article{Yang10, 280 | Author = {Yinghui Yang}, 281 | Date-Added = {2015-10-06 08:57:40 +0000}, 282 | Date-Modified = {2015-10-06 08:57:40 +0000}, 283 | Journal = {Decision Support Systems}, 284 | Pages = {261--271}, 285 | Title = {Web user behavioral profiling for user identification}, 286 | Volume = {49}, 287 | Year = {2010}} 288 | 289 | @inproceedings{Kopsell06, 290 | Author = {Stefan K{\"{o}}psell}, 291 | Booktitle = {{ETRICS} 2006}, 292 | Date-Added = {2015-01-19 06:58:00 +0000}, 293 | Date-Modified = {2015-01-19 07:26:21 +0000}, 294 | Pages = {221--237}, 295 | Publisher = {Springer}, 296 | Series = {LNCS}, 297 | Title = {{Low Latency Anonymous Communication - How Long Are Users Willing to Wait?}}, 298 | Volume = {3995}, 299 | Year = {2006}} 300 | 301 | @inproceedings{VilaGM03, 302 | Author = {Tony Vila and Rachel Greenstadt and David Molnar}, 303 | Booktitle = {{ICEC} 2003}, 304 | Date-Added = {2015-01-05 22:30:48 +0000}, 305 | Date-Modified = {2015-01-19 20:09:15 +0000}, 306 | Pages = {403--407}, 307 | Publisher = {{ACM}}, 308 | Title = {Why we can't be bothered to read privacy policies: models of privacy economics as a lemons market}, 309 | Year = {2003}} 310 | 311 | @inproceedings{Herrmann12-ipv6prefix, 312 | Author = {Dominik Herrmann and Christine Arndt and Hannes Federrath}, 313 | Booktitle = {1st Workshop on Privacy and Data Protection Technology, co-located with Amsterdam Privacy Conference}, 314 | Date-Added = {2015-01-05 22:09:26 +0000}, 315 | Date-Modified = {2015-01-06 07:23:02 +0000}, 316 | Title = {{IPv6 Prefix Alteration: An Opportunity to Improve Online Privacy}}, 317 | Year = {2012}, 318 | Bdsk-Url-1 = {http://arxiv.org/abs/1211.4704}} 319 | 320 | @phdthesis{Herrmann14-diss, 321 | Author = {Dominik Herrmann}, 322 | Date-Added = {2015-01-05 20:37:26 +0000}, 323 | Date-Modified = {2015-01-05 20:38:00 +0000}, 324 | School = {Universit{\"a}t Hamburg}, 325 | Title = {{Beobachtungsm{\"o}glichkeiten im Domain Name System: Angriffe auf die Privatsph{\"a}re und Techniken zum Selbstdatenschutz}}, 326 | Year = {2014}} 327 | 328 | @article{HBF:2013, 329 | Author = {Herrmann, Dominik and Banse, Christian and Federrath, Hannes}, 330 | Date-Added = {2015-01-05 16:42:05 +0000}, 331 | Date-Modified = {2015-01-05 16:42:05 +0000}, 332 | Journal = {Computers \& Security}, 333 | Keywords = {own}, 334 | Month = nov, 335 | Pages = {17--33}, 336 | Title = {{Behavior-based Tracking: Exploiting Characteristic Patterns in DNS Traffic}}, 337 | Volume = {39A}, 338 | Year = {2013}} 339 | 340 | @inproceedings{Herrmann11-NordSec, 341 | Author = {Dominik Herrmann and Christoph Gerber and Christian Banse and Hannes Federrath}, 342 | Booktitle = {NordSec 2010}, 343 | Date-Added = {2015-01-05 16:42:05 +0000}, 344 | Date-Modified = {2015-01-19 07:29:27 +0000}, 345 | Pages = {136--154}, 346 | Publisher = {Springer}, 347 | Series = {LNCS}, 348 | Title = {{Analyzing Characteristic Host Access Patterns for Re-identification of Web User Sessions}}, 349 | Volume = {7127}, 350 | Year = {2012}} 351 | 352 | @inproceedings{AcarEEJND14, 353 | Author = {Gunes Acar and Christian Eubank and Steven Englehardt and Marc Ju{\'{a}}rez and Arvind Narayanan and Claudia D{\'{\i}}az}, 354 | Booktitle = {CCS 2014}, 355 | Date-Added = {2015-01-05 16:29:33 +0000}, 356 | Date-Modified = {2015-01-19 07:27:53 +0000}, 357 | Pages = {674--689}, 358 | Publisher = {{ACM}}, 359 | Title = {The Web Never Forgets: Persistent Tracking Mechanisms in the Wild}, 360 | Year = {2014}} 361 | 362 | @inproceedings{Herrmann09, 363 | Author = {Dominik Herrmann and Rolf Wendolsky and Hannes Federrath}, 364 | Booktitle = {CCSW 2009}, 365 | Date-Added = {2015-01-05 15:27:12 +0000}, 366 | Date-Modified = {2015-01-19 07:28:03 +0000}, 367 | Pages = {31--42}, 368 | Publisher = {ACM}, 369 | Title = {{Website Fingerprinting: Attacking Popular Privacy Enhancing Technologies with the Multinomial Na\"{\i}ve-Bayes Classifier}}, 370 | Year = {2009}} 371 | 372 | @inproceedings{WangG13, 373 | Author = {Tao Wang and Ian Goldberg}, 374 | Booktitle = {{WPES} 2013}, 375 | Date-Added = {2015-01-05 15:25:20 +0000}, 376 | Date-Modified = {2015-01-19 07:28:58 +0000}, 377 | Pages = {201--212}, 378 | Publisher = {{ACM}}, 379 | Title = {{Improved website fingerprinting on Tor}}, 380 | Year = {2013}} 381 | 382 | @inproceedings{Raymond00, 383 | Author = {Jean-Fran{\c{c}}ois Raymond}, 384 | Booktitle = {International Workshop on Design Issues in Anonymity and Unobservability}, 385 | Date-Added = {2015-01-05 15:25:15 +0000}, 386 | Date-Modified = {2015-01-19 07:28:17 +0000}, 387 | Pages = {10--29}, 388 | Publisher = {Springer}, 389 | Series = {LNCS}, 390 | Title = {Traffic Analysis: Protocols, Attacks, Design Issues, and Open Problems}, 391 | Volume = {2009}, 392 | Year = {2001}} 393 | 394 | @inproceedings{Hintz02, 395 | Author = {Andrew Hintz}, 396 | Booktitle = {PET Workshop 2002}, 397 | Date-Added = {2015-01-05 15:25:06 +0000}, 398 | Date-Modified = {2015-01-19 07:29:11 +0000}, 399 | Pages = {171--178}, 400 | Publisher = {Springer}, 401 | Series = {LNCS}, 402 | Title = {{Fingerprinting Websites Using Traffic Analysis}}, 403 | Volume = {2482}, 404 | Year = {2003}} 405 | 406 | @inproceedings{Herrmann14-encdns, 407 | Author = {Dominik Herrmann and Karl-Peter Fuchs and Jens Lindemann and Hannes Federrath}, 408 | Booktitle = {{ESORICS} 2014}, 409 | Date-Added = {2015-01-05 15:24:24 +0000}, 410 | Date-Modified = {2015-01-19 07:29:19 +0000}, 411 | Pages = {37--55}, 412 | Publisher = {Springer}, 413 | Series = {LNCS}, 414 | Title = {{EncDNS: A Lightweight Privacy-Preserving Name Resolution Service}}, 415 | Volume = {8712}, 416 | Year = {2014}} 417 | 418 | @inproceedings{FederrathFHP11, 419 | Author = {Hannes Federrath and Karl-Peter Fuchs and Dominik Herrmann and Christopher Piosecny}, 420 | Booktitle = {{ESORICS} 2011}, 421 | Date-Added = {2015-01-05 15:24:03 +0000}, 422 | Date-Modified = {2015-01-19 07:28:32 +0000}, 423 | Pages = {665--683}, 424 | Publisher = {Springer}, 425 | Series = {LNCS}, 426 | Title = {{Privacy-Preserving DNS: Analysis of Broadcast, Range Queries and Mix-Based Protection Methods}}, 427 | Volume = {6879}, 428 | Year = {2011}} 429 | 430 | @misc{Goodson12-privacy, 431 | Author = {Scott Goodson}, 432 | Date-Added = {2015-01-05 15:23:45 +0000}, 433 | Date-Modified = {2015-01-06 06:55:07 +0000}, 434 | Howpublished = {Forbes.com, \url{http://onforb.es/wVrU4G} (visited on 6 Jan 2015)}, 435 | Title = {{If You're Not Paying For It, You Become The Product}}, 436 | Year = {2012}, 437 | Bdsk-Url-1 = {http://onforb.es/wVrU4G}} 438 | 439 | @incollection{Fabian10, 440 | Author = {Fabian, Benjamin and Goertz, Florian and Kunz, Steffen and M{\"u}ller, Sebastian and Nitzsche, Mathias}, 441 | Booktitle = {AMCIS 2010, SIGeBIZ track}, 442 | Date-Added = {2015-01-02 13:32:55 +0000}, 443 | Date-Modified = {2015-01-19 07:28:29 +0000}, 444 | Pages = {63-75}, 445 | Publisher = {Springer}, 446 | Series = {LNBIP}, 447 | Title = {{Privately Waiting --- A Usability Analysis of the Tor Anonymity Network}}, 448 | Volume = {58}, 449 | Year = {2010}, 450 | Bdsk-Url-1 = {http://dx.doi.org/10.1007/978-3-642-15141-5_6}} 451 | 452 | @misc{Google12, 453 | Author = {Jeremy K. Chen}, 454 | Date-Added = {2015-01-02 10:23:35 +0000}, 455 | Date-Modified = {2015-01-06 06:54:05 +0000}, 456 | Howpublished = {Official Google Blog, \url{http://googleblog.blogspot.de/2012/02/google-public-dns-70-billion-requests.html} (visited on 6 Jan 2015)}, 457 | Title = {{Google Public DNS: 70 billion requests a day and counting}}, 458 | Year = {2012}, 459 | Bdsk-Url-1 = {http://www.internetsociety.org/sites/default/files/bp-dnsresiliency-201201-en_0.pdf}} 460 | 461 | @inproceedings{goldberg97, 462 | Author = {Ian Goldberg and David Wagner and Eric Brewer}, 463 | Booktitle = {42nd IEEE Spring COMPCON}, 464 | Date-Modified = {2015-01-19 07:28:37 +0000}, 465 | Publisher = {IEEE}, 466 | Title = {{Privacy-enhancing Technologies for the Internet}}, 467 | Year = {1997}} 468 | 469 | @inproceedings{WendolskyHF07, 470 | Author = {Rolf Wendolsky and Dominik Herrmann and Hannes Federrath}, 471 | Booktitle = {{PET} Workshop 2007}, 472 | Date-Modified = {2015-01-19 07:28:50 +0000}, 473 | Pages = {233--253}, 474 | Publisher = {Springer}, 475 | Series = {LNCS}, 476 | Title = {Performance Comparison of Low-Latency Anonymisation Services from a User Perspective}, 477 | Volume = {4776}, 478 | Year = {2007}} 479 | 480 | @article{chaum81, 481 | Author = {David Chaum}, 482 | Journal = {{Communications of the ACM}}, 483 | Number = {2}, 484 | Title = {{Untraceable electronic mail, return addresses, and digital pseudo\-nyms}}, 485 | Volume = {24}, 486 | Year = {1981}} 487 | 488 | @inproceedings{BertholdFK00, 489 | Author = {Oliver Berthold and Hannes Federrath and Stefan K{\"o}psell}, 490 | Booktitle = {International Workshop on Design Issues in Anonymity and Unobservability}, 491 | Date-Modified = {2015-01-19 07:28:11 +0000}, 492 | Pages = {115--129}, 493 | Publisher = {Springer}, 494 | Series = {LNCS}, 495 | Title = {{Web MIXes: A System for Anonymous and Unobservable Internet Access}}, 496 | Volume = {2009}, 497 | Year = {2001}} 498 | 499 | @inproceedings{Dingledine04, 500 | Author = {Roger Dingledine and Nick Mathewson and Paul F. Syverson}, 501 | Booktitle = {13th USENIX Security Symposium}, 502 | Date-Modified = {2015-01-19 07:28:21 +0000}, 503 | Pages = {303--320}, 504 | Publisher = {USENIX}, 505 | Title = {{Tor: The Second-Generation Onion Router}}, 506 | Year = {2004}} 507 | 508 | @techreport{rfc5246, 509 | Author = {Tim Dierks and Eric Rescorla}, 510 | Date-Modified = {2015-01-06 07:02:22 +0000}, 511 | Howpublished = {Internet Request for Comments}, 512 | Institution = {RFC Editor}, 513 | Month = {August}, 514 | Number = {5246}, 515 | Title = {{The Transport Layer Security (TLS) Protocol Version 1.2}}, 516 | Type = {{RFC}}, 517 | Year = 2008} 518 | 519 | @inproceedings{LoesingMD10, 520 | Author = {Karsten Loesing and Steven J. Murdoch and Roger Dingledine}, 521 | Booktitle = {{FC} 2010 Workshops}, 522 | Date-Modified = {2015-01-19 07:29:31 +0000}, 523 | Pages = {203--215}, 524 | Publisher = {Springer}, 525 | Series = {LNCS}, 526 | Title = {{A Case Study on Measuring Statistical Data in the Tor Anonymity Network}}, 527 | Volume = {6054}, 528 | Year = {2010}} 529 | 530 | @inproceedings{FuchsHF13, 531 | Author = {Karl-Peter Fuchs and Dominik Herrmann and Hannes Federrath}, 532 | Booktitle = {IFIP SEC 2013}, 533 | Date-Modified = {2015-01-19 07:29:05 +0000}, 534 | Pages = {162--175}, 535 | Publisher = {Springer}, 536 | Series = {AICT}, 537 | Title = {Generating Realistic Application Workloads for Mix-Based Systems for Controllable, Repeatable and Usable Experimentation}, 538 | Volume = {405}, 539 | Year = {2013}} 540 | 541 | @inproceedings{BuchananRSS08, 542 | Author = {Erik Buchanan and Ryan Roemer and Hovav Shacham and Stefan Savage}, 543 | Bibsource = {dblp computer science bibliography, https://dblp.org}, 544 | Biburl = {https://dblp.org/rec/bib/conf/ccs/BuchananRSS08}, 545 | Booktitle = {Proceedings of the 2008 {ACM} Conference on Computer and Communications Security, {CCS} 2008, Alexandria, Virginia, USA, October 27-31, 2008}, 546 | Crossref = {DBLP:conf/ccs/2008}, 547 | Doi = {10.1145/1455770.1455776}, 548 | Pages = {27--38}, 549 | Timestamp = {Wed, 14 Nov 2018 10:54:58 +0100}, 550 | Title = {When good instructions go bad: generalizing return-oriented programming to {RISC}}, 551 | Url = {https://doi.org/10.1145/1455770.1455776}, 552 | Year = {2008}, 553 | Bdsk-Url-1 = {https://doi.org/10.1145/1455770.1455776}} 554 | 555 | @proceedings{DBLP:conf/ccs/2008, 556 | Bibsource = {dblp computer science bibliography, https://dblp.org}, 557 | Biburl = {https://dblp.org/rec/bib/conf/ccs/2008}, 558 | Editor = {Peng Ning and Paul F. Syverson and Somesh Jha}, 559 | Isbn = {978-1-59593-810-7}, 560 | Publisher = {{ACM}}, 561 | Timestamp = {Tue, 11 Nov 2008 10:39:24 +0100}, 562 | Title = {Proceedings of the 2008 {ACM} Conference on Computer and Communications Security, {CCS} 2008, Alexandria, Virginia, USA, October 27-31, 2008}, 563 | Year = {2008}} 564 | 565 | @inproceedings{DietrichKBF18, 566 | Author = {Constanze Dietrich and Katharina Krombholz and Kevin Borgolte and Tobias Fiebig}, 567 | Crossref = {DBLP:conf/ccs/2018}, 568 | Date-Modified = {2020-03-06 11:02:53 +0100}, 569 | Pages = {1272--1289}, 570 | Title = {Investigating System Operators' Perspective on Security Misconfigurations}, 571 | Year = {2018}, 572 | Bdsk-Url-1 = {https://doi.org/10.1145/3243734.3243794}} 573 | 574 | @proceedings{DBLP:conf/ccs/2018, 575 | Date-Modified = {2020-03-06 11:02:45 +0100}, 576 | Publisher = {{ACM}}, 577 | Title = {Conference on Computer and Communications Security (CCS)}, 578 | Year = {2018}, 579 | Bdsk-Url-1 = {http://dl.acm.org/citation.cfm?id=3243734}} 580 | -------------------------------------------------------------------------------- /degree-thesis/main.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % PSI Chair Thesis Template 4 | % Version 20200913 5 | % 6 | % based on MastersDoctoralThesis.cls 7 | % Version 2.5 (27/8/17) 8 | % 9 | % which was obtained from: 10 | % http://www.LaTeXTemplates.com 11 | % 12 | % Version 2.x major modifications by: 13 | % Vel (vel@latextemplates.com) 14 | % 15 | % This template is based on a template by: 16 | % Steve Gunn (http://users.ecs.soton.ac.uk/srg/softwaretools/document/templates/) 17 | % Sunil Patel (http://www.sunilpatel.co.uk/thesis-template/) 18 | % 19 | % License of this guide and the template 20 | % CC BY-SA 4.0 (http://creativecommons.org/licenses/by-sa/4.0/) 21 | % 22 | % Exception 1: Some excerpts, figures, and tables that have been taken 23 | % from the literature (denoted with a citation in the caption) are not 24 | % covered by the above license. Permission to re-use and distribute 25 | % these excerpts, figures, and tables must be obtained from the 26 | % respective holder of the copyrights. 27 | % 28 | % Exception 2: Chapter 1 and Appendix C are based on content from the 29 | % MastersDoctoralThesis template mentioned above, which is licensed under 30 | % CC BY-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/) 31 | % 32 | % License of the PSIThesis.cls class file: 33 | % LPPL v1.3c (http://www.latex-project.org/lppl) 34 | % 35 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 36 | 37 | %---------------------------------------------------------------------------------------- 38 | % PACKAGES AND OTHER DOCUMENT CONFIGURATIONS 39 | %---------------------------------------------------------------------------------------- 40 | 41 | \PassOptionsToPackage{english,ngerman}{babel} 42 | \documentclass[ 43 | 11pt, % The default document font size is 11 (recommended), options: 10pt, 11pt, 12pt 44 | %oneside, % Two-side layout is recommended; uncomment to switch to one-sided 45 | english, % replace with ngerman for German; not fully supported so far -- requires changes elsewhere 46 | singlespacing, % Single line spacing (recommended), alternatives: onehalfspacing or doublespacing 47 | %draft, % Uncomment to enable draft mode (no pictures, no links, overfull hboxes indicated) 48 | %nolistspacing, % If the document is onehalfspacing or doublespacing, uncomment this to set spacing in lists to single 49 | %liststotoc, % Uncomment to add list of figures/tables/etc to table of contents (not recommended) 50 | %toctotoc, % Uncomment to add the main table of contents to the table of contents (not recommended) 51 | parskip, % add space between paragraphs (recommended) 52 | nohyperref, % do not load the hyperref package (is loaded in setup.tex) 53 | %headsepline, % print a horizontal line under the page header 54 | consistentlayout, % layout of declaration, abstract and acknowledgements pages matches the default layout 55 | %minted, % Uncomment to enable minted support - be aware that minted and normal listings are not interchangeably defined 56 | %final, % Uncomment to hide all todo notes 57 | ]{PSIThesis} % The class file specifying the document structure 58 | 59 | % version of the guide 60 | \def\tversion{v20200913} 61 | 62 | % long-term stable URL to the thesis guide 63 | \def\doiurl{https://doi.org/10.20378/irb-48428} 64 | \def\githuburl{https://github.com/UBA-PSI/psi-thesis-guide} 65 | 66 | \input{misc/setup.tex} % Load the settings from Misc/setup.tex 67 | \input{misc/commands.tex} % Load the custom commands from Misc/commands.tex 68 | 69 | % Uncomment this command to make all links black: 70 | % useful for printing on black-white printers that do a 71 | % poor job at rasterizing colored text properly 72 | %\hypersetup{colorlinks=false} 73 | 74 | \addbibresource{literature.bib} % The filename of the bibliography 75 | 76 | %---------------------------------------------------------------------------------------- 77 | % THESIS INFORMATION 78 | %---------------------------------------------------------------------------------------- 79 | \newcommand{\thesistype}{Bachelor} % type of your thesis (Bachelors, Masters, Doctoral ...) 80 | 81 | %%% CHANGE THIS: 82 | % Your thesis title, this is used in the title and abstract, print it elsewhere with \ttitle 83 | \thesistitle{Guidelines for Writing a High-Quality Thesis with the PSIThesis Template} 84 | 85 | % date to be printed on the title, this will automatically update and be in the correct format 86 | % If any changes to this format (Month JJJJ) are necessary the definition can be found in line 337 87 | % of misc/setup.tex 88 | \def\tdate{\monthyeardate\today} 89 | 90 | %%% CHANGE THIS: 91 | % Your name, this is used in the title page, print it elsewhere with \authorname 92 | \author{Dominik Herrmann} 93 | 94 | % Your supervisor's name, this is used in the title page, print it elsewhere with \supname 95 | \supervisor{Prof. Dr. XXX YYY} 96 | 97 | % Your university's name and URL, this is used in the title page, print it elsewhere with \univname 98 | \university{\href{https://www.uni-bamberg.de/en/}{University of Bamberg}} 99 | 100 | % Your research group's name and URL, this is used in the title page, print it elsewhere with \groupname 101 | \group{\href{https://www.uni-bamberg.de/en/psi/}{Privacy and Security in Information Systems Group}} 102 | 103 | % Your department's name and URL, this is used in the title page, print it elsewhere with \deptname 104 | \department{department not used} 105 | 106 | % Your faculty's name and URL, this is used in the title page, print it elsewhere with \facname 107 | % TODO: insert *your* degree program in the \faculty command below 108 | % Applied Computer Science 109 | % Computing in the Humanities 110 | % Information Systems 111 | % International Information Systems Management 112 | % International Software Systems Science 113 | % Software Systems Science 114 | % Education in Business and Information Systems 115 | \faculty{Software Systems Science Degree Program in the\\ \href{https://www.uni-bamberg.de/en/wiai/}{Faculty of Information Systems and Applied Computer Sciences}} 116 | 117 | % Your address, this is not currently used anywhere in the template, print it elsewhere with \addressname 118 | \addresses{address not used} 119 | 120 | % Your subject area, this is not currently used anywhere in the template, print it elsewhere with \subjectname 121 | \subject{subject not used} 122 | 123 | % Keywords for your thesis, this is not currently used anywhere in the template, print it elsewhere with \keywordnames 124 | \keywords{keywords not used} 125 | %---------------------------------------------------------------------------------------- 126 | % END OF THESIS INFORMATION 127 | %---------------------------------------------------------------------------------------- 128 | 129 | 130 | \begin{document} 131 | 132 | \selectlanguage{english} 133 | 134 | \frenchspacing % do not add additional hspace after end of sentence full stop dot. 135 | 136 | \frontmatter % Uses roman page numbering style (i, ii, iii, iv...) for the pre-content pages 137 | 138 | \hypersetup{urlcolor=black} 139 | 140 | \include{misc/titlepage} % Typeset the titlepage 141 | 142 | \hypersetup{urlcolor=ubblue80} 143 | 144 | 145 | %---------------------------------------------------------------------------------------- 146 | % QUOTATION 147 | %---------------------------------------------------------------------------------------- 148 | 149 | % \vspace*{0.2\textheight} 150 | 151 | % \noindent\enquote{\itshape Thanks to my solid academic training, today I can write hundreds of words on virtually any topic without possessing a shred of information, which is how I got a good job in journalism.}\bigbreak 152 | 153 | % \hfill Dave Barry 154 | 155 | 156 | %---------------------------------------------------------------------------------------- 157 | % ABSTRACT PAGE 158 | %---------------------------------------------------------------------------------------- 159 | 160 | \begin{abstract} 161 | %\addchaptertocentry{\abstractname} 162 | % uncomment to add the abstract to the table of contents (not recommended) 163 | 164 | For an overview of this document, see \Cref{Chapter1}. 165 | 166 | Provide a Thesis Abstract here (length: less than one page). 167 | 168 | For a start, you may want to consult the concise instructions for writing the Summary Paragraph in \emph{Nature}: \url{https://www.nature.com/documents/nature-summary-paragraph.pdf}. Moreover, consider Markus Kuhn's advice on differentiating abstract and introduction: \url{https://www.lightbluetouchpaper.org/2007/03/14/how-not-to-write-an-abstract/}. 169 | 170 | A boilerplate scheme for an abstract is as follows: devote 25\,\% of the space on the purpose and importance of the research (introduction), 25\,\% of the space on what you did (methods), 35\,\% of the space on what you found (results), and 15\,\% of the space on the implications of the research (cf. \url{https://writingcenter.gmu.edu/guides/writing-an-abstract}). 171 | 172 | More concrete advice for writing abstracts can be found on the website of the Writing Center of the University of North Carolina at Chapel Hill (\url{https://writingcenter.unc.edu/tips-and-tools/abstracts/}). Some useful phrases for abstracts can be found at \url{http://dissertation.laerd.com/useful-phrases-when-writing-a-dissertation-abstract.php} 173 | 174 | Finally, you may also want to consider the excellent guide by Kent Beck on how to write good abstracts, which focuses on conference papers: 175 | \url{https://plg.uwaterloo.ca/~migod/research/beckOOPSLA.html}. 176 | 177 | \end{abstract} 178 | 179 | 180 | %---------------------------------------------------------------------------------------- 181 | % ACKNOWLEDGEMENTS 182 | %---------------------------------------------------------------------------------------- 183 | 184 | %\begin{acknowledgements} 185 | % %\addchaptertocentry{\acknowledgementname} 186 | % Add the acknowledgements to the table of contents (not recommended) 187 | % 188 | %The acknowledgments and the people to thank go here. 189 | %\end{acknowledgements} 190 | 191 | 192 | %---------------------------------------------------------------------------------------- 193 | % TABLE OF CONTENTS 194 | %---------------------------------------------------------------------------------------- 195 | 196 | \cleardoublepage 197 | 198 | % Table of Contents uses a wider layout than the main content 199 | \newgeometry{ 200 | head=13.6pt, 201 | top=27.4mm, 202 | bottom=27.4mm, 203 | inner=24.8mm, 204 | outer=24.8mm, 205 | marginparsep=0mm, 206 | marginparwidth=0mm, 207 | } 208 | { 209 | \hypersetup{linkcolor=black} 210 | \tableofcontents % Prints the ToC entries 211 | } 212 | \restoregeometry 213 | 214 | %---------------------------------------------------------------------------------------- 215 | % DEDICATION 216 | %---------------------------------------------------------------------------------------- 217 | 218 | % \dedicatory{For/Dedicated to/To my\ldots} 219 | 220 | 221 | %---------------------------------------------------------------------------------------- 222 | % THESIS CONTENT - CHAPTERS 223 | %---------------------------------------------------------------------------------------- 224 | \mainmatter % From here on, numeric (1,2,3...) page numbering 225 | \pagestyle{thesis} % Return the page headers back to the "thesis" style 226 | 227 | % Define some commands to keep the formatting separated from the content 228 | \newcommand{\keyword}[1]{\textbf{#1}} 229 | \newcommand{\tabhead}[1]{\textbf{#1}} 230 | \newcommand{\code}[1]{\texttt{#1}} 231 | \newcommand{\file}[1]{\texttt{#1}} 232 | \newcommand{\option}[1]{\texttt{\itshape#1}} 233 | 234 | % Figures will automatically be searched for in the Figures subdirectory 235 | \graphicspath{{./figures/}{./examples/}} 236 | 237 | %%% CHANGES NEEDED HERE 238 | % 239 | % Include the chapters of the thesis as separate files from the Chapters folder 240 | % Uncomment the lines as you write the chapters 241 | % Mind the \input instead of the \include here, that change is necessary for the appendix formatting 242 | % Due to the \input command you also need to provide the .tex file ending 243 | 244 | \input{chapters/chapter1.tex} 245 | \input{chapters/chapter2.tex} 246 | %\input{chapters/chapter3.tex} 247 | %\input{chapters/chapter4.tex} 248 | %\input{chapters/chapter5.tex} 249 | 250 | 251 | %---------------------------------------------------------------------------------------- 252 | % THESIS CONTENT - APPENDICES 253 | %---------------------------------------------------------------------------------------- 254 | 255 | % By using input instead of include for the chapters we are able to move the following line here 256 | % Therefore the addition before the last chapter is not necessary anymore. 257 | 258 | % Call the following chapters "Appendix" inside the table of contents 259 | \addtocontents{toc}{\string\def\string\chaptername{Appendix}} 260 | 261 | \appendix % Cue to tell LaTeX that the following "chapters" are Appendices 262 | 263 | % Ensure proper section numbering in appendix, e.g., A.1, A.2, B.1, … 264 | \renewcommand{\thesection}{\thechapter.\arabic{section}} 265 | \renewcommand{\thesubsection}{\thesection.\arabic{subsection}} 266 | \renewcommand{\thesubsubsection}{\thesubsection.\arabic{subsubsection}} 267 | 268 | %%% CHANGES NEEDED HERE 269 | % 270 | % Include the appendices of the thesis as separate files from the Appendices folder 271 | % Uncomment the lines as you write the Appendices 272 | 273 | \include{appendices/appendixA} 274 | \include{appendices/appendixB} 275 | \include{appendices/appendixC} 276 | 277 | 278 | 279 | %---------------------------------------------------------------------------------------- 280 | % BIBLIOGRAPHY 281 | %---------------------------------------------------------------------------------------- 282 | 283 | % Bibliography has no wide margins: 284 | \newgeometry{ 285 | inner=2cm, % Inner margin 286 | outer=2cm, % Outer margin 287 | marginparwidth=0cm, 288 | marginparsep=0mm, 289 | bindingoffset=.5cm, % Binding offset 290 | top=1.5cm, % Top margin 291 | bottom=2.5cm, % Bottom margin, 292 | includehead, 293 | includefoot 294 | % showframe, % Uncomment to show how the type block is set on the page 295 | } 296 | 297 | \addchap{References} 298 | 299 | % enables two-column layout for bibliography 300 | \setlength\columnsep{2em} 301 | \begin{multicols}{2} 302 | \begin{refcontext}[sorting=nyt] % sort bibliography by last name, year, title 303 | \renewcommand*{\bibfont}{\small\RaggedRight} 304 | \linespread{1.0}\selectfont % increase linespread if desired (not recommended) 305 | \printbibliography[heading=none] 306 | \end{refcontext} 307 | \end{multicols} 308 | 309 | %---------------------------------------------------------------------------------------- 310 | 311 | %---------------------------------------------------------------------------------------- 312 | % DECLARATION PAGE 313 | %---------------------------------------------------------------------------------------- 314 | 315 | \begin{declaration} 316 | \addchaptertocentry{\authorshipname} % Add the declaration to the table of contents 317 | 318 | % TODO Change the declaration according as needed. * 319 | 320 | %\selectlanguage{ngerman} 321 | Ich erkläre hiermit gemä\ss\ \S~9 Abs.\,12 APO, dass ich die vorstehende {\thesistype}arbeit selbständig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt habe. Des Weiteren erkläre ich, dass die digitale Fassung der gedruckten Ausfertigung der {\thesistype}arbeit ausnahmslos in Inhalt und Wortlaut entspricht und zur Kenntnis genommen wurde, dass diese digitale Fassung einer durch Software unterstützten, anonymisierten Prüfung auf Plagiate unterzogen werden kann. 322 | 323 | \bigskip 324 | \bigskip 325 | 326 | \begin{tabular}{@{}l@{}} 327 | Bamberg, den \rule[-0.8em]{10em}{0.5pt}\\[2ex] 328 | ~ 329 | \end{tabular} 330 | \hspace{\fill}% 331 | \begin{tabular}{@{}c@{}} 332 | \rule[-0.8em]{20em}{0.5pt}\\[2ex] 333 | \authorname 334 | \end{tabular}\hspace{\fill} 335 | 336 | 337 | 338 | 339 | \end{declaration} 340 | 341 | \end{document} 342 | -------------------------------------------------------------------------------- /degree-thesis/misc/UB_Logo_20mm_CMYK.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/degree-thesis/misc/UB_Logo_20mm_CMYK.pdf -------------------------------------------------------------------------------- /degree-thesis/misc/commands.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % File: commands.tex 4 | % 5 | % This file is part of the PSIThesis.cls 6 | % LaTeX documentclass 7 | % 8 | % The code in this file is made available 9 | % under the following license: 10 | % 11 | % LPPL v1.3c (http://www.latex-project.org/lppl) 12 | % 13 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 14 | 15 | 16 | % -------------------------------------------------------- 17 | % CUSTOM COMMANDS FOR BETTER USABILITY 18 | % -------------------------------------------------------- 19 | 20 | 21 | % Custom image command to insert an image 22 | % This command uses 4 required and one optional arguments/parameters with the following meaning: 23 | % 24 | % Optional: 25 | % 1 - Position of the figure (the default position is 't' for top; if no argument is provided, 't' is used 26 | % 27 | % Required: 28 | % 1 - Width of the image 29 | % 2 - Path to the image (inside the figures folder) 30 | % 3 - Caption of the image 31 | % 4 - Label for the image (a universal fig: is prepended) 32 | % 33 | % Required ---------------------------------------------------------------------------- 34 | % Optional -------------| | | | | 35 | % V V (1) V (2) V (3) V (4) 36 | % Example Usage: \image[h]{\textwidth}{barplot-before}{This is a fancy barplot.}{barplot-before} 37 | % 38 | % The result will be the same as: 39 | % 40 | % \begin{figure}[h] 41 | % \centering 42 | % \includegraphics[width=\textwidth]{../figures/barplot-before} 43 | % \caption{This is a fancy barplot.} 44 | % \label{fig:barplot-before} 45 | % \end{figure} 46 | 47 | \newcommand{\image}[5][t]{ 48 | \begin{figure}[#1] 49 | \centering 50 | \includegraphics[width=#2]{../figures/#3} 51 | \caption{#4} 52 | \label{fig:#5} 53 | \end{figure} 54 | } 55 | 56 | % Custom command to insert two images next to each other with a margin caption 57 | % This command uses 6 required and one optional arguments/parameters with the following meaning: 58 | % 59 | % Optional: 60 | % 1 - Position of the figure (the default position is 't' for top; if no argument is provided, 't' is used 61 | % 62 | % Required: 63 | % 1 - Path to the frist image (inside the figures folder) 64 | % 2 - Path to the second image (inside the figures folder) 65 | % 3 - Caption of the image 66 | % 4 - Label for the image (a universal fig: is prepended) 67 | % 68 | % Required -------------------------------------------------------------------------------------- 69 | % Optional -----------------| | | | | 70 | % V V (1) V (2) V (3) V (4) 71 | % Example Usage: \twoimages[h]{barplot-before}{barplot-after}{This is a fancy barplot.}{barplot-sidebyside} 72 | % 73 | % The result will be the same as: 74 | % 75 | % \begin{figure}[h] 76 | % \centering 77 | % \includegraphics[width=0.48\textwidth]{../figures/barplot-before} 78 | % \hspace{\fill} 79 | % \includegraphics[width=0.48\textwidth]{../figures/barplot-after} 80 | % \caption{\label{fig:barplot-sidebyside}This is a fancy barplot.} 81 | % \end{figure} 82 | 83 | \newcommand{\twoimages}[5][t]{ 84 | \begin{figure}[#1] 85 | \centering 86 | \includegraphics[width=0.48\textwidth]{../figures/#2} 87 | \hspace{\fill} 88 | \includegraphics[width=0.48\textwidth]{../figures/#3} 89 | \sidecaption{\label{fig:#5}#4}[-2\baselineskip] 90 | \end{figure} 91 | } 92 | 93 | 94 | % Custom image command for wide figures 95 | % This command uses 4 required and one optional arguments/parameters with the following meaning: 96 | % 97 | % Optional: 98 | % 1 - Position of the figure (the default position is 't' for top; if no argument is provided, 't' is used 99 | % 100 | % Required: 101 | % 1 - Path to the image (inside the figures folder) 102 | % 2 - Caption of the image 103 | % 3 - Label for the image (a universal fig: is prepended) 104 | % 105 | % Required ------------------------------------------------------------------ 106 | % Optional -----------------| | | | 107 | % V V (1) V (2) V (3) 108 | % Example Usage: \wideimage[h]{barplot-before}{This is a fancy barplot.}{barplot-before} 109 | % 110 | % The result will be the same as: 111 | % 112 | % \begin{figure*}[h] 113 | % \includegraphics[width=\widefigurewidth]{../figures/barplot-before} 114 | % \caption{This is a fancy barplot.} 115 | % \label{fig:barplot-before} 116 | % \end{figure*} 117 | % 118 | % %%%%%%%%%%%%%%%%%%%%%%% 119 | % % ATTENTION % 120 | % %%%%%%%%%%%%%%%%%%%%%%% 121 | % It seems this command messes with the position of other images, therefore it is advised to check the placement of other images. 122 | 123 | \newcommand{\wideimage}[4][t]{ 124 | \begin{figure*}[#1] 125 | \includegraphics[width=\widefigurewidth]{../figures/#2} 126 | \caption{\label{fig:#4}#3} 127 | \end{figure*} 128 | } 129 | 130 | % This command uses 3 required and one optional arguments/parameters with the following meaning: 131 | % 132 | % Optional: 133 | % 1 - Vertical offset of the figure (the default offset is 1 for one line lower (negative numbers move the image up); if no argument is provided, 1 is used 134 | % 135 | % Required: 136 | % 1 - Path to the image (inside the figures folder) 137 | % 2 - Caption of the image 138 | % 3 - Label for the image (a universal fig: is prepended) 139 | % 140 | % Required ---------------------------------------------------------------------- 141 | % Optional -------------------| | | | 142 | % V V (1) V (2) V (3) 143 | % Example Usage: \marginimage[2]{barplot-before}{This is a fancy barplot.}{barplot-before} 144 | % 145 | % The result will be the same as: 146 | % 147 | % \begin{marginfigure}[2\baselineskip] 148 | % \includegraphics[width=\marginparwidth]{../figures/barplot-before} 149 | % \caption{\label{fig:barplot-before}This is a fancy barplot.} 150 | % \end{marginfigure} 151 | \newcommand{\marginimage}[4][1]{ 152 | \begin{marginfigure}[#1\baselineskip] 153 | \includegraphics[width=\marginparwidth]{../figures/#2} 154 | \caption{\label{fig:#4}#3} 155 | \end{marginfigure} 156 | } 157 | -------------------------------------------------------------------------------- /degree-thesis/misc/setup.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % File: setup.tex 4 | % 5 | % This file is part of the PSIThesis.cls 6 | % LaTeX documentclass 7 | % 8 | % The code in this file is made available 9 | % under the following license: 10 | % 11 | % LPPL v1.3c (http://www.latex-project.org/lppl) 12 | % 13 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 14 | 15 | %---------------------------------------------------------------------------------------- 16 | % Configuration switches 17 | %---------------------------------------------------------------------------------------- 18 | % The following switches are used to enable or disable certain features of the document. 19 | % Uncomment the line to enable the feature, and comment the line to disable the feature. 20 | 21 | % Enable minted code listings, this will disable the listings package 22 | % \def\enableMinted{useMinted} 23 | 24 | \usepackage[utf8]{luainputenc} % makes unicode characters like –, €, and ß work properly 25 | 26 | % amssymb must be loaded before newtxmath to avoid this error: 27 | % Command `\Bbbk' already defined 28 | \usepackage{amssymb} 29 | \usepackage[cochineal]{newtxmath} % must be loaded before fontspec 30 | 31 | \usepackage[no-math]{fontspec} % allows us to use OTF/TTF fonts, but do not interfere with math (because we use newtxmath, which does support Cochineal) 32 | 33 | % If you cannot use the cochineal font, uncomment the following lines to select 34 | % the Crimson font. Note, however, that you'll have to take care of the math font 35 | % on your own. 36 | % 37 | %\setmainfont[ 38 | % Path = fonts/, 39 | % BoldFont = {Crimson-Semibold.otf}, 40 | % ItalicFont = {Crimson-Italic.otf}, 41 | % BoldItalicFont = {Crimson-BoldItalic.otf} 42 | %]{Crimson-Roman.otf} 43 | 44 | \setmainfont{Cochineal}[ 45 | Numbers={Proportional,OldStyle}, 46 | Style=Swash % for nice swashed Q letter, see https://golatex.de/spezeielle-opentype-features-in-fontspec-aktivieren-t19831.html 47 | ] 48 | %\setmainlanguage{english} 49 | \DeclareSymbolFont{operators}{\encodingdefault}{\familydefault}{m}{n} % render numbers in cochineal, cf. https://tex.stackexchange.com/questions/398895/using-two-different-math-fonts-with-lualatex 50 | 51 | % imitate the behavior of the cochineal package as follows: 52 | % cf. https://tex.stackexchange.com/questions/448895/fontenc-vs-fontspec-with-xelatex 53 | \DeclareRobustCommand{\lfstyle}{\addfontfeatures{Numbers=Lining}} 54 | \DeclareTextFontCommand{\textlf}{\lfstyle} 55 | \DeclareRobustCommand{\tlfstyle}{\addfontfeatures{Numbers={Tabular,Lining}}} 56 | \DeclareTextFontCommand{\texttlf}{\tlfstyle} 57 | 58 | % Exception: tables should use "lining figures" (all digits having same width) 59 | \AtBeginEnvironment{tabular}{% 60 | \tlfstyle 61 | } 62 | \AtBeginEnvironment{tabularx}{% 63 | \tlfstyle 64 | } 65 | 66 | 67 | % monospace font, will be used in verbatim and listing environments 68 | \setmonofont[ 69 | Path = fonts/, 70 | BoldFont = {iosevka-ss04-bold.ttf}, 71 | ItalicFont = {iosevka-ss04-italic.ttf}, 72 | BoldItalicFont = {iosevka-ss04-bolditalic.ttf}, 73 | Scale = 0.83 % manually determined value; 74 | ]{iosevka-ss04-regular.ttf} 75 | 76 | 77 | % sans-serif font, will be used in the margins 78 | \setsansfont[ 79 | Path = fonts/, 80 | BoldFont = Roboto-Bold.otf, 81 | ItalicFont = Roboto-Italic.otf, 82 | BoldItalicFont = Roboto-BoldItalic.otf, 83 | Scale = 0.83 % manually determined value; 84 | ]{Roboto-Regular.otf} 85 | 86 | \renewcommand{\familydefault}{\rmdefault} 87 | \defaultfontfeatures{Ligatures=TeX} 88 | 89 | 90 | 91 | %---------------------------------------------------------------------------------------- 92 | % OTHER PACKAGES 93 | %---------------------------------------------------------------------------------------- 94 | 95 | \usepackage{tabularx} % for more flexible tables 96 | 97 | \usepackage{marginnote} % Enable Notes on the Page Margin 98 | \usepackage{marginfix} % Enables floating for margin figures 99 | \usepackage{ragged2e} % provides better hyphenation, use with camel case: \RaggedRight 100 | \renewcommand*{\raggedleftmarginnote}{\RaggedLeft} 101 | \renewcommand*{\raggedrightmarginnote}{\RaggedRight} 102 | 103 | % justified margin notes: 104 | % uncomment the following two lines to for justified layout of margin notes 105 | %\renewcommand*{\raggedleftmarginnote}{\RaggedLeft} 106 | %\renewcommand*{\raggedrightmarginnote}{\RaggedRight} 107 | 108 | 109 | 110 | \renewcommand*{\marginfont}{\setlength{\parskip}{0.5ex}\scriptsize\sffamily} % format margin text 111 | 112 | 113 | 114 | % for sidenotes: change marginpar font 115 | \usepackage{xparse} 116 | \let\oldmarginpar\marginpar 117 | \RenewDocumentCommand{\marginpar}{om}{% 118 | \IfNoValueTF{#1} 119 | {\oldmarginpar{\mymparsetup #2}} 120 | {\oldmarginpar[\mymparsetup #1]{\mymparsetup #2}}} 121 | \newcommand{\mymparsetup}{\scriptsize\sffamily} 122 | 123 | 124 | % this provides correct alignment for margin text that is inserted 125 | % right at the beginning of a paragraph; however, it messes up the 126 | % alignment in all other cases. 127 | %% therefore, removed for now: 128 | %%\renewcommand{\marginnotevadjust}{0.71\baselineskip} 129 | % The following is the necessary correction for in-paragraph use 130 | \renewcommand{\marginnotevadjust}{0.21\baselineskip} 131 | \renewcommand{\marginnotevadjust}{0.55\baselineskip} 132 | 133 | \usepackage{microtype} % enable better typographic setup 134 | 135 | \usepackage{multicol} % enable usage of multiple columns 136 | 137 | % biblatex setup 138 | % inspired by https://anneurai.net/2017/10/18/thesis-formatting-in-latex/ 139 | \usepackage[ 140 | backend=biber, 141 | style=alphabetic, 142 | doi=false,isbn=false, % these fields are commonly omitted 143 | terseinits=true, % no points between initials 144 | giveninits=true, % always print only initials for given names 145 | sortcites=true, 146 | language=english, 147 | backref=true, % show on what pages a ref has been cited 148 | maxcitenames=2, % how many names the \citeauthor will show 149 | ]{biblatex} % Use biber backend with alphabetic reference style 150 | \AtEveryBibitem{% 151 | \clearlist{language} % don't show "en." 152 | \clearlist{extra} % clears extra fields such as ISBN nrs 153 | } 154 | 155 | % shorten the strings used in back references 156 | \DefineBibliographyStrings{english}{% 157 | backrefpage = {page}, 158 | backrefpages = {pages}, 159 | } 160 | 161 | %-- no "quotes" around titles of chapters/article titles 162 | \DeclareFieldFormat[article, inbook, incollection, inproceedings, misc, thesis, unpublished]{title}{#1} 163 | %-- no punctuation after volume 164 | \DeclareFieldFormat[article]{volume}{{#1}} 165 | %-- puts number/issue between brackets 166 | \DeclareFieldFormat[article, inbook, incollection, inproceedings, misc, thesis, unpublished]{number}{\mkbibparens{#1}} 167 | %-- and then for articles directly the pages w/o any "pages" or "pp." 168 | \DeclareFieldFormat[article]{pages}{#1} 169 | %-- format 16(4):224--225 for articles 170 | \renewbibmacro*{volume+number+eid}{\printfield{volume}\printfield{number}\printunit{\addcolon} 171 | } 172 | \DeclareFieldFormat{url}{\url{#1}} 173 | 174 | 175 | \usepackage[autostyle=true]{csquotes} % Required to generate language-dependent quotes in the bibliography 176 | 177 | \usepackage[ 178 | obeyFinal, 179 | textsize=scriptsize, 180 | backgroundcolor=ubyellow25,linecolor=ubyellow,bordercolor=ubyellow, 181 | ]{todonotes} 182 | 183 | % change font of todo notes to sans-serif 184 | \makeatletter 185 | \renewcommand{\todo}[2][]{\@bsphack\@todo[#1]{\sffamily #2}\@esphack\ignorespaces} 186 | \makeatother 187 | 188 | \usepackage{booktabs} % use formal table layout 189 | 190 | \urlstyle{same} % avoids printing URLs in typewriter font 191 | 192 | % enable very extensive URL breaking 193 | % https://tex.stackexchange.com/questions/3033/forcing-linebreaks-in-url 194 | \PassOptionsToPackage{hyphens}{url} 195 | \expandafter\def\expandafter\UrlBreaks\expandafter{\UrlBreaks% save the current one 196 | \do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j% 197 | \do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t% 198 | \do\u\do\v\do\w\do\x\do\y\do\z\do\A\do\B\do\C\do\D% 199 | \do\E\do\F\do\G\do\H\do\I\do\J\do\K\do\L\do\M\do\N% 200 | \do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V\do\W\do\X% 201 | \do\Y\do\Z\do\*\do\-\do\~\do\'\do\"\do\-}% 202 | 203 | % TODO consider using package xurl, which is supposed to handle url breaking 204 | 205 | % https://tex.stackexchange.com/a/450695 206 | % allow URLs to be spaced out at / => much better URL breaking in margins 207 | \makeatletter 208 | \g@addto@macro\UrlSpecials 209 | {% 210 | \do\/{\mbox{\UrlFont/}\hskip 0pt plus 0.1em minus 0.1em}% 211 | } 212 | \Urlmuskip=0mu plus 1mu\relax 213 | \makeatother 214 | 215 | 216 | % hyperlink layout 217 | \usepackage{hyperref} 218 | \hypersetup{colorlinks,breaklinks,unicode, 219 | citecolor=ubblue60, 220 | linkcolor=ubblue60, 221 | filecolor=ubblue60, 222 | urlcolor=ubblue60} 223 | 224 | % cleverref allows you to use \Cref{sec:foo} to get the text "Section 1.2". 225 | % This also works with figures and tables. 226 | \usepackage{cleveref} 227 | 228 | % credit to @martin-endress https://github.com/UBA-PSI/psi-thesis-guide/issues/14 229 | \crefname{lstlisting}{listing}{listings} 230 | \Crefname{lstlisting}{Listing}{Listings} 231 | \crefname{figure}{Fig.}{Figs.} 232 | \Crefname{figure}{Figure}{Figures} 233 | 234 | 235 | % datetime is use to automatically handle the date rendering on the titlepage. 236 | \usepackage{datetime} 237 | % rendering the current date as Month/JJJJ 238 | % see: https://tex.stackexchange.com/questions/212263/month-year-format-in-latex 239 | \newdateformat{monthyeardate}{% 240 | \monthname[\THEMONTH] \THEYEAR} 241 | 242 | 243 | \raggedbottom % do NOT force all pages to have the same height (which would be done by increasing the space between paragraphs, which can create noisy layouts) 244 | 245 | %---------------------------------------------------------------------------------------- 246 | % SETUP BIBLIOGRAPHY 247 | %---------------------------------------------------------------------------------------- 248 | \setlength{\bibitemsep}{.3\baselineskip plus .05\baselineskip minus .05\baselineskip} 249 | \newlength{\bibparskip}\setlength{\bibparskip}{0pt} 250 | \let\oldthebibliography\thebibliography 251 | \renewcommand\thebibliography[1]{% 252 | \oldthebibliography{#1}% 253 | \setlength{\parskip}{\bibitemsep}% 254 | \setlength{\itemsep}{\bibparskip}% 255 | } 256 | 257 | % allow much more liberal line breaks in URLs 258 | \setcounter{biburllcpenalty}{7000} 259 | \setcounter{biburlucpenalty}{8000} 260 | 261 | % adjust space between key and entry, default is 2\labelsep 262 | \setlength{\biblabelsep}{1\labelsep} 263 | 264 | % configures indentation of bibentries 265 | \defbibenvironment{bibliography} 266 | {\list 267 | {\hspace{0.5\labelalphawidth}\bfseries\printtext[labelalphawidth]{% 268 | \printfield{prefixnumber}% 269 | \printfield{labelalpha}% 270 | \printfield{extraalpha}}} 271 | {\setlength{\labelsep}{\biblabelsep}% 272 | \setlength{\leftmargin}{0.5\labelalphawidth}% 273 | \setlength{\itemsep}{1.5\bibitemsep}% 274 | \setlength{\parsep}{\bibparsep}}% 275 | \renewcommand*{\makelabel}[1]{##1\hss}} 276 | {\endlist} 277 | {\item} 278 | 279 | 280 | %---------------------------------------------------------------------------------------- 281 | % MARGINAL CAPTIONS 282 | %---------------------------------------------------------------------------------------- 283 | 284 | \usepackage{sidenotes} 285 | \usepackage{scrextend} % for ifthispageodd 286 | 287 | % objective: instead of having the sidenode number in superscript, we want it like "1:" 288 | \makeatletter 289 | \ExplSyntaxOn 290 | \RenewDocumentCommand \sidenotetext { o o +m } 291 | { 292 | \IfNoValueOrEmptyTF{#1} 293 | { 294 | \@sidenotes@placemarginal{#2}{\thesidenote{}:~#3} 295 | \refstepcounter{sidenote} 296 | } 297 | {\@sidenotes@placemarginal{#2}{#1{}:~#3}} 298 | } 299 | \ExplSyntaxOff 300 | \makeatother 301 | 302 | % optional objective: automatically justify sidecaptions to match the other marginnotes 303 | % captions of marginfigures etc. shall always be raggedright 304 | % solution from: https://tex.stackexchange.com/questions/358010/subfigures-break-figure-numbering-with-sidecaptions-from-sidenotes-package/358012#358012 305 | 306 | \makeatletter 307 | % Instead of "justified" you *can* use "outerraged" in the DeclareCaptionStyle below. 308 | % This may create a inconsistent layout, therefore, we stick to justified by default. 309 | \DeclareCaptionJustification{outerragged}{\ifthispageodd{\RaggedRight}{\RaggedLeft}} 310 | 311 | \DeclareCaptionStyle{sidecaption}{format=plain,font={scriptsize,sf},labelfont=bf,margin=0pt,singlelinecheck=true,justification=justified} 312 | \DeclareCaptionStyle{marginfigure}{format=plain,font={scriptsize,sf},labelfont=bf,margin=0pt,singlelinecheck=true} 313 | \DeclareCaptionStyle{margintable}{format=plain,font={scriptsize,sf},labelfont=bf,margin=0pt,singlelinecheck=true} 314 | \DeclareCaptionStyle{widefigure}[justification=centering]{format=plain,font=small,labelfont=bf,justification=RaggedRight,singlelinecheck=true,margin={0px,0px},oneside} 315 | \DeclareCaptionStyle{widetable}[justification=centering]{format=plain,font=small,labelfont=bf,justification=RaggedRight,singlelinecheck=true,margin={0px,0px},oneside} 316 | \makeatother 317 | 318 | 319 | %---------------------------------------------------------------------------------------- 320 | % RESET SIDENOTE COUNTER AT EVERY CHAPTER 321 | %---------------------------------------------------------------------------------------- 322 | 323 | \let\oldchapter\chapter 324 | \def\chapter{% 325 | \setcounter{sidenote}{1}% 326 | \oldchapter 327 | } 328 | 329 | 330 | 331 | %---------------------------------------------------------------------------------------- 332 | % ITEMIZE AND ENUMERATE ENVIRONMENTS 333 | %---------------------------------------------------------------------------------------- 334 | 335 | \renewcommand{\labelitemi}{\color{ubblue80}{\scalebox{0.8}{\raisebox{0.2ex}{$\blacktriangleright$}}}} 336 | \renewcommand{\labelitemii}{\textbullet} 337 | \usepackage{enumitem} 338 | \setlist[itemize]{parsep=0.8\parskip,left=0pt,topsep=0pt,partopsep=0pt} 339 | \setlist[enumerate]{parsep=0.8\parskip,left=0pt,topsep=0pt,partopsep=0pt} 340 | \setlist[description]{parsep=0.8\parskip,left=0pt,topsep=0pt,partopsep=0pt} 341 | 342 | 343 | %---------------------------------------------------------------------------------------- 344 | % SET PDF METADATA 345 | %---------------------------------------------------------------------------------------- 346 | 347 | \AtBeginDocument{ 348 | \hypersetup{pdftitle=\ttitle} % Set the PDF's title to your title 349 | \hypersetup{pdfauthor=\authorname} % Set the PDF's author to your name 350 | %\hypersetup{pdfkeywords=\keywordnames} % Set the PDF's keywords to your keywords 351 | } 352 | -------------------------------------------------------------------------------- /degree-thesis/misc/titlepage.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % File: titlepage.tex 4 | % 5 | % This file is part of the PSIThesis.cls 6 | % LaTeX documentclass 7 | % 8 | % The code in this file is made available 9 | % under the following license: 10 | % 11 | % LPPL v1.3c (http://www.latex-project.org/lppl) 12 | % 13 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 14 | 15 | 16 | \pagestyle{plain} % Default to the plain heading style until the thesis style is called for the body content 17 | 18 | %---------------------------------------------------------------------------------------- 19 | % TITLE PAGE 20 | %---------------------------------------------------------------------------------------- 21 | 22 | \begin{titlepage} 23 | 24 | \newgeometry{ 25 | inner=4cm, % Inner margin 26 | outer=4cm, % Outer margin 27 | marginparwidth=0cm, 28 | marginparsep=0mm, 29 | bindingoffset=.5cm, % Binding offset 30 | top=2.5cm, % Top margin 31 | bottom=2.5cm, % Bottom margin 32 | showframe % Uncomment to show how the type block is set on the page 33 | } 34 | 35 | \begin{center} 36 | 37 | \vspace*{.06\textheight} 38 | 39 | % The logo of University of Bamberg. Do not use the logo without permission. 40 | % Using it on the title page of a thesis is acceptable. 41 | % TODO Add your own logo here. Do yourself and your readers a favor and use 42 | % a vectorized logo (PDF) instead of a bitmap (PNG, JPEG) 43 | \includegraphics[width=35mm]{misc/UB_Logo_20mm_CMYK.pdf} 44 | 45 | \vspace*{.06\textheight} 46 | 47 | {\LARGE \textls[130]{\MakeUppercase{\univname}}\par}\vspace{2\baselineskip} % University name 48 | 49 | % TODO uncomment the next line when you write a thesis to display the supervisor 50 | %{\large \facname} 51 | % TODO comment out the next line when you write a thesis 52 | {\large ~} % For use in the guide 53 | 54 | \vspace{1.5cm} 55 | 56 | % TODO uncomment the next line when you write a thesis to display the supervisor 57 | %\textsc{\Large \thesistype 's~Thesis}\\[1cm] % For use in the thesis 58 | % TODO comment out the next line when you write a thesis 59 | \textsc{\Large ~}\\[1cm] % For use in the guide 60 | 61 | %\HRule \\[0.4cm] % Horizontal line 62 | % 63 | {\huge \bfseries \ttitle\par}\vspace{1cm} % Thesis title 64 | 65 | %\HRule \\[1.5cm] % Horizontal line 66 | 67 | 68 | \textsc{\Large by}\\[1cm] 69 | 70 | {\Large \authorname} 71 | 72 | \vspace{1.5cm} 73 | 74 | % TODO uncomment the next two lines when you write a thesis to display the supervisor 75 | %\emph{Supervisor:} \\ 76 | %\supname\\[1cm] 77 | %% 78 | 79 | \groupname%\\[2cm] % Research group name and department name 80 | 81 | \vfill 82 | 83 | {\large \tdate} % Date 84 | 85 | % TODO remove the following lines when you write a thesis 86 | \vspace{0.25ex} 87 | 88 | {\small \tversion} 89 | 90 | \vspace{0.25ex} 91 | 92 | {\small Links to this document:}\\ 93 | {\small \url{\doiurl}} (initial version)\\ 94 | {\small \url{\githuburl} (most recent version)} 95 | % Remove lines up to this line 96 | 97 | \vfill 98 | \end{center} 99 | 100 | \restoregeometry 101 | 102 | \end{titlepage} 103 | 104 | 105 | -------------------------------------------------------------------------------- /psi-thesis-guide-v20200913.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UBA-PSI/psi-thesis-guide/2fc47de82fc39faecd9bd751369d77921d7b237f/psi-thesis-guide-v20200913.pdf --------------------------------------------------------------------------------