Разработка интернет-сайта ООО "Каис+"
Создание интернет-сайта для ООО "КАИС +" для привлечения пользователей и снижения нагрузки на секретаря организации. Требования к программному обеспечению. Функциональная блок-схема интернет-форума. Методика защиты от несанкционированного доступа.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 21.02.2016 |
Размер файла | 1,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru//
Размещено на http://www.allbest.ru//
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
ДИПЛОМНЫЙ ПРОЕКТ НА ТЕМУ:
Разработка интернет-сайта ООО «Каис+»
ВВЕДЕНИЕ
ООО «КАИС +» организация которая проектирует, устанавливает и обслуживает пожарные сигнализации.
Для того, чтобы люди могли получить более полную информацию об услугах, новостях необходимо разработать Интернет-сайт.
Интернет-сайт должен быть рассчитан на среднестатистического малоопытного пользователя сети Интернет. Поэтому, наряду с применением графических дизайн-технологий, интерфейс сайта должен быть максимально упрощен и достаточно удобен и информативен.
Интернет-сайт должен носить не только информационно-ознакомительный характер, но также содержит элементы рекламного характера.
С точки зрения системного администратора, в чьи функции входят поддержание работоспособности Интернет сайта, регулярное обновление и др., проект требует к себе минимум затрат по эксплуатации и администрированию, и каких либо проблем, а также необходимость в существенных затратах времени и финансовых средств при администрировании, не возникает.
I. СПЕЦИАЛЬНАЯ ЧАСТЬ.ПОСТАНОВКА ЗАДАЧИ
Целями и задачами данного проекта является создание интернет-сайта для ООО «КАИС +», для привлечения пользователей и снижения нагрузки на секретаря организации. Сайт должен отвечать следующим требованиям:
Информация, находящаяся на интернет-сайте должна быть наиболее содержательной и лаконичной, чтобы не перегружать посетителя сайта обилием информации.
Информация должна быть тщательно отсортированной по категорям, чтобы пользователю не приходилось тратить время на поиск нужной ему информации.
Интерфейс сайта должен быть максимально простым и интуитивно-понятным.
Внешний интерфейс должен быть привлекательным, функциональным, но не перегруженным различными элементами управления. Цветовая гамма, а также дизайн-оформление должно соответсвовать тематике сайта.
Внешний интерфейс, а также текстовое содержимое сайта, должно по возможности носить не только информирующий, но и рекламный характер.
Интерфейс администратора должен быть максимально функциональным и не должен содержать ненужных элементов.
На сайте, помимо основных элементов, должны присутствовать процедуры регистрации, а также системы защиты от несанкционированного и неавторизированного доступа.
На стадии разработки интернет-сайта, разработчику было поставлено несколько задач:
Разработать функциональную схему информативной части интернет-сайта, собрать и отфильтровать всю предоставленную заказчиком информацию. Выделить наиболее приоритетные части и скомпоновать их таким образом, чтобы при размещении информации на сайте, пользователю предоставлялась максимальная свобода в выборе нужной информации по разделам, а также быстрый доступ к нужной информации.
Разработать рабочию часть проекта с использованием технологий Java Script, PHP, HTML, Dynamic HTML. Сборка и компоновка отдельных программных модулей, процедур и блоков, представляющих компоненты программного «движка» (основы).
Разработка дизайна внешнего интерфейса. Создание дизайнерских шаблонов внешнего интерфейса и согласование с заказчиком о наиболее оптимальном решении, касающегося дизайна. Утверждение окончательного варианта внешнего интерфейса интернет-сайта.
Сборка и настройка модулей и процедур в единое программное целое, а также последующая сборка и тестирование.
2. ФОРМАЛИЗАЦИЯ
Для построения необходимо провести формализацию задачи, являющуюся необходимым этапом разработки задачи и заключающуюся в построении структуры интернет-сайта, таблиц для хранения информации, схемы их взаимосвязей и описания алгоритмов обработки.
Как правило, разработка проекта реализации задачи выполняется в несколько этапов и начинается с анализа той информации, которая является выходной (регистрация пользователей и сообщения на форум). Только после выяснения структуры и состава этой информации, формулировки запросов для получения данных, можно сделать вывод о структуре и составе сайта. Так как информация о зарегестрированных пользователях и сообщениях на форуме будет храниться в таблицах базы данных MySQL, то необходимым этапом формализации задачи является нормализация базы, которая по сути представляет собой процесс оптимизации базы.
На первом этапе опеределяются поля ввода данных для регистрации пользователей непосредственно на сайте. Затем уточняется структура полей в таблицах и определяются правила ввода. После этого происходит возврат к проектированию запросов для вывода в форум сообщений, проектируются собственно входные и выходные формы. На заключительном этапе создается меню и различные интерфейсные промежуточные формы. Затем, в процессе отладки и доработки, возможен возврат на любой этап процесса разработки.
В следующих разделах пояснительной записки все объекты задачи рассматриваются более подробно.
3. ОПИСАНИЕ СРЕДЫ ПРОГРАММИРОВАНИЯ.
Всемирная паутина World Wide Web (WWW) соткана из Web-страниц, которые создаются с помощью языка разметки гипертекста HTML (HyperText Markup Language). Хотя многие говорят о программировании на этом языке, HTML вовсе не является языком программирования в традиционном понимании. HTML - язык разметки документа. При разработке HTML-документа выполняется разметка текстового документа точно так же, как это делает редактор при помощи красного карандаша. Эти пометки служат для указания формы представления информации, содержащейся в документе.
Каждый раз, когда пользователь открывает Web-страницу, он на самом деле открывает документ, написанный на HTML. Все Web-документы отформатированы с помощью языка HTML, и все гиперссылки, с помощью которых пользователь легко перемещается со страницы на страницу, также организованы средствами языка HTML. И те цветные изображения, которые встречаются на Web-страницах, и заполняемые формы, и бегущие заголовки - все это мы видим благодаря языку HTML.
Специальные программы просмотра HTML-документов, которые часто называют браузерами, служат для интерпретации файлов, размеченных по правилам языка HTML, форматирования их в виде Web-страниц и отображении их содержимого на экране компьютера пользователя. Существует большое количество программ-браузеров, разработанных различными компаниями, однако, на сегодняшний день из всего разнообразия программ явно выделяются две программы-лидера - Netscape Communicator и Microsoft Internet Explorer.
При написании, выходящих за рамки традиционной, статической методологии разработки web-страниц (то есть HTML), используется язык программирования РНР, который также может послужить ценным инструментом для создания и управления динамическим содержанием, который используется наряду с JavaScript, стилями, WML (Wireless Markup Language) и другими полезными языками. Благодаря наличию сотен стандартных функций РНР в состоянии решить практически любую задачу, которая может придти в голову разработчику. В нем имеется обширная поддержка создания графики и операций с ней, математических вычислений, средств электронной коммерции и таких популярных технологий, как XML (Extensible Markup Language), ODBC (Open Database Connectivity) и Macromedia Shockwave. Широкий выбор возможностей избавляет от необходимости рутинной и непростой работы по подключению сторонних модулей, поэтому многие разработчики со всего мира останавливают свой выбор на РНР.
РНР лучше всего охарактеризовать, как работающий на стороне сервера встроенный язык сценариев Web, позволяющий разработчикам быстро и эффективно строить динамические web-приложения. С позиций грамматики и синтаксиса РНР напоминает язык программирования С, хотя разработчики не постеснялись включить в него средства из других языков, в том числе из Perl, Java и C++. Среди ценных заимствованных возможностей -- поддержка регулярных выражений, мощные средства работы с массивами, объектно-ориентированная методология и обширная поддержка работы с базами данных.
Одним из главных достоинств РНР является тот факт, что он внедряется прямо в HTML-код, поэтому программисту не приходится писать программу с множеством команд для простого вывода HTML. Код HTML и РНР можно чередовать по мере необходимости.
Главным фактором при проектировании языка РНР является практичность. РНР должен предоставить программисту средства для быстрого и эффективного решения поставленных задач.
Практический характер РНР обусловлен четырьмя важными характеристиками:
традиционностью;
простотой;
эффективностью;
безопасностью;
Существует еще одна «характеристика», которая делает РНР особенно привлекательным: он распространяется бесплатно!
Традиционность
Язык РНР кажется знакомым программистам, работающим в разных областях. Многие конструкции языка позаимствованы из Си Perl, а нередко код РНР практически неотличим от того, что встречается в типичных программах С или Pascal. Это заметно снижает начальные усилия при изучении РНР.
Простота
Сценарий РНР может состоять из 10 000 строк или из одной строки -- все зависит от специфики вашей задачи. Вам не придется подгружать библиотеки, указывать специальные параметры компиляции или что-нибудь в этом роде. Механизм РНР просто начинает выполнять код после первой экранирующей последовательности (<?) и продолжает выполнение до того момента, когда он встретит парную экранирующую последовательность (?>). Если код имеет правильный синтаксис, он исполняется в точности так, как указал программист.
Эффективность
Эффективность является исключительно важным фактором при программировании для многопользовательских сред, к числу которых относится и WWW. В РНР 4.0 был реализован механизм выделения ресурсов и обеспечена улучшенная поддержка объектно-ориентированного программирования, а также средства управления сеансом. В последней версии появился и механизм подсчета ссылок (reference counting), предотвращающий выделение лишней памяти.
Безопасность
РНР предоставляет в распоряжение разработчиков и администраторов гибкие и эффективные средства безопасности, которые условно делятся на две категории: средства системного уровня.
Программный продукт, выполненный в соответствии с технологией Active Server Pages разработан и отлажен на системе соответствующей стандарту IIS (Internet Information Service).
Технология ASP (Active Server Pages) представляет собой разработку корпорации Microsoft, позволяющую быстро и удобно создавать активные динамические интернет-страницы. Суть данной технологии состоит в том что, при обращении клиента на сервер, происходит выполнение какого либо скрипта (программного блока) на Интернет-сервере, а пользователю в свою очередь, после обработки на сервере пересылается скомпилированный HTML -код, который в свою очередь интерпретируется интернет-броузером (средством для просмотра HTML страниц) на компьютере клиента (посетителя сайта). Удобство и преимущество данной технологии состоит в универсальности и межплатформенности, то есть программный продукт, выполненный по технологии ASP, не будет зависеть от особенностей программной и аппаратной архитектуры на клиентской стороне. Необходимо лишь, чтобы на клиентской части была установлена совместимая версия интернет-обозревателя.
Непосредственно сам программный продукт может находиться и успешно функционировать как на выделенном интернет-хостинге, так и на локальном сервере. При этом важно лишь чтобы программное обеспечение локального сервера, либо интернет хостинга, поддерживало технологию ASP. Удобство этой технологии состоит в её универсальности и простоте, позволяющей, тем не менее, создавать сколь угодно сложные проекты, способные всестороннее производить операции с базами данных Microsoft Access, а также SQL Database. Поддержка этих двух, наиболее распространенных форматов хранения данных, делает технологию ASP весьма популярной и часто используемой для создания различных динамических интернет-сайтов, таких как форумы, чаты, гостевые книги, средства удаленного администрирования, средства удаленной работы с базами данных, а также многое другое.
Принцип работы технологии ASP достаточно прост: при обращении клиента к серверу запускается соответствующий программный блок на сервере, после обработки которого, пользователю, в виде результата пересылается откомпилированный программный код на языке HTML, который свою очередь интерпретируется интернет-броузером на компьютере клиента. Удобство в данном случае состоит в том, что все операции по обработке производятся на сервере, а клиенту пересылаются результаты обработки в виде HTML кода, с которым совместимы все существующие на данный момент типы интернет-броузеров.
Локальный компьютер на клиентской части, при этом совсем не обязательно должен иметь в составе своей операционной системы какие либо средства разработки отладки и выполнения ASP продуктов. Все что требуется от операционной системы на клиентской части, это наличие средства просмотра HTML-страниц интернета (интернет-броузер), при этом операционная система, а также особенности аппаратной архитектуры на клиентской части, совершенно не играют никакой роли. Важно лишь чтобы интернет-броузер на клиентской части был совместим с технологиями сопутствующими технологии HTML, для корректного отображения и интерпретации интернет-страниц.
То же самое можно сказать и о сервере, - поставщике данных. Но в этом случае важно лишь чтобы установленный на нем комплекс программного обеспечения позволял выполнять программные блоки, выполненные в соответствии с технологией ASP, а также обладал значительными вычислительными ресурсами.
Основной особенностью и предназначением технологии ASP является способность работы с базами данных. Данная технология позволяет успешно работать с базами данных, выполненными в соответствии со стандартами разработанными корпорацией Microsoft (базы данных Access 97 \ 2000), а также работать с базами данных, выполненных в популярном на сегодняшний день формате SQL (Structure Query Language). Применение того или иного формата хранения данных зависит от конкретной специализации ASP проекта. Если проект расчитан на сравнительно небольшое количество одновременно работающих с ним пользователей, а также выполнение сравнительно несложных операций с базой данных, то в данном случае вполне целесообразным будет использование совместно с ASP проектом базу данных в формате Microsoft Access. Если же планируется большое количество сложных операций с базой данных при большом количестве обращений к серверу одновременно, то в данном случае необходимо использование формата хранения данных в виде базы данных SQL.
Таким образом, исходя из вышесказанного можно сделать вывод что технология ASP является на сегодняшний день практичной и востребованной технологией создания и функционирования динамических интерактивных интернет-приложений.
4. ТРЕБОВАНИЯ К ТЕХНИЧЕСКОМУ ОБЕСПЕЧЕНИЮ
Минимальные требования:
Процессор: Intel 80486 DX, либо AMD K6-1 100 МГЦ.
ОЗУ: 16 Мб
Видеокарта: совместимая со стандартом VESA, VGA, либо SuperVGA видеорежим.
Видеопамять: 512 КБ - 1 МБ
Монитор: VESA VGA \ SuperVGA 14”
Жесткий диск: - достаточный для функционирования 32-битной операционной системы Windows 95, либо аналогичной ей. Ориентировочно емкостью - 1 Гб памяти, для файла подкачки (SWAP) необходимо 50 Мб на жестком диске.
Модем: Внешний, с аппаратной эмуляцией обработки сигнала, 28800 bps \ 33600 bps.
Либо сетевая карта Lan Adapter 10 megabit.
Рекомендуемые требования:
Процессор: Intel Pentium 2, либо AMD K6-2, с частотой не ниже 233 МГЦ.
ОЗУ: 32\64 Мб
Видеокарта: совместимая со стандартом SuperVGA
Видеопамять: 2 - 4 Мб
Монитор: SuperVGA 15” \ 17”
Жесткий диск: 2 Гб, свободное место для файла подкачки не менее 100 Мб
Модем: 56600 bps.
Либо сетевая карта Lan Adapter 10 \ 100 megabit.
4.1 Требования к программному обеспечению
Операционная система: 32 - разрядная, семейства Windows, либо аналогичная, с поддержкой сетевых протоколов TCP \ IP
Интернет-обозреватель: Internet Explorer v.4.0, Opera v.3.02 rus, Netscape Navigator 4.0, либо другие, аналогичные, с поддержкой кириллицы (кодовой страницы windows-1251, КОИ-8), а также с поддержкой интерпретации объектно-ориентированных языков JavaScript, VB Script, Dynamic HTML.
5. МЕТОДИКА РАЗРАБОТКИ ПРОЕКТА
Данный проект выполнялся по следующей методике: сбор информации, компоновка полученной информации, создание шаблонов и программных компонентов, а также тестирование отладка и сборка готовых программных компонентов в единый программный продукт.
Под сбором информации подразумевается получение необходимой информации от заказчика, а также из дополнительных источников.
Следующим этапом разработки являлась селекция и компоновка всей собранной информации. Все полученные данные преобразовывались с помощью логической выборки, в набор упорядоченной по категориям информации. Вся информация была четко отсортирована по категориям, после чего была преобразована в четкую иерархическую структуру по категориям. Далее были созданы наработки готовых программных шаблонов, содержащих интерактивные компоненты.
Одной из основных и наиболее значимых задач при разработке интернет-сайта является создание оптимального дизайна интерфейса интернет-сайта. Для достижения оптимального эффекта, было разработано несколько графических дизайн-шаблонов внешнего интерфейса. Далее, после согласования с заказчиком, был отобран наиболее оптимальный вариант.
Интерфейс сайта должен носить не только привлекательный, но и рекламный характер оформления и не содержать лишних элементов. Не должно быть лишней информации, чтобы интерфейс не выглядел перегруженным, и загрузка сайта происходила в максимально короткое время. В связи с этим был выбран наиболее простой, но максимально функциональный вариант внешнего интерфейса. Интернет-сайт расчитан на любого пользователя интернета. Даже неопытные пользователи могут с успехом просмотреть его содержимое.
Следующим этапом разработки являлось создание пробных экспериментальных программных модулей программной основы (программного движка).
Особенностью данного этапа разработки является активное использование опыта других разработчиков. Для этого была использована информация, а также готовые демонстрационные программные компоненты, полученные из сети Интернет, путем поиска нужной информации на сайтах разработчиков любителей и разработчиков профессионалов. Далее, была также проведена селекция полученных данных и отборка наиболее подходящих из них, после этого, были внимательно изучены методы и принципы, лежащие в основе программных компонентов созданными независимыми разработчиками. После детального изучения принципов работы и применяемых методик программирования, были созданы программные шаблоны и процедуры для сборки рабочей части программного интернет-сайта. Далее следует этап разработки, в ходе которого производится тестирование и отладка отдельных программных компонентов и блоков, предназначенных для сборки готового проекта интернет-сайта.
Завершающим этапом разработки является сборка и тестирование готового проекта интернет-сайта. Методикой работы на данном этапе является многоплатформенное тестирование готового программного продукта. Готовый проект тестировался на работоспособность на локальном компьютере разработчика, на сетевом сервере, а также на различных операционных системах с установленным набором программных компонентов.
Выбор правильного алгоритма и методики разработки проекта, является залогом успешной работы разработчика при создании программного продукта. Грамотно спланированный алгоритм и методика разработки позволяют существенно сэкономить количество рабочих часов разработчика, что является благоприятным явлением, которое позволяет снизить как временные, так и материальные затраты на проект.
АЛГОРИТМИЗАЦИЯ ЗАДАЧИ.
Основной задачей при создании и разработки рабочей части проекта является создание полноценного функционирующего программного кода с внешней графической надстройкой (интерфейсом пользователя). Данная задача подразделяется на несколько этапов:
Создание функционального HTML кода для отображения внешних форм и элементов управления.
Создание активных элементов дизайна, базирующихся на объектно ориентированных языках JavaScript и VB Script.
Создание серверной программной ASP платформы для функционирования интерактивных компонентов работы с серверной базой данных.
Проще говоря, алгоритмизация задачи сводится к решению двух основных задач:
- Разработка функционального внешнего интерфейса пользователя, на языке HTML и Java Script.
- Разработка внутреннего, серверного компонента, базирующегося на технологии ASP, для функционирования интерактивных элементов программного продукта, специализирующихся на работе с базой данных.
5.1 ОПИСАНИЕ АЛГОРИТМА
В развернутом, подробном виде алгоритм задачи представляет собой следующее:
Создание шаблона внешнего интерфейса с применением технологии JavaScript, разработка дизайна визуальных компонентов: внешний вид интернет-странички, элементы управления.
Создание активных серверных ASP компонентов, позволяющих посетителям проходить процедуру регистрации на интернет-сайте.
Создание процедур аутентификации, проверки пароля посетителя и разграничения прав.
Создание процедур защиты от несанкционированного доступа и несанкционированной регистрации.
Создание программного ASP модуля интернет форума.
Создание обработчика всех возможных ошибок.
Тестирование и отладка.
В первом пункте описания алгоритма задачи, происходит разработка внешнего интерфейса. Под этим подразумевается создание внешнего вида интернет сайта, видимой его части. На данной стадии происходит разработка элементов внешнего интерфейса: создание различных визуальных форм, меню, отрисовка в графических редакторах различных элементов - кнопок меню, внешних баннеров, картинок, графических символов. После этого производится сборка из имеющихся в наличии, разработанных графических элементов внешнего интерфейса пользователя. После сборки, производится подгонка по размерам баннеров, элементов меню, таблиц и т.д.
Далее производится проверка на совместимость отображения на различных интернет-броузерах (обозревателях).
В ходе разработки, первоначально, проект интернет-сайта был прендназначен для просмотра его программой Opera версией не ниже 7.x, так как при использовании более ранней версии данного обозревателя могут некорректно отображаться некоторые элементы управления, форм, кнопок, и т.д.
Проект разрабатывался с учетом максимальной совместимости с различными типами интернет-обозревателей. Одним из достоинством данного проекта является его улучшенная совместимость не только с различными типами интернет-обозревателей, но и с различными типами разрешения локального компьютера.
Первоначально, интернет-сайт разрабатывался для использования и отображения его при разрешении 1366 * 768. Но если использовать более низкое или более высокое разрешение экрана, то в этом случае произойдет перемасштабирование всех видимых элементов интерфейса, и все видимые части его при этом будут отображаться вполне корректно.
Остальные элементы внешнего интерфейса пользователя также выполнены с учетом требований максимальной совместимости и простоты в использовании.
На второй стадии алгоритма производится создание процедуры регистрации на сайте. Процедура регистрации на сайте позволяет пользователю получить доступ к форуму. Процедура максимально упрощена и не требует от пользователя ввода каких либо дополнительных данных, кроме основных.
На форме регистрации присутствует два типа полей: обязательные для заполнения, и не обязательные для заполнения. Поля, обязательные для заполнения отмечены звездочкой « * ». Если при регистрации одно из обязательных полей не заполнено, это приводит к появлению сообщения об ошибке регистрации (включается обработчик ошибок).
Все поля могут заполняться русскими либо латинскими буквами алфавита. На третьей стадии разработки проекта производится создание программного алгоритма, позволяющего производить проверку данных в форме пароля пользователя, а также разграничение прав. Это означает, что повторная регистрация с тем же самым именем пользователя (Логин) невозможна и приводит к появлению сообщения об ошибке. Разграничение прав подразумевает под собой создание процедуры, позволяющей производить проверку пароля Модератора (администратора сайта), а также запрет на регистрацию пользователя с именем «Admin».
На четвертой стадии алгоритма производится создание внутренних механизмов защиты от несанкционированной регистрации и неавторизированного доступа. Несанкционированная регистрация подразумевает под собой регистрацию, с теми же учетными данными, которые имеются уже в базе данных. Суть механизма защиты от несанкционированной регистрации сводится к тому, чтобы недопустить повторную регистрацию пользователя с тем же значением «Логин».
«Логин» - это условное имя пользователя, под которым к нему будут обращаться на форуме.
В функции Модератора сайта входят: регулярное обновление форума, ответы на вопросы посетителей форума. Поэтому механизм защиты запрещает регистрацию пользователя с именем «Модератор», чтобы исключить нежелательные последствия.
Проверка пароля Модератора производится путем выборки из отдельной таблицы паролей в базе данных (для привилегированных пользователей).
Количество зарегистрированных привилегированных пользователей на форуме может быть сколько угодно. По умолчанию, привилегированным пользователем форума является Модератор.
Разграничение доступа для Администратора сайта, в проекте отсутствует, поскольку в этом нет никакой необходимости. В функции администратора сайта входит регулярное обновление информации непосредственно на самом сайте, не затрагивая при этом форум. Для этого необходим доступ к локальному, либо интернет-хостингу, на котором и будет располагаться и функционировать данный проект.
В пятом пункте алгоритма задачи производится создание программного модуля для функционирования интернет-форума. Также производится создание и разработка внешнего интерфейса интернет-форума, но поскольку разработка внешнего интерфейса производится в первом пункте алгоритма, то на данной стадии этому уделяется минимальное количество рабочего времени разработчика. Производится лишь минимальное улучшение и косметические доработки.
Интернет-форум является наиважнейшей частью проекта интернет-сайта, поэтому разработке механизма функционирования уделяется достаточно много времени. Производится многократное моделирование программных процессов, выявление и устранение всех возможных ошибок.
Особенности механизма функционирования форума состоят в том что зарегистрированный пользователь не может использовать никакой другой Логин, кроме того под каким он прошел процедуру авторизации. Этот механизм позволяет избежать ложных сообщений от несуществующих отправителей, а также позволяет избежать ситуаций когда посетитель форума представляется Модератором. Для этих целей разработан специальный механизм авторизации: перед тем как попасть на форум, посетитель проходит обязательную процедуру авторизации: проверка его персонального Логина и Пароля. Далее, если значение этих полей верно, то посетитель сайта попадает на форум, где он может отправлять сообщения только от своего имени, для чего присутствует специальный механизм блокировки.
На главной странице форума отображается несколько полей: Архив сообщений, Отправитель, Дата.
В таблице «Архив сообщений» отображается наличие всех имеющихся в базе данных форума сообщений. Напротив каждого сообщения обязательно присутствует значение «Отправитель», а также дата отправки сообщения.
Ответы на сообщения посетителей производит модератор форума. Пользователь может узнать, ответил ли модератор на его вопрос, глядя на архив сообщений. Ответное сообщение отображается немного смещенным вправо от общей колонки таблицы «Архив сообщений».
Форма отправки сообщения также максимально упрощена.
В верхнем поле «Отправитель» отображается Логин пользователя, работающего в данный момент. Значение «Отправитель» блокируется после авторизации посетителя механизмом защиты. И во время работы на форуме, изменить собственное значение переменной «Отправитель» нельзя.
Ниже отображается текстовое поле ввода информации. После того как пользователь вводит информацию в текстовое поле и нажимает кнопку «Отправить», информация сразу попадает в базу данных на сервере, а при чтении сообщения данная информация динамически вызывается из базы данных Microsoft Access или SQL Database.
Внешний дизайн форума не перегружен ненужными элементами и является простым и функциональным. Это обстоятельство позволяет ускорить работу сервера, на котором и происходит обработка информации, а также обеспечивает удобство быстрой загрузки для посетителя на локальном компьютере.
В шестом пункте алгоритма производится создание обработчика ошибок.
Технология ASP обладает свойством формирования ошибок программного кода, с указанием строки и места возникшей ошибки, то есть обладает своим собственным встроенным обработчиком ошибок. Сообщение об ошибке формируется в процессе работы программы на сервере и возвращается пользователю в виде HTML кода.
Однако, в данном проекте такой обработчик ошибок непригоден для использования, поскольку обработчик ошибок ASP платформы позволяет лишь выявить место в программном коде, где произошла ошибка. Для посетителя сайта это обстоятельство является крайне неудобным, поскольку не дает возможности увидеть то, где пользователь допустил ошибку в процессе использования интернет-сайта.
Для устранения этого неудобства был создан отдельный модуль обработки ошибок, имеющий свой собственный интерфейс и обладающий наличием различных подсказок. Так, например, если посетитель забыл заполнить одно из обязательных для заполнения полей регистрации, то на экране высвечивается сообщение об ошибке пользователя, где приведен перечень возможных ошибок пользователя. То есть, если пользователь, например, забыл ввести один из параметров в поле обязательное для заполение и нажимает после этого кнопку подтверждения, то в этот момент загружается интернет-страничка содержащая уведомление об ошибке пользователя, а также высвечивается сообщение о том что возможно пользователь забыл заполнить одно из обязательных для заполнения полей.
Этот механизм является крайне удобным для пользователя, поскольку позволяет ему указать место возможной ошибки и быстро устранить её.
Обработчик ошибок расчитан на реагирование на все возможные ошибки, которые могут возникнуть при использовании сайта посетителем.
Так, например, если происходит ввод ошибочных значений в поля «Логин», «Пароль», отображается сообщение об ошибке.
Аналогичные сообщения появляются и при ошибочном вводе пароля модератора.
Одним из важнейших элементом разработки обработчика ошибок является разработка программного модуля защиты от прямого доступа. Прямой доступ к странице - это событие, при котором пользователь пытается получить доступ к форуму, не пройдя предварительную авторизацию либо регистрацию. В случае попытки ввода адреса с указанием странички в поле указания адреса программы Opera, либо аналогичной ей, происходит отображение сообщения об ошибке несанкционированного доступа. Данный механизм защиты необходим для того чтобы пользователь не мог получить несанкционированный доступ к форуму, и не нарушил тем самым его работу. Это является обязательным условием при разработке проекта, так как проект интернет-сайта должен отвечать требованиям безопасности и устойчивости работы.
Обработчик ошибок формирует сообщения при следующих ошибках эксплуатации:
Несанкционированный доступ (попытка прямого доступа к форуму без авторизации)
Ошибка регистрации. (не заполнены поля, обязательные для заполнения, либо поля «логин» и «пароль»)
Ошибка авторизации. (не заполнены необходимые поля «Логин», «пароль»)
Ошибка авторизации. (поля «логин», «пароль» заполнены неверно, либо пароль неправильный)
Ошибка регистрации (поле «логин» заполнено уже существующим в базе данных значением, Логин занят)
Ошибка авторизации Модератора (пароль модератора неверный)
В седьмом пункте алгоритма производится отладка и тестирование проекта, проверяется корректность отображения всех визуальных форм и элементов интерфейса пользователя. Тестирование производится в два этапа. На первом этапе тестирования проверяется общая работоспособность проекта на локальном хостинге, поддерживающего технологию ASP. На втором этапе производится конечное, завершающее тестирование, суть которого состоит в том, что проект располагается на сетевом, либо интернет-хостинге. На этом этапе производится замер производительности, а также скорость обмена данными локальных компьютеров с сервером.
Наиболее трудоемким процессом при создании проекта, является процесс разработки процедур регистрации, авторизации и создание интернет-форума. Наиболее сложным в процессе разработки является разработка отдельных модулей, связанных программными транзакциями. Данные должны быстро и незаметно для пользователя передаваться от одного модуля к другому, не давая при этом возможность отследить поток данных.
6. БЛОК-СХЕМА
Управление переходам по страничкам осуществляется с помощью кнопочного меню, которое располагается в левой части экрана на каждой страничке.
Функциональная блок-схема интернет форума:
Функциональная схема встроенного в проект интернет-форума представляет собой совокупность из нескольких, связанных между собой активных серверных интернет-страниц, выполненных в соответствии с технологией ASP.
Чтобы войти на форум нужно нажать соответствующую кнопку-ссылку. Далее происходит загрузка страницы, где посетителю предлагается пройти процедуру авторизации (проверки пароля пользователя). Если авторизация проходит успешно, то посетитель попадает на гостевую страницу пользователя, где содержится короткое приветствие и предлагается перейти на главную страницу форума.
На главной странице форума содержится архив всех имеющихся в базе данных форума сообщений, а также есть возможность послать собственное сообщение, либо ответить на имеющееся.
Для предотвращения несанкционированного доступа к некоторым страницам сайта был создан механизм защиты, который предотвращает попытки прямого доступа и неправильной регистрации.
Для этих целей в проект встроен специальный механизм защиты, суть которого сводится к обмену данными между отдельными веб-страницами. Если пользователь пытается получить прямой доступ к странице, минуя регистрацию, то в этом случае обмена данными не происходит и возвращается сообщение об ошибке.
Функциональная блок схема обмена данными между отдельными веб страницами приведена ниже:
Как показано на блок схеме, во внутреннем механизме функционирования интернет-сайта, происходит последовательный обмен данными из страницы в страницу.
Так, например, при прохождении процедуры регистрации, сначала, данные пользователя заносятся в форму регистрации на главной странице, после чего, нажимается кнопка «Зарегистрироваться». Далее, данные из формы регистрации пересылаются на страницу проверки корректности регистрации, если данные пользователя были введены верно, то информация пользователя заносится в базу данных, в противном случае выдается сообщение об ошибке.
Защитный механизм интернет-форума действует следующим образом.
Для того, чтобы войти на форум, пользователю требуется ввести на странице авторизации свой персональный Логин и Пароль. Далее данные попадают в модуль проверки пароля, где происходит проверка по таблице зарегистрированных пользователей базы данных, правильность пароля и логина пользователя. Если Логин и Пароль верны, то из модуля проверки пароля пересылаются соответствующие данные (разрешение) в гостевую страницу форума, которая загружается на машине пользователя. Если же пользователь пытается получить несанкционированный доступ к форуму, минуя регистрацию, вводя адрес с указанием страницы форума, то пересылки данных в этом случае не происходит между страницей регистрации и гостевой страницей форума, выдается сообщение об ошибке доступа. Тоже самое происходит и при попытке доступа к другим страницам форума.
Поскольку все страницы форума связаны между собой внутренней пересылкой служебной информации, то без авторизации на странице проверки пароля невозможно попасть на страницы форума, поскольку будет нарушена цепочка обмена данными между страницами и появится сообщение о попытке неавторизированного доступа.
Данные проходят по цепочке: начиная от страницы регистрации, кончая страницами форума. Данные, пересылаемые между страницами, представляют собой закодированную информацию о пользователе, работающем в данный момент. Защитный механизм форума строится таким образом, что каждая связанная интернет-страница форума ожидает прием пакета данных от предыдущей страницы. Если данные не приходят, то выдается сообщение об ошибке.
Когда пользователь проходит процедуру авторизации на форуме, то вместе с его переходом по страницам форума происходит пересылка служебных данных, и защитный механизм позволяет пользователю беспрепятственно пользоваться интерфейсом пользователя.
Если же пользователь умышленно пытается попасть на страницу форума, минуя процедуру авторизации, вводя прямой адрес страницы, то в момент обращения к форуму не происходит никакой пересылки данных и защитный механизм блокирует загрузку страницы и выдает сообщение об ошибке.
Помимо пересылки специальных данных между страницами есть и другой механизм защиты. Суть этого механизма состоит в том, что пользователь, находясь на форуме, не может слать сообщения под другим Логином, а может отправлять сообщения только под своим Логином.
Этот механизм позволяет избежать обстоятельств, при которых пользователь отправляет сообщения на форум от чужого, не существующего в базе данных Логина, либо отправляет сообщение от имени модератора, что само по себе является неблагоприятным явлением.
Механизмы защиты позволяют избежать различных неблагоприятных явлений, которые могут возникать периодически в процессе эксплуатации интернет-сайта.
7.ПРОГРАММИРОВАНИЕ
Для реализации всех вышеперечисленных функций и методов был разработан специальный программный механизм, позволяющий реализовать все вышеприведенные достоинства.
Как видно из блок-схемы №1, весь интернет-сайт делится на две части: информационная часть и интернет-форум. Информационная часть представляет собой несколько связанных между собой HTML страниц, содержащих разнообразную справочную информацию, распределенную по тематикам.
Методика построения интернет-сайта следующая: все страницы информационной части сайта содержат абсолютно одинаковую программную структуру и программный код. Разница заключается лишь в самой текстовой информации отраженной на страницах. Так, например, программный код страницы «Новости» и код страницы «Экономика города» являются совершенно одинаковыми. Разница в том, что на странице «Новости» содержатся Новости города, а на странице «Экономика города» представлена информация об промышленности города. Следовательно, нет необходимости описывать каждую информационную страницу отдельно. Поэтому подробно будет описан только один программный шаблон.
Описание всех программных блоков производится со ссылкой, где содержится полный листинг всех отдельных интернет страниц.
Весь интернет-сайт состоит из следующих файлов:
index.html - главная страница, содержащая новостную информацию о организации;
index.php - главная страницафорума;
main.css, ag_style.css и admin.css- стили для сайта в целом;
Программный модуль навигационного меню написан на прикладном языке JavaScript, он выполняет не только навигационные функции, но и делает сайт более привлекательным для просмотра. Так, например, при нажатии одной из кнопок меню, выполняется действие - переход на заданную страницу. Это реализуется с помощью команды: href=”имя страницы перехода”.
8. АНОМАЛИИ И ЗАЩИТНОЕ ПРОГРАММИРОВАНИЕ
интернет сайт программный
Как уже было ранее описано, для исключения различного рода аномалий, в проект встроен специальный механизм защиты от несанкционированного доступа и неправильной регистрации.
К числу аномалий относятся следующие события:
Попытка прямого доступа к форуму без регистрации и авторизации
Некорректная авторизация
Некорректная регистрация.
Чтобы исключить подобного рода аномалии был разработан специальный механизм защиты.
Методика защиты от несанкционированного доступа такова:
При последовательном переходе от странице к странице, между ними происходит пересылка данных, а если имеет место попытка несанкционированного доступа, то пересылки данных не происходит и пользователю отказывается в загрузке страницы.
Данная методика реализована методом COOKIES.
Методика защиты от некорректной регистрации и авторизации:
При прохождении процедуры регистрации либо авторизации, отдельный программный модуль проверяет заполнение полей регистрации и в зависимости от наличия информации в полях, он выдает какой либо результат. Если поля заполнены корректно, то программный модуль загружает следующую страницу, если же поля заполнены неправильно, то он выводит на экран сообщение об ошибке.
Описание механизма защиты от прямого доступа (механизм пересылки данных).
Как уже было описано выше, для реализации механизма защиты от прямого доступа к странице был разработан метод последовательной пересылки данных. Это означает, что все связанные таким методом страницы осуществляют между собой пересылку данных. Если же злоумышленник пытается получить несанкционированный доступ к странице, без авторизации, то внутри программного блока никакой пересылки данных не произойдет и злоумышленнику будет загружено сообщение об ошибке.
На программном уровне пересылка данных реализуется методом COOKIES.
COOKIES - это файл, который сервер пересылает пользователю при посещении определенных веб-страниц. В этот файл записывается некоторая служебная информация, которая потом читается другими веб-страницами.
Так, например, в данном проекте, после удачной авторизации пользователя, в файл COOKIES записываются данные об успешной авторизации и разрешение на дальнейший доступ к другим страницам (параметр «TRUE»).
Следующие страницы читают этот параметр из файла COOKIES и если он равен TRUE, разрешают доступ к следующей страницы.
При попытки прямого доступа к странице, запись в файл COOKIES не происходит, и, когда активная страница на сервере, к которой и обращается злоумышленник, пытается прочитать значение из файла COOKIES, чтение не происходит ввиду отсутствия данного файла у пользователя, после чего программный модуль пересылает пользователя на страницу, содержащую лишь сообщение об ошибке.
Информация в файле COOKIES храниться в зашифрованном виде.
9. ТЕСТИРОВАНИЕ И ОТЛАДКА
Тестирование - это многократная проверка данного проекта на наличие ошибок.
Отладка - исправление ошибок найденных тестированием.
При тестировании должны использоваться следующие принципы:
1. Следует избегать тестирования программы ее автором.
2. При анализе результатов каждого теста необходимо проверить, не делает ли программа того, что она не должна делать.
Необходимо тщательно подбирать тест не только для правильных входных данных, но и для неправильных.
Тестирование программного продукта производилось как на локальном компьютере, так и на сервере. В результате тестирования был выявлен ряд ошибок, которые устранялись в процессе разработки.
Особенностью методики разработки проекта была отдельная отладка и тестирование отдельных программных модулей и блоков в персональном порядке, с последующей сборкой компонентов и блоков в единое целое. Устранялись лишь мелкие косметические ошибки: ориентация текста на странице, подборка оптимального сочетания цветов, ошибки орфографии. В остальном, при разработке данного проекта отладка не требовалась.
Разработанный проект нуждался лишь в окончательном тестировании, чтобы окончательно удостовериться в отсутствии ошибок в коде и в текстовой информации. Тестирование проводилось путем запуска проекта на локальной машине и на сервере, с некоторым количеством посетителей.
Проект успешно работает и обеспечивает оптимальную скорость обработки информации при 30 - 50 одновременно работающих с проектом пользователями. Такая величина одновременно работающих пользователей, учитывая потребности проекта, является вполне удовлетворительной.
10. АНАЛИЗ РЕЗУЛЬТАТОВ РЕШЕНИЯ
После завершения работы над программой было еще раз произведено полное тестирование всей программы.
Все найденные ошибки были успешно устранены.
Получившийся в результате всех этих действий, программный продукт (интернет-сайт) удовлетворяет всем предъявленным заказчиком требованиям, полностью работоспособен, не требует ни каких доработок, и готов к эксплуатации.
Проект не требует от заказчика каких-либо значительных затрат и в процессе эксплуатации также не требуется серьезных финансовых вложений. Это обстоятельство позволяет утверждать, что разработка данного проекта является вполне оправданным и необходимым делом. В процессе эксплуатации отлаженный и откалиброванный веб-сайт не создает каких-либо проблем пользователям.
Исходя из всего выше описанного, можно сделать вывод, что город Белоусово получил мощный информационный интернет-сайт, при помощи которого будет иметь свое представительство в мировом информационном пространстве Интернет.
11. ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЮ
После разработки и внедрения данного проекта, пользоваться им будут посетители сети Интернет. Обязанности по поддержанию сайта в рабочем состоянии и своевременном обновлении на нем информации будут возложены на модератора. Инструкция для посетителей сайта прилагаться не будет, исходя из того, что интерфейс имеет максимально упрощенную и интуитивно понятную систему управления и рассчитан даже на неопытных пользователей интернета.
11.1Инструкция Модератору
Проект выполнен в соответствии с существующими на сегодняшний день стандартами интернет-приложений. Стартовым файлом является INDEX.PHP, он будет запускаться всякий раз при обращении к HTTP серверу.
В функции и задачи модератора входит обновление форума и ответы на вопросы пользователей.
Должность и обязанности модератора могут включаться в обязанности сетевого администратора, если график работы сетевого администратора позволяет сделать это.
Для рядового пользователя (посетителя сайта), который будет заходить на данный сайт и пользоваться его услугами, особых инструкций не прилагается, в виду простоты пользования. Посетителю сайта нужно лишь ввести нужный интернет-адрес сервера, к которому и привязан данный интернет-проект, после чего начнется автоматическая загрузка стартовой страницы.
II. ЭКОНОМИЧЕСКАЯ ЧАСТЬ.
Проект создания интернет-сайта реализуется в том случае, если это экономически целесообразно. Для определения экономического эффекта, необходимо подсчитать:
- количество и стоимость времени, затраченного на разработку сайта;
- стоимость обслуживания сайта;
- возможные финансовые и рекламные дивиденды.
Далее будут проведены все необходимые расчеты и выкладки.
Распределение трудоемкости по стадиям разработки приведено в таблице.
Этап разработки |
Описание содержания работ |
Трудоемкость в часах |
|
Постановка задачи |
Предпроектное исследование, согласование технико-экономического обоснования |
9 часов |
|
Состояние технического проекта |
Уточнение структуры и формы представления входных / выходных данных, разработка плана мероприятий по внедрению проекта, разработка пояснительной записки, согласование и утверждение технического проекта. |
54 часа |
|
Состояние рабочего проекта |
Написание программы на языке программирования, первичная отладка, тестирование, разработка согласования и утверждения порядка и методики испытания, корректировка программы. |
81 час |
|
Документирование и внедрение |
Разработка программной документации, сдача программы и программной документации. |
36 часов |
|
Итого: |
180 часов |
Важнейшими элементами разработки Интернет - ресурса является первичный сбор информации из официальных источников, анализ сопоставление полученных данных, а также просмотр и анализ существующих сайтов аналогичных в Интернете. Для наиболее полной оценки затрат на разработку необходимо учесть такой фактор как энергопотребление и затраты на сопровождение.
Поскольку на внедрение готового проекта не требуется значительного количества времени и аппаратных ресурсов, можно говорить о том, что сумма затрат на внедрение будет определяться лишь величиной сетевого трафика выделенной Интернет - линии, используемой заказчиком проекта.
Существенные затраты могут возникнуть лишь в случае активной раскрутки сайта, так как в этом случае придется пользоваться услугами платного хостинга, где расценки колеблются от 5 до 40 у.е. и больше, в зависимости от спектра возможностей и емкости выбранного хостинга. Предварительно затраты на размещение на платном хостинге оцениваются мною как 8 у.е. в месяц. Затрачивать большие средства на это, экономически невыгодно.
Затраты на администрирование зависят от многих факторов, таких как квалификация администратора, загруженность его рабочего времени, степень ответственности, наличие свободного времени. В большинстве случаев можно обозначить обязанность администрирования как одну из служебных обязанностей, что при нормальных условиях не создает особых проблем. Либо можно выделять регулярно некоторое количество финансовых средств на материальное поощрение администратора сайта.
К затратам на использование, учитывая все вышеперечисленные факторы, относятся затраты на оплату интернет-трафика и затраты на выплату денежной премии администратора, поскольку планируется, что модерацией сайта будет заниматься системный администратор.
Итак на раскрутку Интернет сайта потребуются дополнительные затраты, в рамках проводимых маркетинговых мероприятий, использование платного хостинга. Так же затраты потребуются на администратора сайта. В его обязанности входит регулярное обновление информации непосредственно на самом сайте, не затрагивая при этом форум.
Расчёт итоговой стоимости проекта.
C - коэффициент сложности (от 0,5 до 1,5).
Он характеризует относительную сложность программы по отношению к типовой задаче, сложность которой принята за единицу. Исходя из уровня сложности решаемой мной задачи, значение коэффициента было принято:
С = 1,1
P - коэффициент коррекции программы, усложнения за счет внесения изменений и дополнений (от 0,1 до 0,5). Увеличение объема работ за счет внесения изменений в алгоритм или программу по результатам уточнения постановок. Так как в ходе работы были внесены изменения, то:
P = 0,3
B - коэффициент увеличения затрат труда вследствие недостаточного описания задачи (от 1 до 1,5). Так как задача была поставлена в общем виде, без предоставления конкретного алгоритма. то:
B = 1,3
K - коэффициент квалификации работника. В зависимости от стажа работы составляет: До 2 лет - K=0,8
Подобные документы
Основные требования к разработке интернет-сайта фирмы ООО "Экаунт-Бизнес" с целью привлечения новых потенциальных клиентов. Описание среды программирования. Требования к техническому и программному обеспечению. Аномалии и защитное программирование.
курсовая работа [2,0 M], добавлен 30.06.2014Разработка Веб-сайта, с помощью которого появится возможность эффективного распространения информации об услугах фирмы ООО "ХКФ Банк", привлечения новых потенциальных клиентов. Требования к программному обеспечению. Описание и структурная схема алгоритма.
дипломная работа [2,1 M], добавлен 18.08.2014Создание ознакомительного информационно-технического форума. Отличие создания интернет-портала от сайта в рунете. Основные ступени разработки информационно-технического портала. Качественное наполнение сайта. Требования к дизайну сайта, цветовые решения.
контрольная работа [29,7 K], добавлен 17.04.2014Анализ выбора средств разработки и создания сайта интернет-магазина спортивных товаров с функцией форума. Информационное, программное и техническое обеспечение веб-сайта. Сущность основ программирования на языке PHP. Принципы работы с базой данных.
дипломная работа [2,4 M], добавлен 12.12.2013Особенности создания сайта интернет-магазина для частных лиц и организаций. Анализ финансовой и технико-экономической деятельности фирмы. Создание информационной модели сайта, ее базовые элементы. Выбор программного и аппаратного обеспечения сайта.
дипломная работа [1,5 M], добавлен 08.12.2013Применение серверной платформы Denwer и с CMS Opencart при создании сайта интернет-магазина электроники. Установка и настройка Denwer и Opencart. Русификация сайта на Opencart, создание системы отображения цен в рублях. Разработка функционала сайта.
практическая работа [985,3 K], добавлен 04.08.2015Проектирование книжного интернет-магазина для реализации книжной продукции через Интернет. Анализ и обоснование выбора языков программирования и средств разработки сайта. Затраты внедрение сайта, его программное обеспечение, тестирование и отладка.
дипломная работа [2,1 M], добавлен 06.06.2013Проектирование сайта: сбор и компоновка информации, разработка технического задания; дизайн интерфейса, создание шаблонов и программных компонентов, интеграция сайта с системой управления, тестирование и отладка; сдача. Описание среды программирования.
курсовая работа [60,2 K], добавлен 30.06.2014CRM-системы: разновидности, проблемы реализации, их преимущества и недостатки. Критические характеристики CRM-систем для работы через Интернет (WEB-CRM). Разработка содержания и структуры WEB-сайта интренет-магазина "Vinil", создание схемы и базы данных.
курсовая работа [2,6 M], добавлен 19.05.2013Особенности и значение общения в сети интернет. Феномен и причины интернет-зависимости. Характеристика программ типа Windows-mesedgers. Содержание курса и интерфейс Web-сайта, его физическая структура. Описание реализации наиболее интересной странички.
курсовая работа [82,4 K], добавлен 14.12.2010