Commit e2d689d6 authored by Martin Iten's avatar Martin Iten

Error handling level

parent 2abb6d65
......@@ -353,7 +353,7 @@ Single User Desktop Programm, Multi Tier Architectures, fast Client \& Server, M
\item[Optimistic] Neutral result, Next possible plausible result, Log warnings in stream
\end{description}
\section{Error Handling Design}
\subsection{Error Handling Design}
\begin{description}
\item[Fehler-Prävention] Design \& Code Reviews. Testing, Static Analysis, Error Handling Design, Concurrency Design \& Testing.
\item[Defensive Programmierung] Alle Werte von externen Quellen prüfen.
......@@ -366,6 +366,18 @@ Single User Desktop Programm, Multi Tier Architectures, fast Client \& Server, M
\item[Logging] Fehlerquelle finden (Debugging), Irregularitäten erkennen
\end{description}
\subsection{Error Handling Level}
\begin{description}
\item[local] for expected errors that are locally relevant, could also be evaluated locally
\item[propagate] it is not possible to decide on or handle the error locally, relevant at a higher level
\item[global exception handler] All unhandled errors delegated
\end{description}
\begin{itemize}
\item Logging and user notification
\item Possibly put program in a consistent state or close program in a controlled manner
\end{itemize}
\section{Design by Contract (DBC)}
Ein Vertrag legt Rechte (benefits) und Pflichten (obligations) zweier Parteien statt. Für Methoden (Pre- und Postconditions) und Klassen (Klasseninvariante, muss vor und nach jedem Methodenaufruf erfüllt sein).
......@@ -568,7 +580,7 @@ $$ I=\frac{C_e}{C_a+C_e} $$
Falls $I=1$ ist die Klasse instabil (Package am Rand. Falls $I=0$ ist die Klasse stabil (zentrales Package).
\subsection{Normalized Distance from Main Sequence (Dn)}
\subsection{Normalized Distance from Main Sequence (Dn)} \hfill
Abstractness
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment