TeX - LaTeX Asked by Ali Mansour on February 17, 2021
I need to construct a Waterfall model diagram like these:
An alternative to Gernot nice answer, in which is employed chains
TikZ library and connection between nodes are establish in a loop:
documentclass[tikz, margin=3mm]{standalone}
usepackage{}
usetikzlibrary{chains,positioning,shadows}
begin{document}
begin{tikzpicture}[>=stealth,
node distance = 3mm and 3mm,
start chain = A going below right,
every node/.style = {draw, text width=24mm, minimum height=12mm, align=center,
inner sep=1mm, fill=white, drop shadow={fill=black}, on chain=A},
]
node {Requirements}; % A-1
node {Design};
node {Coding and unit test};
node {System integration};
node {Operation and maintenance};
%
foreach i [count=j] in {2,...,5}
{
draw[->, thick] (A-i) -| (A-j);
draw[->, thick] (A-j) -| (A-i);
}
end{tikzpicture}
end{document}
Correct answer by Zarko on February 17, 2021
documentclass[border=2mm]{standalone}
usepackage{tikz}
usetikzlibrary{positioning}
begin{document}
tikzset
{phase/.style={draw,minimum width=2cm,minimum height=1.3cm,align=center}
,previous/.style={below right=0.5cm of #1}
}
newcommandconnect[2]%
{draw[->,thick] (#1) -| (#2);
draw[->,thick] (#2) -| (#1);
}
begin{tikzpicture}[>=stealth]
node[phase] (requirements) {Requirements};
node[phase,previous=requirements] (design) {Design};
node[phase,previous=design] (coding) {Coding andunit test};
node[phase,previous=coding] (integration) {Systemintegration};
node[phase,previous=integration] (operation) {Operation andmaintenance};
connect{requirements}{design};
connect{design}{coding};
connect{coding}{integration};
connect{integration}{operation};
end{tikzpicture}
end{document}
documentclass[border=2mm]{standalone}
usepackage{tikz}
usetikzlibrary{positioning}
begin{document}
tikzset
{phase/.style={draw,minimum width=2cm,minimum height=1.3cm,align=center}
,previous/.style={below right=0.5cm of #1}
}
newcommandconnect[2]%
{draw[->,thick] (#1.east) to[out=0,in=90] (#2.north);
draw[->,thick] (#2.west) to[out=180,in=270] (#1.south);
}
begin{tikzpicture}[>=stealth]
node[phase] (requirements) {Requirements};
node[phase,previous=requirements] (design) {Design};
node[phase,previous=design] (coding) {Coding andunit test};
node[phase,previous=coding] (integration) {Systemintegration};
node[phase,previous=integration] (operation) {Operation andmaintenance};
connect{requirements}{design};
connect{design}{coding};
connect{coding}{integration};
connect{integration}{operation};
end{tikzpicture}
end{document}
Answered by gernot on February 17, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP