avl (avl) wrote,
avl
avl

Category:

56. Будьте осторожны с метафорами

(В оригинале - Don't Stretch The Architecture Metaphors)

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

В начале это срабатывает, люди начинают ощущать, что вещи движутся в правильном направлении. Метафоры появляются, и с течением времени начинают жить собственной жизнью. А всем кажется, что мы движемся вперед.

На самом деле в этот момент метафоры становятся опасными. Вот как это может повернуться против архитектора.


  • Заказчику ваша метафора начинает нравиться больше, чем разрабатываемая вами система. Из-за этого все участники начинают все интерпретировать исходя из метафоры, не замечая реальных ограничений настоящей системы.

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

  • Команда разработки начинает думать, что метафора более важна, чем реальная бизнес-задача. Вы начинаете отстаивать странные решения из-за привязанности к метафоре.

    Пример: Мы говорим, что это будет как книжный шкаф, поэтому мы должны показывать пользователю содержимое в алфавитном порядке. Я знаю, что этот книжный шкаф будет шестимерным с бесконечной шириной и встроенными часами, но остальные представят себе то, что было названо – книжный шкаф.

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

    Пример: Почему объект Billing Factory создает канал для системы гребных шлюпок? Действительно ли он должен возвращать отображение граната для автовокзала? Говорите, вы тут недавно работаете?

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

Автор оригинала - David Ing

Перевод мой. Если вы решите использовать его полностью или частично, не забудьте указать ссылку на мой живой журнал!
Tags: 97_things_architect_should_know
Subscribe

  • Один день на яхте

    Давно, очень давно хотелось оказаться на яхте. И вот наконец удалось реализовать мечту, пока что на 1 день. Главное — что оказалось, что никого из…

  • Подарок на 8 марта :)

    Фирма удивила, подарив 8 марта ВСЕМ сотрудникам смарт-часы от неизвестного производителя с нанесенным своим логотипом :) Да, в Словении 8 марта -…

  • Подводная лодка

    Давно не писал сюда, т.к. несмотря на отвратительный интерфейс, все переходят в фейсбук... Но все же возможность вставлять несколько фото и управлять…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments