Вы находитесь на странице: 1из 93

9

ВВЕДЕНИЕ

Интернет-магазин — сайт, торгующий товарами посредством сети


Интернет. Позволяет пользователям онлайн, в своём браузере или через
мобильное приложение, сформировать заказ на покупку, выбрать способ
оплаты и доставки заказа, оплатить заказ. При этом продажа товаров
осуществляется дистанционным способом, и она накладывает ограничения
на продаваемые товары.
Основное отличие интернет-магазина от традиционного — в типе
торговой площадки. Если обычному магазину нужен торговый зал, витрины,
ценники, а также продавцы, кассиры и опытные консультанты, в тоже время
в интернет-магазине вся инфраструктура реализована программно. Другими
словами, интернет-магазин — это совокупность программ, работающих на
Web-сайте, которые позволяют покупателю дистанционно выбрать товар из
каталога и оформить его заказ. Функции витрины и торгового зала
выполняют «страницы» с иллюстрированным каталогом товаров, а
консультантов — подсказки, инструкции и описания. Все остальное — как в
обычном магазине. Даже в интерфейсе интернет-магазина сохраняются
привычные элементы, на пример виртуальная «корзина», куда мы по пути к
кассе складываем выбранные товары.
Типичный интернет-магазин позволяет клиенту просматривать
ассортимент продуктов и услуг фирмы, просматривать фотографии или
изображения продуктов, а также информацию о технических
характеристиках продукта и ценах.
Интернет-магазины обычно позволяют покупателям использовать
функции «поиска», чтобы найти конкретные модели, бренды или предметы.
10

1 ПОСТАНОВКА ОБЩЕЙ ЗАДАЧИ НА ПРОЕКТИРОВАНИЕ


ПРОГРАММНОЙ СИСТЕМЫ

1.1 Формирование цели и описание объекта

Интернет-магази - это один из удобных современных способов купить


необходимый товар или заказать услугу. Идея аналогична классическому
магазину, но не требует торговый зал, витрины, ценники, а также продавцы,
кассиры и опытные консультанты.
Основные функции интернет-магазина:
а) регистрация или вход на сайт;
б) поиск товара;
в) возможность добавления товаров в корзину;
г) оформление заказа.
С точки зрения администратора, интернет-магазин должен выполнять
функции редактирования, добавления карточек товаров и отслеживать
заказы.
Объект разработки - программное обеспечение для
автоматизированного функционирования интернет-магазина "Bestbatut".
Предмет разработки - методы построения динамических сайтов в
которых будет использоваться язык программирования PHP, JavaScript. Для
отображения информации на сайте будет использована база данных MySQL.
Цель выпускной квалификационной работы является разработка
программного обеспечения для автоматизированного функционирования
интернет-магазина "Bestbatut".
Для достижения цели выпускной квалификационной работы
необходимо выполнить следующие задачи:
11

а) сбор и анализ данных о подобных программных обеспечениях,


требований к внешнему виду и функциональности сайта;
б) ознакомление с технологиями среды разработки «WordPress»,
языком разметки HTML, CSS и языком программирования PHP, JavaScript;
в) создание прототипа сайта;
г) разработка проекта дизайна;
д) верстка сайта;
е) добавление анимационных эфектов;
ж) создание админ-панели для поддержки сайта администратором;
з) рассмотреть вопросы охраны труда при эксплуатации ЭВМ.

1.2 Анализ существующего программного обеспечения для интернет-


магазинов продажи батутов

На данный момент во всемирной паутине существует множество


аналогичных интернет-магазинов по продаже батутов. Каждый из них имеет
свои приймущества и недостатки.
Рассмотрим подробнее несколько аналогичных интернет-магазинов:
а) сайт «Мир батутов» классический интернет-магазин,
ориентировиный на продажу различных батутов, и предоставляет
пользователям следующие функции:
1) покупка батута как в розницу, так и оптом;
2) поиск по каталогу товаров или через строку ввода;
3) узнать диапазон цен;
4) сортировать товары: по популярности, по новинкам, по
названию, по цене (убывание), по цене (возрастание);
5) отложить товар;
6) изучить информацию о каждом товаре;
12

7) возможность добавление батута в корзину;


8) оформление заказа.

Главная страница «Мир батутов» расположена ниже (см. рис. 1.1).

Рисунок 1.1 – Главная страница сайта

Данный сайт является очень полезным для людей или компаний,


которые хотят купить батут.
Этот интернет-магазин предоставляет широкий ассортимент разных
сортов меда и других пчелопродуктов. На сайте удобно оплачивать заказ, с
помощью международных плптежных систем, а также имеется доставка.
Режим доступа к сайту: https://mir-batutov.com.ua
б) сайт «Play батут» предназначен для поиска и покупки батутов и
предоставляет пользователям следующие функции:
1) мультиязычный интерфейс пользователя;
2) каталог товаров;
13

3) возможность узнать о новостях и акциях;


4) ознакомится с информацией о производители батута;
5) возможность стать партнерам или поставщиком;
6) возможность прочитать статьи о батуте;
Главная страница «play.co.ua/batuty/» расположена ниже (см. рис. 1.2).

Рисунок 1.2 — Главная страница сайта

Данный сайт является очень полезным для людей, которые хотят


купить батут, а также, производителей батута, как площадка для продажи
своего товара.
В свою очередь интернет-магазин имеет ряд недостатков. Не
привлекательный внешний вид, плохая навигация по сайту, отсуствие
корзины товаров
Режим доступа к сайту: https://play.co.ua/batuty/
14

2 РАЗРАБОТКА ТРЕБОВАНИЙ К ПРОГРАММНОМУ ПРОДУКТУ

Интернет-магазин «Bestbatut» должен представлять из себя ресурс, при


помощи которого пользователь может ознакомится с производителем
продукта, преимуществом данной кампании и оформить заказ.

2.1 Требования к базе данных

Проектирование баз данных – это процесс создания проекта базы


данных, предназначенной для поддержки функционирования
экономического объекта и способствующей достижению его целей. Оно
представляет собой трудоемкий процесс, требующий совместных усилий
аналитиков, проектировщиков и пользователей. При проектировании базы
данных необходимо учитывать тот факт, что база данных должна
удовлетворять комплексу требований. Эти требования следующие:
а) целостность базы данных – требование полноты и
непротиворечивости данных;
б) многократное использование данных;
в) быстрый поиск и получение информации по запросам
пользователей;
г) уменьшение излишней избыточности данных;
д) защита данных от несанкционированного доступа, искажения и
уничтожения [1].

2.2 Требования к интерфейсу пользователя

Основные требования к пользовательскому интерфейсу:


а) создание фирменного стиля;
15

б) простота и логичность;
в) обеспечение высокой скорости работы пользователя;
г) обеспечение защиты от человеческих ошибок;
д) привлекательный внешний вид;
е) анимационные эфекты для привлечения внимания.
Для того, чтобы достичь выполнения указанных требований к
интерфейсу, нужно соблюдать ряд правил:
а) для повышения скорости выполнения работы:
1) элементы управления делайте заметными и понятными;
2) подсказки пользователю.
б) для уменьшения количества ошибок пользователя:
1) не делать кнопки слишком маленького размера, на такую
кнопку сложно попасть (кнопкой называется элемент управления, всё
взаимодействие пользователя с которым ограничивается одним действием -
нажатием);
2) сделать так, чтобы пользователю было трудно нажать не на ту
кнопку (добиться этого можно либо изменением состояния кнопки при
наведении на неё курсором, либо с помощью визуальных пауз между
кнопками);
3) не делайте опасные для пользователя кнопки, кнопками по
умолчанию. ·Всегда показывайте границы диапазона вводимых
пользователем значений. ·Избегайте создавать элементы управления,
функции которых меняются в зависимости от контекста.

2.3 Системные требования

Сайт может работать на любой операционной системе, включая


Windows, Linux, Unix, OS/X. Для работы сайта на сервере должен быть
16

установлен интерпретатор языка PHP, а также MySQL для управления базой


данных.
Минимальные системные требования:
а) Apache 1.x, 2.x или новее - www.apache.org;
б) Pнр 4.x, 5.x или новее - www.php.net;
в) Mysql 4.1.x, 5.x или новее - www.mysql.com.
Большинство современных хостинговых компаний в качестве web-
сервера представляют платформу Linux. Так же возможна работа системы
под управлением других веб-серверов, таких, как Windows IIS (Internet
Information Server), при наличии в них поддержки PHP и MySQL.
Для настройки сайта на сервере Вам понадобится:
а) имя базы данных MySQL;
б) имя пользователя и пароль;
в) имя хоста для базы данных.
Панель администрирования может использоваться совместно со всеми
наиболее известными браузерами, а именно: Mozilla FireFox, Opera,
GoogleChrome [2].

2.4 Программные требования

Серверная часть:
а) для работы системы требуются следующие компоненты;
б) поддерживаемые операционные системы: Windows, Mac OS, Linux;
в) web сервер Apache 2.0.55+;
г) php 5.2.6 – 5.4;
д) php должен содержать следующие модули;
е) pdo для pgsql;
ж) simplexml;
17

з) json 1.2.1+;
и) curl;
к) mbstring;
л) ionCube PHP Loader;
м) в PHP должны быть установлены следующие параметры:
 отключены «магические кавычки» (magic_quotes_gpc);
 СУБД Postgres SQL ver 8.3;
 утилита pgAdmin III ver 1.8 для удобства администрирования
базы данных.
Клиентская часть:
На клиентском рабочем месте требуется только наличие браузера с
поддержкой Ajax. Поддерживаются следующие браузеры
а) firefox;
б) google Chrome;
в) opera;
г) safari;
д) internet Explorer.
Примечание: Рекомендуется использовать браузеры Mozilla Firefox,
Google Chrome и Safari.

