Дипломная работа: Подсистема визуальной генерации отчётов в рамках информационно-образовательного портала
· загруженные в базу данных корректные данные должны оставаться корректными. Данные до включения в базу данных должны проверяться на достоверность.
· доступ к данным, размещаемым в базе данных, должны иметь только лица с соответствующими полномочиями.
· база данных должна иметь дружественный интерфейс к пользованию.
3.2.1 PostgreSQL
PostgreSQL (произносится «Постгре-Эс-Кю-Эль»http://ru.wikipedia.org/wiki/PostgreSQL - cite_note-1, в профессиональной среде коротко называется «постгрес») - свободная объектно-реляционная система управления базами данных (СУБД).
Функции PostgreSQL являются блоками кода, исполняемыми на сервере, а не на клиенте БД. Хотя они могут писаться на чистом SQL, реализация дополнительной логики, например, условных переходов и циклов, выходит за рамки собственно SQL и требует использования некоторых языковых расширений. Функции могут писаться с использованием одного из следующих языков:
· встроенный процедурный язык PL/pgSQL, во многом аналогичный языку PL/SQL, используемому в СУБД Oracle;
· скриптовые языки - PL/Lua, PL/LOLCODE, PL/Perl, plPHP, PL/Python, PL/Ruby, PL/sh, PL/Tcl иPL/Scheme;
· классические языки - C, C++, Java (через модуль PL/Java).
PostgreSQL допускает использование функций, возвращающих набор записей, который далее можно использовать так же, как и результат выполнения обычного запроса.
Функции могут выполняться как с правами их создателя, так и с правами текущего пользователя.
Иногда функции отождествляются с хранимыми процедурами, однако между этими понятиями есть различие.
Также в PostgreSQL существует механизм правил (англ. rules), который представляет собой механизм создания пользовательских обработчиков не только DML-операций, но и операции выборки. Основное отличие от механизма триггеров заключается в том, что правила срабатывают на этапе разбора запроса, до выбора оптимального плана выполнения и самого процесса выполнения. Правила позволяют переопределять поведение системы при выполнении SQL-операции к таблице. Хорошим примером является реализация механизма представлений (англ. views): при создании представления создается правило, которое определяет, что вместо выполнения операции выборки к представлению система должна выполнять операцию выборки к базовой таблице/таблицам с учетом условий выборки, лежащих в основе определения представления. Для создания представлений, поддерживающих операции обновления, правила для операций вставки, изменения и удаления строк должны быть определены пользователем.
3.3 Основные модули программы
Программное обеспечение системы написано на языке PHP с использованием запросов PgSQL.
Разработанная система построена на принципе модульности. Основными модулями, входящими в состав программного обеспечения реализованного на данном этапе разработки, являются следующие:
· index.php – модуль главной страницы программного средства;
· add_obrab.php – модуль обработчика добавления информации в отчёт;
· pre.php - модуль интерфейса предпросмотра;
· bd_select.php – модуль выбора базы данных из списка;
· find.php – модуль поиска информации в базе данных;
· format.php – модуль форматирования содержимого отчёта;
· style.css – модуль, содержащий стили отображения интерфейсов;
· print_form.php – модуль, отвечающий за формат, перед выводом на печать;
· print.php –модуль, отвечающий за печать отчёта.
· save.php – модуль, позволяющий сохранять отчёт в файл на носитель информации.
Дополнительные модули, подключаемые к основным:
· bd.php – модуль подключения к базе данных;
· footer.php – нижняя часть дизайна страницы;
· header.php – верхняя часть дизайна страницы;
· menu.php – меню программы;
· lock.php – модуль авторизации пользователей.
3.4 Исходный код главного модуля
index.php
<?php
include "blocks/bd.php";//Прикрепляем соединение с базой данных
include "blocks/lock.php";//Прикрепляем файл авторизации
$result = mysql_query("SELECT * FROM infopage WHERE page='index'");
$myrow = mysql_fetch_array ($result);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-1251" />
<title><?php echo $myrow['title']; //инклудим заголовок браузера?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0" class="global_table">
<?php include"blocks/header.php"; //инклудим заголовок?>
<tr>
<td align="center" valign="middle"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<?php include"blocks/menu.php";//инклудим меню?>
<td valign="top"><?php echo $myrow['text']; ?></td>
</tr>
</table></td>
</tr>
<?php include"blocks/footer.php";//инклудим нижнюю часть?>
</table>
</body>
</html>
3.5 Расчет текущих затрат на разработку ПС
Текущие затраты включают затраты на постановку задачи, разработку программы, а также затраты, связанные с содержанием и эксплуатацией ВТ, используемой при разработке ПС. Для того, чтобы начать расчет текущих затрат принимаем решение о составе персонала, участвующего в разработке ПС. Решение сведено в виде таблицы 2.
Таблица 2 - Категории персонала
Категория персонала | Количество сотрудников | Оплата за 1 час, руб. | Потребное время на разработку ПС, час (40час. = 1 неделя) | Заработная плата, руб. |
Инженер-программист | 1 | 100 | 400 | 40000 |
Оператор | 1 | 40 | 300 | 12000 |
Итого | 52000 |
После определения состава персонала определим текущие затраты:
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11