Начало работы над уже существующим проектом


Так что это скорее общий вопрос. Мне кажется, что я все время оказываюсь втянутым во все большие и большие проекты. Недавно я был назначен на очень большой проект, написанный на C и VHDL. Цель состоит в том, чтобы я познакомился с кодом и в конечном итоге возглавил проект. Это, безусловно, самый большой проект, над которым мне поручили работать, но я его не начинал.

Итак, вот мой вопрос: какие методы / инструменты вы используете, чтобы узнать, как все работает?

Do вы просто увеличиваете и расширяете комментарии?
Вы делаете UML-представление проекта?

Любые советы были бы великолепны! Спасибо

3 6

3 ответа:

Если вы можете, сядьте с людьми, которые в настоящее время работают над этим, и попросите начать обзор решения высокого уровня, а затем продолжайте самостоятельно, копаясь в деталях один за другим. Определите, кто отвечает за каждую функциональную область, и следуйте за ними, когда вы попадете в трудную ситуацию.

Постарайтесь внедриться в команду как можно быстрее, попросите посидеть на обзорах кода и тому подобное. Это заставит вас подняться довольно быстро.

Для VHDL я рекомендую использовать Sigasi . Sigasi разрабатывается с учетом этого случая использования. Sigasi позволяет легко ориентироваться в новых или устаревших проектах, что позволяет понять, как он структурирован.

Я нахожу UML почти бесполезным. Я нахожу гораздо более полезными реальные, статические и динамические графики вызовов. После того, как я сгенерирую граф вызовов, я обычно прогоняю исходный код через OpenGrok и cscope. Смотрите, что вызывает, что и кем вызывается для самых горячих методов.