2.5 Требование к безопасности

Требования к надежности и сохранности информации сайта:


а) cервер, на котором расположен cайт, должен обеспечивать
ежедневное создание полной или инкрементальной резервной копии базы
данных cайта;
б) cервер, на котором расположен cайт, должен иметь резервный
канал доступа в сеть интернет и блок бесперебойного питания,
18

обеспечивающие функционирование сайта в течение 2 часов с момента


наступления аварийной ситуации [3].
Требования к безопасности и защите информации сайта.
Информация сайта должна быть расположена в закрытой БД, доступ к
которой разрешен только из программных модулей сайта и только с
использованием пароля доступа:
а) доступ к закрытым областям сайта разрешен только пользователям,
прошедшим процедуру регистрации;
б) пароли пользователей должны храниться в виде хэшей;
в) после регистрации, на почту пользователя отправляется письмо с
уникальным кодом, который необходим для его активации и полной
авторизации.

2.6 Общие требования к проекту

Информационное обеспечение интернет-магазина должно выполнять


следующие требования:
а) наличие обязательных разделов:
1) раздел «Наши приемущества»;
2) раздел «Каталог товара»;
3) раздел «Контакты»;
4) раздел «Специальные предложения и акции»;
5) раздел «Корзина»;
6) возможность «Регистрации и авторизации».
б) наличие информации для привлечения новых посетителей:
1) регулярное обновление ассортимента товаров;
2) информация о скидках и акциях.
19

в) программный продукт должен быть написан на языке


программирования PHP;
г) программное изделие должно удовлетворять следующим общим
требованиям:
1) контролировать корректность ввода данных пользователем;
2) обрабатывать исключительные ситуации, вызваные не
корректностью ввода данных пользователем с целью предотвращения
прерывания выполнения алгоритма;
3) программа должна иметь интуитивно понятный,
привлекательный интерфейс;
4) предоставлять средства для шифрования паролей [3].
20

3 ПРОЕКТИРОВАНИЕ АРХИТЕКТУРЫ ПРОЕКТА

В данном проекте программная система была реализована с помощью


таких средств разработки как:
а) MySQL;
б) PHP;
в) JavaScritp;
г) CSS.

3.1 Архитектура программной системы

В архитектуре взаимосвязаны функциональные, технические,


программные начала.
Архитектура интернет-магазина «Bestbatut» должна быть проста и
интуитивно удобна. Чтобы пользователь смог выбрать тот батут, который
ему необходим исходя из предоставленной информации, и оформить
покупку, чтобы количество заказов возросло. Структура состоит из
программной части, клиентской части и администраторской части [4].
Архитектура сайта включает:
1. Программную часть – отвечающую за функционал сайта и
размещение на хостинге провайдера.
2. Клиентская часть – отвечает за отображение информации на сайте.
3. Админ часть – позволяет администратору вносить изменение на
сайте (см.рис. 3.1).
21

Рисунок 3.1 – Архитектура интернет-магазина «Bestbatut»

Рисунок 3.2 – Архитектура и бд интернет-магазина «Bestbatut»

Программное обеспечение сайта разрабатывалось в среде «WordPress»


на языке php. Выбор сделан на основании результатов сравнения PHP с
другими языками разработки web-приложений.
В административной части архитектуры, реализуется ПО интеренет-
магазина «Bestbatut», а именно предоставляется возможность
администратору редактировать содержимое ресурса. После изготовления
данного сайта необходимо будет его разместить в сети и выбрать хостинг.
22

3.2 Разработка шаблона сайта

Шаблон сайта - это его каркас. Для этого нужно разработать очень
удобный шаблон, чтобы его можно было использовать рационально (см.рис.
3.2)

Рисунок 3.2 – Шаблон страницы сайта

Шаблон страниц сайта содержит следующие компоненты:


а) шапка сайта - содержит название фирмы, корзина, регистрация и
вход, а также изображения и номера телефонов фирмы;
б) меню сайта - содержит ссылки на другие участки сайта;
23

в) информация о фирме – описывает приемущества данного продукта


над другими производителями;
г) карточки товаров - содержит информацию о товаре и его цену, есть
возможность добавить товар в корзину;
д) контакты - содержит всю контактную информацию для обратной
связи с производителем.
Данный шаблон используется и для других страниц сайта. На
страницах сайта меняется «контент страницы», который зависит от запроса
пользователя. Контент страницы может содержать следующую информацию:
а) корзина;
б) оформление заказа;
в) каталог всех товаров;
г) страница регистрации;
д) акции и специальные предложения.

3.3 Диаграммы UML

UML является языком широкого профиля, это — открытый стандарт,


использующий графические обозначения для создания абстрактной модели
системы, называемой UML-моделью. UML был создан для определения,
визуализации, проектирования и документирования, в основном,
программных систем. UML не является языком программирования, но на
основании UML-моделей возможна генерация кода. [5].
24

3.3.1 Диаграмма вариантов использования

Диаграммы вариантов использования описывают функциональное


назначение системы или то, что система должна делать. Разработка
диаграммы преследует следующие цели:
а) определить общие границы и контекст моделируемой предметной
области;
б) сформулировать общие требования к функциональному поведению
проектируемой системы;
в) разработать исходную концептуальную модель системы для ее
последующей детализации в форме логических и физических моделей;
г) подготовить исходную документацию для взаимодействия
разработчиков системы с ее заказчиками и пользователями.
Суть данной диаграммы состоит в следующем: проектируемая система
представляется в виде множества актеров, взаимодействующих с системой с
помощью так называемых вариантов использования. При этом актером
(действующим лицом, актантом, актором) называется любой объект, субъект
или система, взаимодействующая с моделируемой системой из вне. В свою
очередь вариант использования – это спецификация сервисов (функций),
которые система предоставляет актору. Другими словами, каждый вариант
использования определяет некоторый набор действий, совершаемых
системой при взаимодействии с актором. При этом в модели никак не
отражается то, каким образом будет реализован этот набор действий.
Диаграмма вариантов использования изображена ниже. (см. рис. 3.4)
25

Рисунок 3.4 - Диаграмма вариантов использования

На диаграмме показаны два актора программной системы


(пользователь, администратор), а также все варианты использования системы
[5].

3.3.2 Диаграмма состояний

Диаграмма состояний показывает, как объект переходит из одного


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

Диаграммы состояний могут быть вложены друг в друга для более


детального представления отдельных элементов модели [5].
.

Рисунок 3.5 - Диаграмма состояний

3.3.3 Диаграмма последовательности

Для моделирования взаимодействия объектов в языке UML


используются соответствующие диаграммы взаимодействия. Взаимодействия
объектов можно рассматривать во времени и тогда для представления
временных особенностей передачи, и приема сообщений между объектами
используется диаграмма последовательности. Взаимодействующие объекты
обмениваются между собой некоторой информацией. При этом информация
принимает форму законченных сообщений. Другими словами, хотя
сообщение и имеет информационное содержание, оно приобретает
дополнительное свойство оказывать направленное влияние на своего
получателя. [5].
27

Диаграмма последовательности представлена ниже (см. рис. 3.6)

Рисунок 3.6 - Диаграмма последовательностей

На диаграмме последовательности изображены четыре основных


объекта программной системы и процесс обмена информацией между ними.
Также на диаграмме представлены так называемые «линии жизни» и
временные промежутки активности объектов [5].

3.4 Средства разработки

3.4.1 MySQL

MySQL – это одна из самых популярных и самых распространенных


СУБД (система управления базами данных) в интернете. Она не
предназначена для работы с большими объемами информации, но ее
28

применение идеально для интернет сайтов, как небольших, так и достаточно


крупных.
MySQL отличатся хорошей скоростью работы, надежностью,
гибкостью. Работа с ней, как правило, не вызывает больших трудностей.
Поддержка сервера MySQL автоматически включается в поставку PHP.
Немаловажным фактором является ее доступности. MySQL
распространяется на условиях общей лицензии GNU (GPL, GNU Public
License).
Ранее для долговременного хранения информации мы работали с
файлами: помещали в них некоторое количество строчек, а затем извлекали
их для последующей работы. Задача длительного хранения информации
очень часто встречается в программировании Web-приложений: подсчёт
посетителей в счётчике, хранение сообщений в форуме, удалённое
управление содержанием информации на сайте и т.д.
Между тем, профессиональные приёмы работы с файлами очень
трудоёмки: необходимо заботится о помещении в них информации, о её
сортировке, извлечении, при этом не нужно забывать, что все эти действия
будут происходить на сервере хост-провайдера, где с очень большой
вероятностью стоит один из вариантов Unix - следовательно, нужно так же
заботится о правах доступа к файлам и их размещении. При этом объём кода
значительно возрастает, и совершить ошибку в программе очень просто [6].
Все эти проблемы решает использование базы данных. Базы данных
сами заботятся о безопасности информации и её сортировке и позволяют
извлекать и размещать информацию при помощи одной строчки. Код с
использованием базы данных получается более компактным, и отлаживать
его гораздо легче. Кроме того, не нужно забывать и о скорости - выборка
информации из базы данных происходит значительно быстрее, чем из
файлов.
29

Приложение на РНР, использующее для хранения информации базу


данных (в частности MySql) всегда работает быстрее приложения,
построенного на файлах. Дело в том, что базы данных написаны на языке
C++, и написать на PHP программу, которая работала бы с жёстким диском
эффективнее базы данных - задача неразрешимая по определению, поскольку
программы на PHP в принципе работают медленнее, чем программы на C++,
так как РНР - интерпретатор, а С++ - компилятор.
Таким образом, основное достоинство базы данных заключается в том,
что она берёт на себя всю работу с жёстким диском и делает это очень
эффективно.
Достоинства MySQL:
а) значительное сокращение кода;
б) высокая скорость выполнения процедур запросов в СУБД.
Недостатки MySQL:
а) зависимость приложений не только от работоспособности сервера,
но и от работоспособности сервера данных [6].

