Процесс на диаграмме потоков данных изображается как показано на рис. 3.
Номер процесса служит для его идентификации. В поле имени вводится наименование процесса в виде предложения с активным не двусмысленным глаголом в неопределенной форме (вычислить, рассчитать, проверить, определить, создать, получить), за которым следуют существительные в винительном падеже, например: «Ввести сведения о налогоплательщиках».
Использование таких глаголов, как «Обработать», «модернизировать», или «отредактировать» означает, как правило, недостаточно глубокое понимание данного процесса и требует дальнейшего анализа.
Информация в поле физической реализации показывает, какое подразделение организации, программа или аппаратное устройство выполняет данный процесс.
Накопитель данных – это абстрактное устройство для хранения информации, которую можно в любой момент поместить в накопитель и через некоторое время извлечь, причем способы помещения и извлечения могут быть различными.
Накопитель данных может быть реализован физически в виде микрофиши, ящика в картотеке, таблицы в оперативной памяти, файла на магнитном носителе и т.д.
Рис. 4 Графическое изображение накопителя данных
Накопитель данных на диаграмме потоков данных изображается, как показано на рис. 4.
Накопитель данных идентифицируется буквой «D» и произвольным числом. Имя накопителя выбирается из соображения наибольшей информативности для проектировщика.
Накопитель данных в общем случае является прообразом будущей базы данных, и описание хранящихся в нем данных должно соответствовать информационной модели.
Поток данных определяет информацию, передаваемую через некоторое соединение от источника к приемнику. Реальный поток данных может быть информацией, передаваемой по кабелю между двумя устройствами, пересылаемыми по почте письмами, магнитными лентами или дискетами, переносимыми с одного компьютера на другой.
Рис. 5 Поток данных
Поток данных на диаграмме изображается линей, оканчивающейся стрелкой, которая показывает направление потока (рис. 5). Каждый из потоков имеет имя, отражающее его содержание.
1.3 Спецификация структур данных
Таблица 1 «Рабочие»
Наименование поля | Тип | Размер | Ключ | Примечание |
Tab_nomer | Numeric | 3 | Primary | Первичный ключ |
Familiya | Char | 20 | Фамилия | |
Imya | Char | 20 | Имя | |
Otchestvo | Char | 20 | Отчество | |
Obrazovanie | Char | 40 | Образование | |
Professiya | Char | 40 | Профессия | |
Gorod | Char | 25 | Город | |
Ulica | Char | 25 | Улица | |
Dom | Numeric | 3 | № дома | |
Date_rogden | Date | 8 | Дата рождения |
Таблица 2 «Путевой лист»
Наименование поля | Тип | Размер | Ключ | Примечание |
№_pytev_lista | Numeric | 3 | Primary | Первичный ключ |
Tab_nomer | Numeric | 3 | Regular | Внешний ключ |
Marka | Char | 15 | Название автомобиля | |
Gos_znak | Char | 8 | Гос. номерной знак | |
ydovstoverenie | Char | 6 | № удостоверения | |
Organiz | Char | 25 | Наименование организации | |
Chislo | Numeric | 2 | Число | |
Mesyac | Char | 10 | Месяц | |
God | Numeric | 4 | Год | |
Zadanie_voditel | Char | 60 | Задание водителю | |
Kol_chas | Numeric | 2 | Количество отработанных часов | |
Rezultat | Char | 60 | Результат работы | |
Summa | Numeric | 4.2 | Сумма |
Таблица 3 «Наряд на сдельную работу»
Наименование поля | Тип | Размер | Ключ | Примечание |
Nomer_naryada | Numeric | 3 | Primary | Первичный ключ |
Tab_nomer | Numeric | 3 | Regular | Внешний ключ |
Mesyac | Char | 10 | Месяц | |
God | Numeric | 4 | Год | |
Otrab_dney | Numeric | 3 | Отработанно дней | |
Kol_chas | Numeric | 3 | Количество часов | |
Ocenka_rabot | Char | 30 | Оценка работы | |
Summa | Numeric | 4.2 | Сумма |
Таблица 4 «Расчетка»
Наименование поля | Тип | Размер | Ключ | Примечание |
tab_nomer | Numeric | 3 | Regular | № рабочего |
kol_chas | Numeric | 3 | Количество отработанных часов | |
summa_nachisl | Numeric | 4.2 | Сумма начисленная | |
uderganiya | Numeric | 4.2 | Удержания | |
summa_vudachi | Numeric | 4.2 | Сумма выдачи | |
nomer_pyt | Numeric | 3 | Regular | № путев. листа |
nomer_naryad | Numeric | 3 | Regular | Номер наряда |
key_nomer_raschet | Numeric | 3 | Primary | Первичный ключ |
1.4 Построение начальной контекстной диаграммы
Построим начальную контекстную диаграмму потоков данных в нотации Гейна – Сэрсона. Нарисуем нулевой процесс и присвоим ему имя системы (Система расчета оплаты труда). Поскольку моделируется деятельность бухгалтерии, внешними сущностями являются Бухгалтерия, Экономист, Рабочий, Администрация. Нарисуем внешние сущности и соединим их с нулевым процессом посредством потоков данных. Начальная диаграмма представлена на рис. 6.
Рис. 6 Начальная контекстная диаграмма
1.5 Построение концептуальной модели данных
Выделим и нарисуем сущности для каждого класса объектов данных в системе расчета оплаты труда. Рассмотрим каждую возможную пару сущностей и установим существование связи между ними. Нарисуем диаграмму «сущность-связь». Присвоим им наименование каждой связи и зададим ее характеристики. Концептуальная модель данных представлена на рис. 7.
Рис. 7 Концептуальная модель данных
1.6 Построение диаграммы потоков данных нулевого уровня
Декомпозируем начальную контекстную диаграмму. Декомпозируем сложные процессы и проверим соответствие различных уровней модели процессов. Опишем накопители данных посредством структур данных. Опишем процессы нижнего уровня посредством спецификаций. Результаты представлены на рис. 8 и рис. 9.
Рис. 8 Диаграмма потоков данных нулевого уровня
1.7 Описание накопителей данных
Накопитель данных – это абстрактное устройство для хранения информации, которую можно в любой момент поместить в накопитель и через некоторое время извлечь, причем способы помещения и извлечения могут быть различными.
Имя накопителя выбирается из соображения наибольшей информативности для проектировщика.
Рис. 9 Накопитель данных
1.8 Диаграмма системных процессов нулевого уровня
Рис. 10 Диаграмма системных процессов нулевого уровня
На диаграмме системных процессов нулевого уровня вместо отдельных процессов введены процессы – компьютеры. Внешние сущности на контекстной диаграмме заменяются или дополняются техническими устройствами (рабочими станциями, принтерами). Для каждого потока данных определяется, посредством каких технических устройств информация передается или производится.
Процессы на диаграмме нулевого уровня заменяются соответствующими процессами – обрабатывающими устройствами (процессорами могут быть, как и технические устройства – настольные компьютеры конечных пользователей, рабочие станции, серверы баз данных, так и программные средства). Определяются и изображения на диаграмме тип связи между процессорами (локальная сеть).
Определяются задачи для каждого процессора (приложения, необходимые для работы системы), для них строятся соответствующие диаграммы. Определяется тип связи между задачами.
Устанавливаются ссылки между задачами и процессами диаграмм потоков данных следующих уровней. На рис. 10 изображена диаграмма системных процессов, в которой имеется шесть сущностей (рабочие, экономист, бухгалтерия, администрация, принтер, локальная сеть). Также имеется четыре процесса «ПК экономиста», «ПК администрации», «ПК бухгалтерии», «Сервер базы данных системы расчета оплаты труда». При поступлении данных от рабочего, данные сохраняются в базе данных и затем обрабатываются экономистом и бухгалтерии. Затем сумма к выдаче посылается на принтер в виде расчетки и выдается рабочему.
1.9 Диаграмма последовательности экранных форм
Представим абстрактную модель пользовательского интерфейса системы, которая отражает последовательность появления экранных форм в приложении.
Построение этой диаграммы выполняется следующим образом:
1. на DFD выбираются интерактивные процессы нижнего уровня. Интерактивные процессы нуждаются в пользовательском интерфейсе, поэтому можно определить экранную форму для каждого процесса;