powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Из объктной модели в модель данных
32 сообщений из 32, показаны все 2 страниц
Из объктной модели в модель данных
    #35044387
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток. Разбираюсь в проектировании и очень хочу услышать вашего мнения по следующему вопросу.
Предметная область простая - хранение данных по резульататм тестирования студентов. Вот диграмма классов.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044392
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбрал тип связи - композиция на основании определения: Композиция эта форма агрегации, при которой части принадлежат целому, причем время жизни частей совладает со временем жизни композита.
Правильно ли я понял определение, указав такие связи?
При создании модели данных, композиция представляется в идентифицирующую связь, возникает вот такая петрушка. Подскажите что не так.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044397
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Доброго времени суток. Разбираюсь в проектировании и очень хочу услышать вашего мнения по следующему вопросу.
Предметная область простая - хранение данных по резульататм тестирования студентов. Вот диграмма классов.

Так не тяните с вопросом. Задавайте.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044399
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Класс "Результат тестирования" получается частью двух классов, "Тест" и "Студент", без которых он не может существовать. Но в определени комозиции также говорится, что часть может принадлежать только одному композиту.
И мне ненравится миграция первичного ключа в таблицу "Результат тестирования" в результате идентифицируеший связи.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044403
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123
И мне ненравится миграция первичного ключа в таблицу "Результат тестирования" в результате идентифицируеший связи.
Имею в виду поле "Номер группы"
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044406
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Выбрал тип связи - композиция на основании определения: Композиция эта форма агрегации, при которой части принадлежат целому, причем время жизни частей совладает со временем жизни композита.
Правильно ли я понял определение, указав такие связи?
При создании модели данных, композиция представляется в идентифицирующую связь, возникает вот такая петрушка. Подскажите что не так.

Понятно. А чем Вас первая картинка не устроила? Зачем Вам вторая?
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044409
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первая - диаграмма классов, вторая ER-диаграмма
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044417
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Класс "Результат тестирования" получается частью двух классов, "Тест" и "Студент", без которых он не может существовать. Но в определени комозиции также говорится, что часть может принадлежать только одному композиту.
И мне ненравится миграция первичного ключа в таблицу "Результат тестирования" в результате идентифицируеший связи.

Да, неприятный получился результат тестирования "результата тестирования". Здесь нужен специалист по тому инструменту, который Вы использовали. Очевидно, что здравого смысла в этом инструменте нет (поскольку объектная модель данных не требует "перехода в модель данных"), но специалист ответит как его "насадаить", тем не менее.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044419
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Первая - диаграмма классов, вторая ER-диаграмма

А зачем Вы применяете такую технологию - в чем смысл?
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044432
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сначала анализ предметной области, моделирование бизнесс процессов, вариантов использования, потом выявление классов и их связей - для ООП. Потом модель данных для реализции реляционной БД.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044435
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Сначала анализ предметной области, моделирование бизнесс процессов, вариантов использования, потом выявление классов и их связей - для ООП. Потом модель данных для реализции реляционной БД.

Эта популярная технология понятна. Не понятно в чем ее смысл. Вот видите на первом же элементарном примере возникают вопросы. В общем Вам ничего не остается, как ждать специалиста по этой технологии, не имеющей никакого отношения к проектированию и использованию баз данных.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044442
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. вы считаете использование такой технологии бесмысленной? Я только начинаю понимать её суть, хоть базами данных (MS SQL и ORACLE) занимаюсь уже года 3. Стоит ли вообще продолжать, или её использование приводит только к проектированию ради проектирования?
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044448
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Т.е. вы считаете использование такой технологии бесмысленной? Я только начинаю понимать её суть, хоть базами данных (MS SQL и ORACLE) занимаюсь уже года 3. Стоит ли вообще продолжать, или её использование приводит только к проектированию ради проектирования?

Вы три года проектировали БД MS SQL и ORACLE без "этой технологии"?
Результат Вас не удовлетворил?
Чем?
Что улучшит использование еще одной модели над "базовой моделью" MS SQL и ORACLE?
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044453
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Результат меня удовлетворил. Просто написание дипломной работы столкнуло с проектированием по такой технологии, которая меня заинтерисовала. Хочу разобраться и понять.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044464
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Результат меня удовлетворил. Просто написание дипломной работы столкнуло с проектированием по такой технологии, которая меня заинтерисовала. Хочу разобраться и понять.

Это - разобраться и понять - безусловно правильно. Успехов.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044471
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Если-бы ещё кто-то немного помог ответом, было-бы совсем замечательно.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044475
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Спасибо. Если-бы ещё кто-то немного помог ответом, было-бы совсем замечательно.

По конкретному продукту - да. Но Вас же технологии интересуют. А в этой области "ответ" не поможет, а, в лучшем случае, не навредит.
Кто-нибудь наверняка немного поможет, тем не менее...
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044555
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей. Тест является просто некоторым измерением, координатой х по которой оценивается студент. Поэтому тест не агрегирует результаты теста. Но говоря это я имею в виду систему ориентированную на анализ успеваемости студента. Может быть другой (-ие) случай. Например, статистический анализ валидности теста. Тогда тест будет ведущей сущностью, а студент - мыслится по-другому - не могу сходу сказать как. Все идет от конкретики задачи.

Если сказать просто - уберите агрегирование результатов теста в тестах.
Если сказать правильно - любая реальная задача имеет некотороую сложность и повод задуматься. Ваша задача учебная и поэтому немного аморфная.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044581
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
apapacyАлексей. Тест является просто некоторым измерением, координатой х по которой оценивается студент. Поэтому тест не агрегирует результаты теста. Но говоря это я имею в виду систему ориентированную на анализ успеваемости студента. Может быть другой (-ие) случай. Например, статистический анализ валидности теста. Тогда тест будет ведущей сущностью, а студент - мыслится по-другому - не могу сходу сказать как. Все идет от конкретики задачи.

Если сказать просто - уберите агрегирование результатов теста в тестах.
Если сказать правильно - любая реальная задача имеет некотороую сложность и повод задуматься. Ваша задача учебная и поэтому немного аморфная.
Спасибо большое за ответ. Кажется я понимаю, может быть два виденья системы. В одном студент агрегирует результаты, в другом тест. Выбрать надо более подходящий.
Остался второй вопрос. Если группа агрегирует студентов, а студент агрегирует результаты, в сущности "Результат тестирования" появляется первичный ключ "Номер группы" по правилу представления композиции в идентифицирующую связь. Который уж никак не хочется там видеть, ведь в сущности "Студент" достаточно первичного ключа "Номер студенческого", он является сквозным уникальным значением.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044585
Leshij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как-то привычнее жить с суррогатными ключами, но раз ты взял
естественные...

Почему номер студбилета не может один, без номера группы, работать
первичным ключем?
[достает студенческий из куртки] Он ведь такой длинный :)
Ну если все-таки не может, то все нормально -- составной ключ мигрирует в
ссылающуюся таблицу, и никакого нарушения тут нет, опять же, если
выполняется условие (см выше).

Ну и по второй картинке: Имя VARCHAR(1)? Отчество SMALLINT??? Да и для
фамилии 50 символов мало. Мало ли какие фамилии бывают...
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044592
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leshij
Как-то привычнее жить с суррогатными ключами, но раз ты взял
естественные...

К суррогатным я тоже привык, но они тоже мигрируют. :)

Leshij
Почему номер студенческого билета не может один, без номера группы, работать
первичным ключом?
[достает студенческий из куртки] Он ведь такой длинный :)

Может конечно, вопрос о идеологии проектирования. Если студент связан с группой композицией, то идентифицирующая связь и мигрирует ключ.

Leshij
Ну если все-таки не может, то все нормально -- составной ключ мигрирует в
ссылающуюся таблицу, и никакого нарушения тут нет, опять же, если
выполняется условие (см выше).

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

Leshij
Ну и по второй картинке: Имя VARCHAR(1)? Отчество SMALLINT??? Да и для
фамилии 50 символов мало. Мало ли какие фамилии бывают...

Уж простите за оплошности.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044598
Румата
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей, а что ты хотел получить изначально? Т.е. нарисуй модельку с первичными и внешними ключами руками, а не то, что предлагает ERWIN(или какой программой пользовался?)

Ведь вроде по смыслу Студент и Тест должны быть связаны "многие-ко-многим" через промежуточную таблицу, которая помимо первичных ключей из этих двух таблиц, будет еще иметь оценку за тест(кстати, а попробуй именно эту связь указать в программе для проектирования, может все нормально и будет)
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044608
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
РуматаАлексей, а что ты хотел получить изначально? Т.е. нарисуй модельку с первичными и внешними ключами руками, а не то, что предлагает ERWIN(или какой программой пользовался?)

Ведь вроде по смыслу Студент и Тест должны быть связаны "многие-ко-многим" через промежуточную таблицу, которая помимо первичных ключей из этих двух таблиц, будет еще иметь оценку за тест(кстати, а попробуй именно эту связь указать в программе для проектирования, может все нормально и будет)

Это Rational Rose с использованием Data Modeler. Если не занимать проектированием по правилам то я бы эту задачу решил так, с использованием суррогатных ключей. В сущности "Результат тестирования" ключ "ИД Результата" необходим так как в один день, по одному тесту может протестировать один студент два раза.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044609
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35044611
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу прощения, вот диаграмма.
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35045286
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никто не строит из объектной модели модель данных?
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35045384
Румата
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Никто не строит из объектной модели модель данных?

Строят... Просто в данном случае, может проблема в инструменте?

Что требуется? Как я понимаю, схема дана вот здесь :