3.4.2 PHP

PHP – это язык программирования, предназначенный для создания


сайтов. PHP позволяет автоматизировать работу с сайтом. PHP является
скрипт-языком, который встраивается в HTML, после чего интерпретируется
и выполняется на сервере. Отличие PHP от JavaScript состоит в том, что PHP-
скрипт выполняется на сервере, а клиенту передается результат работы, тогда
как в JavaScript-код полностью передается на клиентскую машину и только
там выполняется.
Программы PHP могут выполняться двумя способами: как сценарное
приложение Web-сервером и как консольные программы. Поскольку, нашей
30

задачей является программирование web-сайтов, мы преимущественно будем


рассматривать первый способ [7].
Дело в том, что PHP, как правило, используется сугубо для
программирования приложений, связанных с Интернетом. Однако, PHP
можно еще использовать в качестве интерпретатора командной строки, в
основном в *nix-системах. Последнее возможно при помощи CORBA и COM
интерфейсов, а также при помощи расширения PHP-GTK. При таком
использовании PHP возможно решение следующих задач:
а) создание приложений интерактивной командной строки;
б) создание кросс-платформенных GUI приложений при помощи
библиотеки PHP-GTK;
в) автоматизация некоторых задач под Windows и Linux.
Рассмотрим процесс выполнения php-сценария при обращении
браузера к серверу. Итак, вначале браузер запрашивает страницу с
расширением .php, после чего web-сервер пропускает программу через
машину PHP и выдаёт результат в виде html-кода. Причем, если взять
стандартную страницу HTML, изменить расширение на .php и пропустить её
через машину PHP, последняя просто перешлёт её пользователю без
изменений. Чтобы включить в этот файл команды PHP, необходимо
заключить команды PHP в специальные теги <?php ?>. Язык PHP
предоставляет хорошие возможности для учета и классификации обращений
к скриптам пользователями.

3.4.3 CSS

CSS (Cascading Style Sheets) - каскадные таблицы стилей.


Стиль - набор параметров, задающий внешнее представление объекта.
Например, пусть мы хотим, чтобы все заголовки первого уровня (теги) на
31

одной странице имели красный цвет, размер - 24 и были написаны курсивом,


а на другой странице были бы синего цвета, размера - 12. Наш заголовок - это
объект, а цвет, размер и начертание - это параметры. Просто параметры
нашего объекта для разных страниц разные, т.е. они отличаются стилем.
Каждый элемент на странице может иметь свой стиль (параграфы,
заголовки, линии, текст...). Набор стилей всех элементов называют таблицей
стилей.
Если для одного элемента задано несколько стилей (как в примере с
заголовками), то применяется каскадирование, которое определяет приоритет
того или иного стиля.
Преимущества CSS:
а) css позволяет сократить размер кода и сделать его читабельным;
б) css позволяет задавать такие параметры, которые нельзя задать
только языком HTML, например, убрать подчеркивание у ссылок;
в) css позволяет легко изменять внешний вид страниц;
г) c CSS вам придется сделать это лишь один раз, в таблице стилей, с
CSS связана так называемая блочная верстка сайта [8].
32

4 ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ ПРОГРАММНОЙ СИСТЕМЫ

4.1 Схема данных

Большинство пользователей WordPress никогда не работают с базой


данных напрямую. Они могут быть даже не в курсе, что она постоянно
работает, чтобы обеспечить работу их сайт. Когда WordPress показывает
любую страницу, то он соединяется с базой данных, чтобы показать контент,
который добавили авторы на сайт. Типы контента в WordPress.
Прежде чем разбирать данные хранящиеся в базе WordPress,
рассмотрим типы контента. Существуют такие стандартные типы контента:
a) записи (posts);
b) страницы (pages);
c) пользовательские типы записей (custom post types);
d) вложения (attachments);
e) ссылки (links);
f) элементы меню (navigation menu items).
Эти типы контента имеют такие данные:
a) категории (categories);
b) метки (tags);
c) пользовательские таксономии (custom taxonomies and terms);
d) метаданные (post metadata).
Кроме того, существует типы контента, хранящиеся в ином виде:
a) виджеты (widgets);
b) опции (options);
c) пользователи (users);
d) сайты для MU WordPress;
33

e) нестандартный контент (hardcoded content), который добавляют


некоторые темы/плагины;
f) сторонний контент (third party content) (например, RSS).
Все эти типы контента хранятся в таблицах базы данных или в файлах
настроек тем/плагинов. Каждый тип может быть представлен как отдельной
записью в таблице, так и её частью. Кроме, того они могут быть связаны с
данными в других таблицах. Например, данные о записях связаны с данными
о пользователях, так что WordPress знает, кто является автором, какой
записи.

4.2 Структура базы данных

WordPress использует несколько взаимосвязанных таблиц. Между


ними установлены связи один ко многим. Приведенная ниже диаграмма взята
из кодекса WordPress. На ней показаны таблицы и связи между ними (см.
рис. 4.2):

Рисунок 4.2 – Структура базы данных


34

Большинство таблиц связаны с одной или несколькими другими с


помощью одного поля. Это поле будет уникальным идентификатором для
каждой записи (пример post_id). Более подробно для каждой таблицы:
Легко заметить, что не все таблицы используются в перечне. Так
происходит потому, что некоторые из них используются для хранения
метаданных. Другие используются для хранения связей. Оба варианта будут
рассмотрены в последующих статьях.

Таблица 4.2 – Описание таблиц базы данных

Таблица Данные Связи с другими


таблицами

wp_posts Записи, страницы, wp_postmeta через post_id


вложения, редакции, wp_term_relationships через
пользовательские post_id
записи

wp_postmeta Метаданные записей, wp_posts через post_id


страниц и т.д.

wp_comments Комментарии wp_posts через post_id

wp_commentmeta Метаданные wp_comments через


комментариев comment_id

wp_term_relationships Связи между wp_posts через post_id


таксономиями и wp_term_taxonomy через
записями, term_taxonomy_id
страницами и т.д.
35

Продолжение таблицы 4.2

wp_term_taxonomy Таксономии (включая wp_term_relationships через


категории и метки) term_taxonomy_id

wp_terms Ваши категории, wp_term_taxonomy через


метки и термины term_id
пользовательских
таксономий

wp_links Ссылки в вашем wp_term_relationships через


блоке (как правило, link_id
сейчас не
используется)

wp_users Пользователи wp_posts через post_author

wp_user_meta Метаданные для wp_users через user_id


каждого пользователя

wp_options Опции и настройки Отсутвуют


сайта
(устанавливаются в
админке на странице
настроек и в
темах/плагинах)
36

5 ПРОЕКТИРОВАНИЕ И РАЗРАБОТКА ПРОГРАММНЫХ


МОДУЛЕЙ

5.1 Описание основных модулей интеренет-магазина «Bestbatut»

Общая схема функционирования интеренет-магазина заключается в


следующем: при входе пользователь видит главную страницу сайта,
содержащую главное меню с возможностью перехода в другие разделы,
раздел со специальными предложениями и акциями, каталог товаров,
корзину и личный кабинет. Для администратора доступен отдельный
администраторский раздел, с возможностью управления и редактирования
карточек товаров, размещения акций и получение информации о заказах. В
администраторский раздел можно попасть, если правильно ввести логин и
пароль в специальную форму, либо перейти по другому домену и ввести
логин и пароль. Принцип работы и схема функционирования нашего
интернер-магазина показаны на рисунках 5.1 и 5.2.

Рисунок 5.1. Принцип работы интернет-магазина «Bestbatut»


37

Рисунок 5.2 – Схема функционирования интеренет-магазина

5.1.2 Разработка пользовательского интерфейса

В качестве разработки пользовательского интерфейса был выбран


«Процедурно-ориентированные интерфейс»
Процедурно-ориентированные интерфейсы используют традиционную
модель взаимодействия с пользователем, основанную на понятиях
«процедура» и «операция». В рамках этой модели программное обеспечение
предоставляет пользователю возможность выполнения некоторых действий,
для которых пользователь определяет соответствующие данные и следствием
выполнения которых является получение желаемых результатов [9].
38

Процедурно-ориентированный интерфейс:
а) обеспечивает пользователю функции, необходимые для выполнения
задач;
б) акцент делается на задачи;
в) пиктограммы представляют приложения, окна или операции;
г) содержание папок и справочников отражается с помощью таблицы-
списка.
Включают в себя:
а) примитивный;
б) меню;
в) свободная навигация.
В нашем случае используется типы «Меню» и «Свободная навигация».
Интерфейс-меню позволяет пользователю выбирать необходимые
операции из специального списка, выводимого ему программой. Эти
интерфейсы предполагают реализацию множества сценариев работы,
последовательность действий в которых определяется пользователем.
Интерфейсы со свободной навигацией также называют графическими
пользовательскими интерфейсами (GUI — Graphic User Interface). Эти
названия подчеркивают, что интерфейсы данного типа ориентированы на
использование экрана в графическом режиме с высокой разрешающей
способностью.
Графические интерфейсы поддерживают концепцию интерактивного
взаимодействия с программным обеспечением, осуществляя визуальную
обратную связь с ним и возможность прямого манипулирования объектами и
информацией на экране.
В отличие от интерфейса-меню интерфейс со свободной навигацией
обеспечивает возможность осуществления любых допустимых в конкретном
39

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


