В данной статье приводится описание и выбор архитектуры проектируемой информационной системы для автоматизированного расчета лакокрасочного покрытия транспортного средства.
Ключевые слова: архитектура, хранилище данных, пользовательский интерфейс, контроллер, модель OSI
Разрабатываемая система использует хранилище данных, информация из которого в преобразованном виде выводится пользователю. Хранилищем данных выступает база данных под управлением MS SQL Server, а средством связи программы и базы данных — драйвер MS SQL Local DB. Для извлечения информации из БД в программе используется подключение по локальной учетной записи через вышеупомянутый драйвер. Для отображения данных и их доступной визуализации, а также записи данных в файл используется технология Microsoft Windows Forms — технология интеллектуальных клиентов для NET Framework, которая представляет собой набор управляемых библиотек, упрощающих выполнение стандартных задач, таких как чтение из файловой системы и запись в нее. В рамках разрабатываемой системы огромную роль играют преимущества технологии:
— Использование безопасного доступа к ресурсам компьютера;
— Работа при отсутствии подключения к сети Интернет;
— Простота в развертывании и обновлении;
— Автоматическая обработка событий при взаимодействии пользователя с формой. [1]
Разрабатываемая система реализуется на основе многоуровневой архитектуры. В основе архитектуры лежит сетевая модель OSI. Система делится на уровни — уровень представления, уровень логики, уровень данных. Каждый уровень взаимодействует лишь с двумя соседними. Запросы к БД, которая располагается в самом конце цепочки взаимодействия, проходят последовательно сквозь каждый «слой» (рис.1). Уровень представления выступает в роли View, которое представляет собой пользовательский интерфейс и контроллер механики такого интерфейса. View передает событие UI на уровень логики в виде Controller, получает от Controller события изменения данных и обработанные данные для последующего изменения представления View. Уровень логики Controller контролирует взаимосвязь между «моделью» и представлением. Controller получает данные и события обновления модели от уровня Model. Model выступает в роли уровня данных, и посылает данные и события обновления модели на уровень логики Controller, принимая, в свою очередь, также данные для обновления [2].
Модель OSI является эталонной моделью взаимодействия открытых систем. Как правило, модель OSI состоит из 7-ми уровней: Физический уровень, Канальный уровень, Сетевой уровень, Транспортный уровень, Сеансовый уровень, Уровень представления и Прикладной уровень, но, как правило, используются не все. Подразумевается, что уровни в такой модели обмениваются данными от низшего к высшему (от физического до уровня представлений) — вертикальный обмен. Предусмотрен также горизонтальный обмен, когда соседние уровни передают информацию между собой. Как правило, при проектировании архитектуры приложений, рассматриваются не все уровни [3].
Рис. 1. Архитектура приложения
В модульном контексте архитектура инструментария принимает следующий вид (рис. 2):
Рис. 2. Архитектура разрабатываемого приложения в модульном контексте
Как известно, интерфейс должен представлять собой удобное средство взаимодействия пользователя с инструментарием.
Программный интерфейс (или API) является средством, с помощью которого одна программа может взаимодействовать с другой программой, а чаще всего с интерфейсом взаимодействует человек. Также с помощью программного интерфейса происходит обмен информацией между компонентами системы, ввод информации в систему и ее вывод. На рисунке 3 представлена диаграмма компонентов системы:
Рис. 3. Диаграмма компонентов инструментария
В результате проведенного проектирования информационной системы была выбрана архитектура и разработана диаграмма компонентов. Проектирование информационной системы позволяет предотвратить многие ошибки на стадии разработки, поэтому данный этап является достаточно важным.
Литература:
- Что такое MVC и как его использовать: [сайт]. — 2021. — URL: https://skillbox.ru/media/code/chto_takoe_mvc_bazovye_kontseptsii_i_primer_prilozheniya/ (дата обращения: 18.05.2021). — Текст: электронный.
- Работа с файлами в С#: электронный журнал / Aleksey Gulynin. -URL: https://alekseygulynin.ru/rabota-s-failami-c/. — Дата публикации: 20.05.2021. — Текст: электронный.
- Чтение и запись файла. Класс FileStream C#: [сайт] / Metanit.com. — URL: https://metanit.com/sharp/tutorial/ 5.4.php. (дата обращения: 20.05.2021). — Текст: электронный.
- Herbert Schildt C#:4.0 Complete Reference / Herbert Schildt. — The McGraw-Hill Companies, 2010. — ISBN: 978–0-07–174117–0. — Текст: непосредственный.