It might be useful to document some important functions, processes or features in a semi-formal notation.

Consider the open-source PlantUML (http://plantuml.com/) as an example. Given the following activity description, it can create a graphical version:

@startuml
start
  :authenticate;

  :select product;

  if (private customer?) then (yes)
    :add\nVAT;
  else (no)
    :request\nVAT_ID;
  endif

  :create invoice;
stop

@enduml

Activities are described between: and;, branches can be read as pseudo code and that way you combine the benefits of plain text with graphical representation.

PlantUML renders the code above to the following diagram: