Мониторинг обменных курсов валют
18c0693f

Общие принципы разработки спецификаций модулей


После разработки схемы "функции-модули" и схемы "модули-данные" проектировщик приступает к решению довольно трудоемкой задачи - написанию спецификаций модулей. Именно это спецификация позволит программистам и компоновщикам построить реальную систему с использованием базы данных.

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

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

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

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

Спецификация модуля должна обязательно включать следующее:

Пример. Приведем типовую спецификацию модуля для предоставления пользователю доступа к приложению базы данных.

Наименование модуля: Страница для входа в приложение (LogIn).

Цель: идентификация пользователя и предоставление доступа к приложению базы данных.


Входные данные

Имя пользователя

Пароль

Таблица базы данных: USERACCOUNT

Колонки:

USERNAME - запрашивается, используется в предикате поиска

USERPASS - запрашивается, используется в предикате поиска

Действия:

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

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

Комментарий:

В зависимости от типа модуля (экранная форма, отчет и т.д.), спецификации могут включать дополнительную информацию, такую как требования к расположению кнопок или формат отчета. Для таких модулей спецификацию следует дополнить следующими позициями:



Пример. В качестве примера приведем спецификацию экранной формы для работы с базой данных через браузер.

Наименование экранной формы: Web-страница Форма 3: Список исполнителей.

Цель: приписать исполнителей к проекту, определить их занятость и статус.

Входные данные



Навигация:

Вызывается из модуля "Редактирование Формы 1".

Возвращает управление в модуль "Редактирование Формы 1".

Действия:



Таблицы:

Таблица tblProjEMPИмя поляСодержаниеИспользование
ENPIDВнутренний номер служащегоINSERT
PROJIDВнутренний номер проектаINSERT
TNтабельный номер (из представления)
NMФИОINSERT
PSДолжность
GRРазряд
DRУченая степень
ZVУченое знание
JOBЗанятость в проекте в мес.INSERT
EMPSTATUSСтатус исполнителяINSERT
Таблица tblEmplИмя поляСодержаниеИспользование
ENPIDВнутренний номер служащего
TNтабельный номер (из представления)
NMФИОПредикат поиска
PSДолжность
GRРазряд
DRУченая степень
ZVученое звание


Входные данные

Имя пользователя

Пароль

Таблица базы данных: USERACCOUNT

Колонки:

USERNAME - запрашивается, используется в предикате поиска

USERPASS - запрашивается, используется в предикате поиска

Действия:

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

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

Комментарий:

В зависимости от типа модуля (экранная форма, отчет и т.д.), спецификации могут включать дополнительную информацию, такую как требования к расположению кнопок или формат отчета. Для таких модулей спецификацию следует дополнить следующими позициями:



Пример. В качестве примера приведем спецификацию экранной формы для работы с базой данных через браузер.

Наименование экранной формы: Web-страница Форма 3: Список исполнителей.

Цель: приписать исполнителей к проекту, определить их занятость и статус.

Входные данные



Навигация:

Вызывается из модуля "Редактирование Формы 1".

Возвращает управление в модуль "Редактирование Формы 1".

Действия:



Таблицы:

Таблица tblProjEMPИмя поляСодержаниеИспользование
ENPIDВнутренний номер служащегоINSERT
PROJIDВнутренний номер проектаINSERT
TNтабельный номер (из представления)
NMФИОINSERT
PSДолжность
GRРазряд
DRУченая степень
ZVУченое знание
JOBЗанятость в проекте в мес.INSERT
EMPSTATUSСтатус исполнителяINSERT
Таблица tblEmplИмя поляСодержаниеИспользование
ENPIDВнутренний номер служащего
TNтабельный номер (из представления)
NMФИОПредикат поиска
PSДолжность
GRРазряд
DRУченая степень
ZVученое звание




Самый выгодный курс обмена валюты