#c #uml
#c #uml
Вопрос:
Я пытаюсь создать схему компонентов существующего встроенного программного обеспечения, написанного на C. Так получилось, что у него есть файл C объемом более 3 тыс. строк, в котором используется множество аппаратно-зависимых компонентов (периферийные устройства с отображением памяти, крошечная сборка для процессора), а также множество аппаратно-независимых компонентов. Моя проблема в том, что он также предоставляет множество аппаратно-зависимых и аппаратно-независимых функций.
Мне интересно, могу ли я разделить этот файл на несколько компонентов в UML digram, чтобы лучше управлять интерфейсами. Итак, вопрос: разрешено ли разбивать один файл на несколько компонентов?
Конечная задача этого упражнения — создать модель системы, а затем отделить части кода, которые не зависят от оборудования. Это помогло бы нам перенести это программное обеспечение на разные архитектуры / SoC / платы. Разбиение этого файла на несколько файлов возможно, но на данный момент нам нужна фактическая архитектура, представленная на диаграмме.
Комментарии:
1. «Разрешено» кем? Вы дизайнер, делайте все, что хотите…
2. Обязательно загляните в SysML. Он был разработан для работы именно с такого рода встроенными системами / C-кодом.
Ответ №1:
Что касается UML, да, это разрешено. В UML нет никаких правил о том, как моделировать фрагмент исходного кода C. Если вы можете различить несколько логических единиц в большом файле C, то, конечно, вы должны смоделировать его как несколько компонентов.