2013 Электротехника, информационные технологии, системы управления № 8 УДК 004.738.5
Н.С. Езова, Д.Б. Кузнецов
Пермский национальный исследовательский политехнический университет,
Пермь, Россия
МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ПЛАТФОРМЫ ПОРТАЛЬНОГО РЕШЕНИЯ ДЛЯ ПОСТРОЕНИЯ СИСТЕМЫ САЙТОВ
В соответствии с законами Российской Федерации от государственных органов, муниципальных учреждений и других организаций, требуется наличие сайта. У подобных организаций, имеющих схожую структуру и выполняющих однотипные функции, появляются похожие сайты, что предопределяет дальнейшее развитие разработок в виде объединения их в портальные решения в рамках платформы. Для реализации платформы строится математическая модель на основе формализации основных элементов, входящих в структуру платформы. В качестве основных элементов выступают веб-страница, сайт, портал, платформа. Посредством формализмов выделяются сущности и операции между ними. В модели используются математические категории и формирование на математическом языке операций и функций элементов, составляющих платформу. Таким образом, формулируется математическая модель в виде аксиоматической системы.
Ключевые слова: сайт, портал, платформа, математическая модель, блок, веб-страница, шаблон, бинарные операции, операции отображения.
N.S. Yezova, D.B. Kuznetsov
Perm National Research Polytechnic University, Perm, Russian Federation
MATHEMATICAL PLATFORM MODEL OF PORTAL SOLUTION FOR CONSTRUCTING THE SITE SYSTEM
In accordance with the Russian Federation laws every state institution and a municipal body as well as other organizations are required to have a website. Such organizations having similar structures and performing the same type functions run similar sites which cause further innovation development in the form of site unification into portals within a platform. To implement the platform a mathematical model based on formalization of the main elements included in the platform structure has been constructed. As basic elements there appear a web-page, a site and a portal. The entities and operations between them are distinguished by means of formalisms. In the model the mathematical categories and formation of mathematics-based operations and functions making up a platform are used. Thus, a mathematical model as an axiomatic system has been formed.
Keywords: site, portal, platform, mathematical model, block, web-page, pattern, binary operations, mapping operations.
Группам организаций и предприятий, имеющим одинаковое назначение, схожую организационную структуру и выполняющим однотипные функции, требуются порталы сайтов со специфичным функционалом и свойствами. Портал - совокупность сайтов. Для построения таких порталов разрабатывается платформа - аппаратный и/или программный комплекс, служащий основой для различных вычислительных систем.
Перед разработкой в инструментальной среде требуется смоделировать платформу. Модель позволит управлять порталами и сайтами, используя различные варианты операций и функций.
При разработке сайтов и порталов оперируют такими понятиями, как таблицы баз данных, тэги Ы;т1-кода. Разрабатываемая платформа сложнее и сайта, и портала, она включает эти понятия, поэтому при ее разработке необходимо оперировать абстракциями более высокого уровня.
Математическая модель, основными элементами которой будут сайты, позволит достичь необходимого уровня абстракции. Введя аксиоматическую систему с элементами-сайтами и операциями между ними, мы получим также критерий для дальнейшей верификации разрабатываемого программного обеспечения системы.
Для построения математической модели необходимо формализовать понятия «сайт», «портал», «платформа», исследуя типовое проявление этих структур, и определить операции над ними.
Формализмы необходимы, чтобы выделить:
- сущности для создания объектной структуры сайта;
- операции с сайтами, которые в дальнейшем могут быть запрограммированы.
Структура сайта
1. Верстка сайта - процесс формирования веб-страницы по готовому макету и результат этого процесса - состоит из следующих элементов [1]:
- шаблон страницы - НТМЬ-код оформленной веб-страницы,
- область шаблона,
- тип блока,
- блок контента.
Элементы верстки соотносятся следующим образом: шаблоны страниц состоят из областей, к каждой из которых приписан свой тип
блока. Шаблон определяет, как эти области взаимно расположены и оформлены. В области может располагаться блок с текстовой и графической информацией, составляющей контент сайта заданного типа.
К различным типам блоков относятся, например, блок с произвольным контентом - полнофункциональный фрагмент html-кода. Или блок со структурированной повторяющейся информацией. Подобный блок может использоваться для отображения списка новостей. Контент блока состоит из нескольких записей, в каждой находится фиксированное количество полей: дата, заголовок, краткое содержание новости. Один и тот же блок может размещаться на нескольких страницах одновременно. Например, блок новости может располагаться и на странице «Новости» сайта, и на главной странице.
Блоки предназначены непосредственно для управления содержимым сайта. В рамках страниц, заданных одним шаблоном, блоки в одной и той же области могут быть разными. Тип информации так же может быть различным: новости, формы обратной связи и т.д.
2. Страница сайта - отображаемый для пользователя сайта гипертекстовый документ, полученный наполнением шаблона страницы содержимым конкретных блоков, имеющих тип.
3. Карта сайта.
Составляющие всемирной паутины (англ. World Wide Web) - сайты - представляют собой наборы страниц, являющихся гипертекстовыми документами, составленными на языках html, xml. Ссылки в гипертекстовых документах указывают на элементы, находящиеся как на том же сайте, так и на других. Отношение связности страниц сайта, образованное гипертекстовыми ссылками, обладает следующими свойствами:
- нерефлексивность (не всегда в рамках страницы есть ссылка на нее саму, но подобная ситуация возможна, поэтому антирефлексивности тоже нет);
- нетранзитивность (если страница один раз ссылается на страницу);
- несвязность (не обязательно между двумя произвольными страницами существует ссылка);
- несимметричность (если первая страница ссылается на вторую, то из этого не следует, что вторая ссылается на первую, но тем не менее эта ссылка может и существовать, следовательно, свойства «антисимметричность» также не будет).
Отсутствие транзитивности и антисимметричности усложняет целостное восприятие сайта, поскольку система ссылок образует сетевую структуру, а не более простую - иерархическую. В связи с этим в рамках сайта часто реализуют выделенную систему ссылок, называемых меню или навигацией сайта. Навигация сайта отображает основные ссылки между страницами, создавая уже, во-первых, иерархическую структуру, во-вторых, отношение частичного порядка между страницами. Такую структуру ссылок называют «Картой сайта».
Структура платформы
С формальной точки зрения блок - это пара - упорядоченный конечный набор длины п = 2, каждый из элементов которого xi принадлежит некоторому множеству Xi, 1 < i < п (аналогично для п > 2 ):
Ь =< N,T >, (1)
где N - номер блока; T - содержимое блока; веб-страница согласно математической модели - это упорядоченная тройка:
p =< I, F, H >, (2)
где I - множество номеров блоков; F - шаблон страницы; H - заголовок.
Так, например, у главной страницы сайта заголовком (Я) будет «Главная страница», посредством шаблона (Р) будет определено, из каких элементов будет состоять эта страница (краткое описание сайта, новости, ссылки на наиболее важные разделы и т.д.). Каждый из элементов соответствует конкретному блоку с определённым номером (I).
Сайт с формальной точки зрения - это упорядоченная пятёрка:
s =< Р,М, К, В, D >, (3)
где Р - множество страниц {р1,р2,...}; М- множество бинарных файлов (документы, созданные в офисных приложениях, мультимедийные файлы); К - отношение (частичного порядка) связности страниц («Карта сайта»); В - множество блоков {Ь1,Ь2,...}; D - оформление страниц (тексты на формальных языках верстки, программирования, оформленные в виде, как отдельных файлов, так и частей программного обеспечения сайта, портала, платформы).
Например, сайт школы может состоять из нескольких страниц (Р) (посвящённых учителям, расписанию, ученикам и т.д.). Переход между страницами будет осуществляться при помощи меню сайта (К). Все
страницы при этом посредством программного обеспечения оформляются в едином стиле (В), что также позволяет убедиться в их отношении к одному сайту. Каждая страница состоит из определённых блоков (В): например, на странице с расписанием располагается блок табличного типа. Также на сайте могут располагаться различные документы и мультимедийные файлы (М), такие как списки учащихся, видеоролики о жизни школы и т.д.
Портал с формальной точки зрения - это упорядоченная двойка:
п =< £, С >, (4)
где £ - множество сайтов; С - отношения связности.
В качестве примера можно привести портал муниципалитетов Пермского края, где есть главный сайт (£), содержащий информацию о муниципальных образованиях Пермского края вообще и ссылки (С) на сайты (£) конкретных районов и их поселений - подсайты.
Формальные операции платформы
1. Бинарные операции
Бинарные операции над сайтами должны выполняться в одном базисе - оформление страниц (В).
1.1. Сумма сайтов. Множество сайтов £ и ассоциативная бинарная операция «сумма сайтов» составляют полугруппу < £,+ > . Полугруппа - множество с заданной на нём ассоциативной бинарной операцией.
Запись ^3 = + s2 можно интерпретировать как «изменения на сайте s1 - комплекс изменений для добавления к сайту s2 - «пользовательский интерфейс», сформированных в «административном интерфейсе», приводят к появлению новой версии сайта s3 - «пользовательский интерфейс».
Необходимость в подобной операции может возникнуть, например, при добавлении новости в административном интерфейсе сайта государственных органов, когда нужно не сразу публиковать её на пользовательском интерфейсе, а после проверки. При применении данной операции новость будет опубликована.
Идемпотентом (элемент, повторное использование которого не приведёт к изменениям) и нулем полугруппы будет пустой сайт s0 =< {},{},{},{}, В >, поскольку s0 = s0 + s0 и s1 = s1 + s0 .
При выполнении этой операции объединяются множества страниц сайтов, блоков, состав файлов, а карта одного сайта дополняется картой второго сайта. Таким образом, можно добавлять новые страницы на сайт.
1.2. Разность сайтов. Множество сайтов £ портала и бинарная операция «разность сайтов» составляют группоид (множество с определённой на нём двухместной операцией) < £,- > .
Запись s3 = s1 - s2 можно интерпретировать как «изменения на сайте s2 - комплекс изменений для удаления из сайта s1 - «пользовательский интерфейс», сформированных в «административном интерфейсе», приводят к появлению новой версии сайта s3 - «пользовательский интерфейс».
Операция, обратная операции «сумма сайтов», может применяться при удалении устаревшей информации, когда данное действие должно быть согласовано несколькими людьми.
Идемпотентом и правым нулем полугруппы будет пустой сайт s0 =< {},{},{},{}, D > , поскольку s0 = s0 - s0 и s1 = s1 - s0 .
При помощи данной операции можно произвести удаление страницы с сайта.
1.3. Пересечение сайтов. Множество сайтов £ портала и ассоциативная бинарная операция «пересечение сайтов» составляют абеле-ву группу (множество с определённой на нём двухместной ассоциативной операцией с единицей и нулем) < £,* > .
В записи s3 = s1 * s2 результирующий сайт s3 представляет собой совпадающие элементы сайтов s1 и s2 .
Подобная операция может применяться, когда осуществляется периодическое сохранение изменений на сайте и в какой-то момент обнаруживаются ошибки в более новой версии сайта. В таком случае при применении данной операции к двум версиям сайта (более старой и более новой) можно выделить ту часть сайта, которая не будет содержать ошибок.
Идемпотентом и нулем группы будет пустой сайт s0 =< {},{},{},{}, D >, поскольку s0 = s0* s0 и s1 = s1* s0.
Идемпотентом и единицей группы будет сайт se=ss, поскольку se = se * se и s1 = s1* se, где ss = s1 + s2 +... + sп - сайты, составляющие портал. Обратным сайтом для сайта s будет сайт s 1, такой что s 1 = ss - s .
2. Отображения [2].
2.1. Редактирование записи - функция, применяемая к сайту. Аргументами функции должны быть изменяемый сайт и блок контента, получаемый после редактирования записи. Таким образом, функцию «редактирование записи» можно записать следующим образом:
s = / (Ь, s) или просто s = / (s), если зафиксировать Ь,
где s - модифицируемый сайт, такой что s Т £; Ь - модифицируемый блок; /- функция, принадлежащая отображению Г: £ ^ £.
Это отображение можно применять к полугруппе < £,* >. В этом случае можно сказать, что оно обладает свойством гомоморфизма, поскольку для любых сайтов s1, s2 Т £ выполнено соотношение / * s2) = / (s1) * / (s2). С помощью этой функции можно, например, заменить блок на сайте.
2.2. Функция добавления и удаления сайта из портала должна содержать в качестве аргументов изменяемый портал, управляющий порталом сайт и добавляемый/удаляемый сайт:
п = £1^1, s2, п), (5)
а функция «удаление сайта»:
п = £ 2^1, s2, п), (6)
где п - модифицируемый портал, такой что п Т П; s1 - управляющий порталом сайт; s2 - добавляемый/удаляемый сайт; £1 и £2 - функции, принадлежащие отображению G: П ^ П.
2.3. Функция изменения связности сайтов в портале должна содержать изменяемый портал и управляющий порталом сайт в качестве аргументов:
п = h(s,п), (7)
где п - модифицируемый портал, такой что п Т П; s - управляющий порталом сайт; h - функция, принадлежащая отображению Н: П ^ П.
С помощью данной функции можно изменить иерархию сайтов в портале.
Таким образом, сформулирована математическая модель в виде аксиоматической системы. Аксиоматическая система состоит из функций и операций, которые удобно реализовать на функциональном языке, после чего на основании полученной программной модели будет реализована платформа.
Библиографический список
1. Дронов В.А. Разработка современных веб-сайтов. - СПб.: БХВ-Петербург, 2011.
2. Алгебраическая теория автоматов, языков и полугрупп; пер. с англ. под ред. М. Арбиба. - М.: Статистика, 1975.
Сведения об авторах
Езова Наталья Сергеевна (Пермь, Россия) - студентка кафедры информационных технологий и автоматизированных систем Пермского национального исследовательского политехнического университета (614990, Пермь, Комсомольский пр., 29, e-mail: [email protected]).
Кузнецов Денис Борисович (Пермь, Россия) - старший преподаватель кафедры информационных технологий и автоматизированных систем Пермского национального исследовательского политехнического университета (614990, Пермь, Комсомольский пр., 29, e-mail: [email protected]).
About the authors
Yezova Natalia Sergeevna (Perm, Russian Federation), a student at the department of information technologies and automated systems, of Perm National Research Polytechnic University (614990, Perm, 29, Komsomol-sky pr., e-mail: [email protected]).
Kuznetsov Denis Borisovich (Perm, Russian Federation), an assistant lecturer at the department of information technologies and automated systems of Perm National Research Polytechnic University (614990, Perm, 29, Komsomolsky pr., e-mail: [email protected]).
Получено 05.09.2013