|
|
|
Как правльнее спроектировать модель БД на такую задачу? Задача: Управление распоряжениями.
|
|||
|---|---|---|---|
|
#18+
Всем привет! Занимаюсь базами данных не так давно, но и не мало… Учусь в университете… По учебному плану проектировали БД. Серьезные проекты или что то похожее не делал, потому и спрашиваю. Вот решил спроектировать информационную систему взяв за пример придуманную компанию предоставляющую услуги интернета, проводка локальных сетей, хостинг и прочее… Сотрудники: монтажник, бухгалтер, администрация, хостинг-админы, админы серваков... и т.п. Задача: Управление распоряжениями (т.е. распределение задач сотрудникам) Представляю себе так: Есть сотрудники обычные и Root-сотрудник который распределяет задания обычным. У каждого сотрудника есть собственный личный кабинет, в который они попадают по прохождению авторизации. В личном кабинете он может посмотреть: - свои данные (как в отделе кадров информация о сотруднике, личные сведения), - посмотреть ежедневные личные задания (выполненные, не выполненные). Root-сотрудник вечером или в любое время смотрит заявки клиентов или запросы других отделов и заполняя формы раздает задания… А сотрудник просыпается утром и смотрит в личном кабинете свои задания и идет выполнять их… Задания, наверное, должны иметь статусы (выполнено, не выполнено). По моим теоретическим знаниям прихожу к выводу что есть уже две сущности: - работники, - задачи. Связь между ними много ко многим (то есть одно задание могут выполнять много сотрудников) Таблица Сотрудники: {id_employe, name, sirname, birthday, … etc.} Таблица Задачи: {id_zadacha, tema, opisanie, otvetstvenni, begindate, enddate, status_vipolnenia, … etc.} Вопросы: 1. У кого-то был опыт создания таких баз данных? Можете показать для примера? :) 2. Как правильно связать эти таблицы? (как первый вариант думаю использовать в таблице Задачи атрибут который будет как внешним ключом из таблицы Сотрудники по id_employe) 3. Правильно ли я выразил сущности? Какие еще сущности могут быть? Не имею опыта создания БД отдела кадров… Таблица Сотрудники, должна ли дробиться? (при нормализации) Если да то как? 4. Как расширить таблицы? Bonus: И последнее, что не совсем важно… Можно ли сделать так, будут еще существовать задачи которые будут направлены ВСЕМ сотрудникам… то есть не будет ответственного. Но, какой то сотрудник увидев что задание он может выполнить может сделать так что он будет ответственным и нажав кнопочку взять задание оно уже будет как задание с ответственным. Прочитал многое, но все таки, когда ставлю перед собой задачу, то понимаю что не имея опыта представляю решение не правильно или размазано. Практики проектирования БД мало, хотя почти нету ее, потому что создавал простые пректы или же уже сделанные другими давно уже велосипеды… Для проектирования выбрал давно СУБД PostgreSQL… Заранее всем спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 17:54 |
|
||
|
Как правльнее спроектировать модель БД на такую задачу? Задача: Управление распоряжениями.
|
|||
|---|---|---|---|
|
#18+
Э, по описанию получается типовой Task/Issue Tracker ? Рецепт для ленивых: Возьмите демо-версию готового комм. продукта (типа JIRA, MOTIW, OnTime etc - подобных продуктов шо блох на собаке: http://www.project-management-software.org/ :) ) и проведите reverse engineering схемы БД ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 18:20 |
|
||
|
Как правльнее спроектировать модель БД на такую задачу? Задача: Управление распоряжениями.
|
|||
|---|---|---|---|
|
#18+
.gcЭ, по описанию получается типовой Task/Issue Tracker ? Рецепт для ленивых: Возьмите демо-версию готового комм. продукта (типа JIRA, MOTIW, OnTime etc - подобных продуктов шо блох на собаке: http://www.project-management-software.org/ :) ) и проведите reverse engineering схемы БД ээээ ))) извините, но в таких терминологиях... А что такое reverse engineering схемы БД? Я так понял надо посмотреть демо версии проектов и по ним построить схему логики БД? Но такое я не умею..... ) на самом деле сейчас посмотрел демо версии XBC, Motiw... но, вот не дано наверное что я смогу задачу обратную решить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 19:20 |
|
||
|
Как правльнее спроектировать модель БД на такую задачу? Задача: Управление распоряжениями.
|
|||
|---|---|---|---|
|
#18+
Посмотрите Mantis (mantisbt.org). Там и демка есть, и исходники, - проще ориентироваться в функционале. Практически готовое решение Вашей задачи. > Для проектирования выбрал давно СУБД PostgreSQL… Хороший выбор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 19:34 |
|
||
|
Как правльнее спроектировать модель БД на такую задачу? Задача: Управление распоряжениями.
|
|||
|---|---|---|---|
|
#18+
guest_20040621Практически готовое решение Вашей задачи. ) Спасибо! Просмотрю исходники... Но, просто я хочу сам что то сделать... ))) Так я думаю опыт получу... А то совсем практики нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 20:41 |
|
||
|
Как правльнее спроектировать модель БД на такую задачу? Задача: Управление распоряжениями.
|
|||
|---|---|---|---|
|
#18+
> хочу сам что то сделать Одно другому не мешает. sf.net, искать tracker+project, tracker+task, tracker+time etc. ПосмОтрите, какие акценты можно делать. И вообще, прежде, чем что-то делать, нужно основательно посмотреть, не сделал ли это кто-то до Вас. Уникальных задач очень мало. > опыт получу Опыт опыту рознь. Практика без теоретической подготовки - равно и наоборот - напрасно потраченное время. Посмотрите внимательнее: сначала Вы пишите о комплексной информационной системе, а потом ограничиваете работу менеджером задач. На самом деле собрать комплексную информационную систему даже из готовых продуктов - это не один человеко-год; правильная постановка задачи - 90% успеха. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 21:18 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=32&tid=1544840]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
162ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 431ms |

| 0 / 0 |
