Диаграмма классов UML для php сайта без класса

Я пытаюсь создать документацию UML для сайта PHP.
Да, я знаю, что это не обычный способ — но этот сайт уже работает, и теперь нам нужна документация UML для него 🙂

Программист, создавший этот сайт, вовсе не является ООП — он не использовал ни один PHP-класс для создания этого сайта. Вместо этого он сделал много php файлов. Я считаю, что в мире PHP это довольно популярный подход.

Теперь мне интересно, как я могу создать диаграмму классов для этого кода?
Как я знаю, диаграмма классов — это только способ показать архитектуру системы и концепцию программирования. Я полагаю, что в этом случае я могу представить один файл php как один класс, а переменные, используемые в этом файле, как атрибут класса. Если какой-то файл содержит какой-то другой файл, я могу представить это как отношение класса. Это правильный подход?

3

Решение

Ну, ты можешь начать с этого. Вероятно, это было бы то же самое, что нарисовать Ван-Гога Пикассо.

Конечно, это зависит от многих факторов, но, если возможно, я бы выложил код и разработал его правильно. Но это, вероятно, невозможно в большинстве случаев (слишком дорого я слышу, как менеджеры говорят, да, да). Так что правильный подход в этом случае: поддерживать жизнь зомби, но забыть об UML. Это не поможет вам много здесь.

С таким же успехом вы можете попытаться просто переделать маленькие детали. Если так, начните с нуля и здесь.

Интересно, что старая индийская пословица «Когда вы найдете, вы едете на мертвой лошади, выходите» никогда не доходила до многих менеджеров.

Хорошо. Итак, давайте попробуем несколько способов покататься на мертвой лошади.

  • Сначала сделайте документацию по UC. Это будет работать даже с не OO программного обеспечения.
  • Найдите несколько частей, которые являются ОО, и поместите их в документацию UML (статические диаграммы классов и, при необходимости, некоторые SD).
  • Создать объектную структуру зависимости существующих файлов PHP. Просто используйте объект для каждого файла и нарисуйте отношение зависимости. Это в большинстве случаев будет достаточно напугать менеджеров, чтобы провести редизайн.
  • Где узнаваемые, изолируйте интерфейсы и покажите их на диаграмме классов.
  • По возможности, указывайте на существующий беспорядок и настаивайте на рефакторинге.
  • Сделайте труп очевидным. Чем больше пахнет, тем больше будет денег на рефакторинг.
  • Попробуйте выделить подсистемы, над которыми можно работать индивидуально.

В заключение:

  • Удачи!
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]