gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [taler-schemafuzz] branch master updated: timeline diagram


From: gnunet
Subject: [GNUnet-SVN] [taler-schemafuzz] branch master updated: timeline diagram + End to end diagram+ started bibtex file
Date: Sat, 01 Sep 2018 22:13:44 +0200

This is an automated email from the git hooks/post-receive script.

erwan-ulrich pushed a commit to branch master
in repository schemafuzz.

The following commit(s) were added to refs/heads/master by this push:
     new 76e7631  timeline diagram + End to end diagram+ started bibtex file
76e7631 is described below

commit 76e763139cf8b90f669d6d968d9af64c11e10ad6
Author: Feideus <address@hidden>
AuthorDate: Sat Sep 1 22:13:37 2018 +0200

    timeline diagram + End to end diagram+ started bibtex file
---
 docs/Documentation.pdf       | Bin 958332 -> 987487 bytes
 docs/Documentation.tex       |  10 +++-
 docs/EndToEndDiagram.pdf     | Bin 0 -> 38035 bytes
 docs/EndToEndDiagram.tex     | 127 ++++++++++++++++++++++++++++++++++++++++++
 docs/PersonnalExperience.tex |  19 ++++++-
 docs/timelineDiagram.pdf     | Bin 0 -> 24627 bytes
 docs/timelineDiagram.tex     | 129 +++++++++++++++++++++++++++++++++++++++++++
 docs/timelineDiagram2.pdf    | Bin 0 -> 24122 bytes
 docs/timelineDiagram2.tex    | 129 +++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 411 insertions(+), 3 deletions(-)

diff --git a/docs/Documentation.pdf b/docs/Documentation.pdf
index d8af16d..2f85a02 100644
Binary files a/docs/Documentation.pdf and b/docs/Documentation.pdf differ
diff --git a/docs/Documentation.tex b/docs/Documentation.tex
index 1b6bd7e..d7cc3bc 100644
--- a/docs/Documentation.tex
+++ b/docs/Documentation.tex
@@ -91,8 +91,16 @@ The majority of this project is built on top of this already 
existing code and i
                \item{the mutation Tree, used to store the mutations coherently}
                \item{an analyzer that scores the mutations to influence the 
paths that will be explored afterwards}
                \end{itemize}
-                
 This organization will be detailed and discussed in the following sections.
+
+                \clearpage
+\begin{figure} [h!]
+\centering
+\includepdf[pages={2},scale=0.85]{EndToEndDiagram.pdf}
+\caption{Main Loop}
+\end{figure}
+                \clearpage              
+                
                \subsection{SchemaSpy legacy/meta data extraction}
 SchemaSpy source code has provided the meta data extraction routine. The only 
job of this routine is to initialize the connection to the database and 
retrieve its meta data at the   beginning of the execution (before any actual 
SchemaFuzz code is run). These meta data include data types, table and table 
column names, views and foreign/primary key constraints. Having this pool of 
meta data under the shape of Java objects allows the main program to properly 
frame what the possibilities are [...]
 
