- •Проектирование информационных моделей информационной системы (ис).
- •1. Теоретический материал.
- •1. Переменные и параметры.
- •2. Сложные типы данных.
- •2.1 Формальная запись информационной модели сложного объекта.
- •2. Требования к построению информационной модели объекта реального мира.
- •Декомпозиция глобальной цели по подзадачам.
- •Получение заказа на перевозку.
- •3. Построение информационной модели сложного объекта «Автотранспортное предприятие»
- •3.1 Неформальная постановка задачи. Описание общей функциональности ис «атп».
- •Формулировка глобальной цели создания ис «атп»
- •Подготовка к перевозке.
- •Процесс перевозки.
- •Работа службы технической эксплуатации.
- •Пакет «атр»
- •Пакет «атр.GisSystem»
- •Пакет атп.Транспорт
Пакет «атр.GisSystem»
Объект «ГИС-подсистема».
GISSystem {
//атрибутивная часть
//отсутствует. Считаем, что ИС должна использовать ресурсы внешних публичных ГИС-ресурсов в интернете (например GoogleMaps или Яндекс-Карты)
//функциональная часть
//построить и вернуть маршрут из зоны А в зону Б
public Route getRouteSpatialModel(Zone zA, Zone zB)
//посчитать количество пересечений границы для заданного маршрута
public int getBorderCount(Route r)
//посчитать пробег без груза для заданного маршрута
public float getEmptyRun(Route r)
//посчитать пробег с грузом для заданного маршрута
public float getLoadedRun(Route r)
}
Пакет атп.Транспорт
Объект «Транспортное средство»
Transport {
//атрибутивная часть
//марка
TransportMark mark;
//тип транспорта
TransportType tr_type;
//гос. номер
String gos_num;
//гаражный номер
String box_num;
//текущий пробег ТС (км)
int ts_run;
//функциональная часть
//определение возможности везти указанный груз исходя из типа груза
boolean checkCargoTypeCapable(Cargo cr)
// определение возможности везти указанный груз исходя из размеров груза
boolean checkCargoMerticCapable(Cargo cr)
//определить сколько км осталось до следующего ТО
public int getNextTOTRMilage()
}
TransportMark {
//атрибутивная часть
//название марки ТС
private String mark_name;\
//название модели ТС
private String model_name;
//сервисная книжка от завода-изготовителя
private ServiceBook sb;
//кг грузоподъемность
private float load_lift;
//габариты груза
private float[] body_size = new float[3]; //м
//объем кузова
private float v = (float) 0;
//функциональная часть
//проверка на соответствие размеров груза и кузова для данной марки ТС
boolean checkCagroMetricCapable(float weight, float[] cargo_size, float cargoV)
//задание сервисной книги для данной марки
void setServiceBook(ServiceBook ser_b)
//определение километража (км), оставшегося до следующего ТО
int getNextTOTRMilage(int current_run)
//функция задания значений для основных атрибутов
void initAttributes(String mark, String model, float l_lift)
//определение кол-ва км, оставшихся до след. ТО
public int getNextTOTRMilage(int current_run)
}
