- •Аннотация
- •Задание на выпускную квалификационную работу
- •Содержание
- •1. Теоретическая часть 11
- •2. Разработка системы создания онтологий 15
- •3. Оценка факторов влияния на здоровье человека. Эргономичность и экологичность проекта 49
- •Введение
- •Теоретическая часть
- •Обзор существующих систем онтологий
- •Проблемы существующих систем создания онтологий
- •Разработка системы создания онтологий
- •Выбор инструментальных средств
- •Обоснование выбора средств реализации
- •2.1.2. Обоснование выбора технических средств
- •Анализ предметной области
- •Определение функциональных требований системы
- •Взаимодействие информационных объектов
- •Описание датологической модели базы данных в MySql
- •Разработка пользовательского интерфейса в виде
- •Характеристические особенности системы
- •Особенности реализации некоторых функций
- •Оценка факторов влияния на здоровье человека. Эргономичность и экологичность проекта
- •3.1. Обоснование необходимости эргономического анализа
- •3.2.Эргономика рабочего места
- •3.2.1. Рекомендации по комплектации оборудования рабочего места
- •Требования по обеспечению необходимой освещенности рабочего места пользователя
- •3.3. Обеспечение электробезопасности и пожаробезопасности
- •3.4.Организационные мероприятия при работе с ис
- •3.5. Защита веб-серверов
- •3.6 Выводы
- •Заключение
- •Список использованной литературы
Особенности реализации некоторых функций
Создание онтологий осуществляется с помощью рабочего поля для рисования в программе Adobe Flash Professional CS5 (Листинг 2.1.), а для просмотра используется Adobe Flash Player 10. Создание элементов графа включает в себя клонирование этих самых элементов, создание процесса клонирование описано на листинге ниже.
Листинг 2.1. Создание онтологий
onClipEvent (load)
{
if (_root.i == undefined)
{
_root.i=0;
this.can_duplicate = true;
}
}
on (press) {
if ((this.can_duplicate == true)&( _root.i < 3))
{
_root.i++;
duplicateMovieClip(this, "krug_mc"+_root.i, _root.i);
//this.i = _root.i;
_parent["krug_mc"+_root.i].txt_n.text = _root.i;
_parent["krug_mc"+_root.i].can_duplicate = false;
_parent["krug_mc"+_root.i].i = _root.i;
_parent["krug_mc"+_root.i].startDrag(true);
_parent["krug_mc"+_root.i].onPress = this.onPress;
_parent["krug_mc"+_root.i].onRelease = this.onRelease;
} else {
if (this.can_duplicate == false)
{
this.startDrag();
}
}
}
on (release) {
this.stopDrag();
}
on (releaseOutside)
{
this.stopDrag();
}
Загрузка изображений с онтологиями описана на листинге ниже (Листинг 2.2.). Пользователю предлагается сначала выбрать изображение на своем компьютере, а затем написать название онтологии и нажать кнопку загрузки. Изображением записывается на сервер в базу данных и также в отдельную папку на компьютере под названием «image_uploaded» [2]. Изображения можно загружать в любом графическом формате, главное чтобы имя изображения не содержала специальных символов. Изображения можно загружать с русскими названиями, система сама переименует имя в английское.
Листинг 2.2. Загрузка изображений
<?php
session_start();
include("header.html");
//phpinfo();
define("URL_SITE", "http://ontologii.ru/", true);
function f_menu1() {
echo "<!-- Панель навигации Начало -->\n";
echo "<TABLE align=\"center\"width=760height=\"21\"";
echo "border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";
echo "<TR class=\"menu-table\"><TD>\n";
echo "<A href=\"" . URL_SITE . "\" class=\"menu\"> Возврат на главную страницу</A>\n";
echo "</TD><TR>\n";
echo "</TABLE>\n";
echo "<!-- Панель навигации Конец -->\n\n";
}
f_menu1();
// Устанавливаем соединение с базой данных
require_once("connect.php");
// Извлекаем файл изображения из базы данных
echo '<h2>Здесь представлена более полная информация об уже созданных онтологиях</h2>';
if (isset($_GET['id']))
{
$sql2="SELECT imya_im, content from images WHERE id_image=".$_GET['id'];
$data2=mysql_query($sql2);
while($line2=mysql_fetch_array($data2))
{
echo $line2[0]." <br> ".$line2[1]." <br> <a href=show_screen.php>Вернуться к скриншотам</a>";
}
}
else if (!isset($_POST['load']))
{
$sql="SELECT id_image, imya_im from images";
$dataim=mysql_query($sql);
echo "<table>";
$i=1;
while ($lineim=mysql_fetch_array($dataim))
{
echo "<tr><td>".$i."</td><td><a href=show_screen.php?id=".$lineim[0].">".$lineim[1]."</a></td></tr>";
$i++;
}
echo "</table>";
echo "<form enctype=\"multipart/form-data\" method=POST action=\"\" >";
echo "<table> <tr><td>Добавить скриншот:</td> <td><input type='file' name='filename'></td></tr>
<tr><td>Название скриншота: </td> <td><input type='text' name='image_name'></td></tr>
</table>
<input type='submit' value='Загрузить' name='load'>
</form>";
}
else
{
if($_FILES["filename"]["size"] > 1024*3*1024)
{
echo ("<br>Размер файла превышает три мегабайта<br>");
exit;
}
// Проверяем загружен ли файл
if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
{
// Если файл загружен успешно, перемещаем его
// из временной директории в конечную
move_uploaded_file($_FILES["filename"]["tmp_name"], "Z:/home/Ontologii.ru/www/image_uploaded/".$_FILES["filename"]["name"]);
$name=$_FILES["filename"]["name"];
$namefull="<img src=\"/image_uploaded/".$name."\">";
$imya_im=htmlspecialchars($_POST['image_name']);
if (!preg_match("/^[a-zA-Zа-яА-Я0-9\s]{3,50}$/",$imya_im))
{
echo "<center><font color=\"red\">Неверное имя скриншота</font></center><br>";
include("footer.html");
exit;
}
$sql="INSERT INTO images(imya_im, content) VALUES ('".$imya_im."', '".$namefull."')";
$sqlq=mysql_query($sql);
echo("<br>Файл загружен успешно!<br>");
}
else
{
echo("<br>Ошибка загрузки файла<br>");
}
}
include("footer.html");
?>
Реализация функции обратной связь и гостевая книга. В системе для связи с пользователями организованы разделы обратная связь и гостевая книга. Гостевая книга организована по принципу форума [1], то есть пользователь пишет свое имя и текст сообщение и отправляет его. Через «Обратную связь» же пользователь отправляет сообщение непосредственно самому разработчику систему по средством электронной почты [13].
Работа гостевой книги и обратной связи представлена ниже (Листинг 2.3 и 2.4):
Листинг 2.3. Гостевая книга
<?
session_start();
include("header.html");
?>
<!-- Создаем форму, состоящую из поля ввода, кнопки и textarea-->
<form name="my_form" action="add_message.php" method="POST">
Ваше имя<font size=-2>(не более 50 символов)</font>:<br>
<input type="text" name="name_of_guest" value="" title="Поле для ввода имени"><br>
Сообщение<font size=-2>(не более 1000 символов)</font>:
<br><textarea name="message_of_guest" cols=40 rows=5></textarea><br>
<input type="submit" value="OK" name="okbutton" title="Нажмите для отправки вопроса!"><br>
</form>
<?php
//Открыть файл gost.txt в режиме чтения
$f=fopen("gost.txt","r") or die("Не могу открыть файл!");
//начало цикла, пока не конец файла сообщений
while (!feof($f))
{
$first_line=fgets($f); //получаем строку "--------------"
$ip_=fgets($f); //получаем IP-адрес
$data=fgets($f); //читаем дату размещения
echo "<small>Дата: </small>".$data."<br>";
$data=fgets($f); //читаем имя пользователя сообщения
echo "<small>Имя: </small>".$data."<br>";
$data=fgets($f); //читаем текст сообщения
echo "<small>Сообщение: </small>".$data."<br>";
echo "<hr>"; //отделяем сообщение горизонтальной линией
}
fclose($f); //закрываем файл
include("footer.html");
?>
Листинг 2.4. Обратная связь
<?php
session_start();
include("header.html");
?>
<form name="my_form" action="admin.php" method="POST">
В данном разделе вы можете написать вопрос администратору!
<br><br><br>
<table> <tr><td>Введите имя:</td> <td><input type="name" name="name_of_user" value=" "
title="поле для ввода имени" size=20 maxlength=10></td></tr>
<tr><td>Введите e-mail: </td> <td><input type="e-mail" e-mail="e-mail_of_user" value=" "
title="поле для ввода e-mail" size=20 maxlength=30></td></tr>
</table>
</form>
<br><br>
Ваш вопрос администратору:
<br>
<textarea
name="вопрос_админу"
rows="10"
cols="50">
</textarea>
<br><br>
<DIV class=cs__submit> <A href="mailto:o.sushkova@mail.ru"> <INPUT id=submit_survey value=Отправить type=submit name=submit_survey></A>
</DIV></FORM>
<?
// echo"<DIV class=cs__powered><A href=\"mailto:o.sushkova@mail.ru\">Моя почта!</A></DIV></TD></TR></TBODY></TABLE></DIV></BODY></HTML>";
include("footer.html");
?>
Выводы
В результате проведенных исследований существующих в Интернете систем, посвященных онтологиям, было выявлено, что на данный момент не существует специализированной системы подходящей для пользователей русскоязычного сегмента сети Интернет. Все они тяжеловесные и англоязычные, написанные на специализированных языках программирования, весьма трудных для понимания обычным пользователем.
Внедрение веб-ориентированной ИС позволяет помимо хранения информации, обеспечить ее быстрый отбор и анализ, что существенно облегчит использование онтологий.
Создание же такой системы, посвященной онтологиям в целом, наиболее пригодной для пользователей русского сегмента сети Интернет, получило бы наибольшее развитие в современном обществе. Кроме того, простота в использовании моего электронного курса позволят сделать систему более выигрышной по сравнению со всеми другими, опубликованными в сети Интернет.
Для создания системы мною была спроектирована структура базы данных и разработан пользовательский интерфейс, а также решены следующие задачи:
для гостей системы реализована страница регистрации, с проверкой на предмет ошибок по всем введённым ими полям. Гости системы могут также оставить сообщение в гостевой книге;
для зарегистрированных пользователей разработана система авторизации. После авторизации зарегистрированному пользователя становится доступен функционал системы по созданию онтологий, просмотр зарегистрированных пользователей, доступ к гостевой книге, обратной связи, загрузке изображений и к просмотру инструкций по созданию онтологий;
для администратора системы реализованы возможности изменения личной информации зарегистрированных пользователей.
Главным преимуществом данной системы, посвященным онтологиям в целом, наиболее пригодной для пользователей Рунета является то, что она получила бы наибольшее развитие в современном обществе. Так как в сети Интернет нет специализированной системы подходящей для пользователей Рунета. Кроме того, простота в использовании моего электронного курса позволят сделать систему более выигрышной по сравнению со всеми другими, опубликованными в сети Интернет.