Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Разработка баз данных - введение

681 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Разработка баз данных - введение

  1. 1. Разработка БД -ВведениеШамрай Александрa.shamray@cmcons.com
  2. 2. Проблемы командной разработкиРазличное видение и приоритетыИзлишняя специализация ролейНесоответствие процессовЗакостеневший менеджментОрганизационные проблемыБедная документацияНеэффективные руководства по разработкеНеэффективное моделирование www.cmcons.com
  3. 3. ЭВОЛЮЦИОННАЯРАЗРАБОТКА www.cmcons.com
  4. 4. Техники эволюционной разработкиЭволюционное МоделированиеРегрессионное тестированиеРефакторинг баз данныхКонфигурационное управление баз данныхИспользование личных рабочих пространств дляразработки www.cmcons.com
  5. 5. ЭВОЛЮЦИОННОЕМОДЕЛИРОВАНИЕ www.cmcons.com
  6. 6. Принципы эволюционного моделирования• Предполагать простоту• Содержание является более важным, чем представление• Принять изменения• Учитывать будущие потребности• Инкрементальные изменения• Адаптация к локальным условиям• Модель с целью• Несколько моделей• Открытый и честный диалог• Качественная работа• Быстрая обратная связь• Программное обеспечение является основной целью• Идти налегке• Повторно использовать существующие ресурсы• Рассматривать возможность для тестирования www.cmcons.com
  7. 7. МОДЕЛИРОВАНИЕ БД СПОМОЩЬЮ UML www.cmcons.com
  8. 8. Use Casewww.cmcons.com
  9. 9. Sequence Diagram www.cmcons.com
  10. 10. Class Diagramwww.cmcons.com
  11. 11. Моделирование таблиц, сущностей и представлений www.cmcons.com
  12. 12. Стереотипы для моделирования таблиц, сущностей и представленийСтереотип Применение<<Aggregate>> Применяется в статистических таблицах, которые используются для хранения ненормализованные данных (часто для целей отчетности).<<Entity>> Необязательная нотация, которая подразумевает тип модели.<<Index>> Применяется для моделирования индекса, который реализует ключ таблицы реляционной базы данных. Это указывает на зависимость от индекса для таблицы или ключевого столбца, реализующего индекс.<<Lookup table>> Применяется к реляционным таблицам, которые используются для простого просмотра списков.<<Stored procedure>> Применяется к классу, который содержит только операционные подписи для хранимых процедур базы данных.<<Table>> Дополнительная нотация, которая подразумевается модельным типом.<<View>> Применяется, когда моделируются представления для таблицы. Указывается зависимость для каждой таблицы в определении представления. www.cmcons.com
  13. 13. Стереотипы для моделирования ключейСтереотип Применение<<AK>> Указывает, что столбец является частью альтернативного ключ, также известного как вторичный ключ для таблицы.<<Auto Generated>> Указывает, что значение столбца автоматически создается в базе данных.<<CK>> Указывает, что атрибут является частью потенциальным ключ сущности.<<FK>> Указывает, что столбец является частью внешнего ключа другой таблицы.<<Natural>> Указывает, что атрибут или столбец является частью естественным ключом.<<PK>> Указывает, что столбец является частью первичного ключа для таблицы.<<Surrogate>> Указывает, что столбец является суррогатным ключом. www.cmcons.com
  14. 14. Значения для ключейЗначение Применениеkey Показывает к какому ключу кандидат или альтернативный принадлежит столбец/атрибут. Когда столбец является частью нескольких ключей (например, если он является частью двух различных внешних ключей), то необходимо указать, какой имеется в виду. Во втором примере столбец является частью третьего альтернативного ключа. (key = FK; key = AK-3)order Указывает порядок, в котором атрибут проявляется, когда он является частью составного ключа. В этом примере столбец будет четвертый в ключе. (order = 4)table Указывает таблицу, на которую ссылается внешний ключ. Необязательное, потому что он часто может быть получено из диаграммы. www.cmcons.com
  15. 15. Моделирование ограничений и поведения физической модели данных www.cmcons.com
  16. 16. НОРМАЛИЗАЦИЯ ДАННЫХ www.cmcons.com
  17. 17. Зачем нужна нормализация? www.cmcons.com
  18. 18. Правила нормализацииУровень ПравилоПервая нормальная форма Первая нормальная форма (1НФ) требует, чтобы каждое поле таблицы БД было неделимым (атомарным) и не содержало повторяющихся группВторая нормальная форма Вторая нормальная форма (2НФ) требует, чтобы таблица удовлетворяла всем требованиям 1НФ, и чтобы любое не ключевое поле однозначно идентифицировалось его ключевым полемТретья нормальная форма Третья нормальная форма (3НФ) требует, чтобы таблица удовлетворяла всем требованиям 2НФ, и чтобы всего его поля напрямую зависели от ключевого поля www.cmcons.com
  19. 19. Первая нормальная форма www.cmcons.com
  20. 20. Вторая нормальная форма www.cmcons.com
  21. 21. Третья нормальная форма www.cmcons.com
  22. 22. РЕГРЕССИОННОЕТЕСТИРОВАНИЕ www.cmcons.com
  23. 23. TDDwww.cmcons.com
  24. 24. РЕФАКТОРИНГ www.cmcons.com
  25. 25. Рефакторинг в БДКатегории рефакторинга• Качество данных• Структурный• Архитектурный• Производительность• Ссылочная целостность• Рефакторинг методов www.cmcons.com
  26. 26. Сценарии рефакторинга www.cmcons.com
  27. 27. Шаги рефакторингаВыполнить рефакторинг в личной рабочей области • Убедитесь, что оптимизация кода базы данных требуется. • Выберите наиболее подходящий рефакторинг базы данных. • Определите потребности в очистке данных. • Напишите модульные тесты. • Обеспечьте период устаревания для первоначальной схемы. • Реализуйте изменения. • Обновите сценарии управления базой данных. • Выполнение тестирование регрессии. • Документируйте изменения. • Используйте управление версиями.Внедрить изменения в интеграционной области • Распространение изменений между разработчиками • Передача изменений на тестированиеВнедрить изменения в промышленную среду • Развернуть новые схемы базы данных • Развернуть затронутые изменениями приложения www.cmcons.com
  28. 28. www.cmcons.com

×