интерфейсные компоненты.
Например, окна программ, реализующих интерфейс Windows, обычно
содержат:
а) меню различных типов: ниспадающее, кнопочное, контекстное;
б) разного рода компоненты ввода данных.
Существенной особенностью интерфейсов данного типа является
способность их изменяться в процессе взаимодействия программного
обеспечения с пользователем, предлагая выбор только тех операций, которые
имеют смысл в конкретной ситуации.
Пользовательский интерфейс представлен в виде взаимосвязанных
между собой html-страниц, логично разделенных на несколько разделов в
зависимости от обрабатываемых данных. Страницы, изначально написанные
на языке гипертекстовой разметки html и при обращении к ним, сервер
обрабатывает php-код и возвращает html-страницу с необходимыми данными
[10].

5.1.2.1 Описание страниц сайта

При открытии любой страницы сайта авторизация не требуется,


поскольку доступ для посетителей открыт.
Главная страница (index.html) содержит шапку сайта, которая включает
в себя название компании, корзину, кнопки регистрации и авторизации,
контакты, основное меню и кнопку вертикального выпадающего меню, а
также изображения со специальными предложениями и номер телефона
компании. Также приведены навигация для других страниц сайта, которые
содержат соответствующую разделам информацию. Нижняя часть страници
содержит информацию о производителе, каталог популярных товаров, акции
40

и специальные предложения, ссылки на контактные данные продавца. Все


эти элементы описаны при помощи языка html, при помощи css им было
предано стилевое оформление, при помощи языка javascript были созданы
анимационные эффекты, а также при помощи специально написаных
функций на языке php осуществляется процедура входа и регистрации (см.
рис. 5.3).

Рисунок 5.3 – Главная страница сайта «Bestbatut»

Каждая страница сайта содержит меню с переходами на следующие


разделы сайта.
Ознакомимся со страницами нашего сайта:
а) раздел «каталог» (basket.php) содержит все доступные товары,
после нажатия вибраного товара, вы перемещаетесь на страницу
(bestbatut.ru/catalog.html? id=”номер выбранного товара”) более детальным
описанием товара, характеристиками и также кнопку для добавления в
корзину - этот раздел «каталог» содержит все блочные элементы, и для
выведення информации на страницу используется SQL-запрос: «SELECT *
FROM katalog» (см. рис. 5.4);
41

Рисунок 5.4 – Страница «Каталог»

б) раздел «корзина» (basket.php) содержит все товары, которые были


добавлены в корзину и кнопку для оформления заказа. Так же в корзине
можно изменять заказ, удалять товары или менять количество. Чтобы,
добавить товар в корзину была разработана функция function addbasket{}.
(см. рис. 5.5);

Рисунок 5.5 – Страница «Корзина»


42

в) раздел «Контакты» (bestbatut.ru/#contacts) включает в себя


контактные данные о компании, такие как телефон, а также другие виды
связи, график работы компании. (см. рис. 5.6);

Рисунок 5.6 – Страница «Контакты»

г) раздел «учетная запись» включает в себя личные данные


зарегистрированного пользователя, такие как номер телефона, имя и адрес
почты. А также, имеет функцию изменить данные (см. рис. 5.7);

Рисунок 5.7 – Страница «Учетная запись»


43

д) раздел «карточка товара» включает в себя описание товара, фото и


возможность добавить товар в корзину. (см. рис. 5.8);

Рисунок 5.8 – Страница «Карточка товара»

5.1.3. Описание страниц каталога

а) главная страница включает в себя три параметра:


1) параметр «избранные товары» содержит перечень товаров
наиболее популярных, информации выводится на главной странице, для
этого переменной «auto» глобального массива $ _GET мы присваиваем
ключевое поле «id» окна и выводим информацию с помощью SQL-запроса:
«SELECT * FROM katalog WHERE id = '$ izbr_tovar_id'»;
2) параметр «контактная информация» содержит контакты
продавца информации выводится на этой странице в низу, для этого
переменной «auto» глобального массива $ _GET;
44

3) модуль отвечающий за регистрацию и внесение новых


пользователей в базу данных, перед тем как записать данные проходит
проверку на корректность и наличие одинаковых записей, а затем с помощью
SQL - запроса «" INSERT INTO customers (name, adres, phone, address, login,
password) VALUES ('$ name1', '$ adres, '$ phone ') "» вносим данные.
б) страница карточка товара включает в себя 3 параметра:
1) параметр «Описание» (product.html) содержит полное описание
товара, информации выводится на этой странице в отдельном окне, для этого
переменной «auto» глобального массива $ _GET мы присваиваем ключевое
поле «id» объявления и выводим информацию с помощью SQL-запроса:
«SELECT * FROM katalog WHERE id = '$ data»;
2) параметр «Характеристики товара» (obyavlenie.php) содержит
информацию о максимальном весе пользователя, гарантии, кол-ве стояк,
диаметр и комплектации, для перехода на страницу используется переменная
«id» глобального массива $ _GET и присваивается к ключевому полю «id»
таблицы, где хранятся характеристики недвижимости, вывод характеристик
недвижимости осуществляет SQL-запрос: «SELECT * FROM katalog WHERE
id = '$ data»;
3) в параметре «Добавить в корзину» (basket.php) посетитель сайта
может добавить в корзину товар, после нажатия кнопки «в корзину», в шапке
страницы появится цифра на это окно осуществляет переменная «id»
глобального массива $ _GET, которая присваивается в поле «auto» таблицы,
для этого используется SQL-запрос: «SELECT * FROM katalog WHERE auto
= '$ id'».
Перейти на главную страницу сайта, можно осуществить с любой
страницы, где бы вы не находились, нажав на картинку, находящуюся в
левом верхнем углу.
45

Навигацию по всем разделам можно осуществлять с любой страницы


для этого существуют соответствующие кнопки с названиями всех
доступных разделов.

5.1.4 Возможности для посетителей сайта

Посетитель данного сайта, пройдясь по его страницам и разделам,


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

5.1.5 Возможности для администраторов сайта

Администратор сайта отвечает за весь наполненный контент сайта. Для


входа в администраторский раздел, администратор обязан авторизоваться
(логин и пароль). У администратора есть следующие полномочия:
а) управление карточками товара;
б) добавление карточек товара;
в) менять акции;
г) редактировать страницы сайта, заменять контент, добавлять, а
также удалять информацию;
д) добавление новых разделов каталога;
46

е) редактирование разделов каталога;


ж) установка дополнительных плагинов;
з) получать уведомление о заказах;
и) слежение за работой сервера;
к) периодическое резервное копирование файлов сайта и баз данных.

5.2 Описание реализации методов проекта

5.2.1 Модуль работы «Регистрация»

Регистрация — это процесс сообщения сайту своих данные для


получения доступа к полному функционалу сайта, будь то дополнительные
возможности или доступ к ресурсам, которые не могут просматривать или
загружать неавторизированные пользователи, также это возможность
получить доступ к дополнительным возможностям на сайте, которые
недоступны гостям. Регистрация неразделима без авторизации. Фактически,
регистрация — это способ получить возможность войти на сайт. При
регистрации мы используем функцию - mysql_query, которая посылает
запрос MySQL. mysql_query (string query [, resource link_identifier]) посылает
запрос активной базе данных сервера, на который ссылается переданный
указатель. Страница регистрации на рисунке 5.9.
47

Рисунок 5.9 – Страница регистрации

Если параметр link_identifier опущен, используется последнее открытое


соединение. Если открытые соединения отсутствуют, функция пытается
соединиться с СУБД, аналогично функции mysql_connect() без параметров.
Результат запроса буферизируется. Только для запросов SELECT, SHOW,
EXPLAIN, DESCRIBE, mysql_query() возвращает указатель на результат
запроса, или FALSE если запрос не был выполнен. В остальных случаях
(INSERT, UPDATE, DELETE, DROP, и т.п.), mysql_query() возвращает TRUE
в случае успешного запроса и FALSE в случае ошибки. Значение не равное
FALSE говорит о том, что запрос был выполнен успешно. Он не говорит о
количестве затронутых или возвращённых рядов. Вполне возможна
ситуация, когда успешный запрос не затронет ни одного ряда. На странице
«Регистрация» данные введенные пользователем записываются с помощью
SQL запроса INSERT. На рисунке 5.10 изображена функция занесения
данных в базу [11].
48

Рисунок 5.10 – Пример функции регистрации из файла «api-


bestbatut.php»

Также это функция участвует не только в занесении пользовательских


данных в базу, но также с ее помощью мы проверяем, до того, как занести
пользователя и его данные, есть ли такой же пользователь под таким
логином. Осуществляется это с помощью SQL запроса SELECT, а также с
помощью этого запроса и функции mysql_query() мы извлекаем индификатор
пользователя. Но эта функция, в данных примерах, работает вместе с
функцией mysql_fetch_array(). ysql_fetch_array ( resource result [, int
result_type] ) - Обрабатывает ряд результата запроса, возвращает массив с
обработанным рядом результата запроса, или FALSE, если рядов больше нет.
В дополнении к хранению значений в массиве с численными индексами,
функция возвращает значения в массиве с индексами по названию колонок.
Важно заметить, что mysql_fetch_array() работает не медленне, чем
mysql_fetch_row(), в то время, как предоставляет более удобный доступ к
данным (см. рис. 5.11, 5.12) [11].
49

Рисунок 5.11– Пример проверки на существование похожего логина

Пример работы регистрации представлен на рис. 5.12.

Рисунок 5.12 – Пример регистрации

5.2.2 Модуль работы «Авторизация» и «Сессии»

Авторизация на сайте носит сквозной характер, то есть при вводе


Вашего логина/пароля Вам становятся доступными все дополнительные
сервисы сайта и интернет-магазина. Вашим логином в системе является Ваш
E-MAIL, пароль необходимо придумать лично. Если Вы забыли пароль, то
можете воспользоваться сервисом напоминания пароля. Изменить параметры
регистрации. При изменении Е-MAIL автоматически меняется логин для
входа в систему. Авторизация позволяет опознать посетителя сайта и
одновременно ограничить права доступа к определенным его ресурсам, и
50

возможностям неавторизованным пользователям. У владельца сайта и такого


же пользователя Интернета, могут возникнуть сомнения зачем это нужно,
ведь не проще ли открыть возможности всем посетителям. Цель авторизации
– это получение необходимой информации о человеке, его идентификация.
Естественно, эту информацию пользователь предоставляет добровольно и
используется она исключительно в целях распознавания пользователя. Так
как речь идет об интернет-магазине, авторизация значительно улучшает
юзабилити сайта. У пользователя появляется личная страничка с историей
заказов, в корзине могут храниться добавленные раньше товары, а форму
заказа ему заполнять уже не нужно. С помощью этого модуля пользователь
сможет оформить заказ на товар, а также получить поощрение от сайта в
виде различных акций [13].
Плюсы авторизации и преимущества владельцу сайта:
а) возможность распознать посетителя, что в свою очередь дает:
1) более подробную демографическую и иную информацию о
посетителях, благодаря чему можно лучше настроить фильтры в системе
контекстной рекламы и подобрать наиболее оптимальные ключевые слова
при раскрутке сайта;
2) возможность предоставить больше услуг и возможностей
(например, дополнительные функции в виде акций на vip, сохранения
истории объявлений и т.п.), что позволяет улучшать юзабилити, привлекая
больше постоянных посетителей.
б) ограничение прав пользования, тем или иным контентом,
преимущественно пользователю интернета;
в) дополнительные возможности.
Пример авторизации пользователя на сайте на рис. 5.13.
51

Рисунок 5.13 – Пример авторизации пользователя

Сессия на сайте – серия запросов к серверу, сделанных одним


пользователем в заданный промежуток времени. В течение сессии
пользователь обращается к тем либо иным страницам сайта, и каждый его
запрос отражается в логах сервера. Сессия считается завершенной, если в
течение 30 минут отпользователя не поступило к серверу ни одного нового
запроса. Сессия на сайте время от подсоединения пользователя к серверу до
обрыва связи или отсоединения.
Протокол HTTP является протоколом "без сохранения состояния". Это
означает, что данный протокол не имеет встроенного способа сохранения
состояния между двумя транзакциями. Т. е., когда пользователь открывает
сначала одну страницу сайта, а затем переходит на другую страницу этого же
сайта, то основываясь только на средствах, предоставляемых протоколом
HTTP невозможно установить, что оба запроса относятся к одному
пользователю. То есть необходим метод, при помощи которого было бы
возможно отслеживать информацию о пользователе в течение одного сеанса
связи с Web-сайтов. Одним из таких методов является управление сеансами
52

при помощи предназначенных для этого функций. Для нас важно то, что
сеанс по сути, представляет собой группу переменных, которые, в отличие от
обычных переменных, сохраняются и после завершения выполнения PHP-
сценария. При работе с сессиями различают следующие этапы:
а) открытие сессии;
б) регистрация переменных сессии и их использование;
в) закрытие сессии.
Открытие сессии. Самый простой способ открытия сессии заключается
в использовании функции session_start, которая вызывается в начале PHP-
сценария. Эта функция проверяет, существует ли идентификатор сессии и
если нет, то создает его. Если идентификатор текущей сессии уже
существует, то загружаются зарегистрированные переменные сессии.
Регистрация переменных сессии. После инициализации сессии
появляется возможность сохранять информацию в суперглобальном массиве
$_SESSION. Имеется файл single.php в котором в массив $_SESSION
сохраняется переменная [14].
После завершения работы с сессией нужно зарегистрировать все
переменные, а затем вызвать функцию unset() (см.рис. 5.14).

Рисунок 5.14 - Реализация метода «Сессии»


53

Пример алгоритма реализации «Авторизация» представленный на


псевдокоде на рис. 5.15.

Рисунок 5.15 - Реализация алгоритма «Авторизация»

5.2.3 Модуль работы «Личный кабинет»

Личный кабинет - это ваше индивидуальное рабочее пространство на


нашем сайте.
Данная услуга позволит всего один раз ввести личные данные и данные
о доставке и в последуйщем не указывать их приоформлении заказа. Так же
личный кабинет предоставляет возможность редактировать уже внесенные
ранее данные (см.рис. 5.16).

Рисунок 5.16 - Страница «Личный кабинет»


54

Алгоритм реализации изменения пользовательских данных, а именно


на примере изменения логина пользователя представлен на псевдокоде - рис.
5.17.

Рисунок 5.17 – Алгоритм изменения логина пользователя

5.2.4 Модуль корзины

Корзина заказов в интернет-магазине — это интерфейс, куда


пользователь может добавлять товары, которые он собирается купить
(см.рис. 5.18).
После того, как посетитель выберет необходимые изделия, он должен
перейти в интернет-корзину и оформить заказ.
Иконка в правом верхнем углу:
a) картинка должна быть интуитивно понятной: корзинка, тележка,
сумка и т.п.
b) иконка должна быть доступной на всех страницах сайта и
находиться на одном и том же месте.
55

Внутри корзины:
a) в веб-корзине покупатель может работать с изделиями:
просматривать, изменять варианты и количество, удалять, добавлять;
b) корзина должна выдавать стоимость каждого товара отдельно, а
также общую сумму товара;
c) если магазин работает со скидочными купонами - то у посетителя
должна быть возможность ввести код купона и увидеть цену изделий со
скидками.

Рисунок 5.18 – Страница корзина

На рисунке 5.19 продемонстрирован пример реализации модумя


корзина (basket.php). В данном случае корзина отображает товар, который
был добавлен, имеется возможность изменить конфигурации заказа или же
исключить товар из корзины. Так же в модуле можно выбрать вид доставки и
ввести данные для оформления заказа.
56

Рисунок 5.19 – Реализация модуля корзина

Для добавления товара в корзину была разработана функция


addbasket(), которая рассположена в файле script.js (см.рис. 5.20).

Рисунок 5.20 – Реализация функции addbasket()


57

5.2.5 Модуль забыли пароль

Если пользователь забыл пароль от личного кабинета, то он может


воспользоватся модулем «забал пароль» (см.рис. 5.21). Что бы востановить
пароль пользователю необходимо указать электронный адрес, на который,
зарегистрирован аккаунт и ему будет отправлен код подтверждения.

Рисунок 5.21 – Востановления пароля

Алгоритм востановления пароля (см.рис. 5.21) находится в файле api-


bestbatut.php, а также содержит в себе функцию генирации проверочного
кода.
58

Рисунок 5.22 – Процедура востановления пароля


59

6 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ ПРОГРАММНОЙ СИСТЕМЫ

6.1 Назначение программного средства.

Интернет-магазин «Bestbatut» предназначен для продажи батутов, а


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

6.2 Инструкция пользователя программным средством.

Для того чтобы зайти на сайт вам необходимо:


а) Ввести адрес нашего сайта «bestbatut.ru» в браузере;
б) Для работы в системе вы можете воспользоваться любым
браузером.
Главная страница сайта (см. рис. 6.1)
После того, как появится главное страница сайта, вы можете
перемещаться по сайту при помощи главного меню или просто листать вниз.
Также вы можете зарегистрироваться на сайте или войти на сайт, если вы
уже прошли регистрацию (см. рис. 6.2, 6.3).
60

Рисунок 6.1 – Главная страница сайта

Рисунок 6.2 – Авторизация


61

Рисунок 6.3 – Регистрация пользователей

Если вы забыли свой пароль, то вы можете воспользоваться формой


«Забыли пароль?». Вам необходимо будет ввести свой e-mail адрес и в
кратчайшие сроки к вам на почту придёт письмо с паролем, который был
сгенерирован специально для вас, и вы сможете спокойно войти на сайт, если
пароль для вас будет сложный и не запинающийся, то вы с легкостью можете
его поменять в своем личном кабинете (см. рис. 6.4, 6.5).

Рисунок 6.4 – «Забыли пароль?»


62

Рисунок 6.5 – Изменения пароля в личном кабинете

В личном кабинете пользователю предоставляется его личная


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

Рисунок 6.6 – Личный кабинет «Персональный данные»

По мимо основного меню на сайте имеется вертикальное выпадающее


меню, которое служит удобной навигацией по сайту. Оно имеет
63

информативную направленность, а также с этого меню можно перейти в


контакты или узнать дополнительную информацию о доставке (см. рис. 6.7).

Рисунок 6.7 – вертикальное выпадающие меню

Для того чтобы ознакомится с товаром можно пролистать вниз первую


страницу сайта и увидеть там самые популярные товары и специальные
предложения, (см. рис. 6.8), или же перейти в раздел каталог и ознакомится
со всем ассортиментом сразу (см. рис. 6.9). Весь каталог состоит из карточек
товаров, что является отличительной четрой интернет-магазинов, по
сравнению с обычным сайтом.

Рисунок 6.8 – Популярные товары


64

Рисунок 6.9 – Каталог товаров

Для того, чтобы узнать о конкретном товаре больше, необходимо, в


карточке товаров, нажать на товар и вас переместит на страницу со всей
подробной информацией (см. рис. 6.10).

Рисунок 6.10 – Пример карточки товаров


65

Для того чтобы заказать товар пользователю необходимо добавить


товар в корзину и перейти в нее, далее указать количество. После чего
пользовотель может увидеть финальную сумму заказа и нажать на кнопку
оформить заказ (см. рис. 6.11).

Рисунок 6.11 – Добавление в корзину

После добавления товара в корзину у надписи «Корзина» появится


цифры с количеством товаров. Для перехода в корзину необходимо нажать
на кнопку «Корзина» (см. рис. 6.12).

Рисунок 6.12 – Кнопка «Корзина»


66

После перехода в корзину (см. рис. 6.13), мы можем видеть все товары,
которые мы добавили, можем удалить любой товар, либо же изменить заказ.
Так же необходимо выбрать способ доставки.
Последний шаг – это нажать на кнопку «Оформить заказ» (см. рис.
6.14).

Рисунок 6.12 – Страница «Корзина»

Рисунок 6.13 – Кнопка «Оформить заказ»


67

Для того, чтобы связаться с продавцом товара, узнать график работы


или место нахождение кампании, необходимо, в меню, нажать кнопку
«Контакты» или пролистать вниз главный экран сайта, после чего мы
попадаем в раздел «Контакты» (см. рис. 6.14).

Рисунок 6.14 – Раздел «Контакты»


68

7 ТЕСТИРОВАНИЕ ПРОГРАММНОЙ СИСТЕМЫ

7.1 Выбор метода тестирования

Тестирование (испытание) – установление соответствия программы


заданным требованиям и программным документом.
Испытание программы, является одним из этапов работ общего
процесса разработки программ. Цель тестирования состоит в выявлении
наличия ошибок в программе.
Тестирование — это необычный процесс, разрушительный, так как его
цель заставить программу ошибиться.
Тестирование состоит из следующих этапов:
- проектирование тестов (главный этап);
- выполнение тестов программой на компьютере;
- анализ результатов тестирования.
Основными подходами (стратегиями) к проектированию тестов
являются: функциональный (на принципе «черный ящик») и структурный (на
принципе «белого ящика»).
Функциональные методы тестирования базируются на рассмотрении
программы как чёрного ящика. При этом внутренняя структура программы
не учитывается. Тесты составляются по внешним спецификациям
программы.
В структурных методах, для построения тестов используется
информация о структуре (блок-схема) программы.
К функциональному методу относятся:
- метод функциональных диаграмм;
- метод эквивалентного разбиения;
- метод анализа граничных условий (значений).
69

Метод функциональных диаграмм основывается на использовании


спецификации программы, написанных на естественном языке. Дает не
плохие тесты, не страдающие избыточностью и позволяет обнаружить
неполноту и неоднозначность в исходных спецификациях.
Целью метода эквивалентного разбиения, является разработка как
можно меньшего количества тестов, которые образуют точный набор для
всесторонней проверки программы.
Метод анализ граничных условий прост и дает хорошие тесты. У
метода существуют такие особенности:
- тесты разрабатывается так, чтобы проверялась каждая граница класса
эквивалентности;
- рассматриваются не только пространство входов (входные условия),
но и пространство выходных данных, то есть выходные данные
эквивалентности.
К структурным методам проектирования тестов относятся;
- метод покрытия операторов;
- метод покрытия переходов;
- метод покрытия условий;
- метод комбинаторного покрытия условий.
Для тестирования нашей программной системы был выбран
функциональный метод эквивалентного разбиения.

7.2 Разработка тестов

Протестируем этап регистрации нового пользователя. Форма


регистрации содержит email, пароль, подтверждение пароля и соглашение с
правилами сайта, данные поля являются обязательными для заполнения.
70

Правильные классы – входные данные, удовлетворяющие


функциональным характеристикам (все функции программы, условия,
свойства, описывающие входные данные).
Неправильные классы – входные данные, не удовлетворяющие
функциональным характеристикам, то есть все другие значения.
Классы эквивалентности приведены в таблице 7.1.

Таблица 7.1 – Классы эквивалентности


Функциональные Правильные Неправильные
характеристики классы эквивалентности классы
эквивалентности
Login Текстовое [1] длина > 15[3]
1<= длина <= 15[2] длина = 0[4]
Password Текстовое [5] длина > 20 [7]
1<= длина <= 20[6]
Fam Текстовое [9] длина > 20[12]
1<= длина <= 20 другой
[10] формат[14]
Name1 текстовое[15] длина > 20 [18]
1<= длина <= 20 другие символы
[17] [20]
Е-mail Текстовое [25] длина > 30 [27]
1<= длина <= 30 длина = 0 [28]
[26]
Телефон Текстовое [33] длина > 10 [36]
длина = 10 [34] длина < 10 [37]
формат «(000) 000- другой формат
00-00» [35] [38]
71

Рисунок 7.1 – Форма регистрации

Таблица 7.1 – Набор тестов для поля «E-mail»


Допустимые значения Недопустимые значения
Все буквы английского алфавита и Любые почтовые адреса без указания
цифры + @ + домен домена
Результаты
1. basenokav@mail.ru 1. basenokav
2. basenokav95@gmail.com 2. basenokav/9di
3. basenokav@yandex.ua 3. basenokav3mail.ru
4. basenokav@mail.ua 4. @mail.ua
72

Таблица 7.2 – Набор тестов для полей «Пароль»


Допустимые значения Недопустимые значения
Все буквы английского или русского Длина меньше 6 или больше 20
алфавитов, а также спец. символы
длиной больше 6 и меньше 20
Результаты
1. 123456 1. 123
2. йцук12 2. йцу
3. Qwert12 3. йцуке12345асывсысывсысывс
4. qwerйцу 4.
5.123йййййй 5. 33333
73

ВЫВОДЫ

В результате выполнения дипломного проекта были решены


следующие задачи:
а) сбор и анализ данных о подобных программных обеспечениях,
требований к внешнему виду и функциональности сайта;
б) ознакомление с технологиями среды разработки «WordPress»,
языком разметки HTML, CSS и языком программирования PHP, JavaScript;
в) формирование структуры сайта;
г) разработка проекта дизайна;
д) разработка удобной навигации, поиска информации на сайте;
е) рассмотреть вопросы охраны труда при эксплуатации ЭВМ.
Также была создана программная система интеренет-магазин
«Bestbatut». С помощью данной системы можно узнать больше о товаре,
производителе и совершать покупки в интернете.
Созданный программный продукт, по сравнению с другими
продуктами в исследуемой области, легкий в применении и не требует
больших финансовых затрат при его использовании. Интеренет-магазинов по
данной тематики на рынке ПО не мало, но и спрос на них до сих пор остается
большой. Также следует отметить, что данный проект при желании поможет
многим, в кротчайшие сроки, не выходя из дома, приобрести батут.
Достоинства:
Сайт имеет уникальный, привлекательный дизайн, фирменный стиль
компании продавца и в то же время простой в использовании и понятен для
посетителя с любым уровнем владения ПК. Администрировать интерне-
магазин может человек без особых знаний в сфере IT, что значительно
сокращает расходы на содержиние сайта.
74

Недостатки:
Эффективность продаж зависит не только о внешнего вида или
удобства интернет-магазина, но еще от количества ресурсов затраченых на
продвижение. Интернет-магазин – это всего лишь площадка для продажи
своих товаров, а что бы эту площадку регулярно посещали клиенты
необходимо вкладываться в SEO продвижение, использовать рекламу в
поисковых и контекстно-медийных сетях, любыми другими средствами
повышать узнаваемость бренда.
75

ПЕРЕЧЕНЬ ССЫЛОК

1. Википедия базы данных. Режим доступа:


https://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%
D0%B0%D0%BD%D0%BD%D1%8B%D1%85
2. Системные требования к сайту. Режим доступа:
http://www.invision.com.ua/system-requirements.html
3. Требования безопасности. Режим доступа:
http://hostinfo.ru/articles/security/rubric157/1240/
4. Архитектура программной системы. Режим доступа:
https://ru.wikipedia.org/wiki/%D0%90%D1%80%D1%85%D0%B8%D1%82%D0
%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BF%D1%80%D0%
BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%BE%D0%
B3%D0%BE_%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%
87%D0%B5%D0%BD%D0%B8%D1%8F
5. Википедия диаграммы UML. Режим доступа:
https://ru.wikipedia.org/wiki/UML
6. Википедия описание mysql. Режим доступа:
https://ru.wikipedia.org/wiki/MySQL
7. Википедия описание php. Режим доступа:
https://ru.wikipedia.org/wiki/PHP
8. Википедия описание CSS. Режим доступа:
https://ru.wikipedia.org/wiki/CSS
9. Разработка пользовательского интерфейса. Режим доступа:
http://www.4stud.info/user-interfaces/stages-of-development-user-interface.html
10. Типы интерфейсов. Режим доступа:
http://www.tehprog.ru/index.php_page=lecture42.html
76

11. Mysql и регистрация. Режим доступа:


http://ruseller.com/project.php?id=5
12. Captcha. Режим доступа: http://www.simplecoding.org/dobavlyaem-
captcha-k-forme.html
13. Авторизации и сессии. Режим доступа: http://phpfaq.ru/sessions
14. Сессии. Режим доступа: http://www.softtime.ru/bookphp/gl8_1.php
77

ПРИЛОЖЕНИЕ А

А.1 Экономическое обоснование необходимости разработки


программного продук

Результатом бакалаврской работы является интернет-магазин для


продажи батутов. Интернет-магазин «Bestbatut» – предоставляет
возможность управлять продажами товара через интернет. Позволяет
пользователям онлайн, в браузере ознакомится с существующими товаром,
узнать больше о производителе, заказать товар с доставкой, к себе домой и
оплатить через интернет.
Управление интернет-магазином «Bestbatut» - это процесс
планирования, координации и контроля бизнес - процессов. Суть данного
процесса заключается в оптимальном использовании, как интернет ресурсов,
так и трудовых ресурсов.
Продажа товаров через интернет-магазины - это один из популярных
online бизнесов. Даже на фоне большого количества интернет-магазинов,
рынок онлайн продаж продолжает расти из года в год. За 2019 год
количество продаж при помощи интернета выросло на 40% по сравнению с
продажами в оффлайне. Для того, чтобы оценить экономическую
эффективность программного комплекса необходимо рассчитать
экономические показатели.

