Проектирование баз данных с помощью UML

Эрик Дж. Нейбург, Роберт А. Максимчук

UML for Database Design First Edition
Eric J. Naiburg, Robert A. Maksimchuk
книга Проектирование баз данных с помощью UML

Тираж данной книги закончился.
Введение

Обсуждение книги в блоге Виктора Штонда

В книге подробно рассматривается использование UML на всех этапах процесса проектирования баз данных: моделирование прецедентов и объектов деятельности, определение требований, анализ и предварительное проектирование, детальное проектирование, развертывание. Выбранная авторами нестандартная методика изложения материала позволяет читателю стать одним из участников реального проекта, рассматриваемого на протяжении всей книги, и, вместе с командой разработчиков баз данных, успешно решить проблемы, возникающие в процессе работы над этим проектом. Книга рассчитана на читателей с различным уровнем подготовки, интересующихся вопросами моделирования и проектирования приложений с помощью UML.

288 стр., с ил.; ISBN 5-8459-0355-6, 0-2017-2163-5; формат 70x100/16; мягкий переплетгазетнаясерия Объектные технологии; 2002, 4 кв.; Вильямс.



Понравилась книга? Порекомендуйте её друзьям и коллегам:







Книги, рекомендуемые вместе с этой книгой:

Раздел каталога:



Предисловие

Насколько проще была бы моя жизнь, если бы я все помнил.

Моя электронная записная книжка "трещит по швам" от бессчетного количества списков, таблиц, расписаний и документов, которые все вместе высчитывают, табулируют, измеряют и оценивают мою жизнь (просто удивительно, какая значительная часть моей жизни может поместиться в кармане рубашки). Электронная книжка время от времени синхронизируется с моим настольным компьютером, оснащенным 16-гигабитным накопителем, емкость которого позволяет сохранить не только информацию из электронного блокнота. В нем хранится гораздо большее количество списков, таблиц и документов. Настольный компьютер, в свою очередь, подключен к локальной сети, состоящей из дюжины машин, установленных у меня дома и на работе, и в каждой из них - не удивляйтесь - вы обнаружите еще большее количество списков, таблиц, расписаний (планов) и документов. Часть этой информации не структурирована, так как я еще не достаточно хорошо умею поддерживать XML-представление списков с разного рода данными. Несмотря на это, большая часть данных семантически глубоко структурирована и перемешана: информация по налогам, программы и связанные с ними артефакты, каталоги книг и журналов, ссылки на различные материалы для моих незавершенных рукописей и презентаций, каталоги компакт-дисков и соответствующие им списки файлов и т.д.

Если сделать шаг дальше за пределы локальной сети, где я еще могу что-то контролировать, то страшно подумать о том количестве информации, которую отдельные лица и организации хранят обо мне: документы с Web страниц, мои научные, военные и служебные записи, данные о налогах и т.д. Грубо говоря, всю мою цифровую жизнь можно сжать до нескольких гигабайт памяти. Если умножить этот объем памяти на несколько биллионов людей, сложить данные по всем другим, неличным источникам информации, то легко увидеть, что некоторым системам приходится обрабатывать терабайты и петабайты информации. С другой стороны, несмотря на все эти сложности, даже встроенные устройства должны уметь управлять семантически мощными по содержанию данными: например, вы будете поражены тем, с каким огромным количеством структурированных и правильно введенных данных должен работать кардиостимулятор.

Итак, практически каждая многофункциональная система управляет набором перманентных данных либо функционирует в окружении этих данных.

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

У Эрика и Роберта большой опыт в создании систем с интенсивной обработкой данных. Их опыт изложен в этой книге. Они написали полностью практичную книгу, в которой ответили на все перечисленные выше и многие другие важные вопросы. Кстати, о вопросах. Часто в команде среди проектировщиков баз данных и разработчиков приложения возникают разногласия по поводу различных определений одних и тех же понятий. Но, как показывают авторы книги, использование унифицированного языка моделирования (UML) кардинально меняет ситуацию и позволяет разным группам эффективно взаимодействовать друг с другом. Разработка систем - это, без сомнения, результат работы нескольких команд разработчиков, и поэтому интеграция частей, предназначенных для обработки большого количества данных, с частями многофункциональных систем, является критической.

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

Гради Буч,

руководитель корпорации Rational Software,

апрель 2001

Вступление

Для профессиональных разработчиков баз данных эта книга представляет практическое руководство по использованию унифицированного языка моделирования (UML) в процессе проектирования базы данных. Книга адресована тем, кто проектирует реальные объекты, практичные и действующие базы данных, разрабатывает реальные системы, отвечающие современным потребностям делового мира.

