2009-10-15 2 views
1

Если компания разработала рамки для выполнения практически всех их бизнес требует, но имеет следующие проблемы:Доведение Enterprise Framework Upto скорости

  1. С эволюцией и изменением собственности дизайн деградировал. (Абсурдные иерархии)
  2. Не соответствует последним тенденциям развития корпоративного программного обеспечения. (Наборы данных!)
  3. Слишком много зависимых модулей. (Не основаны на интерфейсах, зависимостях от кода, тоннах xsd и т. Д.)
  4. Для того, чтобы догнать новую аренду, требуется много времени, потому что инфраструктура является частной для компании. (Плохая практика кодирования в прошлом, отсутствие документации, разбросанная бизнес-логика)
  5. Не используя любые известные библиотеки, такие как (log4net/CSLA/Spring.net/Drools)

Как вы идете о выполнении следующих действий в качестве старшего Дев:

  1. Убедить выше требует пересмотра/перепроектирования.
  2. Инкрементный редизайн или непрерывный рефакторинг? Лучшая ставка?

Моя самая большая проблема заключается в том, как объяснить более высокие проблемы, связанные с каркасом. Хороший совет по инкрементной реорганизации и непрерывному рефакторингу каркаса тоже будет приятным!

ответ

2

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

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

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

Изменения могут быть опасны, особенно в случае старой системы, с длинной историей, плохим дизайном и т. Д. Таким образом, рефакторинг/переработка могут создавать новые, неоткрытые проблемы, поэтому это рискованно.

+1

вы, кажется, проплыли на одной и той же лодке в прошлом :) +1 – Perpetualcoder

+1

Я плаваю на этой лодке. С точки зрения руководства на данный момент :) –

1

Возможно, вы обнаружите, что те, кто выше, не заботятся о точках 1, 2, 3 или 5. Лучше всего реорганизовать небольшой кусочек за раз. Есть ряд подобных «как мне убедить моего босса ...» в StackOverflow. Я рекомендовал бы читать их все и решить, на какой подход вы думаете, будет работать лучше для вашей среды

Последнее, что нужно помнить, - то, что важно для вас, не так важно для тех, кто выше вас. Я знаю, что это отстой, но это положение вещей ...

Успехов