На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается для обсуждения вопросов использования баз данных, за исключением составления запросов на SQL. Для этого выделен специальный раздел. Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Chow, Bas, MIF
  
> Помогите, пожалуйста c ER-моделью , нужна помощь в создании er модели
    ТЗ.
    Проектная организация представлена следующими категориями сотрудников: конструкторы, инженеры, техники, лаборанты, прочий обслуживающий персонал, каждая из которых может иметь свойственные только ей атрибуты. Например, конструктор характеризуется числом авторских свидетельств, техники - оборудованием, которое они могут обслуживать, инженер или конструктор может руководить договором или проектом и т.д. Сотрудники разделены на отделы, руководимые начальником, причем каждый сотрудник числится только в одном отделе.
    В рамках заключаемых проектной организацией договоров с заказчиками выполняются различного рода проекты, причем по одному договору может выполняться более одного проекта, и один проект может выполняться для нескольких договоров. Суммарная стоимость договора определяется стоимостью всех проектных работ, выполняемых для этого договора. Каждый договор и проект имеет руководителя и группу сотрудников, выполняющих этот договор или проект, причем это могут быть сотрудники не только одного отдела. Проекты выполняются с использованием различного оборудования, часть которого приписано отдельным отделам, а часть является коллективной собственностью проектной организации, при этом в процессе работы оборудование может передаваться из отдела в отдел. Для выполнения проекта оборудование придается группе, работающей над проектом, если это оборудование не используется в другом проекте.
    Для выполнения ряда проектов подрядная организация может привлекать субподрядные организации, передавая им объемы работ.
    Ведется учет кадров, учет выполнения договоров и проектов, стоимостной учет всех выполненных работ.

    user posted image

    у меня получается пока так, никак не могу додумать дальше как запихать субподрядные организации и как определить кто будет руководителем проекта, им может быть либо инженер либо конструктор. Строго не судите студент первый курс, только учусь.
      Цитата
      - Нужна СУБД.
      - А для чего?
      - А потом решим!

      По сабжу - задачка явно не для одиночки-первокурсника.
        Цитата #SI# @
        По сабжу - задачка явно не для одиночки-первокурсника.

        Лабораторная работа на все лето, задали на первом курсе. СУБД не имеет значения от нас требуется только ER модель. Делаем в ERwine но по сути мне без разницы где, мне главное смысл понять. Саму базу мы будем создавать в следующем году. каждому дали по варианту и срок лето чтобы сделали, откладывать просто не охото, по этому и пытаюсь нарисовать, в целом почти получилось вечером скину если правильно думаю скажете.
        Сообщение отредактировано: vachudinov -
          Цитата vachudinov @
          по сути мне без разницы где, мне главное смысл понять
          А смысл в том, что СУБД должна проектироваться для решения КОНКРЕТНОГО круга задач, а не как свалка информации! Какие задачи у тебя - непонятно.
          Сообщение отредактировано: #SI# -
            Цитата #SI# @
            А смысл в том, что СУБД должна проектироваться для решения КОНКРЕТНОГО круга задач, а не как свалка информации! Какие задачи у тебя - непонятно.

            Задача у меня такая:
            Лабораторная работа "Создание ER модели". Вариант 10. все что дальше в первом посту.

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

              его ER модель:
              user posted image

              Просто по моему у него немного другие связи и по мне так проще, но могу ошибаться, т.к. почти всегда кажется что другим дают легче чем мне.
                Цитата vachudinov @
                никак не могу додумать дальше как запихать субподрядные организации

                Не понятно где в приведенной модели организация.
                  Цитата Bas @

                  Не понятно где в приведенной модели организация.


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

                    Добавлено
                    Сотрудники не состоят в отелах, они сами по себе?

                    Добавлено
                    Начальник над чем ?

                    Добавлено
                    Группа это лица или отделы, может ли группа нанимать субподрядчика?
                      Цитата vachudinov @
                      по моей логике всё вместе и есть организация в которой есть сотрудники, которые делятся на инженеров, техников и т.д., которые делятся на отделы и выполняют работу, которая состоит из проектов и договоров
                      Годится для отдела кадров.
                      Цитата vachudinov @
                      В рамках заключаемых проектной организацией договоров с заказчиками выполняются различного рода проекты
                      А вот для ЭТОГО уже не годится.
                      Цитата Bas @
                      Связывай с таблицей "работа".
                      Очевидно - да. Мастер-таблица - список проектов, выполняемых конторой.
                        Цитата Bas @
                        Сотрудники не состоят в отелах, они сами по себе?

                        сотрудники состоят в отделах, я же для этого в сотрудниках FK сделал.
                        Цитата Bas @
                        Начальник над чем ?

                        начальник отдела.
                        Цитата Bas @
                        Группа это лица или отделы, может ли группа нанимать субподрядчика?

                        группа это группа сотрудников выполняющих какой либо определенный проект/договор.
                        Цитата #SI# @
                        Годится для отдела кадров.

                        в моем случае это лабораторная, по этому не понимаю к чему это.
                        Цитата #SI# @
                        А вот для ЭТОГО уже не годится.

                        почему?
                        Цитата Bas @
                        Связывай с таблицей "работа".

                        я так и сделал в итоге, сейчас вот до конца правлю нужные поля в каждой таблице, но чтото мне кажется что не правильно всё это. доделаю еще пару дней наверно и отрисую тут, может кто увидит очевидные ошибки.
                        П.С. меня еще смущает что у меня по идее в ER модели, в талице работа там и договора и проекта как связующая это таблица, но субподрядчики из ТЗ могут выполнять только проекты, опять таки проекты связаны с договорами, в этом и одна из самых больших проблем у меня связывать с проектами с одной стороны требуется по условию, с другой стороны у меня есть таблица работа.
                        Так же пока не могу понять как учесть то что руководителем группы может либо инженер либо конструктор, как это выделить в ER модели мне не понятно, в самой то таблице можно и ограничения наложить а тут не знаю.
                        Сообщение отредактировано: vachudinov -
                          Цитата vachudinov @
                          сотрудники состоят в отделах, я же для этого в сотрудниках FK сделал.

                          увы, первую картинку не видел. Не рисуется она.
                          1. где постановка задачи? где "словарь"?
                          "Сотрудник" "числиться" в "отделе"
                          Понятно что сотрудник и отдел сущности, состоит - связь. Далее вопрос к атрибутике. Что нужно от сотрудника что от отдела , что от "состоит"
                          Настоятельно рекомендую начать с простого описания словами всех отношений в биде а потом уже обвешивать их атрибутами

                          Следующее что надо решить - договор это сущность или связь? Случаются ли допсоглашения к договору? Нужно ли видеть историю изменения договора?

                          ну и так далее и тому подобное
                            Цитата Павел Калугин @
                            Понятно что сотрудник и отдел сущности, состоит - связь. Далее вопрос к атрибутике. Что нужно от сотрудника что от отдела , что от "состоит"
                            Настоятельно рекомендую начать с простого описания словами всех отношений в биде а потом уже обвешивать их атрибутами

                            Следующее что надо решить - договор это сущность или связь? Случаются ли допсоглашения к договору? Нужно ли видеть историю изменения договора?

                            ну у меня кроме того ТЗ что в первом посту ничего нет, соответственно отталкиваться надо от этого, про допсоглашения если не сказано наверно отсутствуют, атрибутами навешиваю случайными как и сказано тут главное нарисовать модель. всё остальное появится на следующей лабораторной, как я понял у нас будет 10-ть последовательных лабораторных постоянно усложняющих этот вариант.
                              Одел может состоять из сотрудников.
                              Отдел может выполнять определенный вид работ.
                              В отдели IT не нужен шевинговальный станок.
                              Лишнии таблицы "constructor,tehnik,enjiner,other,laborant, nacalnik" - заменяем словарем(справочником) где указываем должность и связываем с сотрудниками.
                              Все остальные различия между "constructor,tehnik,enjiner,other,laborant, nacalnik" суем в дополнительные сведения
                                Цитата Bas @
                                Все остальные различия между "constructor,tehnik,enjiner,other,laborant, nacalnik" суем в дополнительные сведения

                                Спасибо огромное, не подумал почему то о такой возможности.
                                Цитата Bas @
                                Отдел может выполнять определенный вид работ.
                                В отдели IT не нужен шевинговальный станок.

                                просто у меня в задании отделы вообще никакие работы не делают, делают группы сотрудников которые могут состоять в каких то отделах, и по оборудованию, оборудование может числиться за каким то определенным отделом либо быть общим, в этом случае если оборудование общее (шевинговальный станок)оно же будет числиться за всеми отделами включая и IT отдел или я где то не прав?
                                  Цитата Павел Калугин @
                                  увы, первую картинку не видел. Не рисуется она.
                                  1. где постановка задачи? где "словарь"?
                                  "Сотрудник" "числиться" в "отделе"
                                  Понятно что сотрудник и отдел сущности, состоит - связь. Далее вопрос к атрибутике. Что нужно от сотрудника что от отдела , что от "состоит"
                                  Настоятельно рекомендую начать с простого описания словами всех отношений в биде а потом уже обвешивать их атрибутами

                                  Следующее что надо решить - договор это сущность или связь? Случаются ли допсоглашения к договору? Нужно ли видеть историю изменения договора?

                                  ну и так далее и тому подобное


                                  + люто плюсую! :lol:

                                  Черновая "постановка задачи" есть. Теперь нужно составить список терминов. Далее нужно термины описать так, чтобы не было дублей и/или неоднозначных трактовок. Далее, термины нужно раскидать в таблицы и связи. Для этого делаем многократный скан нашего списка терминов и строим от "простого" к "сложному".

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

                                  vachudinov, нижняя часть на твоем рисунке в глаза бросается сразу. Не нужно без необходимости плодить таблицы! Лучше обобщать и наделять описательным атрибутом. "Лаборант" от "Техника" отличается набором выполняемых функций. В этом контексте это решается связкой "должности-функции" и размещается в трех таблицах.

                                  Ну и напоследок, ИМХО, оч важная и оч забываемая проблема - версионность! Подробнее на примере ... Поле "Фамилия" - это не просто поле VARCHAR в "Карточке Сотрудника", как делается достаточно часто. Фамилия может меняться со временем. И это не какое-то необычное явление, это жысть. И уже потом, в процессе эксплуатации БД, могут возникать вопросы "А сколько же закрытых проектов, в которых участвовала Петрова Глафира Никодимовна?" ... А она за все время ведения БД пять раз меняла фамилию... Нюансик :)
                                    vachudinovначал рассматривать картинку. Для первого опыта терпимо. Теперь надо выбросить и делать по новой.
                                    Да, задание от препода минималистично, но то она и лаба. Теперь Ваша задача нарастить "мясо" то есть детализировать постановку.
                                    Договор порождает проект проект порождает работу. Может ли договор породить работу напрямую? Не лучше ли термин работа заменить на задача?
                                    Какой будет жизненный цикл самого договора? Что произойдет с договором если проект не завершен в срок? Как определить, что проект завершен? И много много вопросов на которые надо дать ответы в простой письменной форме. Подскажу сразу кроме задач в проекте будут проблемы. Решением проблемы всегда будет новая задача. Так же в проекте всегда будут контрольные точки(вехи). Пока у проекта нет ответственного исполнителя он не проект. То же самое касается задачи и проблемы.
                                    Это только по маленькой части Вашей задачи.
                                    Так что вперед за перо и бумагу и делать детальную постановку.

                                    Добавлено
                                    JoeUser Перечтите Дейта. Пожалуйста.
                                      Цитата Павел Калугин @
                                      JoeUser Перечтите Дейта. Пожалуйста.

                                      Что именно там мне читать?
                                        Цитата JoeUser @
                                        + люто плюсую!

                                        Так пойдет?
                                        Сообщение отредактировано: Bas -

                                        Прикреплённый файлПрикреплённый файлer.png (28,56 Кбайт, скачиваний: 503)
                                          Цитата Bas @
                                          Так пойдет?

                                          Не не, Bas, картинку я вижу норм. Плюсовал за "1. где постановка задачи? где "словарь"?". Просто ТС еще не определился с сущностями и связями, а уже в графику залез. А про нормализацию вообще ни слова.
                                            Цитата vachudinov @
                                            если оборудование общее (шевинговальный станок)оно же будет числиться за всеми отделами включая и IT отдел или я где то не прав?

                                            В жизни станок имеет хозяина, который числится в отделе (сотрудник) а станок закреплен за отделом. Чтобы сделать шестиренку не обязательно конструктору знать тонкости настройки гитары шевинговального станка, ему достаточно знать какая нужна шестиренка и как она будет работать в коробке передач.
                                            Цитата vachudinov @
                                            В рамках заключаемых проектной организацией договоров с заказчиками выполняются различного рода проекты, причем по одному договору может выполняться более одного проекта, и один проект может выполняться для нескольких договоров.

                                            Тут надо расшифровать, договор->проекты или проект->договора. Отношение один ко многим или один к одному.
                                            Проект может выполнятся без договора, сразу работа? И в редких случаях состаляется договор?
                                            Добавлено
                                            Цитата JoeUser @
                                            Просто ТС еще не определился с сущностями и связями, а уже в графику залез. А про нормализацию вообще ни слова.

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

                                            Добавлено
                                            Цитата JoeUser @
                                            Поле "Фамилия" - это не просто поле VARCHAR в "Карточке Сотрудника", как делается достаточно часто. Фамилия может меняться со временем. И это не какое-то необычное явление, это жысть. И уже потом, в процессе эксплуатации БД, могут возникать вопросы "А сколько же закрытых проектов, в которых участвовала Петрова Глафира Никодимовна?" ... А она за все время ведения БД пять раз меняла фамилию... Нюансик

                                            Ну ты иначал так глубоко копать, запутаешь парня. Можно еще вспомнить что по религиозным соображения отказываються получать паспорт с ИНН(IDNO/фискальный код) , также и пол может сменить ..... :crazy: Из техника стать конструкторм(инженером), в разных проектах..... :oops:
                                            Сообщение отредактировано: Bas -
                                              Цитата Bas @
                                              Ну ты иначал так глубоко копать, запутаешь парня. Можно еще вспомнить что по религиозным соображения отказываються получать паспорт с ИНН(IDNO/фискальный код) , также и пол может сменить ..... Из техника стать конструкторм(инженером), в разных проектах.....

                                              Ну так это нормально. Поэтому есть карточка сотрудника с его табельным номером. причем одному табельному номеру в разное время могут соответствовать разные ФИО, пол и ДУЛ (документ удостоверяющий личность)
                                              Есть оргструктура предприятия. Занимает должность - это связь с атрибутами указывающими в какой период времени табельный номер связан с адюком в штатной структуре и айдюком в справочнике должностей.
                                              Чем тут запутать парня то?

                                              Цитата JoeUser @
                                              Что именно там мне читать?

                                              Все... ;) Введение в структуры баз данных

                                              Цитата Bas @
                                              Графика наглядней. Тем более базу будут толко на следующем курсе делать. Вот тогда , наверное, начнут изучать классику "нормальные формы отношений" (хотябы первые три)


                                              Графика это хорошо, но сначала процессы. Ка кживет договор, как живет сотрудник, и т.д. и т.п. Главное в результате место лабы не изваять промышленную ERP систему :)
                                                Скрытый текст
                                                Цитата Павел Калугин @
                                                Все... ;) Введение в структуры баз данных

                                                Ндааа ... высокомерия не занимать. Ну чтож, не буду мешать самолюбованию :lol:
                                                  Таки 13 лет когда-то в КБ отработал. Реальная схема была примерно такая:
                                                  - договор на выполнение работы (работ)
                                                  - ГИП (главный инженер проекта)
                                                  - состав проекта
                                                  - отделы, выполняющие проект
                                                  - сотрудники отделов, участвующие в проекте
                                                  - этапы, сроки етс...
                                                  Цитата Павел Калугин @
                                                  Есть оргструктура предприятия
                                                  Это сама по себе - уже приличная СУБД! Как раз со сменой пола, фамилии и прочих причиндалов! Полагаю, что ТС надо или уточнить у (консультанта...препода...) надо ли ему лезть в ЭТИ дебри, или пока на это дело можно плюнуть и считать сотрудников просто константами из некоего словарика.
                                                    #SI# так и я про тоже. Описать процессы и упростить до уровня лабы... А то если все полностью делать то по объему на 5 дипломов потянет
                                                      ... или на кандидатскую...
                                                        #SI# не потянет. требованиям ВАКа не соответствует задача
                                                        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                        0 пользователей:


                                                        Рейтинг@Mail.ru
                                                        [ Script execution time: 0,0653 ]   [ 18 queries used ]   [ Generated: 28.03.24, 19:44 GMT ]