В книге Проектирование баз данных с помощью UML основное внимание уделяется вопросам, которые наиболее часто задают опытные разработчики баз данных:

  • Можно ли использовать UML в процессе проектирования реальных баз данных?
  • Можно ли адаптировать UML под свой конкретный процесс?
  • Как команде проектировщиков баз данных перейти к проектированию с использованием UML?
  • Каким образом обе команды - разработчиков баз данных и разработчиков приложения - могут использовать UML при совместном проектировании приложений?

Метод изложения материала

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

Краткое содержание глав

Глава 1 - Введение

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

Глава 2 - Проектирование баз данных от определения требований до реализации

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

Глава 3 - Бизнес-моделирование в процессе проектирования баз данных

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

Глава 4 - Определение требований

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

Глава 5 - Анализ и предварительное проектирование

В пятой главе описан переход из области бизнес-требований к логическому проекту системы и проекту базы данных.

Глава 6 - Переход к модели базы данных. Подготовка

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

Глава 7 - Модели базы данных - UML-профиль для проекта базы данных

В седьмой главе приводится UML-профиль для проекта базы данных, разработанный корпорацией Rational Software.

Глава 8 - Реализация физических аспектов базы данных

В восьмой главе рассматриваются физические компоненты проекта базы данных.

Глава 9 - Подведение итогов

В девятой главе ("постскриптум") обсуждаются результаты использования UML в процессе проектирования базы данных для учебного примера.

Приложение А - UML-модели для EAB Healthcare, Inc.

В приложении А собраны все UML-модели, разработанные для проекта учебного примера.

Приложение В - Описания прецедентов

В этом приложении содержатся описания прецедентов из проекта учебного примера.

Благодарности

Благодарим Бога, без которого в этом мире ничего бы не было.

Приносим благодарность Полу Бекеру (Paul Becker), Джессике Кироне (Jessica Cirone), Элизабет Райан (Elizabeth Ryan) и Россу Венаблсу (Ross Venables) из Addison-Wesley, оказавших нам неоценимую помощь в создании этой книги.

Выражаем благодарность нашим рецензентам, которые направляли нас по правильному пути. Выражаем особую благодарность Майку Энглу (Mike Engle), одному из наилучших системных дизайнеров и профессионалу в объектном ориентировании. Его скрупулезный и жесткий технический подход значительно улучшил содержание книги.

Благодарим Джима Коналена (Jim Conallen), Кевина Келли (Kevin Kelly), Терри Куатрани (Terry Quatrani), Давору Горник (Davora Gornik), Джефа Хаммонда (Jeff Hammond) и Стива Рабучина (Steve Rabuchin) за ценные советы.

Огромная признательность Лизе Конели (Lisa Connelly) и Мери Сисализ (Mary Cicalise), создавших Эрику благоприятные условия для осуществления задуманного, а также Эду Маклафлину (Ed McLaughlin), благодаря которому авторам удалось накопить знания и опыт для написания этой книги.

Выражаем благодарность всем участникам команды моделирования данных в корпорации Rational Software. Вместе с ними мы смогли доказать разработанные представления и реализовать их на практике. В команде работали Хонг Ли Ю (Hong Lee Yu), Скот Шнайдер (Scott Schneider), Вил Лайонс (Will Lyons), Томми Фэнон (Tommy Fannon), Кингсли Вуд (Kingsley Wood), Барбара Эванс (Barbara Evans), Ларри Дюнелл (Larry Dunnell), Брайен Лим (Brian Lim), Бонни С.Джон (Bonnie St.John), Дебора Форд (Deborah Ford), Дер Пинг Чоу (Der Ping Chou), Дуглас Роб (Douglas Robb), Герман Колвалкар (Hermant Kolwalkar), Рон Деволф (Ron DeWolfe), Роза Росарио (Rose Rosario), Сьюзан Анстей (Susan Anstey), Тереза Доулинг (Teresa Dowling), Ксиангмин Ванг (Xiangmin Wang), Ксианг (Эприл) Ли (Xiang (April) Li), Ви Гао (Yi Gao) и Зо Лин (Zoe Lin).

И выражаем особую благодарность Гради Бучу (Grady Booch) и Джиму Румбаху (Jim Rumbaugh).

Контакты

Будем признательны за Ваши отклики на книгу. Все свои вопросы и комментарии отправляйте, пожалуйста, по электронной почте [email protected] либо посетите наш web-сайт http://[email protected].


Copyright © 1992-2019 Издательская группа "Диалектика-Вильямс"

Rambler  Top100