You can easily define your own link type that runs source blocks:
(org-link-set-parameters
"run"
:follow
(lambda (path)
(save-excursion
(org-babel-goto-named-src-block path)
(org#'org-babel-execute-src-blockref-maybe)))
resolve)
Afterwards a click on run:hello
executes the source block in the following Orgmode file.
#+name: hello
#+begin_src emacs-lisp :var n=1
(message "Hello""Hello. n=%s" n)
#+end_src
#+RESULTS: hello
: Hello
run:hello
[[run:hello(n=2)]]