From 547d6078696f7a27bb4aed65440e74656590855d Mon Sep 17 00:00:00 2001 From: Wouter Horlings Date: Thu, 15 Apr 2021 12:18:37 +0200 Subject: [PATCH] Add presentation --- Makefile | 41 +++ content/case_study.tex | 76 ++++++ content/conclusion.tex | 210 +++++++++++++++ content/design_method.tex | 219 +++++++++++++++ content/evaluation.tex | 383 +++++++++++++++++++++++++++ content/introduction.tex | 139 ++++++++++ graphics/combined.tex | 22 ++ graphics/creationdate.lua | 2 + graphics/design_flow.tex | 20 ++ graphics/design_flow_dev_cycle.tex | 28 ++ graphics/design_flow_feature_def.tex | 21 ++ graphics/feature_selection_curve.tex | 34 +++ graphics/functional_relation.tex | 26 ++ presentation.tex | 52 ++++ utwente-beamer.cls | 180 +++++++++++++ 15 files changed, 1453 insertions(+) create mode 100644 Makefile create mode 100644 content/case_study.tex create mode 100644 content/conclusion.tex create mode 100644 content/design_method.tex create mode 100644 content/evaluation.tex create mode 100644 content/introduction.tex create mode 100644 graphics/combined.tex create mode 100644 graphics/creationdate.lua create mode 100644 graphics/design_flow.tex create mode 100644 graphics/design_flow_dev_cycle.tex create mode 100644 graphics/design_flow_feature_def.tex create mode 100644 graphics/feature_selection_curve.tex create mode 100644 graphics/functional_relation.tex create mode 100644 presentation.tex create mode 100644 utwente-beamer.cls diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8b2dd8f --- /dev/null +++ b/Makefile @@ -0,0 +1,41 @@ +SOURCE ?= presentation.tex +TARGET ?= $(subst .tex,.pdf,$(SOURCE)) +GRPH_DIR ?= graphics +GRPH_SOURCE ?= $(wildcard $(GRPH_DIR)/*.tex) +GRPH_TARGET ?= $(subst .tex,.pdf,$(GRPH_SOURCE)) + +CONTENT_DIR ?= content +CONTENT_SOURCE ?= $(wildcard $(CONTENT_DIR)/*.tex) + +JOBNAME = $(subst .pdf,,$(TARGET)) + +# build configuration + +LATEXMK ?= latexmk +# for pdflatex: LATEXMK_TARGET = -pdf +# for latex -> dvi -> pdf: LATEXMK_TARGET = -pdfdvi +LATEXMK_TARGET += -xelatex +LATEXMK_OPTS += -recorder -use-make -latexoption="-interaction=nonstopmode -synctex=1" +LATEXMK_ARTIFACTS += *.bbl +LATEXMK_ARTIFACTS += *.synctex.gz +LATEXMK_ARTIFACTS += *-converted-to.pdf +LATEXMK_ARTIFACTS += *.synctex.gz\(busy\) +LATEXMK_ARTIFACTS += *.rro +LATEXMK_ARTIFACTS += *.aux +LATEXMK_ARTIFACTS += *.run.xml + +$(TARGET): $(SOURCE) $(GRPH_TARGET) $(CONTENT_SOURCE) + $(LATEXMK) $(LATEXMK_OPTS) $(LATEXMK_TARGET) $< + +$(GRPH_DIR)/%.pdf: $(GRPH_DIR)/%.tex + $(LATEXMK) $(LATEXMK_TARGET) -outdir=$(GRPH_DIR) $(LATEXMK_OPTS) $< + +.PHONY: clean Clean +clean: + $(LATEXMK) $(SOURCE) -c + +Clean: + $(LATEXMK) $(SOURCE) -C + $(LATEXMK) -outdir=$(GRPH_DIR) $(GRPH_SOURCE) -C + rm -f $(LATEXMK_ARTIFACTS) + diff --git a/content/case_study.tex b/content/case_study.tex new file mode 100644 index 0000000..c7126e3 --- /dev/null +++ b/content/case_study.tex @@ -0,0 +1,76 @@ + +\begin{frame}[typeset second]{Case Study} + \customslide + { + %notes + \begin{itemize} + \item in the case study + \item perform and evaluate design method + \item The chosen subject of design + \item Tweet on a whiteboard writer + \item Allowed for complexity + \item mainly hardware problem instead of control or software + \item Protocol for consistent evaluation + \item List of questions + \item Before and after each step + \end{itemize} + } + { + %overlay + \begin{itemize} + \item Perform and evaluate design method + \item Design \emph{Tweet on a Whiteboard Writer} + \item Evaluation Protocol + \end{itemize} + } +\end{frame} + +\begin{frame}[typeset second]{Initial Design} + \customslide + { + %notes + \begin{itemize} + \item to make complex + \item SCARA + Cable driver carriage + \item Order of operation + \begin{itemize} + \item Scara writes 3 characters + \item Carriage is moved + \item SCARA can write next 3 characters + \item Until Tweet is on the whiteboard + \end{itemize} + \end{itemize} + } + { + %overlay + \begin{block}{Whiteboard Writer} + \begin{itemize} + \item SCARA + \item Cable Driven Carriage + \end{itemize} + \end{block} + \begin{figure} + \raggedright + \includegraphics[width=60mm]{graphics/combined.pdf} + \end{figure} + + } +\end{frame} + + +\begin{frame}[typeset second]{Result} + \customslide + { + %notes + \textbf{PRESENT SCARA} + \begin{itemize} + \item From both the SCARA and the Cable driven carriage I only implemented the SCARA. + \item As you can see, it does work. + \item The implementation of the SCARA alone gave an enormous amount of feedback on the design method. + \item Therefore, the design method should be improved first, before attempting the continuation of the design. + \end{itemize} + } + { + %overlay + } +\end{frame} diff --git a/content/conclusion.tex b/content/conclusion.tex new file mode 100644 index 0000000..c78c964 --- /dev/null +++ b/content/conclusion.tex @@ -0,0 +1,210 @@ +\begin{frame}[typeset second]{Conclusion} + \customslide + { + %notes + First research objective: + \begin{block}{Assess the influence that applying the rapid iterative design method has on the design process for cyber-physical systems.} + \begin{itemize} + \item Establishes structured approach + \begin{itemize} + \item Structure is created by splitting the system into features + \item and by the variable detail approach + \end{itemize} + \item Improves design process + \item The feature selection helps to reduce potential cost when a design fails. + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Influence of design method} + \begin{itemize} + \item Establishes structured approach + \begin{itemize} + \item Feature-based + \item Variable-detail approach + \end{itemize} + \item Improves design process + \begin{itemize} + \item Reduce cost of failure + \end{itemize} + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{Conclusion} + \customslide + { + %notes + Second research objective: + \begin{block}{Describe which adaptations are required to establish a competend design method for cyber‐physical systems.} + \begin{itemize} + \item Preparation phase + \begin{itemize} + \item Have complete life cycle: from problem description to system functionality + \item describe how to split the functionality into features. + \item Incorporate software and hardware in decissions + \end{itemize} + \item Development tooling + \begin{itemize} + \item Version Control to manage model versions + \item Central design database, where models inherit from + \item Automated testing, for all models + \end{itemize} + \item Use hardware prototyping to its advantage + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Adaptations} + \begin{itemize} + \item Preparation phase + \begin{itemize} + \item System functionality + \item System features + \item Software and hardware + \end{itemize} + \item Development tooling + \begin{itemize} + \item Version Control + \item Central design database + \item Automated testing + \end{itemize} + \item Use prototyping + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{Recommendations} + \customslide + { + %notes + Recommendations for future development of the design method: + \begin{itemize} + \item Area of application + \item Feasibility + \item Future iterations + \end{itemize} + } + { + %overlay + \begin{itemize} + \item Area of application + \item Feasibility + \item Future iterations + \end{itemize} + } +\end{frame} + +\begin{frame}[typeset second]{Recommendations} + \customslide + { + %notes + \begin{block}{Area of Application} + \begin{itemize} + \item Type of Cyber-physical System + \begin{itemize} + \item Software; Hardware; Control + \end{itemize} + \item Focus of design method + \begin{itemize} + \item Improve reliability + \item Real-time guarantee + \item Reduce complexity + \item Development-time + \end{itemize} + \end{itemize} + \end{block} + \begin{itemize} + \item This focus improves the selling point and communication to other organizations. + \item Must avoid becoming a \emph{master of none} + \end{itemize} + } + { + %overlay + \begin{block}{Application Area} + \begin{itemize} + \item Type of Cyber-physical System + \item Focus of design method + \begin{itemize} + \item Improve reliability + \item Real-time guarantee + \item Reduce complexity + \item Development-time + \end{itemize} + \item Establish selling point + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{Recommendations} + \customslide + { + %notes + Feasibility: + \begin{itemize} + \item Explore exising design projects + \begin{itemize} + \item Is there a need? + \item How is the design process currently performed? + \item How do they deal with complexity? + \item What are common issues? + \end{itemize} + \item Can this method improve their projects? + \item Can their projects improve this method? + \end{itemize} + } + { + %overlay + \begin{block}{Feasibility} + \begin{itemize} + \item Explore exising design projects + \begin{itemize} + \item Is there a need? + \item What are common issues? + \end{itemize} + \item Improve this design method? + \item Improve their design process? + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{Recommendations} + \customslide + { + %notes + \begin{block}{Future Iterations} + \begin{itemize} + \item Involve experienced team + \item Include adaptations from this thesis + \item Two strategies: + \begin{itemize} + \item Expand to full design model\\ + include full life cycle + \item Integrate in existing design models + \end{itemize} + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Future Iterations} + \begin{itemize} + \item Involve experienced team + \item Include adaptations from this thesis + \item Two strategies: + \begin{itemize} + \item Expand to full design model + \item Integrate in existing design models + \end{itemize} + \end{itemize} + \end{block} + } +\end{frame} +\begin{frame}[typeset second] +\end{frame} diff --git a/content/design_method.tex b/content/design_method.tex new file mode 100644 index 0000000..97d11c6 --- /dev/null +++ b/content/design_method.tex @@ -0,0 +1,219 @@ +%&tex + +%% Design Method +% 1:45 + +% The RIDM starts here +% Methode start hier + +% Previously only tested on software +% Using existing hardware +% Already defined the functionality +% Meaning we work from scratch + + +\begin{frame}[typeset second]{Rapid Iterative Design Method} + \customslide + { + %notes + \begin{itemize} + \item First the design method + \item or Rapid Iterative Design Method + \item General approach is: + \begin{itemize} + \item Feature based + \item Implement features one by one + \item The features are based on functionality of the system + \end{itemize} + \end{itemize} + } + { + %overlay + \begin{figure} + \raggedright + \includegraphics[height=75mm]{graphics/design_flow.pdf} + \end{figure} + } +\end{frame} + +\begin{frame}[typeset second]{Rapid Iterative Design Method} + \customslide + { + \begin{itemize} + \item \textbf{Rapid Iterative design method is shown here} + \item This thesis focus on design the hardware + \item start from scratch + \item design functionality + \item interested in the RIDM + \item three simple preparation steps, in which: + \begin{itemize} + \item Describe what we need in: Problem Description + \item Formalize that as Requirements + \item and create Initial Design: Define the functionality + \end{itemize} + \end{itemize} + } + { + %overlay + \begin{figure} + \raggedright + \includegraphics[height=75mm]{graphics/design_flow.pdf} + \end{figure} + } +\end{frame} + +\begin{frame}[typeset second]{Feature Definition} + \customslide + { + \begin{block}{Feature definition step} + \begin{itemize} + \item Take functionality from initial design + \item split it into features + \item Implement and test individually + + \item The functionality does not describe hardware + \begin{itemize} + \item In addition to function feature + \item component feature + \end{itemize} + \item Requirements added for both component and feature + \end{itemize} + \end{block} + } + { + %overlay + \begin{figure} + \raggedright + \includegraphics[height=75mm]{graphics/design_flow_feature_def.pdf} + \end{figure} + } +\end{frame} + +\begin{frame}[typeset second]{Development Cycle} + \customslide + { + %notes + \begin{itemize} + \item three steps + \item for each feature + \end{itemize} + \begin{block}{Feature Selection} + Which feature goes next + \begin{itemize} + \item aims to reduce the expected loss of investment on failure + \item Prioritizing -- high Chance of Failure + \item Decreasing the chance of failure late in the design + \item Cost of Implementation at the end + \item implemented when chance of failure is lowest. + \end{itemize} + \end{block} + } + { + %overlay + \begin{figure} + \raggedright + \includegraphics[height=75mm]{graphics/design_flow_dev_cycle.pdf} + \end{figure} + } +\end{frame} +\begin{frame}[typeset second]{Development Cycle} + \customslide + { + %notes + \begin{block}{Rapid Development} + \begin{itemize} + \item Take selected feature + \item Basic model for it + \item Develop Tests for the requirements + \end{itemize} + \end{block} + } + { + %overlay + \begin{figure} + \raggedright + \includegraphics[height=75mm]{graphics/design_flow_dev_cycle.pdf} + \end{figure} + } +\end{frame} +\begin{frame}[typeset second]{Development Cycle} + \customslide + { + %notes + \begin{itemize} + \item Last step in the cycle + \end{itemize} + \begin{block}{Variable-detail Approach} + \begin{itemize} + \item develops basic model + \item into model that meets the feature requirements. + \item Therefore, The model requires a level of detail. + \item However, the model should not contain more detail than necessary. + \item Next Slide! + \end{itemize} + \end{block} + } + { + %overlay + \begin{figure} + \raggedright + \includegraphics[height=75mm]{graphics/design_flow_dev_cycle.pdf} + \end{figure} + } +\end{frame} + +\begin{frame}[typeset second]{Variable-detail Approach} + \customslide + { + %notes + \begin{itemize} + \item By adding detail in small increments + \item and testing continiously + \item we only implement the necessary detail + \item When all requirements are met + \item all tests must pass + \item indicating to continue with the next feature. + \end{itemize} + } + { + %overlay + \begin{itemize} + \item Small increments in detail + \item Validate with continious testing + \item Complete when all tests pass + \end{itemize} + } +\end{frame} + +\begin{frame}[typeset second]{Rapid Iterative Design Method} + \customslide + { + %notes + \begin{block}{Advantages of the ridm} + \begin{itemize} + \item Provides a structured approach + \item by creating short cycles + \begin{itemize} + \item because the system developed per feature + \item and the features are implemented per detail level + \end{itemize} + \item With Continuous testing + \item Discover undesired behavoir or design errors early + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Advantages} + \begin{itemize} + \item Structured approach + \item Short implementation cycles + \begin{itemize} + \item Features + \item Levels of Detail + \end{itemize} + \item Discover undesired behavoir early + \end{itemize} + \end{block} + } +\end{frame} diff --git a/content/evaluation.tex b/content/evaluation.tex new file mode 100644 index 0000000..e01e8b3 --- /dev/null +++ b/content/evaluation.tex @@ -0,0 +1,383 @@ +\begin{frame}[typeset second]{Design Method Evaluation} + \customslide + { + %notes + \begin{itemize} + \item Preparation Phase: the steps prior to the development Cycle + \begin{itemize} + \item What elements are required to describe a feature + \item How should these features and their elements be defined + \end{itemize} + \item Development Cycle: That is performed for each feature + \begin{itemize} + \item The role of design and model in the process + \item Select which feature to implement + \item Tooling required for Development + \end{itemize} + \item Design in General + \begin{itemize} + \item System Complexity \& the role of Hardware vs Software + \item Development Team + \end{itemize} + \end{itemize} + } + { + %overlay + \begin{itemize} + \item Preparation Phase + \begin{itemize} + \item Elements of a feature + \item Feature Definition + \end{itemize} + \item Development Cycle + \begin{itemize} + \item Design versus Model + \item Feature Selection + \item Development Tooling + \end{itemize} + \item Design in General + \begin{itemize} + \item System complexity + \item Development Team + \end{itemize} + \end{itemize} + } +\end{frame} + +\begin{frame}[typeset second]{Preparation Phase} + \customslide + { + %notes + \begin{block}{Elements of a Feature} + \begin{itemize} + \item Case study: function/component separate. + \item Therefore, a component feature has no functionality. + \item The lack of functionality makes it impossible to test. + \item To test and implement individually + \item Feature needs: requirement, component and function + \end{itemize} + \begin{figure} + \raggedright + \includegraphics[width=60mm]{graphics/functional_relation.pdf} + \end{figure} + \end{block} + } + { + %overlay + \begin{block}{Elements of a Feature} + \begin{figure} + \raggedright + \vspace{1mm} + \includegraphics[width=60mm]{graphics/functional_relation.pdf} + \end{figure} + \begin{itemize} + \item Independent implementation + \item Testable + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{Preparation Phase} + \customslide + { + %notes + %for the feature definition + %used linear set of steps + %Eventhough the problem of writing on a white board is fairly simple, it was difficult to design the current system using the linear set of steps. + %First all requirements, then initial design. + %Often happened: "forgot this, should have added this requirements" + + %however, the preparation phase defines the functionality of the system + %And thus the features. + %For the rapid iterative design method these features determine the outcome of the design process. + + + + \begin{block}{Feature Definition} + \begin{itemize} + \item The preparation phase determines + \item functionality of the system + \begin{itemize} + \item thus also the features + \item which are developed into the final product + \end{itemize} + \item The simple set of steps: problem definition; requirements; initial design + \item difficult to design this simple system with + \item approach must also be able to determine features + \item of complex problems. + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Feature Definition} + \begin{itemize} + \item Functionality of the system + \begin{itemize} + \item Features + \item Final product + \end{itemize} + \vspace{2mm} + \item Approach to determine features required + \item Must deal with complex problems + \end{itemize} + \end{block} + } +\end{frame} +\begin{frame}[typeset second]{Development Cycle} + \customslide + { + %notes + \begin{itemize} + \item Design represented as models + \begin{itemize} + \item for the model to represent the design + \item it needs more detail than neccesary + \item this defeats the purpose of the variable-detail approach + \item as it is not possible to stop at minimal level of detail. + \end{itemize} + \item Centralized design + \begin{itemize} + \item Where multiple models can represent parts of the design + \end{itemize} + \item Models are based on this design + \end{itemize} + } + { + %overlay + \begin{block}{Design versus Model} + \begin{itemize} + \item Model as design + \begin{itemize} + \item Model contains too much detail + \item Breaks variable-detail approach + \end{itemize} + \item Central design + \begin{itemize} + \item Models inherit from central design. + \item Multiple models represent parts of design. + \item Easy to apply design changes + \end{itemize} + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{Development Cycle} + \customslide + { + %notes + \begin{itemize} + \item Feature selection showed promissing results + \begin{itemize} + \item Even in this small case study + \end{itemize} + \item However, the current classification is vague + \item an improved method to determine + \item Chance of failure and implementation cost + \item is needed + \end{itemize} + } + { + %overlay + \begin{block}{Feature Selection} + \begin{itemize} + \item Showed promissing results + \item Improve classification + \begin{itemize} + \item Chance of failure + \item Implementation cost + \end{itemize} + \end{itemize} + \end{block} + } +\end{frame} +\begin{frame}[typeset second]{Development Cycle} + \customslide + { + %notes + \begin{block}{Tooling - Version Control} + \begin{itemize} + \item During variable detail approach + \item difficult to organize the levels of detail + \item Model software must be compatible with version control + \begin{itemize} + \item Allow atomic commits + \item Make merging easy + \item Possible to revert changes + \item Link and reuse other submodels + \end{itemize} + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Tooling} + \begin{itemize} + \item Version control + \begin{itemize} + \item Atomic changes + \item Easy merging + \item Revert changes + \item Reuse of submodels + \item Propagate model changes + \end{itemize} + \item Central design with parametric database + \begin{itemize} + \item Propagate design changes + \end{itemize} + \item Unit testing + \end{itemize} + \end{block} + } +\end{frame} +\begin{frame}[typeset second]{Development Cycle} + \customslide + { + %notes + \begin{block}{Tooling - Central Design} + \begin{itemize} + \item All design parameters should be in a central database. + \item Models read the design parameters from this database + \item Together: + \begin{itemize} + \item Version control propagates model changes + \item Central database propagates design changes. + \end{itemize} + \item Easy to make a single change and test all models. + \item This allows for beter unit testing. + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Tooling} + \begin{itemize} + \item Version control + \begin{itemize} + \item Atomic changes + \item Easy merging + \item Revert changes + \item Reuse of submodels + \item Propagate model changes + \end{itemize} + \item Central design with parametric database + \begin{itemize} + \item Propagate design changes + \end{itemize} + \item Unit testing + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{General Design} + \customslide + { + %notes + \begin{block}{Complexity} + Software enables complexity + \begin{itemize} + \item Without software the SCARA and cablebot combination would not be possible + \item Due to the complexity, changes are likely to introduce bugs and software errors. + \item Behavoir is hidden, difficult to detect problems + \item changes are expansive and have higher chance of failure + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Complexity} + \begin{itemize} + \item Software enables complexity + \begin{itemize} + \item Change is likely to cause bugs + \item Behavior is hidden + \item Expensive to change + \item High chance of failure + \end{itemize} + \item Hardware stays simple + \begin{itemize} + \item Single prototype easy to change + \item Relative inexpensive + \item Behavior is discoverable + \end{itemize} + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{General Design} + \customslide + { + %notes + \begin{block}{Complexity} + Hardware is relatively simple. + \begin{itemize} + \item Building a single hardware prototype is cheap. + \item Changing hardware is easy + \item Weld, saw, tape or screw something on + \item Above all, hardware fails destructive. + \item It is visible when the hardware does not behave as expected. + \item The design method should use hardware prototyping to it's advantage. + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Complexity} + \begin{itemize} + \item Software enables complexity + \begin{itemize} + \item Change is likely to cause bugs + \item Behavior is hidden + \item Expensive to change + \item High chance of failure + \end{itemize} + \item Hardware stays simple + \begin{itemize} + \item Single prototype easy to change + \item Relative inexpensive + \item Behavior is discoverable + \end{itemize} + \end{itemize} + \end{block} + } +\end{frame} + +\begin{frame}[typeset second]{General Design} + \customslide + { + %notes + \begin{block}{Development Team} + \begin{itemize} + \item Missed design and software experience + \item Also missed team members, + \begin{itemize} + \item Create discussion about design/solutions + \item Review your work. + \item Justify your decissions. + \end{itemize} + \item A cyber physical system design is multidomain + \item Requires multi-disciplinary design team + \end{itemize} + \end{block} + } + { + %overlay + \begin{block}{Development Team} + \begin{itemize} + \item Design Experience + \item Team members + \begin{itemize} + \item Discussion + \item Review + \item Justify + \end{itemize} + \item Multi-domain + \item Multi-disciplinary + \end{itemize} + \end{block} + } +\end{frame} diff --git a/content/introduction.tex b/content/introduction.tex new file mode 100644 index 0000000..b419879 --- /dev/null +++ b/content/introduction.tex @@ -0,0 +1,139 @@ +\begin{frame}[typeset second] + \customslide + { + %notes + \begin{itemize} + \item aankondiging van Jan + \end{itemize} + } + { + %overlay + } +\end{frame} + +\begin{frame}[typeset second]{Welcome} + \customslide + { + %notes + \begin{itemize} + \item Thank you Jan + \item My name is Wouter + \item Welcome at my Master colloqium + \end{itemize} + }{} +\end{frame} +\begin{frame}[typeset second]{Welcome} + \customslide + { + %notes + \begin{itemize} + \item Questions in + \begin{itemize} + \item Jitsi + \item Youtube chat + \end{itemize} + \item Questions are addressed at the end + \end{itemize} + } + { + %overlay + \begin{block}{Questions} + \begin{itemize} + \item Jitsi + \item Youtube chat + \end{itemize} + \end{block} + } +\end{frame} + +%% +\begin{frame}[typeset second]{Goal} + \customslide + { + %notes + The subject of my thesis:\\ + Evaluation of a Feature-Based Design Method for Rapid Development of Hardware in Cyber-Physical Systems + \vspace{1em} + \begin{itemize} + \item Proposed within the research group + \item for the Development of: + \item Cyber Physical Systems: + \begin{itemize} + \item Embedded Computers + \item software that Control \& Monitor + \item Physical Part of the system + \end{itemize} + \item previously tested for developing control software + \begin{itemize} + \item Using existing hardware + \item The goal of this thesis: + Design the hardware from scratch + \end{itemize} + \end{itemize} + } + { + %overlay + \begin{itemize} + \item Design method evaluation + \item Cyber-physical systems + \item Design hardware from scratch + \end{itemize} + %Evaluation of a \\ + %feature-based design method for\\ + %rapid development of\\ + %hardware in cyber-physical systems + } +\end{frame} + + +\begin{frame}[typeset second]{Goal} + \customslide + { + %notes + \begin{block}{The first objective of my thesis} + Asses the influence that applying the Design Method has on the design process of Cyber Physical Systems + \end{block} + \begin{block}{And second} + Describe which adaptations are required to establish a competend design method for cyber-physical systems. + \end{block} + } + { + %overlay + \begin{block}{Objectives} + \begin{itemize} + \item Influence on design process + \item Required adaptations + \end{itemize} + \end{block} + } +\end{frame} + +%% Inhoudsopgave +%% 1:20 +\begin{frame}[typeset second]{Content} + \customslide + { + %notes + my presentation starts with a: + \begin{itemize} + \item Brief introduction of design method + \item How I used the case study to test this method + \item What is the result of the case study + \item What did I learn from the case study + \item In the conclusion I adress the influence and adaptations + \item And the last this are the recommendations for future research + \end{itemize} + } + { + %overlay + \begin{itemize} + \item Design Method + \item Case Study + \item Results + \item Evaluation + \item Conclusion + \item Recommendations + \end{itemize} + } +\end{frame} + diff --git a/graphics/combined.tex b/graphics/combined.tex new file mode 100644 index 0000000..b0e9c28 --- /dev/null +++ b/graphics/combined.tex @@ -0,0 +1,22 @@ +%&tex +\documentclass{standalone} +\usepackage{tikz} +\usepackage{siltex} +\usetikzlibrary {arrows.meta,positioning} +\usetikzlibrary{calc,patterns} +\input{graphics/tics.tikz} + +\begin{document} +\begin{tikzpicture}[thick, >=Stealth, on grid, y=2.16cm, x=2.16cm] + \def \x {0.45}; + \def \y {0.35}; + \def \posx {1.7}; + \def \posy {1.2}; + \def \beta {-120}; + \def \alpha {130}; + \draw (0,0.5) pic {whiteboard}; + \draw (0,3) -- (\posx-\x,\posy+\y); + \draw (4,3) -- (\posx+\x,\posy+\y); + \draw (1.7,1.2) pic {scara}; +\end{tikzpicture} +\end{document} diff --git a/graphics/creationdate.lua b/graphics/creationdate.lua new file mode 100644 index 0000000..be88818 --- /dev/null +++ b/graphics/creationdate.lua @@ -0,0 +1,2 @@ + os.remove("creationdate.timestamp") + io.output("creationdate.timestamp"):write(os.date("\\edef\\tempa{\\string D:%Y%m%d%H%M%S}\n\\def\\tempb{%z}")) diff --git a/graphics/design_flow.tex b/graphics/design_flow.tex new file mode 100644 index 0000000..d96a9d4 --- /dev/null +++ b/graphics/design_flow.tex @@ -0,0 +1,20 @@ +\documentclass{standalone} +\usepackage{tikz} +\usepackage{siltex} +\usetikzlibrary {arrows.meta,positioning,calc,math} +\tikzset{nodes={text height=.7em, text width=2.6cm, align=center, +draw=black!50, thick, font=\footnotesize, fill=white}, +>={Stealth[round,sep]}, rounded corners, thick} + +\pgfdeclarelayer{bg} +\pgfsetlayers{bg,main} + +\begin{document} + \begin{tikzpicture}[on grid,y=1.1cm,x=2.9cm] + \input{graphics/design_flow.tikz} + \begin{pgfonlayer}{bg} + %\phasegroup(pd,id,Systems Engineering); + \phasegroup(fs,rd,Rapid Iterative Design Method); + \end{pgfonlayer} + \end{tikzpicture} +\end{document} diff --git a/graphics/design_flow_dev_cycle.tex b/graphics/design_flow_dev_cycle.tex new file mode 100644 index 0000000..ad2fbf3 --- /dev/null +++ b/graphics/design_flow_dev_cycle.tex @@ -0,0 +1,28 @@ +\documentclass{standalone} +\usepackage{tikz} +\usepackage{siltex} +\usetikzlibrary {arrows.meta,positioning,calc,math} +\tikzset{nodes={text height=.7em, text width=2.6cm, align=center, +draw=black!50, thick, font=\footnotesize, fill=white}, +>={Stealth[round,sep]}, rounded corners, thick} + +\pgfdeclarelayer{bg} +\pgfsetlayers{bg,main} + +\begin{document} + \begin{tikzpicture}[on grid,y=1.1cm,x=2.9cm] + \input{graphics/design_flow.tikz} + \def\myphasegroup(#1,#2,#3){% + \begin{scope}[nodes={draw=none, fill=none,text height={}}] + \coordinate (a) at ($(#1.north west)+(\rectoffset)+(0mm,2.5mm)$){}; + \coordinate (b) at ($(#2.south east)-(\rectoffset)-(\rectoffsetleft)$){}; + \draw[fill=lightgray] (a) rectangle (b); + \node[anchor=center] at ($(#1)+(\textoffset)+(0mm,4mm)$) {#3}; + \end{scope} + }; + \begin{pgfonlayer}{bg} + %\phasegroup(pd,id,Systems Engineering); + \myphasegroup(ss,rd,Development Cycle) + \end{pgfonlayer} + \end{tikzpicture} +\end{document} diff --git a/graphics/design_flow_feature_def.tex b/graphics/design_flow_feature_def.tex new file mode 100644 index 0000000..77d9cb2 --- /dev/null +++ b/graphics/design_flow_feature_def.tex @@ -0,0 +1,21 @@ +\documentclass{standalone} +\usepackage{tikz} +\usepackage{siltex} +\usetikzlibrary {arrows.meta,positioning,calc,math} +\tikzset{nodes={text height=.7em, text width=2.6cm, align=center, +draw=black!50, thick, font=\footnotesize, fill=white}, +>={Stealth[round,sep]}, rounded corners, thick} + +\pgfdeclarelayer{bg} +\pgfsetlayers{bg,main} + +\begin{document} +\begin{tikzpicture}[on grid,y=1.1cm,x=2.9cm] + \input{graphics/design_flow.tikz} + \def\rectoffsetleft{-1cm,0cm}; + \begin{pgfonlayer}{bg} + %\phasegroup(pd,id,Systems Engineering); + \phasegroup(fs,fs,{}) + \end{pgfonlayer} +\end{tikzpicture} +\end{document} diff --git a/graphics/feature_selection_curve.tex b/graphics/feature_selection_curve.tex new file mode 100644 index 0000000..6771840 --- /dev/null +++ b/graphics/feature_selection_curve.tex @@ -0,0 +1,34 @@ +\documentclass{standalone} +\usepackage{pgfplots, tikz} +\pgfmathdeclarefunction{poiss}{1}{% + \pgfmathparse{(#1^x)*exp(-#1)/(x!)}% + } +\begin{document} + \begin{tikzpicture} + \begin{axis}[ + declare function={ + C=4; + risk(\t,\a) = exp(\a*\t)-0.5; + cost(\t,\a) = \a*\t^2; + }, + axis x line=center, + axis y line=center, + xtick={0,2,...,19}, + ytick={0.1,0.2,...,0.6}, + domain = 0:18, + samples = 19, + xlabel={$t$}, + ylabel={$ $}, + xlabel style={right}, + ylabel style={above left}, + ymax=0.5, + xmax=20, + x post scale=1.4 + ] + \addplot+[smooth,blue] {risk(x,-0.03)}; + \addlegendentry{$\lambda = 1$} + \addplot+[smooth,orange] {cost(x,0.001)}; + \addlegendentry{$\lambda = 1$} + \end{axis} + \end{tikzpicture} +\end{document} diff --git a/graphics/functional_relation.tex b/graphics/functional_relation.tex new file mode 100644 index 0000000..f8597c7 --- /dev/null +++ b/graphics/functional_relation.tex @@ -0,0 +1,26 @@ +%&tex +\documentclass{standalone} +\usepackage{tikz} +\usepackage{siltex} +\usetikzlibrary {arrows.meta,positioning,calc,math} +\tikzset{nodes={text height=.7em, text width=1.6cm, align=center, +draw=black!50, thick, font=\footnotesize, fill=white}, +>={Stealth[round,sep]}, rounded corners, semithick} +\pgfdeclarelayer{bg} +\pgfsetlayers{bg,main} + +\begin{document} +\begin{tikzpicture}[on grid,y=2.0cm,x=2.0cm] + \node (re) {Requirement}; + \node (fu)[below right=1 of re] {Function}; + \node (co)[below left=1 of re] {Component}; + \begin{scope}[nodes={draw=none, auto, fill=none, midway,text width={},text height={}}] + \path[->,line width=0.3mm] (re) edge node[right=2mm] {Specifies} (fu) + (co) edge node[below=3mm] {Performs} (fu) + (re) edge node[left=2mm] {Specifies} (co); + \end{scope} + \begin{pgfonlayer}{bg} + \draw[fill=lightgray] (-1.3,0.25) rectangle (1.3,-1.1); + \end{pgfonlayer} +\end{tikzpicture} +\end{document} diff --git a/presentation.tex b/presentation.tex new file mode 100644 index 0000000..9246956 --- /dev/null +++ b/presentation.tex @@ -0,0 +1,52 @@ +\documentclass[english,12pt]{utwente-beamer} +\usepackage[backend=biber,style=authoryear,natbib=true]{biblatex} +\usepackage{lipsum} +\usepackage{siltex} +\usepackage{pdfpc} +\usepackage{tikz} +\usepackage{pgfpages} +%\renewcommand\pgfsetupphysicalpagesizes{% +% \pdfpagewidth\pgfphysicalwidth\pdfpageheight\pgfphysicalheight% +%} +\pgfdeclarelayer{bg} +\pgfsetlayers{bg,main} + +%Disable navigation +\beamertemplatenavigationsymbolsempty + +\usebackgroundtemplate{ + \only{ + \begin{tikzpicture}[remember picture, overlay] + \fill[green] (current page.north west) rectangle (current page.south east); + \end{tikzpicture} + } + } + +\newcommand{\customslide}[2]{ + \alt{\begin{minipage}{105mm} + #1 + \end{minipage}}% + { + #2 + } +} + +\setbeameroption{second mode text on second screen} +\begin{document} +\clearbanner +%% Introduction +\input{content/introduction} + +%% Design Method +\input{content/design_method} + +%% Case Study +\input{content/case_study} + +%% Case Study +\input{content/evaluation.tex} + +%% Conclusion +\input{content/conclusion.tex} + +\end{document} diff --git a/utwente-beamer.cls b/utwente-beamer.cls new file mode 100644 index 0000000..8988eb7 --- /dev/null +++ b/utwente-beamer.cls @@ -0,0 +1,180 @@ +\RequirePackage{ expl3, l3keys2e, xparse, ragged2e } +\ProvidesExplClass + {utwente-beamer} + {2017/08/23} + {1.1} + {University of Twente document class for presentations} + +% Package options +\keys_define:nn { utwente_beamer } { + % Token lists + background .tl_set:N = \utwente_beamer_background, + banner .tl_set:N = \utwente_beamer_banner, + language .tl_set:N = \utwente_beamer_language, + + % Switches + outline .bool_set:N = \utwente_beamer_outline, + nooutline .bool_set_inverse:N = \utwente_beamer_outline, + + % Passthrough + type1 .code:n = \PassOptionsToPackage{type1}{utwentefont}, + otf .code:n = \PassOptionsToPackage{otf}{utwentefont}, + math .code:n = \PassOptionsToPackage{math}{utwentefont}, + freefont .code:n = \PassOptionsToPackage{freefont}{utwentefont}, + + % Meta + english .meta:n = { language = en }, + dutch .meta:n = { language = nl }, + t1 .meta:n = { type1 }, + opentype .meta:n = { otf }, + + % Shorthand for widescreen slides + wide .meta:n = { aspectratio = 169 }, + + % Options for beamer + unknown .code:n = + \PassOptionsToClass{ \l_keys_key_tl = #1 }{ beamer }, +} + +% Default options +\keys_set:nn { utwente_beamer } { + language = nl, + background = 1, + banner = 1, + outline +} +\ProcessKeysOptions{ utwente_beamer } + +% Load more colours +\PassOptionsToClass{ xcolor={usenames,dvipsnames,table,svgnames} }{ beamer } + +% Load the beamer class +\LoadClass{beamer} + +% Load UTwente fonts +\RequirePackage{utwentefont} + +% Variables +\cs_set:Npn \setlanguage #1 { \tl_set:Nn \utwente_beamer_language {#1} } +\cs_new:Npn \setbackground #1 { \tl_set:Nn \utwente_beamer_background {#1} } +\cs_new:Npn \setbanner #1 { + \tl_set:Nn \utwente_beamer_banner {#1} + \utwente_beamer_banner_set +} + +% Margins +\setbeamersize{ text~margin~left = 2mm, text~margin~right = 39mm } + +% Styling +\setbeamercolor { normal~text } { fg=black } +\setbeamercolor { structure } { fg=black } + +% Show a table of contents at the start of a section +\bool_if:NT \utwente_beamer_outline + { \AtBeginSection[] { \contentsslide } } + +% Frame title +\setbeamertemplate{frametitle}{ + \vspace{1ex} + \vbox:n { \universtitle \MakeUppercase \insertframetitle } + \vspace{.5ex} + \hrule height 1pt \relax +} + +% Footer +\setbeamertemplate{footline} { + % Use title font + \universtitle + + % UTwente logo + \hspace{3mm} + \includegraphics + [ height=1.5mm, trim=7mm~7mm~7mm~7mm ] + { utwente-\utwente_beamer_language-black } + \hspace{10mm} + %\includegraphics + % [ trim=0mm~8mm~28mm~0mm, clip, height=3.2mm] + % { img_RoboticsAndMechatronics_logo_CMYK-eps-converted-to.pdf } + + + % Buffer space + %\hspace{1em} + + % Place short title in the centre + %\hbox_to_wd:nn{.5\paperwidth}{ + % \hfill + % \MakeUppercase{\insertshorttitle} % This doesnt work + % \hfill + %} + + % Flush the rest to the right + \hfill + + % Date / slide number + %\insertdate + %\quad + \insertframenumber{} / \inserttotalframenumber + + % Right margin + \hspace{5mm} + + % Text vertical offset + \vspace{2mm} +} + +% Set the banner +\tl_set:Nn \utwente_beamer_banner_set { + \setbeamertemplate {background} { + \includegraphics + [ width=14mm,height=\paperheight ] + { utwente-beamer-banner-\utwente_beamer_banner } + } + } + +% Clear the banner +\tl_set:Nn \utwente_beamer_banner_clear { + \setbeamertemplate { background } {} +} + +% Immediately set it +\utwente_beamer_banner_set + +% Aliasses for users +\tl_set_eq:NN \clearbanner \utwente_beamer_banner_clear + +% Title slide +\tl_set:Nn \maketitleslide { + % Clear the banner + \utwente_beamer_banner_clear + + % Set the background + \usebackgroundtemplate { + \includegraphics + [ width=\paperwidth ] + { utwente-beamer-back-\utwente_beamer_language-\utwente_beamer_background } + } + + % Slide contents + \begin{frame}[plain] + \universtitle + \color{white} + \hspace{20mm} + \parbox { .6\paperwidth } { + { \Large \MakeUppercase \inserttitle } \\ + { \insertsubtitle } + } + \end{frame} + + % Clear the background + \usebackgroundtemplate{} + + % Reset the banner + \utwente_beamer_banner_set +} + +% Slide with the table of contents +\tl_set:Nn \contentsslide { + \begin{frame} {Contents} + \tableofcontents[currentsection,currentsubsection] + \end{frame} +}