Alexey123
Сначала анализ предметной области, моделирование бизнесс процессов, вариантов использования, потом выявление классов и их связей - для ООП. Потом модель данных для реализции реляционной БД.


1. Анализ предметной области.

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

2. Бизнес-процесс: прохождение теста. Описан чуть выше.

3. Использование. Тут описывается возможные варианты - прохождение тестов с целью проверки текущей успеваемости, прохождение аттестационных тестов и т.д.

4. Из анализа предметной области вытекают следующие классы : студент, группа, тест, контейнер пройденных тестов. Связи - очевидны

5. Модель данных для РБД : 4 таблицы.

Да, есть специальные инструменты для выполнения всего этого разом... Но можно ведь и по отдельности сделать... И каждый пункт хоть в Ворде описывать и строить...
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35045488
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо большое Румата за подробный ответ. Именно вот такой путь я пытаюсь пройти и разобраться.

РуматаДа, есть специальные инструменты для выполнения всего этого разом... Но можно ведь и по отдельности сделать... И каждый пункт хоть в Ворде описывать и строить...

Полностью с Вами согласен. Я использовал Rational Rose только как средство рисования диаграмм, можно было и на листочке ручкой рисовать, суть не в инструменте. Просто изучаю проектирование естественно по литературе, а в ней описываются различные правила, которым нужно следовать, на подобии представлении композиции в идентифицирующую связь. В результате я получил структуру БД, которая мне как программисту не нравится. Получается либо я что-то неправильно проектировал, либо следовать строго этим правилам не стоит? Отклонятся от них, если это позволит сделать систему лучше?
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35045533
Румата
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Спасибо большое Румата за подробный ответ. Именно вот такой путь я пытаюсь пройти и разобраться.
Полностью с Вами согласен. Я использовал Rational Rose только как средство рисования диаграмм, можно было и на листочке ручкой рисовать, суть не в инструменте. Просто изучаю проектирование естественно по литературе, а в ней описываются различные правила, которым нужно следовать, на подобии представлении композиции в идентифицирующую связь. В результате я получил структуру БД, которая мне как программисту не нравится. Получается либо я что-то неправильно проектировал, либо следовать строго этим правилам не стоит? Отклонятся от них, если это позволит сделать систему лучше?

Понимаешь, Алексей(можно на "ты" ? Мы вроде по возрасту не сильно отличаемся ), стоит следовать правилам и стоит читать литературу... Но стоит фильтровать то, что тебе говорят, четко осознавать то, что пишут...

Я так сходу даже не скажу, что такое "представление композиции в идентифицирующую связь", хотя все это тривиально...

Ты читал Дейта? Его книга изобилует такими понятиями, как, например, кортеж... Но более ведь употребимо что-то вроде выборки, строки... Хочешь - оперируешь одним понятием, хочешь - другим. Главное, заранее договориться, чем оперировать.

Да, в какой-то момент следует отклоняться от правил, если что-то не нравится. Если ты понимаешь, что не все так гладко, как описано в книге. Нельзя быть обыкновенным кодером, наша задача быть _думающими_ программистами.

PS. Мы не имеем права не прислушиваться к Дейту, но иногда мы имеем право заменить "кортеж" на что-то свое...
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35045543
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Румата, конечно можно на "ты" :)
К сожалению Дейта не читал, но если стоящее то обязательно почитаю. Для меня какими словами что называть тоже неважно, я больше практик, главное понять смысл и научится грамотно использовать. В некоторых книгах действительно пишут такими словами, что даже элементарные знакомые веши из уст автора кажется чем-то сверхъестественным. Вот и приходится искать ответ сразу в нескольких источниках, чтобы отфильтровать мысли автора от железных правил, заодно спросить у специалистов на форуме. )
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35045544
Румата
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey123Румата, конечно можно на "ты" :)
К сожалению Дейта не читал, но если стоящее то обязательно почитаю. Для меня какими словами что называть тоже неважно, я больше практик, главное понять смысл и научится грамотно использовать. В некоторых книгах действительно пишут такими словами, что даже элементарные знакомые веши из уст автора кажется чем-то сверхъестественным. Вот и приходится искать ответ сразу в нескольких источниках, чтобы отфильтровать мысли автора от железных правил, заодно спросить у специалистов на форуме. )

Дейт - классика жанра :) Посмотри, обязательно!

Да, и расскажи потом ,чем эпопея с дипломом закончится :)
...
Рейтинг: 0 / 0
Из объктной модели в модель данных
    #35045546
Alexey123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Румата

Дейт - классика жанра :) Посмотри, обязательно!

Да, и расскажи потом ,чем эпопея с дипломом закончится :)

Посмотрю, а что с диплом может случится? Напишу и защищу конечно!
...
Рейтинг: 0 / 0
32 сообщений из 32, показаны все 2 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Из объктной модели в модель данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]