\newcommand{\twolines}[2]{\begin{tabular}{c}#1\\#2\end{tabular}}
\scalebox{0.8}{
  \begin{tikzpicture}[
    -latex,
    entity/.style = {
      draw=lightGray,
      thick,
      ellipse,
      minimum height=1.75cm,
      top color = lightGray,
      bottom color = white,
    },
    plain/.style = {
      draw=none,
    },
    arrow/.style = {
      draw = black,
      -triangle 90,line width=1mm,
      postaction={draw, line width=0.1cm, shorten >=0.1cm, -},
    },
    cs/.style = {
      draw=lightGray,
      thick,
      cloud,
      cloud puffs = 15.7,
      cloud ignores aspect,
    },
  ]
    \node[entity] (vlsi) at (0,0) {Electronics};
    \node[entity, right=of vlsi] (hwa) {\twolines{Hardware}{architecture}};
    \node[entity, right=of hwa] (si) {\twolines{Software}{infrastructure}};
    \node[entity, right=of si] (as) {\twolines{Software}{development}};

    \path[arrow] (vlsi) -- (hwa);
    \path[arrow] (hwa) -- (si);
    \path[arrow] (si) -- (as);
    
    \coordinate(l) at ($ (vlsi) !.5! (hwa) $);
    \coordinate(m) at ($ (hwa) !.5! (si) $);
    \coordinate(r) at ($ (si) !.5! (as) $);

    \pause
    \node[plain, text=darkGreen, above=of l] {Computer parts};
    \pause
    \node[plain, text=darkBlue, below=of  m] {Hardware-software relation};
    \pause
    \node[plain, text=darkRed, above=of r] {Programming and software engineering};

    \pause
    \node[cs, above=1cm of si] {%
      \begin{tabular}{c}
        Networking, security, and\\
        distributed computing
      \end{tabular}
    };
  \end{tikzpicture}
}
