Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2 ПРОЕКТИРВАНЕ ПРОГРАММНОГО ПРОДУКТА (мой)++.doc
Скачиваний:
7
Добавлен:
26.11.2019
Размер:
2.14 Mб
Скачать

2.3 Алгоритмическое обеспечение проекта

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

На основании этого метода алгоритм функционирования можно разделить на два основных модуля: модуль представления информации и модуль администрирования.

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

Еще одной важной составной частью модуля представления информации данного программного продукта является карта сайта. Она позволяет более детально изучить структуру Музея валунов. Изображение карты сайта располагается на главной странице программного продукта. Все ссылки карты сайта также, как и в навигационном меню подключены к главной странице, что позволяет вернуться к ней с любой страницы программного продукта. Наиболее наглядно со структурой карты сайта можно ознакомиться на рисунке 2.1, представленном ниже.

Схема навигации обучающей системы

Line 352 AutoShape 347 Line 338 Line 355 Oval 363 AutoShape 348

Рисунок 2.1 – Карта сайта

Модуль администрирования – это отдельный модуль сайта, доступный только администратору, позволяющий настраивать контент и структуру сайта так, как посчитает нужным администратор. Кроме того, модуль администрирования значительно упростит работу администратора за счет того, что ему не придется изменять исходный код, а будет достаточно лишь выставить определенные настройки. Модуль администрирования применяется, прежде всего, для того, чтобы пользователь не имел возможность доступа к основным данным сайта и не повредил их умышленно либо по неосторожности.

Доступ к модулю администрирования, собственно как и к модулю представления информации осуществляется при помощи базы данных, реализованной по средствам языка «MySQL». Взаимодействие модуля администратора и модуля представления информации отображено в приложении В.

2.3.1 Проектирование базы данных

Для создания базы данных, которая применяется в разрабатываемом программном продукте, были выбраны средства языка «MySQL». Этот выбор обоснован простотой данного языка, а также его совместимостью с языком «PHP», который лежит в основе всех модулей сайта.

База данных состоит из двух таблиц: «phpmyseum» и «users». Первая таблица предназначена для хранения текстовой информации, которая затем размещается на страницах сайта, а вторая - для хранения данных пользователя, которые применяются для модуля администрирования.

Таблица «phpmyseum» была создана при помощи следующего SQL-запроса:

CREATE TABLE phpmyseum

(ID INTEGER PRIMARY KEY

TITLE CHAR(100) NOT NULL,

META_D CHAR(100) NOT NULL,

META_K CHAR(100) NOT NULL,

TEXT TEXT NOT NULL,

PAGE CHAR(50) NOT NULL);

Все поля имеют ограничение «NOT NULL», так как ни одно поле в таблице не должно быть пустым, иначе работа базы данных невозможна.

Таблица «users» создавалась следующим SQL-запросом:

CREATE TABLE users

(ID INTEGER PRIMARY KEY

LOGIN CHAR (30) NOT NULL,

PASSWORD CHAR (30) NOT NULL);

Соединение страниц сайта с базой данных происходит при помощи следующего кода, который выполняет загрузку уже заполненных контентом страниц из базы данных:

$db=mysql_connect ("localhost","user","12345");

mysql_select_db ("phpmyseum",$db).