\PassOptionsToPackage{type=CC,modifier=by,version=4.0}{doclicense} \documentclass[conference,a4paper,flushend]{cs-techrep} \pdfoutput=1 % pdflatex hint for arxiv.org (within first 5 lines) % Class cs-techrep.cls loads biblatex / biber with predefined options \addbibresource{embedded.bib} % its content is declared below, embedded within this tex-file \addbibresource{webdev_commons.bib} % includes REST, React, Angular, Vue, Svelte, Docker, AWS-*, Socket.IO, and many more! \addbibresource{cpn_all_all.bib} % includes all previous CyberLytics@OTH-AW technical reports % ====================================================================== % EDIT THESE: \cstechrepAuthorListTex{Christoph P.\ Neumann\,\orcidlink{0000-0002-5936-631X}} % Team example: %\cstechrepAuthorListTex{Vorname1 Nachname1, Vorname2 Nachname2, Vorname3 Nachname3, Vorname4 Nachname4,\\ Vorname5 Nachname5, Vorname6 Nachname6, Christoph P.\ Neumann\,\orcidlink{0000-0002-5936-631X}} \cstechrepAuthorListBib{Christoph P. Neumann} % Team example: %\cstechrepAuthorListBib{Vorname1 Nachname1 and Vorname2 Nachname2 and Vorname3 Nachname3 and Vorname4 Nachname4 and Vorname5 Nachname5 and Vorname6 Nachname6 and Christoph P. Neumann} % Capitalization: https://capitalizemytitle.com/style/Chicago/ \cstechrepTitleTex{The cs-techrep Paper Example of a Technical Report in Computer Science or Software Engineering} % IF you need manual linebreaks in the titel, then clone the title without linebreaks for BibTeX: \cstechrepTitleBib{{\cstechrepTitleTex}} %\cstechrepTitleBib{The cs-techrep \LaTeX{} Class Example of a Software Engineering Technical Report} \cstechrepDepartment{CyberLytics\-/Lab at the Department of Electrical Engineering, Media, and Computer Science} %\cstechrepDepartment{CyberLytics\-/Lab an der Fakultät Elektrotechnik, Medien und Informatik} % DE \cstechrepInstitution{Ostbayerische Technische Hochschule Amberg\-/Weiden} \cstechrepAddress{Amberg, Germany} %\cstechrepAddress{Amberg, Deutschland} % DE \cstechrepType{Technical Report} %\cstechrepType{Technischer Bericht} % DE \cstechrepYear{2024} % CTAN \cstechrepMonth{10} % CTAN \cstechrepNumber{CL-TR-\cstechrepYear{}-99} \cstechrepLang{english} % en-US %\cstechrepLang{ngerman} % DE % Special remark on babel/csquotes terminology in regard with US-vs-UK: % en-US = [english]/[american]/[usenglish] (+ [canadian]) % en-UK = [british] /[ukenglish] (+ [australian]) % For cs-techrep (like ACM), the recommended english variant is en-US! % DO NOT DELETE THIS: \filecontentsForceExpansion|[] % force command expansion inside a filecontents* environment \begin{filecontents*}[overwrite]{selfref.bib} @TECHREPORT{selfref, author = {|cstechrepAuthorListBib}, title = {\cstechrepTitleBib}, institution = {\cstechrepInstitution, \cstechrepDepartment}, type = {\cstechrepType}, number = {\cstechrepNumber}, year = {|cstechrepYear}, month = {|cstechrepMonth}, langid = {|cstechrepLang}, } \end{filecontents*} % ====================================================================== % EDIT THIS: \begin{filecontents}[overwrite]{embedded.bib} @online{ieee2015howto, author = {Michael Shell}, title = {How to Use the {IEEEtran} \LaTeX\ Class}, url = {http://mirrors.ctan.org/macros/latex/contrib/IEEEtran/IEEEtran_HOWTO.pdf}, year = {2015} } @online{ieee2018formattingrules, author = {{IEEE}}, title = {Conference Template and Formatting Specifications}, url = {https://www.ieee.org/content/dam/ieee-org/ieee/web/org/conferences/Conference-template-A4.doc}, year = {2018} } @online{iaria2014formattingrules, author = {{IARIA}}, title = {Formatting Rules}, url = {http://www.iaria.org/formatting.doc}, year = {2014} } @online{iaria2009editorialrules, _author = {Cosmin Dini}, author = {{IARIA}}, title = {Editorial Rules}, url = {https://www.iaria.org/editorialrules.html}, year = {2009} } @online{languagetool, author = {{LanguageTooler GmbH}}, title = {{LanguageTool: AI-based grammar checker}}, url = {https://languagetool.org/overleaf} } @online{overleaf, author = {{Digital Science UK Limited}}, title = {{Overleaf}}, url = {https://www.overleaf.com} } \end{filecontents} \usepackage{fontawesome} % i.a., \faWarning{} \usepackage{relsize} % i.a., \textsmaller{...} \usepackage{lipsum} % for blindtext % ====================================================================== % cf. https://ctan.org/pkg/acronym % Usage: % singular, within sentence = \ac{gui} % singular, beginning of sentence = \Ac{gui} % plural, within sentence = \acp{gui} % plural, beginning of sentence = \Acp{gui} \begin{acronym} \acro{gui}[GUI]{Graphical User Interface} \acro{ide}[IDE]{Integrated Development Environment} \end{acronym} % https://www.silbentrennung24.de/ % https://www.hyphenation24.com/ \hyphenation{block-chain block-chains Ethe-re-um} \begin{document} \selectlanguage{\cstechrepLang} \maketitle \begin{abstract} This paper demonstrates an example of a technical report in computer science or software engineering, based on the \texttt{cs-techrep} \LaTeX{} class. The example is intended for beginners, e.\,g., undergraduate students. It contains a basic outline template and usually fills it with dummy text, but some sections are describing the intent of the outline template and its sections. Graphic exclamation marks highlight important remarks. % \{\,\faWarning{}The abstract does neither mention a thesis in which context a technical report is written nor an institution or any other organizational aspects. It is a summary of the content of the technical report, thus, usually the objectives and architecture of a piece of software. Do NOT remove the abstract, this section is mandatory. Do NOT use special characters, symbols, or math in your title or abstract. Do NOT use cites in your abstract.\} \end{abstract} % A list of IEEE Computer Society appoved keywords can be obtained at % http://www.computer.org/mc/keywords/keywords.htm \begin{IEEEkeywords} template; lorem ipsum. \end{IEEEkeywords} \section{Introduction and Objectives \textbar{} Functional Requirements \textbar{} Problem Statement} The cs-techrep formatting is adopted both from \textsmaller{IEEE} \cite{ieee2018formattingrules} and \textsmaller{IARIA} \cite{iaria2014formattingrules} styles. The cs-techrep \LaTeX\ class is based on \textsmaller{IEEE}tran class \cite{ieee2015howto}. In addition, be aware of the supplementary \textsmaller{IARIA} editorial rules \cite{iaria2009editorialrules} \faWarning{} that provide a beginner-friendly set of further advices. It is recommended to use a grammar tool, e.\,g., the LanguageTool \cite{languagetool} browser plugin in combination with Overleaf \cite{overleaf}. The pipe symbol \textquote{\textbar{}} in the headings represents alternatives. Choose one and remove the others. The selectively provided quoted terms are special German alternatives. The problem statement needs to be written from perspective of a subject-matter expert (\textquote{Fachkonzept}). Like an elevator pitch / mission statement \faWarning{}. NOT from a technical perspective. \section{Optional: Related Work \textbar{} State of the Art \textbar{} Methods \textbar{} Data Acquisition} \lipsum[12] \section{Architectural Goals} % \textbar{} \textquote{Architekturziele}} Provides (1) a visualization of the external systems and users with which the system interacts (\textquote{Kontextabgrenzung}), (2) the most important technical and organizational preconditions (\textquote{Rahmenbedingungen}), (3) quality/non-functional requirements (\textquote{Qualitätsziele}), and/or (4) architectural style design decisions with formative patterns of the solution (\textquote{Architekturstil}) as well as (5) the applied programming language. \section{Architecture of FancyName \textbar{} Results \textbar{} Structural Design \textbar{} \textquote{Bausteinsicht}} \subsection{Technology Stack \textbar{} Overall System} %\textbar{} \textquote{Gesamtsystem}} Provides (1) design decisions based on the previously defined requirements and (2) a visualization of the functional structure at top level including relationships (\textquote{Grobe Zerlegung}), thus, gives an overview on modules, frameworks, and middleware. In discussions of multi-tier architecture, layer is often used interchangeably -- and mistakenly -- for tier. They aren't the same. A \textquote{layer} refers to a functional division of the software, but a \textquote{tier} refers to a functional division of the software that runs on infrastructure separate from the other divisions. The Contacts app on your phone, for example, is a three-layer application, but a single-tier application, because all three layers run on your phone. In discussions concerning multi-tier architecture, the term \textquote{layer} is frequently misused interchangeably with \textquote{tier}, despite their distinct meanings. A layer denotes a functional partition within the software, whereas a tier signifies a functional division that operates on separate infrastructure from other divisions/tiers. For instance, the Camera app or Settings app on your phone exemplifies a three-layer application but remains a single-tier application since all three layers run on your phone. \subsection{Presentation Tier \textbar{} Frontend} \lipsum[13] \subsection{Application Tier \textbar{} Backend \textbar{} \textquote{Anwendungskern}} \lipsum[14] \subsection{Data Tier \textbar{} Persistence} \lipsum[15] \subsection{Optional: Infrastructure and Deployment \textbar{} Distribution Perspective \textbar{} \textquote{Verteilungssicht}} Provides (1) information about configuration, exact software versions, SBOM, DevOps, Cloud, AWS, and others. Should add (2) security-related considerations or disclaimers. Could include (3) a software bill of materials (SBOM), at least for the major libraries or frameworks. \section{Discussion \textbar{} Evaluation \textbar{} \\ Lessons Learned \textbar{} Impediments} \lipsum[16] \section{Conclusion and Future Work \textbar{} \\ \textquote{Fazit und Ausblick}} \lipsum[17] \{\,\faWarning{} You must not leave the bibliography blank. Add appropriate references to your related work.\} % ======== References ========= %\vfill % To end last page and thus get bibliography "behind" subfigure example, only this allows pbalance to level columns at the last page correctly (but no other balance-package can handle this situation better than pbalance, either). % However, pbalance ist not compatible with arxiv. \begingroup \sloppy \printbibliography[notcategory=selfref] \endgroup \end{document}