Вход |  Регистрация

Все Тэги

Online курс “Основы APM”: Лучшие практики эволюционной и гибкой разработки баз данных

27.11.2013536 просм.

7. Инкапсуляция БД

Уровень инкапсуляции скрывает детали реализации БД от бизнес-логики и кода. Практически он предоставляет бизнес объектам постоянные сервисы – возможность читать, записывать и удалять данные из абстрактных источников данных. Бизнес логике все равно, откуда берутся и где хранятся данные; главное , чтобы были методы работы с ними.

Уровни инкапсуляции БД не являются магией, или теорией. Они применяются на практике в больших и маленьких, сложных и простых приложениях. Это важная практика для гибкой разработки, которую каждый разработчик должен понимать и уметь применять на практике.

Главный враг гибкой разработки – связи и зависимости между объектами, между базами данных, приложениями и источниками данных. Чем больше и сложнее связь и взаимозависимость между объектами, тем сложнее что-либо менять. И инкапсуляция является одним из основных средств борьбы с этим врагом номер один.

Перечислим несколько распространенных стратегий инкапсуляции:

  • Предоставление абстрактных интерфейсов к базе данных и механизмам хранения
  • Предоставление сервисов доступа
  • Использование связующих фрэймворков

8. Обучение разработчиков всему, что касается работы с данными

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

Фундаментальные умения включают в себя основы реляционных баз данных (РДБ), построение моделей данных, объектно-реляционное отображение (O/R mapping), XML, работу с данными в устаревших и нестандартных форматах, ссылочную целостность и разделяемую бизнес-логику, методы работы с объектами в РДБ, реализацию отчетов, одновременный доступ, контроли безопасности при работе с данными, транзакционный контроль и многое другое.

9. Обучение администраторов баз данных (DBA) базовым навыкам разработки

Аналогично и DBA только выиграют от навыков разработки. Это поможет им играть активную роль в командах, которые они поддерживают, давать рекомендации, основываясь на данных мониторинга продуктивных систем, и при этом говорить с разработчиками на одном языке.

10. Единые стандарты разработки

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

11. Бережливое управление данными

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

Многие традиционные подходы к управлению данными на практике уже не работают либо сталкиваются с серьезными трудностями. Частично это происходит вследствие культурного сопротивления, а часть вины лежит на проблемах IT-управления в целом. Типичный для традиционных стратегий управления подход – «командовать и контролировать», работает примерно так же, как попытки выпасать котов: много усилий, но в конечном итоге никакого результата.

Бережливое управление подразумевает другой подход, предоставляя возможности проявлять инициативу и мотивируя сотрудников двигаться в нужном направлении. На первый план выходит здоровое сотрудничество между командами разработки, поддержки, и бизнес пользователями.

12. Гибкое управление мастер-данными (MDM)

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

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

Команда ALG DevOps Team будет благодарна за Ваши ответы на следующие вопросы:

ALG_DevOps_Team