Трехуровневая архитектура приложения
Архитектура программного обеспечения (software architecture) – это высокоуровневая структура программной системы. Трехуровневая архитектура подразумевает разделение программного кода на три уровня: - уровень представления (presentation layer); - уровень логики приложения (business layer); - уровень данных (data layer). Уровень представления содержит код, отвечающий за интерфейс приложения, и логику, обеспечивающую взаимодействие приложения с пользователем. Уровень логики приложения получает запросы от уровня представления и возвращает уровню представления ответы на эти запросы, руководствуясь управляющей логикой, размещенной на бизнес-уровне. Уровень данных отвечает за управление данными приложения и передачу этих данных уровню логики приложения при получении запросов. На рисунке 3.1 изображена диаграмма потоков данных в приложении с трехуровневой архитектурой. Рисунок 3.1 – Диаграмма потоков данных
Ограничение трехуровневой архитектуры – информация должна поочередно передаваться между соседними уровнями. Правильное применение трехуровневой архитектуры обеспечит простоту модернизации приложения, добавления новых возможностей и позволит контролировать доступ к данным.
Интерфейс пользователя приложения
Интерфейс пользователя программы курсовой работы представляет многооконное приложение. Windows-приложение взаимодействует с пользователем через диалоговые окна: модальные (modal) и немодальные (modeless). Модальное диалоговое окно – диалоговое окно, блокирующее работу пользователя с приложением, пока пользователь не закроет окно. Если модальное диалоговое окно открыто, пользователю недоступны другие окна программы (окна того же потока пользовательского интерфейса). Немодальное диалоговое окно – диалоговое окно, позволяющее работать с другими окнами программы /10/.
Для добавления формы в проект используют опцию Project|Add New Item меню среды программирования /11/. Методы формы приведены в таблице 3.1. Таблица 3.1 Методы формы
Пример работы с диалоговыми окнами в модальном и немодальном (обычном) режимах приведен в листинге 5. Листинг 5. Открытие/закрытие диалоговых окон //Form1.h Главное диалоговое окно #pragma once #include "Form2.h" #include "Form3.h" namespace Modal_w { using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; … this->ResumeLayout(false); } #pragma endregion private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { //Открытие Form2 System::Windows::Forms::DialogResult dr; Form2 ^newDlg=gcnew Form2(); m: dr=newDlg->ShowDialog(); if(dr==System::Windows::Forms::DialogResult::OK) return; else {MessageBox::Show("Ошибка закрытия Form2"); goto m;} } private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) { //Вызов Form3 Form3 ^f3=gcnew Form3(); f3->Show(); } private: System::Void button3_Click(System::Object^ sender, System::EventArgs^ e) { this->Close(); } }; //Form2.h Модальное диалоговое окно #pragma once namespace Modal_w { using namespace System; …} #pragma endregion private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { this->DialogResult=System::Windows::Forms::DialogResult::OK; this->Close(); //Закрытие Form2 } };} //Form3.h Немодальное диалоговое окно #pragma once namespace Modal_w { using namespace System; } #pragma endregion private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { this->Close(); } };} /10/.
Уровень логики приложения
Расчет прогнозных данных
После ввода исходных данных формируется временной ряд. В качестве бизнес-логики приложения предлагается рассчитать данные временного ряда в прогнозных периодах методом скользящей средней.
Метод скользящей средней позволяет элиминировать случайные колебания и получить значения, соответствующие влиянию главных факторов. Сглаживание временного ряда основано на взаимном погашении случайных отклонений в средних величинах. Это происходит вследствие замены первоначальных уровней временного ряда средней арифметической величиной внутри выбранного интервала времени. Полученное значение относится к середине выбранного периода. Период сдвигается на одно наблюдение, и расчет средней повторяется. Периоды определения средней берутся одинаковыми. Средняя арифметическая величина центрирована, т.е. отнесена к серединной точке интервала сглаживания и представляет уровень для этой точки /12/. Прогнозное значение временного ряда рассчитывается по формуле
где
Скользящая средняя
Оценка точности прогнозов
Точность прогноза – важная характеристика. Существует несколько способов оценки точности прогнозов: 1. Средняя абсолютная ошибка рассчитывается по формуле
где
2. Средняя квадратическая ошибка рассчитывается по формуле
3. Относительная ошибка рассчитывается по формуле
3. Средняя относительная ошибка рассчитывается по формуле
Интерпретация значений средней относительной ошибки для оценки точности прогнозов приводится в таблице 3.2. Таблица 3.2 Интерпретация значений точности прогноза
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|