Recentemente, fiz alguns gráficos de fluxo e lutei com o mesmo problema, como apresentar chamadas de sub-rotina, ou talvez chamadas de método e função, como você pode chamá-las atualmente.
Eu estabeleci uma convenção que separo as sub-rotinas CHAMADAS das sub-rotinas REFERENCES. Para o primeiro, uso um retângulo comum que mostra a chamada com argumentos sendo feitos, usando as variáveis que estão em vigor naquele momento na execução do programa.
Eu uso o retângulo de "processo predefinido" duplamente lados simplesmente como referência a outro fluxograma que contém a definição dessa função ou sub-rotina. O retângulo da sub-rotina não precisa mostrar os argumentos da sub-rotina, uma vez que isso faz parte do fluxograma de definição da sub-rotina em questão, mas pode ser útil adicioná-los já na referência para que quem o ler possa veja o significado dos argumentos reais usados em uma chamada.
Isso aumenta o número de retângulos, mas torna mais claro que esses outros fluxogramas existem para procurar a definição de algumas das funções chamadas. Frequentemente, se uma função é simples, não criarei um diagrama separado para ela, mas apenas a documento verbalmente.
Também uso o símbolo "documento" para dizer que os detalhes devem ser consultados na listagem de códigos.
O objetivo de um fluxograma para mim não é criar um programa, mas facilitar a compreensão de um programa por outras pessoas. Eu acho que a ajuda como uma visão panorâmica e que o objetivo deles deve ser lembrado. Eles não são para descrever visualmente TODOS os detalhes do seu programa, os detalhes são visíveis no código quando necessário. O fluxograma é apenas uma imagem do seu programa do ponto de vista de alto nível.
Manter os fluxogramas em alto nível também significa que há menos necessidade de mantê-los atualizados à medida que o código é modificado.
São fotos. Como qualquer boa documentação de software de história, também deve haver imagens que dêem um ponto de vista alternativo ao código.