Визуальное иерархическое моделирование — это процесс замены реального объекта его визуальной моделью.
Введение
Ориентированное на определённый тип объектов, визуальное моделирование является новой, стремительно прогрессирующей сферой компьютерной инженерной науки. Это направление очень актуально сегодня и это подтверждается проблематикой фактического использования визуального моделирования. Главной проблемой является принципиальная сложность нормального описания методики формирования программного обеспечения. Процесс программирования считается практически процессом творчества. Задачей объектно-ориентированного визуального моделирования считается понижение сложности реализации программного обеспечения, повышение качественных показателей его анализа и формирования проекта. Но, осознав сложность проблемы формализации процессов проектирования программного обеспечения, специалисты по методологии по существу передали её разработчикам CASE-пакетов (описания конкретных ситуаций в какой-либо сфере). То есть, пока неясно назначение диаграмм при проектировании программного обеспечения по отношению к проектной документации, кодам программы и так далее. Поэтому нет общих положений, связывающих эти представления программного обеспечения, и появляются необоснованные обещания сформировать программные коды только на основании имеющихся диаграмм.
Из-за неопределённого статуса визуального моделирования при разработке программного обеспечения возникает проблема, заключающаяся в поддержке итеративности процесса создания системы. Помимо этого, существует и проблема наличия семантического разрыва среди моделей, а также осуществление контроля не повреждённости информационных данных в различных моделях и так далее.
Работы в сфере теории визуального моделирования в основном направлены формализацию моделирования и обобщённые задачи компьютерной инженерии. Отдельные варианты решений по применению визуального моделирования предложены в границах CASE-пакетов, но познакомиться с ними возможно лишь после покупки конкретного программного продукта. Это подчёркивает наличие разрыва науки и практического применения.
Сложные программные системы
Очень часто структура сложных систем является иерархической и состоит из взаимосвязанных подсистем, которые тоже могут состоять из набора подсистем. Большинство сложных систем обладают разложимой иерархической структурой, и это даёт возможность изучить, сделать описание и буквально «увидеть» эту систему и её элементы. Необходимо помнить, что архитектура сложных систем состоит из элементов и взаимосвязей иерархии этих элементов. Каждая система состоит из подсистем, а все системы — это элементы других, больших по размерам, систем. Характерные черты системы определяются взаимосвязями между её элементами, а не свойствами отдельных элементов. Определение самых маленьких компонентов, то есть элементарных, является достаточно произвольным процессом, и в значительной мере зависит от того, кто эту систему исследует. Самый низкий уровень, по мнению одних специалистов, может таковым не считаться, по мнению других.
Иерархические системы считаются разложимыми, если их возможно разделить на ясно определяемые элементы, и почти разложимыми, если их компоненты не могут считаться абсолютно самостоятельными.
Особенности программного обеспечения Интернет узлов
Разные подходы к формированию спецификации программной системы, построению её модели и выполнению разработанных моделей в формате программ, ведут к проблемам, которые характерны для сложных систем в области программирования. Для программного обеспечения узлов интернета чрезвычайно важна проблема совместимости исполняемой среды. Это объясняется структурной организацией самой системы, которая основана на следующей взаимной связи:
База данных – Сервер – Клиент.
Под базой данных понимается возможная реализация реляционной системы управления базами данных (СУБД). Сервером является специальный комплект аппаратного и программного обеспечения, который предоставляет возможность информационного обмена согласно протокола HTTP (Hyper Text Transfer Protocol). Сервер, помимо этого, считается средой выполнения программ. Клиентом является программно-аппаратный комплект для выполнения обращения к серверу и доставки данных пользователю в необходимом формате.
История формирования языков программирования показала, что оптимальным является реализация интерпретаторов на основе аппаратно независимого подхода. То есть, предполагается, что программа, которая написана на каком-либо языке, может быть выполнена на любом интернет сервере. Это единство может быть обеспечено стандартной средой выполнения и присутствием совместимой интерпретации для различных платформ. Слабое место в этой схеме — это клиентская архитектура. Существуют стандарты для гипертекста, но, тем не менее, есть большое количество версий обозревателей интернета.
Пример визуального моделирования программного обеспечения Интернет узла
Приведём в качестве примера построение модели сайта новостей. Составим для каждого из разделов свою визуальную модель для вариантов применения, структурной организации данных и программного обеспечения. Раздел «персональная страница пользователя» служит для хранения персональных данных о зарегистрированных пользователях. Варианты применения, или иначе прецеденты использования, показывают допустимые действия пользователей. Они изображены на диаграмме ниже:
Рисунок 1. Варианты действий пользователя. Автор24 — интернет-биржа студенческих работ
В этом разделе пользователю предоставляется возможность:
- Просмотра списка наиболее читаемых пользователей и самых просматриваемых сообщений.
- Входа в систему и перехода к личному подразделу.
На рисунке ниже показан образец списка наиболее читаемых пользователей:
Рисунок 2. Образец списка наиболее читаемых пользователей. Автор24 — интернет-биржа студенческих работ