Вы можете использовать PSD (диаграммы технологической структуры) или NSD ( диаграммы Nassi Schneiderman ). Я должен был узнать его за свои первые уроки программирования, прежде чем погрузиться в OO и Java. Он не охватывает различные аспекты UML, но это отправная точка для визуализации процедурной программы.
Помните, что означает UML для унифицированного языка моделирования. Это не только для моделирования объектных отношений, которые я считаю, является распространенным заблуждением UML. Он также может быть использован для диаграмм состояния, бизнес-процессов, базы данных схемы, ... см.: http://en.wikipedia.org/wiki/unified_modeling_language .
Я недавно использовал Rational Software IBM Rational Software для преобразования диаграмм состояния в Perl. Но для Perl мы должны были написать наши собственные файлы перевода, поскольку архитектор не включал их для Perl.
Но если вы говорите о C-коде, архитектор имеет встроенную функцию для обратного инженера написанного кода в диаграмму UML. Я использовал эту функцию для Java, и она работает довольно хорошо и создает диаграмму объекта. Я не использовал его для C раньше, поэтому я не знаю, превратит его в последовательность, активность или диаграмму состояния.
Вы можете скачать пробную версию программного архитектора и посмотреть, работает ли он для вашего кода.