Внешняя спецификация модулей пакета основана на подробном и полном определении назначения, функций и входных/выходных параметров модулей. С точки зрения подчинения (вызывающие и вызываемые модули) модули пакета могут быть представлены как элементы древовидной структуры, изображенной на рисунке 2.3. Следует принять во внимание, что на рисунке не отображен порядок вызова модулей и условия выполнимости модулей.
|
|
|
|
Рисунок 2.3. – Иерархия модулей пакета
Модуль Ввод_исх_данных является обслуживающим модулем, реализующим функции интерфейса ввода-вывода. В его задачи входит предоставление пользователю возможности ввода предложенных параметров. Данный модуль вызывается из главного меню при выборе пользователем пункта “Национальный доход” “При условно постоянных производственных мощностях” “Ввод данных” “Вручную”. Модуль Очистить предназначен для очистки диапазона ячеек, где должна размещаться таблица с данными. Модули Склонность_потреблению, Базисное потребление, Независимый объем инвестиций являются обслуживающими модулями, реализующими функции по вводу входных данных.
Обслуживающие модули SaveToBook1,2,3 реализуют функции внешнего интерфейса. Они предназначены для сохранения введенных пользователем данных для каждого расчета в отдельной рабочей книге. Имя рабочей книги должно запрашиваться у пользователя. Модуль вызывается из меню при выборе пользователем пункта “В рабочую книгу”.
Обслуживающие модули OpenBook1,2,3 реализуют функции внешнего интерфейса и предназначены для считывания данных из других рабочих книг. Имя рабочей книги необходимо запрашивать у пользователя. При открытии книги необходимо проверить, содержит ли книга данные в нужном формате, если содержит, то должно производиться считывание данных в рабочую книгу kursl.xls, иначе пользователю должно сообщаться о том, что данные не найдены. После выполнения этих операций рабочая книга должна быть закрыта. При считывании данных должна производится синтаксическая проверка, если обнаружена ошибка в данных, считывание должно быть прекращено с выдачей соответствующего сообщения. Для реализации этих функций модуль вызывает модуль Massages.
Обслуживающий модуль myhelp реализует функции справочного интерфейса. Модуль вызывается из меню при выборе пользователем пункта “Справка”. Модуль должен обеспечивать вывод справки по всей системе макроэкономических показателей. При реализации модуля используется встроенный объект MicroSoft Office Assistant.
Обслуживающий модуль “Выход” предназначен для закрытия текущего листа и выхода из рабочей книги kurs.xls.
Обслуживающий модуль Вход_данные реализует функции интерфейса ввода-вывода. При вводе данных должен осуществляться синтаксический контроль. Данный модуль вызывается из главного меню при выборе пользователем пункта “Национальный доход” “С учетом инвестиций” “Ввод данных” “Вручную”. Модуль Очистить предназначен для очистки диапазона ячеек, где должна размещаться таблица с данными. Модули Отношение_капил_труд, Норма_накопления, Прирост_предло-жения труда, Шаг дифференцирования и Критерий_сходимости являются обслуживающими модулями, реализующими функции по вводу входных данных.
Модуль Исх_данные является обслуживающим модулем, реализующим функции интерфейса ввода-вывода. В его задачи входит предоставление пользователю возможности ввода предложенных параметров. Данный модуль вызывается из главного меню при выборе пользователем пункта “Динамика делового цикла” “Ввод данных” “Вручную”. Модуль Очистить предназначен для очистки диапазона ячеек, где должна размещаться таблица с данными. Модули Склонность_к_потреблению, Базовое потребление, СпросY0, СпросY1, Фактор_акселерации являются обслуживающими модулями, реализующими функции по вводу входных данных.
Обрабатывающий модуль Уравнения предназначен для расчета национального дохода Y и равновесного национального дохода YE [1,109] по следующим формулам:
Y = cpY0 + A + I (1)
1
YE = (----------) * (I + A) (2),
1-cp
где сp – склонность к потреблению, А – базисное потребление, I – независимый объем инвестиций. Входными данными модуля являются выше приведенные параметры, которые вводятся пользователем. Модуль вызывается из “Ввод_исх_данных”.
Обрабатывающий модуль Расчеты предназначен для расчета темпа изменения отношения «капитал/труд» DX и его равновесного значения Dxe по следующей формуле:
DX = S * FN – N * X (3),
где S – норма потребления, N – прирост предложения труда, FN – производственная функция, X – очередное значение соотношения «капитал/труд». Входными данными модуля являются выше приведенные параметры. Модуль вызывается из “Вход_данные”.
Обрабатывающий модуль Данные_график предназначен для построения простой модели делового цикла. Входными параметрами модуля являются: A – склонность к потреблению, B – базовое потребление, V – фактор акселерации или коэффициент инвестиций, Y0 – значение спроса на конечную продукцию в момент времени (t-2), Y1 – значение спроса в момент времени (t-1), которые вводятся пользователем. Динамика национального дохода рассчитывается по формуле:
Y(t) = (A + V) * Y1 – V * Y0 + B (5).
Модуль вызывается из “Исх_данные”.
Обрабатывающий модуль С_гос_потреблением предназначен для построения модели делового цикла с учетом гос. потребления. Входными параметрами модуля являются входные параметры предыдущего обрабатывающего модуля, а также G(t) – переменная государственного потребления, которая расситывается по формуле:
G(t) = (1 + R) * G(t – 1) (6),
где R – константа, равная темпу роста государственного потребления. Динамика национального дохода с учетом госпотребления рассчитывается по формуле:
Y(t) = (A + V) * Y1 – V * Y0 + B + G(t) (7).
Модуль вызывается из “Исх_данные”.
Обслуживающий модуль Messages обеспечивает информационный интерфейс пакета. Входным параметром модуля является номер сообщения. Модуль должен вывести сообщение соответствующее входному параметру. Сообщения в соответствии с входными параметрами представлены на рисунках Б.11-Б.29 в приложении Б. Модуль вызывается из OpenBook1,2,3.
При внутреннем проектировании модулей были применены принципы нисходящего структурного и модульного проектирования: в каждом модуле выделялись подзадачи, а если задача представлялась обособленной, то выделялась в отдельный модуль. Проектирование осуществлялось в порядке постепенной детализации задач и проработки конкретных операций вплоть до простых логических конструкций.
2.10 Кодирование модулей и информационной базы
Для кодирования модулей пакета был выбран язык программирования Visual Basic for Applications для Excel 97, обеспечивающий широкий спектр возможностей визуального объектно-ориентированного программирования и большие возможности по использованию данных табличного типа.
При кодировании текста модулей пакета использовались принципы структурного программирования: проектирование “сверху вниз”, составление модуля на каждую подзадачу и структурное кодирование с использованием логических структур.
В качестве структуры данных (информационной базы), хранящей информацию рынке товара, был выбран XLS-файл, размещение данных определено в ячейках первого рабочего листа табличного файла.
Дата: 2019-05-28, просмотров: 198.