Разработка алгоритмов и программных средств подсистемы доку-ментооборота системы управления содержанием информационного сер-вера

Автор работы: Пользователь скрыл имя, 25 Марта 2011 в 17:23, курсовая работа

Описание работы

Основными задачами подобной подсистемы являются разделения процессов создания, редактирования и оформления документов между пользователями системы, что позволяет более эффективно управлять цифровой интеллектуальной собственностью организации.

Если еще одно десятилетие назад можно было задуматься над управлением бумажным документооборотом, то сейчас та же проблема стоит в электронной плоскости. Только уже на гораздо более остром уровне. Не зря же наш век называется «информационным».

Содержание работы

Введение 3
Глава 1. Теоретические основы разработки информационного сервера 6
1.1. Web-технологии как основа доставки информации в информационной системе 6
1.2. Архитектура информационного сервера 15
1.3. Принципы организации документооборота на информационном сервере 18
1.4. Средства создания информационных серверов 24
Глава 2. Подсистема организации документооборота «infobeacon» 29
2.1. Архитектура и функциональность подсистемы 29
2.2. Организация политики безопасности в рамках подсистемы 33
2.3. Компоненты подсистемы и схема хранения данных 34
Заключение 41
Список литературы 42
Приложение 1. Листинги sql-запросов по созданию таблиц 43
Приложение 2. Листинги основных php скриптов 45

Файлы: 1 файл

курсовая по мат.методам.doc

— 477.00 Кб (Скачать файл)
 

       Итак, поле id – индивидуальный номер статьи, writer – автор статьи, page – к какому тематическому разделу относится данная статья, headline – заголовок, story_text – основной текст, picture – адрес файла с изображением. Следующие 3 поля предназначены для работы с датой, соответственно создания, редактирования и публикации документа. Последнее поле по своей функциональности похоже на поле read из таблицы messages: оно может принимать 0 или 1. Поле принимает значение 1, когда редактор раздела нажимает ссылку «Готово», которое служит для отправки статьи администратору. То есть, когда в этом поле стоит 1, то уже не автор, не редактор не имею доступа к этому документу – он уже предназначен для проверки администратором.

       Таблица writer_permissions служит для присвоения редакторам прав управления тем или иным разделам. Кстати, редакторы определяются в последней таблице writers последним полем editor.

 

Таблица 5. Структура таблицы writers  базы данных

 

Поле  Тип
username varchar(16)
password varchar(16)
full_name text
editor  char(1)

        

       Подчеркнутые  поля в приведенных таблицах означают, что данное поле является индексом всей таблицы.

  Заключение

        

       Итак, в своей курсовой работе я постарался собрать воедино наиболее важную и актуальную информацию по разработке информационных систем вообще и подсистему документооборота в частности.

       Были  исследованы и проанализированы основные принципы создания ИС, ее структура и функциональность, взаимодействие основных компонентов.

       Также были рассмотрены новейшие и наиболее перспективные Web-технологии, которые уже сегодня с успехом использует при создании и обслуживании информационных серверов, содержащих в себе гигантские объемы информации.

       Была  разработана, создана и протестирована собственная подсистема документооборота, в которой реализовались основные принципы построения и взаимодействия ИС, а также основная функциональность работы. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

        Список литературы

 

  1. Веллинг Л., Томасон Л. Разработка Web-приложений с помощью PHP и MySQL  – М.: Издательский дом «Вильямс», – 2003. – 800с.: ил.
 
  1. Гилмор  В. PHP 4. Учебный курс  – СПб.: «Питер», – 2001. – 352с.: ил.
 
  1. Курбацкий А. Н. Автоматизация обработки документов - Мн.: БГУ, 1999. - 221с.: ил.

 

Приложение 1.

Листинги SQL-запросов по созданию таблиц

 

       Листинг 1. SQL-запрос создания таблиц базы данных 

# БД : `content`

#  

# -------------------------------------------------------- 

#

# Структура таблицы `keywords`

# 

CREATE TABLE `keywords` (

  `story` int(11) NOT NULL default '0',

  `keyword` varchar(32) NOT NULL default '',

  `weight` int(11) NOT NULL default '0'

) TYPE=MyISAM; 
 

# -------------------------------------------------------- 

#

# Структура таблицы `messages`

# 

CREATE TABLE `messages` (

  `message_id` int(11) NOT NULL auto_increment,

  `from_user` varchar(16) NOT NULL default '',

  `to_user` varchar(16) NOT NULL default '',

  `body` text,

  `read` char(1) NOT NULL default '0',

  `date` int(11) default NULL,

  PRIMARY KEY  (`message_id`)

) TYPE=MyISAM AUTO_INCREMENT=20 ; 

# -------------------------------------------------------- 

#

# Структура таблицы `pages`

# 

CREATE TABLE `pages` (

  `code` varchar(16) NOT NULL default '',

  `description` text,

  PRIMARY KEY  (`code`)

) TYPE=MyISAM; 

# --------------------------------------------------------

 

#

# Структура таблицы `stories`

# 

CREATE TABLE `stories` (

  `id` int(11) NOT NULL auto_increment,

  `writer` varchar(16) NOT NULL default '',

  `page` varchar(16) NOT NULL default '',

  `headline` text,

  `story_text` text,

  `picture` text,

  `created` int(11) default NULL,

  `modified` int(11) default NULL,

  `published` int(11) default NULL,

  `for_admin` char(1) NOT NULL default '0',

  PRIMARY KEY  (`id`)

) TYPE=MyISAM AUTO_INCREMENT=65 ; 

#

# Структура таблицы `writer_permissions`

# 

CREATE TABLE `writer_permissions` (

  `writer` varchar(16) NOT NULL default '',

  `page` varchar(16) NOT NULL default ''

) TYPE=MyISAM; 

# -------------------------------------------------------- 

#

# Структура таблицы `writers`

# 

CREATE TABLE `writers` (

  `username` varchar(16) NOT NULL default '',

  `password` varchar(16) NOT NULL default '',

  `full_name` text,

  `editor` char(1) NOT NULL default '0',

  PRIMARY KEY  (`username`)

) TYPE=MyISAM; 
 
 
 
 
 
 
 

 

        Приложение 2.

       Листинги  основных PHP скриптов

 

       Листинг 2. Файл stories.php (основной файл системы) 
 
 

<?php

// **************

// Подключение  библиотеки с функциями 

include('include_fns.php');

include('header.php'); 

// **************

// Проверка входа  в систему 

if (!check_auth_user()) {

?>

<form action="login.php" method="post">

<table border="0">

<tr>

  <td>Если  Вы новый пользователь, то зарегистрироваться  можно <a href=add_new_user.php>тут</a>.</td>

</tr>

</table>

<br>

<table border="0">

<tr>

  <td>Вход:</td>

</tr>

<tr>

  <td>Логин:</td>

  <td><input size="16" name="username"></td>

</tr>

<tr>

  <td>Пароль:</td>

  <td><input size="16" type="password" name="password"></td>

</tr>

</table>

<input type="submit" value="Пуск!"> 

</form>

<? 
 

}

else {

  $conn = db_connect();

 

  $w = get_writer_record($HTTP_SESSION_VARS['auth_user']); 

  print 'Привет, '.$w['full_name'];

  print ' (<a href="change_passwd_form.php">Поменять пароль</a>)';

    print '  ';

    print ' (<a href="logout.php">Выход</a>)';

  print '<p>'; 

  $sql = 'select * from stories where writer = \''.

         $HTTP_SESSION_VARS['auth_user'].'\' order by created desc';

  $result = mysql_query($sql, $conn); 

  print 'Ваши статьи: ';

  print mysql_num_rows($result);

  print ' (<a href="story_add.php">Добавить</a>)';

   print '</p><br /><br />';

 

  if (mysql_num_rows($result)) {

    print '<table border=1>';

    print '<tr><th>Заголовок:</th><th>Раздел:</th>';

    print '<th>Дата создания:</th><th>Последнее изменение:</th><th>Действия:</th></tr>';

    while ($qry = mysql_fetch_array($result)) {

      print '<tr>';

      print '<td>';

      print $qry['headline'];

      print '</td>';

      print '<td>';

      print $qry['page'];

      print '</td>';

      print '<td>';

      print date('M d, Y H:i', $qry['created']);

      print '</td>';

      print '<td>';

      print date('M d, Y H:i', $qry['modified']);

      print '</td>';

      print '<td>';

      if ($qry['published'])

        print '[Напечатано '.date('M d, H:i', $qry['published']).']';

          else {

                 if ($qry['for_admin'])

                       print 'Ожидает проверки администратором...';

                else {

        print '[<a href="story.php?story='.$qry['id'].'">Ред.</a>] ';

        print '[<a href="delete_story.php?story='.$qry['id'].'">Удал.</a>] ';

        print '[<a href="keywords.php?story='.$qry['id'].'">Слова</a>]';

 

                 }

      }

      print '</td>';

      print '</tr>';

    }

    print '</table>';

  }

print ('<table>');

print ('<br>');

  print ' (<a href="message_add.php">Написать сообщение</a>)';

print ('</table>'); 

// **************

// Меню редактора 

$conn = db_connect();

$sql = 'select * from writers where username = \''.

         $HTTP_SESSION_VARS['auth_user'].'\' ';

$result = mysql_query($sql, $conn);

$qry = mysql_fetch_array($result);

if ($qry['editor'])

{

editor_menu ($HTTP_SESSION_VARS['auth_user']);

}

   

// **************

// Меню сообщений 

$conn = db_connect();

$sql = 'SELECT * FROM messages WHERE to_user = \''. $HTTP_SESSION_VARS['auth_user'].'\'  order by date desc ';

$result = mysql_query($sql, $conn);

$num_results = mysql_num_rows($result);

if ($qry)

{

if ($num_results) {

        print ('<table>');

        print ('<br><br> -------------------------- <br>');

        print ('<b>Раздел сообщений:</b>');

        print ('</table>'); 

    print '<table border=1>';

    print '<tr><th>От:</th><th>Текст:</th>';

    print '<th>Дата:</th><th>Действия:</th></tr>';

Информация о работе Разработка алгоритмов и программных средств подсистемы доку-ментооборота системы управления содержанием информационного сер-вера