Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
HLD.doc
Скачиваний:
12
Добавлен:
10.06.2015
Размер:
179.71 Кб
Скачать

Назначение

Данный документ описывает внутреннюю структуру, взаимодействие с окружением и внешние интерфейсы приложения. Приводится описание классов, их взаимодействие, а также описание их внешних и внутренних интерфейсов.

Определения и принятые сокращения

В настоящем документе приняты следующие определения и сокращения:

Сокращение

Определение

FS

Документ cодержит технические требования, предъявляемые к функционированию программного продукта

HLD

High Level Design. Содержит описание модульной структуры проекта и взаимодействия его модулей

Проект

Проект симулятора морского боя

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

Описание структуры проекта

Пользовательский уровень представления системы изображен на рис. 14.1. Детальное описание пользовательского уровня приведено в FS. Представление тестируемой системы с точки зрения окружения приведено на рис. 14.2.

Взаимодействие системы со складом и терминалами должно осуществляться посредством вызова методов модулей системы.

Методы внешнего модуля Axle

//Получение сообщения от терминала оси

static public int GetAxlePar(out string NameMaster,

out string Factory, out string Number, out byte ShiftNum,

out int Side, out float FrontDiam, out float BackDiam)

Рис. 14.1.  Use case-диаграмма

Рис. 14.2.  Окружение системы

Методы внешнего модуля Bearing

//Получение сообщения от терминала подшипника

static public int GetRollerPar(out string NameMaster,

out string Factory, out string Number, out int ShiftNum,

out int Group, out int SepType, out float AShift)

Методы внешнего модуля Store

//Получение сообщения от CКЛАДА

static public long GetStoreMessage()

//Получение статуса СКЛАДА

static public int GetStoreStat(out long mParametr)

//Посылка команды СКЛАДУ

static public int SendStoreCom (int com, int s1, int y1,

int x1, int s2, int y2, int x2)

ОПИСАНИЕ КЛАССОВ

Класс TBearingParam

// Класс параметров подшипника

public class TBearingParam

{

public string Number; // Номер подшипника

public int ShiftNum; // Номер рабочей смены

public DateTime OutDateTime;

// Дата и время выдачи подшипника

public DateTime InDateTime;

// Дата и время поступления подшипника

public string Factory; // Название депо

public string NameMaster;// ФИО мастера

public int GroupNum; // Номер группы подшипника

public int SepType; // Тип сепаратора подшипника

public float AShift; // Осевой сдвиг

public int Position;

// Позиция на оси (0 - на заднем кольце (Back),

// 1 - на переднем кольце (Front))

// Конструктор

public TBearingParam()

}

Класс реализует набор параметров подшипника.

Класс tTerminalBearing

// Класс терминала подшипника

public class TTerminalBearing

{

private TBearingParam BearingParam;//Структура параметров

//подшипника

public TCommandQueue CommandQueue; //Ссылка на очередь

//команд

public bool IsQuery; //Флаг, разрешающий

//опрос терминала

// Конструктор

public TTerminalBearing()

// Опрашивает терминал

private long QueryTerminal()

// Запрашивает и обрабатывает статус терминала

public void Process()

}

Класс используется для взаимодействия с терминалом подшипника. Операции:

  • Конструктор TTerminalBearing() инициализирует поле BearingParam и устанавливает значение флага IsQuery в true.

  • Метод QueryTerminal() вызывает функцию внешнего модуля IBearing.GetRollerPar(...), присваивает возвращенные значения полю BearingParam и возвращает значение статуса терминала.

  • Метод Process() вызывает метод QueryTerminal(). Если статус терминала равен 0 (это означает, что параметры подшипника были успешно возвращены), то на первое место в очередь команд добавляется команда GetR - получить из входной ячейки:

  • CommandQueue.AddCommand(TCommand.GetR,-1,0,-1,

  • this.BearingParam, null,0);

Если получены другие значения статуса терминала, то в журнал сообщений добавляется запись в соответствии с FS пункт 1.а.iv.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]