diff --git a/docs/EndToEndDiagram.pdf b/docs/EndToEndDiagram.pdf
new file mode 100644
index 0000000..80bc7cd
Binary files /dev/null and b/docs/EndToEndDiagram.pdf differ
diff --git a/docs/EndToEndDiagram.tex b/docs/EndToEndDiagram.tex
new file mode 100644
index 0000000..3f7f7cf
--- /dev/null
+++ b/docs/EndToEndDiagram.tex
@@ -0,0 +1,127 @@
+\documentclass{article}
+\usepackage{tikz}
+\usetikzlibrary{shapes,arrows,shadows}
+% Define the layers to draw the diagram
+\pgfdeclarelayer{background}
+\pgfdeclarelayer{foreground}
+\pgfsetlayers{background,main,foreground}
+\tikzstyle{sensor}=[draw, fill=blue!20, text width=5em, 
+    text centered, minimum height=2.5em,drop shadow]
+\tikzstyle{ann} = [above, text width=5em, text centered]
+\tikzstyle{wa} = [sensor, text width=10em, fill=red!20, 
+    minimum height=6em, rounded corners, drop shadow]
+\tikzstyle{sc} = [sensor, text width=13em, fill=red!20, 
+    minimum height=10em, rounded corners, drop shadow]
+\tikzstyle{sc2} = [sensor, text width=13em, fill=green!20, 
+    minimum height=5em, rounded corners, drop shadow]
+\tikzstyle{sc3} = [sensor, text width=13em, fill=blue!20, 
+    minimum height=5em, rounded corners, drop shadow]
+\tikzstyle{sc4} = [sensor, text width=5em, fill=red!20, 
+    minimum height=5em, drop shadow]
+\tikzstyle{sc5} = [sensor, text width=5em, fill=red!20, dashed, 
+    minimum height=5em, drop shadow]
+\tikzstyle{sc6} = [sensor, text width=5em, fill=purple!80, 
+    minimum height=5em, drop shadow]   
+\begin{document}
+\begin{tikzpicture}
+    \node (wa)[sc3]  {Meta data extraction};
+    \path (wa.south)+(0,-1.7) node (wa2)[sc3] {Setting constraints to CASCADE};
+   
+               
+    \path (wa.north) +(0,0.6) node (asrs) {Pre processing};
+  
+    \begin{pgfonlayer}{background}
+        \path (wa.west |- wa.north)+(-0.5,1) node (a) {};
+        \path (wa2.east |- wa2.south)+(+0.5,-0.5) node (c) {};
+          
+        \path[fill=yellow!20,rounded corners, draw=black!50, dashed]
+            (a) rectangle (c);           
+            
+    \end{pgfonlayer}
+   
+    \path (wa.south)+(3,-7.5) node (syscomb) {};
+    \path (syscomb.west)+(-6.2,1.5) node (asrt1) [sc4] {$Choosing$ $modif.$};
+    \path (asrt1.south)+(1.5,-1.5) node (asrt4) [sc4] {$Creating$ $mutation$};
+    \path (syscomb.west)+(1,1.5) node (asrt2)[sc4] {$Creation$ $of$ $SQL$ 
$statement$};
+    \path (asrt2.south)+(2,-1.5) node (asrt5)[sc5] {$Undo$ $Routine$ $(if$ 
$necessary)$};
+    \path (syscomb.east)+(4,-8) node (asrt3)[sc4] {$Hashing$ + $Clustering$ \\ 
+ $Scoring$};
+    \path (syscomb.east)+(-2.5,-5) node (asrt6)[sc4] {$Launching$ $target$ 
$software$};
+    \path (asrt6.south)+(0,-2) node (asrt7)[sc4] {$Parsing$ $execution$ \\ 
$response$};
+    \path (asrt3.north)+(0,2) node (asrt8)[sc4] {$Generating$ $report$};
+    \path (asrt6.west)+(-3,-1.5) node (asrt9)[sc4] {$Injection +$ \\ $DB$ 
$response$ \\ $parsing$};                
+          
+    \begin{pgfonlayer}{background}
+        \path (asrt1.west)+(-1.5,2) node (g) {};
+        \path (asrt3.east)+(0.5,-1.5) node (h) {};
+         
+        \path[fill=yellow!20,rounded corners, draw=black!50, dashed]
+            (g) rectangle (h);
+    \end{pgfonlayer}    
+    
+    \begin{pgfonlayer}{background}
+        \path (asrt1.west)+(-1.3,1.3) node (g) {};
+        \path (asrt4.east)+(0.5,-1.5) node (h) {};
+         
+        \path[fill=yellow!10,rounded corners, draw=black!50, dashed]
+            (g) rectangle (h);
+    \end{pgfonlayer}    
+    
+    
+    \begin{pgfonlayer}{background}
+        \path (asrt2.west)+(-1,1.3) node (g) {};
+        \path (asrt5.east)+(0.5,-1.5) node (h) {};
+                 
+        \path[fill=yellow!30,rounded corners, draw=black!50, dashed]
+            (g) rectangle (h);
+    \end{pgfonlayer}    
+    
+       
+    \begin{pgfonlayer}{background}
+        \path (asrt6.west)+(-0.3,1.3) node (g) {};
+        \path (asrt3.east)+(0.2,-1.2) node (h) {};
+         
+        \path[fill=yellow!50,rounded corners, draw=black!50, dashed]
+            (g) rectangle (h);
+    \end{pgfonlayer}    
+    
+    \path (asrt1.north) + (3.5,0.7) node (asrs) {Main Loop};
+        
+    \path (syscomb.east)+(-2.0,-11.5) node (block3) [sc2] {Rolling back 
Constraints \\ + \\ Building graphical tree};    
+   
+  
+    \begin{pgfonlayer}{background}
+        \path (block3.west |- block3.north)+(-0.5,0.3) node (a) {};
+        \path (block3.east |- block3.south)+(+0.5,-0.7) node (c) {};
+          
+        \path[fill=yellow!20,rounded corners, draw=black!50, dashed]
+            (a) rectangle (c);           
+           
+            
+    \end{pgfonlayer}
+    
+        \path (block3.south) +(-0,-0.35) 
+        node (block3Legend) {Post processing};    
+
+       %%% arrows
+    \path (syscomb.south)+(-6.4,-3) node (pos) {};
+    \path (asrt2.north)+(5,2) node (pos2) {};
+    \path (asrt3.south)+(0,-2.61) node (check) [sc6] {$Is$ $maximum$ $tree$ 
$depth$ $reached?$};
+       
+       \path [draw, ->] (wa.south) -- (wa2.north) {} ;
+    \path [draw, ->] (wa2.west) -| (asrt1.north) {}; 
+    \path [draw, ->] (asrt1.south) |- (asrt4.west) {}; 
+    \path [draw, ->] (asrt4.east) -- (asrt2.west) {};
+    \path [draw, ->] (asrt2.south) |- (asrt5.west) {};
+    \path [draw, -] (asrt5.south) |- (pos.north) {};
+    \path [draw, -] (pos.north) |- (asrt9.north) {};
+    \path [draw, ->] (asrt9.east) -- (asrt6.west) {};
+    \path [draw, ->] (asrt6.south) -- (asrt7.north) {};
+    \path [draw, ->] (asrt7.east) -- (asrt8.west) {};
+    \path [draw, ->] (asrt8.south) -- (asrt3.north) {};
+    \path [draw, ->] (asrt3.south) -- (check.north) {};
+    \path [draw, ->] (check.west) -- (block3.east) node [above,xshift=50] 
{Yes};
+    \path [draw, -] (check.east) node [above,xshift=8] {No} -| (pos2.south) {};
+    \path [draw, ->] (pos2.south) -| (asrt1.north) {};
+
+\end{tikzpicture}
+\end{document}
diff --git a/docs/PersonnalExperience.tex b/docs/PersonnalExperience.tex
index add1e07..b10a530 100644
--- a/docs/PersonnalExperience.tex
+++ b/docs/PersonnalExperience.tex
@@ -7,10 +7,25 @@ This section is meant to be added to the University version 
of this documentatio
        \subsection{Calendars}
        
 The    SchemaFuzz project has had since its genesis a quiet clear view of how 
