Guro? Eu? Não não, não quero esse título não :D
Sobre o diagrama da relação entre as funções/componentes/métodos/classes etc. Eu não acho viável, pois só serve pra ficar bonito e dar uma sensação de grandiosidade. O código dos exemplos que deve ser lido e entendido e, em paralelo a isso, começar a fazer o seu.
Fluxogramas e, na minha opinião, muitos tipos de modelos gráficos, como a UML, são válidos para a visualização da representação daquele minimundo de uma perspectiva mais "macro", ou seja, mais abstrata. Quanto mais concreta a representação, mais complicada ela fica e só gera retrabalho para ficar atualizando aquele modelo de acordo com a evolução do software ou vice-versa.
Fluxogramas no ensino acho que cairam em desuso há muito tempo. Em 2001, quando fiz técnico em informática, já não se usava mais. Eu uso, para ensinar programação, uma representação de uma máquina de estados (parecido com o fluxograma) na hora de falar de estruturas condicionais e de repetição, mas não passa disso.
A melhor forma de aprender a programar é programando e o código que se autodocumenta é muito mais rico do que uma série de diagramas.