А.2 Расчет экономических показателей программного продукта

А.2.1 Определение трудоемкости разработки


78

Для определения трудоемкости разработки программной системы


прежде всего составляется перечень всех основных этапов работ, которые
должны быть выполнены. Форма разделения работ по этапам с указанием
трудоемкости их выполнения приведены в таблице А.1.

Таблица А.1 - Распределение работ по этапам и их оценка


Этап проведения Вид работы на данном этапе Трудоемкость
выполнения, человеко-
часов
Получение Сбор данных о предметной 73
информации о области
предметной области Обработка данных 38
Разработка алгоритма 38
Разработка Разработка интерфейса 46
программы Верстка сайта 70
Разработка админ панели 50
Описание Написание документации 15
программы
Общая трудоемкость выполнения дипломной 330
работы

А.2.2 Расчет расходов на оплату труда

Расходы на оплату труда включают в себя расход на оплату труда всех


работников, задействованных в работе над программным продуктом.
Перечень работников для расчетов является следующим:
- Разработчик программы;
- Руководитель диплома;
- Консультант по нормоконтрол.;
- Консультант по экономической части;
- Консультант по охране труда.
79

Общая сумма расходов на оплату труда ( ЗТР ) определяется по форме,

приведенной в таблице А.2.

Таблица А.2 - расходы на оплату труда


Трудоемкость Сума, руб
Категория Почасовая ставка,
разработки ПС,
работника руб / год
человеко-часов
Разработчик 330 100 330000
программы
Наставник 20 150 3000
диплома
Консультант по 2 200 400
нормоконтролю
Консультант по 2 200 400
экономической
части
Консультант по 2 200 400
охране труда
37200

Согласно статистике, сумма разработки интернет-магазина не может


быть больше 33000 руб.
Общая сумма расходов на оплату труда ( ЗТР ) определяется по формуле
(А.1):
n

ЗТР  ЧС i  Т i ,
i 1
(А.1)

де ЧС i - почасовая ставка i-го работника, грн.,

Т - время на разработку ПС, час


i

i - категория работника,

n - количество работников, занятых разработкой ПС.


Общее время работы программиста Т определяется по таблице А.1, и
равно 330 часов.
80

Установлены следующие нормы затрат рабочего времени на одну


дипломную работу: руководитель работы - 20 часов, консультант по норме
контроля – 2 часа, консультант по экономической части – 2 часа, консультант
по охране труда – 2 часа.
Среднечасовая заработная плата разработчика рассчитывается по
формуле (А.2):

ЗП
ЧС  i
, (А.2)
i
ФРВ i

где ЗП i
– среднемесячная заработная плата разработчика ПС (15000),
руб.;

ФРВ – среднемесячный фонд рабочего времени (примерно 150 часов в


i

месяц).
Стоимость одного часа работы студента-программиста равна формуле
(А.3):
15000
ЧС 1

150
 100 руб.

(А.3)
Общая сумма расходов на оплату труда равна формуле (А.4):
Зтр = 330 ∗ 100 + 20 ∗ 150 + 2 ∗ 200 + 20 ∗ 200 + 2 ∗ 200 = 37200руб. (А.4)
К статье «Отчисления на социальные нужды» включаются сумма
социального налога, составляет 34.0% от расходов на оплату труда всех
работников, занятых выполнением ВС.
Отчисления на социальные нужды составят формулу (А.5):
Зсн = 37200 ∗ 0.34 = 12648руб. (А.5)
Теперь мы можем рассчитать общие затраты на оплату труда
работников, задействованных в разработке ПС. Общие расходы составят
формулу (А.6):
Зоб = Зтр + Зсн = 37200 + 12648 = 49848руб. (А.6)
81

А.2.3 Расчет стоимости машинной часа работы компьютера

Для расчета значения этого показателя необходима следующая


информация:
a) стоимость ЭВМ - 25000 руб .;
б) мощность ЭВМ - 0.4 кВт .;
в) стоимость электроэнергии кВт / ч - 1 руб .;
г) количество рабочих дней в году - 200 дней.
Стоимость машинного часа рассчитывается по формуле (А.7):
С м.ч.=(Ак+Сэ+Оэ+См)/Трк, (А.7)
где Ак – амортизация компьютера, руб/год формула (А.8)
Ак=К*nа, (А.8)
где K- стоимость компьютера, руб
nа – норма амортизации (25% от стоимости ЕОМ), единиц (0<nа<1)
Ак =25000 * 0.25 = 6250 руб
Сэ – стоимость потребляемой энергии в год формула (А.9, А.10)
Сэ=N*Цэ*Трк, (А.9)
Трк= Кдн* tр.д. , (А.10)
где N – мощность потребления компьютера, кВт
Цэ – стоимость 1 кВт, руб
Кд – количество дней использования компьютера в течении года
(Кд<=365)
tр.д. – количество часов работы компьютера на протяжении рабочего
дня (8 часов) (1<=tр.д.<=24)
Трк=200*8=1600 часов (рабочих часов в году)
Сэ=0.4*1*1600=640 руб
Оэ – стоимость технического обеспечения эксплуатации компьютера
(услуги электриков, сервисных фирм)
82

Оэ =500 руб – по факту (ремонт компьютера и профилактика)

См – стоимость расходных материалов (распечатка, бумага)


См = 300 руб – по факту
С м.ч= (750+640+500+300)/1600=1.36 руб

А.2.4 Расчет затрат на создание программного комплекса

Для расчета значения этого показателя необходима следующая


информация:
a) время на ЭВМ за весь период разработки ПС - 330 человеко-часов
(исходя из таблицы А.1 учитываем виды работ, производимых на
компьютере);
б) при разработке системы были использованы следующие
программные средства (ПО): Google Chrom, Denwer, WordPress, что являются
бесплатными. Формула (А.11, А.12)
Спо= Смв+Сор+ Са+Апо, (А.11)
Смв= Смч*tр, (А.12)
де Смв – стоимость машинного времени
tр - затраченное на разработку ПС, человеко-час
Смв=1.36*330=448.8 руб
Сор – расходы на почасовую оплату труда работников, руб
Сор= 37200 руб (пункт А.2.2)
Са – стоимость аренды помещения, руб (в нашем случае аренда = 0)
Апо – стоимость используемого специализированного ПО формула
(А.13)
Апо = Ппо* nан, (А.13)
где Ппо – стоимость используемого специализированного ПО
83

nан – норма амортизации ненормативных активов по каждому


специальному ПО (25% ПО)
В нашем случае Апо = 0 руб, потому использовалось свободно
распространяемое ПО.
Спо=448.8 +37200=37648.8 руб.

А.2.5 Расчет цены программного продукта

Цена программного продукта определяется по формуле (А.14):


ЦПП = ЗПЗ∙( НП +1)/ N, (А.14)
где:
ЧП - нормативная прибыль разработчиков. Принимается в размере 40%
от стоимости разработки;
N - число возможных продаж.
Цена программного продукта составляет:
Ц п.п. = (37200 *(1+0.4))/1=52080 руб

А.2.6 Расчет экономической эффективности

Доходы предполагается получать из одного источника:


а) продажа товара
Доход от продажи товара за год составляет: 25000руб / мес * 12 мес =
300000 грн.
Текущая стоимость = 300000 * 1 / (1 + 0.3) = 230800 руб
На рисунке А.1 изображен экономический эффект от использования
программного продукта.
84

-52080 230800

0 11 год
год

Рисунок А.1 - Экономический эффект от использования


программного продукта

Чистая текущая стоимость = Текущая стоимость – Спо.


Чистая текущая стоимость = 230800 - 52080 = 178720 руб > 0
Таким образом, в результате произведенных расчетов показателей
экономической эффективности от использования программной системы
можно сделать вывод, что разработка интернет-магазина «Bestbatut» сама по
себе является экономически эффективной.
85

ПРИЛОЖЕНИЕ Б

Б.1 Влияние эргономических характеристик рабочего места на


работоспособность и здоровье работника

При высоких темпах компьютеризации вопросом безопасности и


гигиены труда работающих не всегда уделялось должное внимание. В связи с
этим на практике имеют место многочисленные нарушения правил
устройства и содержания помещений, не соблюдаются требования по
устройству рабочих мест – поддержанию температурно-влажностного
режима и аэроионного состава воздуха, не выполняются требования
относительно режима труда и отдыха работающих их инструктирования по
безопасности и гигиене труда и т.д.
Работники, работающие с персональными компьютерами, со временем
жалуются на недомогания. Сюда относятся: повышенная утомляемость, боль
в глазах, повышенная чувствительность к яркому свету, нарушения резкости
изображения; в результате чего возникают: близорукость, головные боли и
нарушения сна, утомление мышц рук и позвоночника, а также боли в области
рук, шеи и спины [15]. Поэтому необходимо соблюдать основные требования
к организации рабочих мест при эксплуатации ПЭВМ. Сюда относятся
требования: к помещениям, к микроклимату, содержанию вредных
химических веществ и аэроионов в воздухе; к параметрам физических
факторов (шум на рабочих местах); к освещенности помещений и рабочих
мест; к организации и оборудованию рабочих мест; к организации режима
труда и отдыха.
Помещения. Производственные и административные помещения в
которых для работы используется вычислительная техника, не должны
граничить с помещениями, в которых уровни шума и вибрации превышают
86

нормируемые значения (механические цеха, мастерские и т.п.). Помещения


