проектирование базы данных рабочего процесса mysql - PullRequest
0 голосов
/ 09 апреля 2011

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

Сотрудники будут делать запросы в этой системе.Такие запросы перемещаются из офиса в офис.Например, рабочий процесс проблемы x может быть следующим:

  1. Сотрудник публикует проблему, для которой я определил категорию
  2. Проблема направляется в первый отдел, определенный в работепоток
  3. После утверждения он направляется во второй отдел, определенный в рабочем процессе

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

Извините за длинный вопрос.предложения, рекомендации, просьба о разъяснении приветствуется.

1 Ответ

2 голосов
/ 09 апреля 2011

Не написание системы занимает меньше времени, чем на написание.

Рассматривали ли вы готовые системы рабочего процесса? Существует множество BPM-решений, которые будут очень хорошо выполнять то, что вы описываете.

Отслеживание проблемы? Вы думали только об использовании JIRA или Bugzilla или что-то подобное?

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

Я на время забуду о таблицах и просто подумаю о проблеме более абстрактно. Я вижу ряд значимых сущностей в вашем утверждении:

  1. рабочий
  2. Задача
  3. работник
  4. отдел

Я также представляю некоторые другие элементы, которые могут быть полезны в вашем решении:

  1. очередь для каждого сотрудника для принятия и определения приоритетов входящих задач
  2. механизм, позволяющий подключаться к системе как пользователям компьютеров, так и пользователям.
  3. возможность аудита для отслеживания прохождения задач в целях обеспечения соответствия и отладки
  4. механизм оповещения для уведомления пользователей о завершении задачи
  5. планировщик, позволяющий регулярно добавлять задачи

Вам нужно много подумать, прежде чем вы даже начнете думать о столах. Я бы порекомендовал сделать это первым.

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

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