the development should evolve. The desired features have been discussed and the 
big picture had been designed to fit the time that the main developer had for 
his work at this position.
-The project had to pass trough different phases of development that are 
detailed in the following time line diagram. %% insert timeline diagram here.
+The project had to pass trough different phases of development that are 
detailed in the following time line diagram. 
+
+               \bigskip
+               \begin{figure} [h!]
+                       \includegraphics[width=\textwidth]{timelineDiagram.pdf}
+                       \caption{Originally planned organization}
+               \end{figure}
+               \bigskip
+
 
 Some of the tasks of the above time line were completed on time, some others 
were delivered late, and some were delayed in the time line because of the 
previous point.
-In the end, the project was lead in a way that is best described by the 
following time line diagram. %% insert timeline diagram here.
+In the end, the project was lead in a way that is best described by the 
following time line diagram.
+
+               \bigskip
+               \begin{figure} [h!]
+                       \includegraphics[width=\textwidth]{timelineDiagram2.pdf}
+                       \caption{Organization results}
+               \end{figure}
+               \bigskip
 
 Those two diagrams differ on some points.There are several reasons that 
explain why this project could have been lead in a better way. They will be 
detailed and discussed in the next section. 
 
diff --git a/docs/timelineDiagram.pdf b/docs/timelineDiagram.pdf
new file mode 100644
index 0000000..e23d53f
Binary files /dev/null and b/docs/timelineDiagram.pdf differ
diff --git a/docs/timelineDiagram.tex b/docs/timelineDiagram.tex
new file mode 100644
index 0000000..607f1ac
--- /dev/null
+++ b/docs/timelineDiagram.tex
@@ -0,0 +1,129 @@
+\documentclass[tikz,border=5pt]{standalone}
+\usetikzlibrary{calc,positioning,shapes.multipart,decorations.pathreplacing,shapes.arrows}
+
+\definecolor{red1}{RGB}{195,0,0}
+\definecolor{red2}{RGB}{246,136,93}
+\definecolor{yellow1}{RGB}{247,175,47}
+\definecolor{yellow2}{RGB}{255,192,96}
+\definecolor{yellow3}{RGB}{255,255,96}
+\definecolor{green1}{RGB}{214,249,121}
+\definecolor{green2}{RGB}{113,158,65}
+
+% vertical separation between timeline and text boxes
+\def\TextShift{15pt}
+
+\tikzset{
+  myrect/.style={
+    rectangle split, 
+    rectangle split horizontal,
+    rectangle split parts=#1,
+    draw,
+    anchor=west,
+  },
+  mytext/.style={
+    arrow box,
+    draw=#1!70!black,
+    fill=#1,
+    align=center,
+    line width=1pt,
+    font=\sffamily
+  },
+  mytextb/.style={
+    mytext=#1,
+    anchor=north,
+    arrow box arrows={north:0.5cm}  
+  },
+  mytexta/.style={
+    mytext=#1,
+    anchor=south,
+    arrow box arrows={south:0.5cm}  
+  }
+}
+
+\newcommand\AddTextA[4][]{
+  \node[mytexta=#2,#1] at #3 {#4};
+}
+\newcommand\AddTextB[4][]{
+  \node[mytextb=#2,#1] at #3 {#4};
+}
+\newcommand\AddText[5][]{
+  \if#5l\relax
+    \node[mytextb=#2,yshift=-\TextShift,#1] 
+      at (part#4.south west) {\strut#3\strut};
+  \fi
+  \if#5L\relax
+    \node[mytexta=#2,yshift=\TextShift,#1] 
+      at (part#4.north west) {\strut#3\strut};
+  \fi
+  \if#5m\relax
+    \node[mytextb=#2,yshift=-\TextShift,#1] 
+      at ( $ (part#4.south west)!0.5!(part#4.south east) $ ) {\strut#3\strut};
+  \fi
+  \if#5M\relax
+    \node[mytexta=#2,yshift=\TextShift,#1] 
+      at ( $ (part#4.north west)!0.5!(part#4.north east) $ ) {\strut#3\strut};
+  \fi
+  \if#5r\relax
+    \node[mytextb=#2,yshift=-\TextShift,#1] 
+      at (part#4.south east) {\strut#3\strut};
+  \fi
+  \if#5R\relax
+    \node[mytexta=#2,yshift=\TextShift,#1] 
+      at (part#4.north east) {\strut#3\strut};
+  \fi
+}
+
+\newcommand\TimeLine[1]{%
+\coordinate (part0);  
+\foreach \Longitud/\Color/\Texto [count=\ti] in {#1}
+{
+  \node[
+    myrect=\Longitud,
+    fill=\Color,
+    right=of part\the\numexpr\ti-1\relax
+    ] 
+      (part\ti)
+      {};
+  \draw 
+    ([yshift=-15pt]part\ti.east) coordinate (upper\ti) -- 
+    ([yshift=15pt]part\ti.east) coordinate (lower\ti);
+  \node[font=\footnotesize]
+    at (part\ti.center) {\Texto};  
+  \gdef\lastpart{\ti}
+}
+\foreach \Nodo in {2,...,\lastpart}
+{
+  \ifodd\Nodo\relax
+  \draw[decoration={brace,mirror},decorate] 
+    (lower\Nodo) -- (lower\the\numexpr\Nodo-1\relax);
+  \else
+  \draw[decoration=brace,decorate] 
+    (upper\Nodo) -- (upper\the\numexpr\Nodo-1\relax);
+  \fi    
+}
+}
+
+\newenvironment{timeline}[1][]
+  {\begin{tikzpicture}[node distance=0pt and -\pgflinewidth,#1]}
+  {\end{tikzpicture}}
+
+\begin{document}
+
+\begin{timeline}
+\TimeLine{%
+    1/red1/{},%
+    2/red2/{},%
+    12/yellow3/{60--90 days},%    
+    4/green1/{10 days},%
+    13/yellow2/{60--90 days},
+    6/green2/{30 days}%
+  }
+\AddText[text=white]{red1}{Arrival}{2}{L}
+\AddText{red2}{Studying and separating \\ the Meta data extraction 
routine}{2}{m}
+\AddText{yellow3}{First Phase \\ of development}{3}{M}
+\AddText{green1}{Run against \\ the GNU Taler database}{4}{m}
+\AddText[xshift=-73pt]{yellow2}{Second phase \\ of development \\ (bug fixes 
and improvements)}{6}{L}
+\AddText{green2}{Writing documentation + \\ Setting website for \\ the 
project}{6}{m}
+\end{timeline}
+
+\end{document}
\ No newline at end of file
diff --git a/docs/timelineDiagram2.pdf b/docs/timelineDiagram2.pdf
new file mode 100644
index 0000000..c877206
Binary files /dev/null and b/docs/timelineDiagram2.pdf differ
diff --git a/docs/timelineDiagram2.tex b/docs/timelineDiagram2.tex
new file mode 100644
index 0000000..05e6158
--- /dev/null
+++ b/docs/timelineDiagram2.tex
@@ -0,0 +1,129 @@
+\documentclass[tikz,border=5pt]{standalone}
+\usetikzlibrary{calc,positioning,shapes.multipart,decorations.pathreplacing,shapes.arrows}
+
+\definecolor{red1}{RGB}{195,0,0}
+\definecolor{red2}{RGB}{246,136,93}
+\definecolor{yellow1}{RGB}{247,175,47}
+\definecolor{yellow2}{RGB}{255,192,96}
+\definecolor{yellow3}{RGB}{255,255,96}
+\definecolor{green1}{RGB}{214,249,121}
+\definecolor{green2}{RGB}{113,158,65}
+
+% vertical separation between timeline and text boxes
+\def\TextShift{15pt}
+
+\tikzset{
+  myrect/.style={
+    rectangle split, 
+    rectangle split horizontal,
+    rectangle split parts=#1,
+    draw,
+    anchor=west,
+  },
+  mytext/.style={
+    arrow box,
+    draw=#1!70!black,
+    fill=#1,
+    align=center,
+    line width=1pt,
+    font=\sffamily
+  },
+  mytextb/.style={
+    mytext=#1,
+    anchor=north,
+    arrow box arrows={north:0.5cm}  
+  },
+  mytexta/.style={
+    mytext=#1,
+    anchor=south,
+    arrow box arrows={south:0.5cm}  
+  }
+}
+
+\newcommand\AddTextA[4][]{
+  \node[mytexta=#2,#1] at #3 {#4};
+}
+\newcommand\AddTextB[4][]{
+  \node[mytextb=#2,#1] at #3 {#4};
+}
+\newcommand\AddText[5][]{
+  \if#5l\relax
+    \node[mytextb=#2,yshift=-\TextShift,#1] 
+      at (part#4.south west) {\strut#3\strut};
+  \fi
+  \if#5L\relax
+    \node[mytexta=#2,yshift=\TextShift,#1] 
+      at (part#4.north west) {\strut#3\strut};
+  \fi
+  \if#5m\relax
+    \node[mytextb=#2,yshift=-\TextShift,#1] 
+      at ( $ (part#4.south west)!0.5!(part#4.south east) $ ) {\strut#3\strut};
+  \fi
+  \if#5M\relax
+    \node[mytexta=#2,yshift=\TextShift,#1] 
+      at ( $ (part#4.north west)!0.5!(part#4.north east) $ ) {\strut#3\strut};
+  \fi
+  \if#5r\relax
+    \node[mytextb=#2,yshift=-\TextShift,#1] 
+      at (part#4.south east) {\strut#3\strut};
+  \fi
+  \if#5R\relax
+    \node[mytexta=#2,yshift=\TextShift,#1] 
+      at (part#4.north east) {\strut#3\strut};
+  \fi
+}
+
+\newcommand\TimeLine[1]{%
+\coordinate (part0);  
+\foreach \Longitud/\Color/\Texto [count=\ti] in {#1}
+{
+  \node[
+    myrect=\Longitud,
+    fill=\Color,
+    right=of part\the\numexpr\ti-1\relax
+    ] 
+      (part\ti)
+      {};
+  \draw 
+    ([yshift=-15pt]part\ti.east) coordinate (upper\ti) -- 
+    ([yshift=15pt]part\ti.east) coordinate (lower\ti);
+  \node[font=\footnotesize]
+    at (part\ti.center) {\Texto};  
+  \gdef\lastpart{\ti}
+}
+\foreach \Nodo in {2,...,\lastpart}
+{
+  \ifodd\Nodo\relax
+  \draw[decoration={brace,mirror},decorate] 
+    (lower\Nodo) -- (lower\the\numexpr\Nodo-1\relax);
+  \else
+  \draw[decoration=brace,decorate] 
+    (upper\Nodo) -- (upper\the\numexpr\Nodo-1\relax);
+  \fi    
+}
+}
+
+\newenvironment{timeline}[1][]
+  {\begin{tikzpicture}[node distance=0pt and -\pgflinewidth,#1]}
+  {\end{tikzpicture}}
+
+\begin{document}
+
+\begin{timeline}
+\TimeLine{%
+    1/red1/{},%
+    2/red2/{},%
+    12/yellow3/{90--120 days},%
+    1/yellow2/{},%
+    4/green1/{10--20 days},%
+    6/green2/{20--30 days}%
+  }
+\AddText[text=white]{red1}{Arrival}{2}{L}
+\AddText{red2}{Studying and separating \\ the Meta data extraction 
routine}{2}{m}
+\AddText{yellow3}{First Phase \\ of development}{3}{M}
+\AddText{yellow2}{Run against \\ GNU Taler DB}{4}{m}
+\AddText{green1}{Bug fixes  \\ and improvements}{5}{M}
+\AddText{green2}{Documentation + \\ Website for \\ SchemaFuzz}{6}{m}
+\end{timeline}
+
+\end{document}
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]