должны иметь естественное и искусственное освещение.
Оптимальное количество рабочих мест с персональным компьютером в
одном помещении должно определяться исходя из расчета требуемой
площади на одно рабочее место не менее 6,0 м2 при объеме 20,0 м3 [2].
Для внутренней отделки интерьера помещений должны использоваться
диффузно-отражающие материалы с коэффициентом отражения для потолка
– 0,7-0,8; для стен – 0,5-0,6; для пола – 0,3-0,5. Поверхность пола должна
быть ровной, без выбоин, нескользкой, удобной для очистки и влажной
уборки.
Оптимальные параметры микроклимата для помещений с ПЭВМ (см.
табл. Б.1).

Таблица Б.1 - Оптимальные параметры микроклимата


Период года Категория Температура Относительная Скорость
работ воздуха, С
0
не влажность воздуха, движения
более % воздуха, м/с
Холодный легкая - 1а 22 -24 40 - 60 0,1
легкая - 1б 21 – 23 40 - 60 0,1
Теплый легкая - 1а 23 – 25 40 - 60 0,1
легкая - 1б 22 – 24 40 - 60 0,2

Примечания: к категории 1а относятся работы, производимые сидя и не


требующие физического напряжения, при которых расход энергии
составляет до 120 ккал/ч; к категории 1б относятся работы, производимые
сидя, стоя или связанные с ходьбой и сопровождающиеся некоторым
физическим напряжением, при которых расход энергии составляет от 120 до
150 ккал/ч [2].
87

Работа программиста относится к категории легкой - 1а, так как их


работа производится сидя и не требует физического напряжения.
Зачастую при организации рабочих мест для работающих на ПЭВМ не
учитывается в должной мере то обстоятельство, что ВДТ генерирует
рентгеновское, радиочастотное излучение.
Работающий компьютер приводит к повышению температуры и
снижению влажности воздуха. Длительная работа компьютера приводит к
снижению концентрации кислорода, концентрация озона при этом наоборот
увеличивается.
Шум на рабочих местах. В производственных помещениях
эксплуатации ПЭВМ уровни шума на рабочих местах не должны превышать
значений, установленных для данных видов трудовой деятельности (см. табл.
Б.2).

Таблица Б.2 – шум на рабочих местах


Катего- Уровни звукового давления, дБ в октавных полосах со Уровни
рия среднегеометрическими частотами, Гц звука,
нормы эквивалент-
шума 31,5 63 125 250 500 1000 2000 4000 8000 ные уровни
звука, дБА
1 2 3 4 5 6 7 8 9 10 11
I 86 71 61 54 49 45 42 40 38 50
1 2 3 4 5 6 7 8 9 10 11
II 93 79 70 63 58 55 52 50 49 60
III 96 83 74 68 63 60 57 55 54 65
IV 103 91 83 77 73 70 68 66 64 75

При выполнении работниками основной работы на ПЭВМ (категория I)


уровень шума на рабочем месте не должен превышать 50дБА.
88

Снизить уровень шума можно использованием звукопоглощающих


материалов для отделки помещений, разрешенных органами
Освещенность. Помещения с ПЭВМ должны иметь естественное и
искусственное освещение. Естественное освещение должно осуществляться
через светопроемы, ориентированные преимущественно на север и северо-
восток и обеспечивать коэффициент естественной освещенности (КЕО) не
ниже 1,5%.
Освещенность на поверхности рабочего стола в зоне размещения
рабочего документа должна быть 300-500 лк. Местное освещение не должно
создавать бликов на поверхности экрана и увеличивать освещенность экрана
более 300 лк.
Искусственное освещение должно осуществляться системой общего
равномерного освещения. В качестве источников света при искусственном
освещении должны применяться преимущественно люминесцентные лампы.
Допускается применение ламп накаливания в светильниках местного
освещения.
Освещение лучше осуществлять в виде сплошных или прерывистых
линий светильников, расположенных слева от рабочих мест. При подсвете
настольной лампы необходимо стремиться к уменьшению контраста между
светлым экраном и окружающим фоном. С этих позиций наилучший
результат создают лампы, размещаемые за экраном.

Б.2 Оценка особенностей трудовой деятельности работников, объема и


интенсивности информационных потоков

Рабочее место – это часть пространства, в котором человек


преимущественно осуществляет трудовую деятельность и проводит большую
часть рабочего времени. Рабочие места программиста оснащены
89

персональными компьютерами и другой дополнительной техникой. Итак,


труд программиста связан с компьютерами, а соответственно, и с
дополнительными вредными факторами, так как работа с компьютерами
обычно связана с повышенным нервно-психическим напряжением.
Причинами этого являются: переработка больших объемов информации;
необходимость поддержания навязываемого компьютером ритма
интеллектуальной деятельности.

Б.3 Проектирование мер, обеспечивающих эргономические требования


к организации рабочего места и профилактики утомления

Площадь кабинета составляет 18 м2, где работает три программиста,


что является нормой для данного количества рабочих мест с персональными
компьютерами. Поверхность пола вполне ровная и удобная для влажной
уборки.
Таким образом, можно сделать выводы, что требования к помещениям
для эксплуатации ПЭВМ в соответствуют нормам.
Для улучшения климата помещения необходимо:
 использовать устройства для ионизации и увлажнения воздуха;
 применять модели мониторов, прошедшие проверку на
безопасность;
 ежедневно проводить влажную уборку помещений и не реже 1 раза
в смену удалять пыль с экранов при выключенном дисплее.
Рабочее помещение бухгалтерии ОАО «МПЗ» защищено от прямых
солнечных лучей, так как расположено в северо-восточной части здания, а
также предусмотрены солнцезащитные устройства: жалюзи, шторы и т.п.
При размещении рабочих мест с ПЭВМ должно учитываться
расстояние между рабочими столами с мониторами (в направлении тыла
90

поверхности одного монитора и экрана другого монитора), которое должно


быть не менее 2,0 м, а расстояние между боковыми поверхностями
мониторов – не менее 1,2 м.. При работе с компьютером экран
видеомонитора должен находиться от глаз пользователя на оптимальном
расстоянии 600-700 мм, но не ближе 500 мм с учетом размеров алфавитно-
цифровых знаков и символов. Плоскость экрана должна быть
перпендикулярна нормальной линии взгляда, сидеть желательно прямо перед
экраном, а не сбоку, экран должен находиться примерно на 20 градусов ниже
уровня глаз.
Конструкция рабочего стола должна обеспечивать оптимальное
размещение на рабочей поверхности используемого оборудования. Высота
рабочей поверхности стола должна регулироваться в пределах 680-800 мм .
Хорошо, если клавиатура не является жестко связанной с дисплейным
устройством, что дает возможность изменять место ее расположения для
принятия наиболее удобной рабочей позы. Наклон клавиатуры должен
находиться в пределах 10-15 угловых градусов от горизонтали.
Нежелательно работать на клавиатуре непрерывно более 30 минут.
Конструкция рабочего стула (кресла) должна обеспечивать
поддержание рациональной рабочей позы при работе на ПЭВМ, позволять
изменять позу с целью снижения статистического напряжения мышц шейно-
плечевой области и спины для предупреждения развития утомления. Рабочий
стол должен иметь свободное пространство для ног (см. рис. Б.1) .
91

Рисунок Б.1 - Требования к мебели при работе с ПК

Для обеспечения оптимальной работоспособности и сохранения


здоровья работников на протяжении рабочей смены должны соблюдаться
режимы труда и отдыха (регламентированные перерывы). Время перерывов в
течение рабочей смены следует устанавливать в зависимости от ее
продолжительности, вида и категории трудовой деятельности (см. табл. Б.3).

Таблица Б.3 - Время регламентных перерывов


Категория Уровень нагрузки за рабочую смену Суммарное время
работы с при видах работ с ВДТ регламентированных перерывов,
ВДТ и мин
ПЭВМ группа А, группа Б, группа В, при 8 - ми при 12 - ти
кол. знаков кол. знаков час часовой смене часовой смене
1 2 3 4 5 6
I до 20000 до 15000 до 2,0 30 70
II до 40000 до 30000 до 4,0 50 90
III до 60000 до 60000 до 6,0 70 120

Труд программистов относится к I категории при 8-ми часовой рабочей


смене, а уровень нагрузки в зависимости от объема работ, может меняться:
группа А, количество знаков до 20000 – работа по считыванию информации с
92

экрана ПЭВМ с предварительным запросом – при формировании или


получении текущих и сводных отчетов; группа Б, количество знаков до 15000
– работа по вводу информации – при вводе первичных документов; группа В,
до 2 часов – творческая работа в режиме диалога с ПЭВМ.
Таким образом, для программистов рекомендуется проводить
перерывы через 2 часа от начала рабочей смены и через 2 часа после
обеденного перерыва продолжительностью 15 минут каждый.
Из вышеизложенного следует, что для высокой работоспособности и
получения эффективной отдачи от труда работников, с наименьшим
ущербом для их состоянию здоровья, необходимо:
 правильно, в соответствии с научно разработанными нормативами,
организовать рабочие места;
 поддерживать микроклимат и аэроионный состав воздуха рабочей
зоны;
ПЕРЕЧЕНЬ ССЫЛОК

1. СанПиН 2.2.2/2.4.1340-03 «Гигиенические требования к


персональным электронно-вычислительным машинам (ПЭВМ) и
организации работы»
2. Федеральный закон № 52-ФЗ от 30.03.99 г. О санитарно
эпидемиологическом благополучии населения.
3. Федеральный закон от 30 марта 1999 г. № 52-ФЗ. О санитарно-
эпидемиологическом благополучии населения. (с изменениями и
дополнениями)
.
93

ПРИЛОЖЕНИЕ В

Листинг
94

ПРИЛОЖЕНИЕ Д

ЭКРАННЫЕ ФОРМЫ
Главная страница.
95
96
97
98

Страница корзина.
99

Страница каталог.
100

Страница товара.

Страница входа.
101

Страница личные данные.