ДИПЛОМНАЯ РАБОТА
Проектирование и разработка интернет-магазина
Содержание
Введение……………………………………………………………………………...3
1 Обзор существующих решений по проектированию и разработке Web-интерфейса пользовательской системы……………………………………………5
1.1 Особенности современных пользовательских систем электронной коммерции………………………………………………………………………........5
2 Проектирование и разработка WEB-интерфейса………………………………..7
2.1 Разработка технического задания проекта……………………………………..7
2.1.1 Бланк технического задания………………………………………………….7
2.2.2 Технические требования………………………………………………….......9
2.2 Анализ и выбор программного обеспечения для реализации проекта…........9
2.3 Макет WEB-интерфейса……………………………………………………….11
2.4 Разработка динамических элементов…………………………………………15
Заключение…………………………………………………………………………17
Список использованной литературы и Интернет-ресурсов……………………..18
Введение
В современной мировой экономике на основе использования информации и информационно-коммуникационных технологий получила развитие электронная коммерция.
Электронная коммерция определяется как любая транзакция, совершаемая посредством сети связанных между собой компьютеров, по завершении которой происходит отторжение и передача права собственности или права пользования вещественным товаром или услугой.
Понятие электронная коммерция у многих ассоциируется с интернет-магазином. Первые интернет-магазины появились в США и распространились по сети Интернет из сферы весьма популярной на тот момент в Америке торговли по телефону и по почте. Удобства и преимущества торговли через Интернет быстро стали очевидными для предпринимателей, и электронный бизнес стал быстро развиваться. На сегодняшний день через Интернет можно купить практически все – от билета на киносеанс до велосипеда.
В России электронная коммерция сейчас находится на стадии активного развития – каждый день электронный бизнес, в том числе и рынок интернет-магазинов, пополняется новыми лицами, а войти в сферу интернет-торговли пока еще достаточно легко. Количество покупателей интернет-магазинов постоянно растет, во-первых, за счет роста численности пользователей сети Интернет, а во-вторых, за счет увеличения среди пользователей Интернет доли людей, совершающих online-покупки.
Покупателю интернет-магазины позволяют приобретать товар в удобное для него время, не испытывая при этом неудобств от отсутствия или, наоборот, чрезмерного внимания продавцов. Кроме того, отзывы, оставленные покупателями в интернет-магазине, зачастую более информативны, чем консультация продавца. Также в интернет-магазине можно заказать товар, которого просто нет в розничной сети.
С продвижением интернет-магазинов широкое распространение получили Web-интерфейсы, позволяющие взаимодействовать с различными программами через браузер. Web-интерфейсы (web-interfaces) удобны тем, что дают возможность вести совместную работу сотрудникам, не находящимся в одном офисе.
Преимуществами Web-интерфейсов являются:
- Оперативность - доступ к информации компании практически из любой точки планеты круглосуточно (24 часа в сутки, 365 дней в году), при чем для этого достаточно иметь компьютер (ноутбук, КПК или другое устройство) подключенный к сети Интернет и Web-браузер;
- Высокая скорость доступа, так как существующие системы уже обеспечивают средние скорости доступа в 256-1024Кбит/сек.;
- Единая оболочка для всех пользователей с различными правами доступа (т.е. не нужно создавать несколько оболочек, как на локальных приложениях);
- Привлекательный, удобный, дружественный и настраиваемый дизайн интерфейса, что очень трудно добиться в локальных программных оболочках.
Целью данной работы является проектирование и разработка интернет-магазина витражей «Колибри».
Для достижения поставленной цели необходимо решить следующие задачи:
- Дать понятие электронного магазина и рассказать о его особенностях
- Спроектировать архитектуру электронного магазина
- Разработать алгоритм работы электронного магазина
- Проанализировать систему оплаты и доставки
- Разработать интерфейс интернет-магазина
1 Обзор существующих решений по проектированию и разработке Web-интерфейса пользовательской системы
- Особенности современных пользовательских систем электронной коммерции
Можно выделить пять различных направлений создания интернет-магазинов:
- Статический.
- Динамический «одностраничный».
- Динамический многостраничный витринами данных.
- Динамический с генерированием статических страниц.
Таблица 1 – Основные направления создания интернет-магазинов
Название направления |
Понятие направления |
Достоинства |
Недостатки |
Статический корпоративный сайт
|
Эти сайты представляют собой просто набор HTML-страниц (web-страниц) связанных между собой гиперссыл-ками. Сейчас они прак-тически не используют-ся, только иногда можно увидеть статические корпоративные сайты-визитки |
1) простота 2) самый деше-вый хостинг |
1) сложность обновления информации 2) необходи-мость владе-ния языком HTML |
Динамический «одностранич-ный» сайт
|
Этот сайт имеет только одну физическую стра-ницу, но информация выводимая на нее зави-сит от того, с какой ссылки выводится страница. Точнее сама ссылка определяет выво-димую информацию.
|
возможность динамического обновления информации в простых и по-нятных фор-мах, не требу-ющих никаких познаний в программировании |
1)сложность 2) более доро-гой хостинг 3) ненагляд-ность адреса страницы 4) более высо-кое время вы-вода страни-цы |
Динамический многостранич-ный сайт витринами данных
|
Этот сайт имеет множество физических страниц, но на каждой странице содержится только информация для вывода страницы из базы данных. Эта технология заключается в том, что для вывода страниц создаются специальные таблицы максимально оптимизированные для максимальной скорости их вывода. Формирова-ние этих таблиц базы данных осуществляется с заданной периодич-ностью, т.е. мы имеем динамический сайт с таблицами базы данных, который время от времени автоматически обновляются. При этом мы можем не делать витрин данных для вывода часто обнов-ляемой информации, например, новостей
|
1) возможность динамического обновления ин-формации в простых и по-нятных фор-мах, не требу-ющих никаких познаний в программировании 2)наглядность адреса страниц 3) малое время вывода стра-ницы 4) возможность вывода быстро-изменяющейся информации в реальном времени |
1)сложность 2)более доро-гой хостинг 3) большая загрузка сер-вера при об-новлении стат сайта, обнов-ление можно проводить в периоды малой актив-ности пользо-вателей |
Динамический с генерированием статических страниц |
Эта технология заклю-чается в том, что дина-мические страницы создаются не по одной при обращении к ним пользователя, а сразу все, с заданной перио-дичностью, например, один раз в сутки. Т.е. имеется динамический сайт, который время от времени автоматически обновляет статический сайт |
малое время вывода страницы |
1) задержка вывода новой информации 2) большая загрузка сер-вера при об-новлении стат сайта, но обновление можно прово-дить в перио-ды малой ак-тивности пользователей |
Анализ существующих основных направлений в создании интернет-магазинов показал, что требуется динамический сайт с витринами, так как интернет-магазин нужно создавать при большой посещаемости и наличии информации, требующей вывода в реальном времени. Основной целью разработки интернет-магазина «Колибри» является создание удобного и эффективного инструмента онлайн-продаж продукции заказчика.
1.2 Готовые решения на ASP.NET для создания web-сайтов
Часто к платформе ASP.NET предъявляют претензию об отсутствии готовых решений, на основе которых можно стоить корпоративные сайты, форумы, блоги и т.д. и т.п.
Таблица 2 – Список самых популярных web-приложений, написанных на ASP.NET.
Название |
Особенности |
Официальный сайт |
||
Блоги |
||||
BlogEngine.NET |
Для BlogEngine.NET создано большое количество тем и расширений, есть возможность создавать собственные компоненты. Поддерживает SQL Compact и хранение данных в XML. |
www.dotnetblogengine.net |
||
dasBlog |
Не требует использования СУБД, данные хранятся в XML файлах. |
www.dasblog.info |
||
Subtext |
Простой в использовании движок блогов с красивой архитектурой. Один из создателей — член команды разработки ASP.NET MVC Фил Хаак. |
www.subtextproject.com |
||
AtomSite |
Удобная платформа для блогов, схожа с популярным движком Wordpress. |
www.atomsite.net |
||
Системы управления контентом (CMS) |
||||
DotNetNuke |
Одна из самых популярных CMS на .NET. Для DotNetNuke существует огромное количество разнообразных модулей и расширений. |
www.dotnetnuke.com |
||
Umbraco |
Самая динамично развивающаяся CMS на .NET с открытым исходным кодом. Рассчитана для создания сайтов разной сложности — от промо-сайтов до крупных порталов. |
www.umbraco.org |
||
mojoPortal |
Поддерживает большое количество СУБД MS SQL 2005/2008/SqlAzure, SQL CE, MySql, PostgreSql, SQLite, or Firbird Sql. Расширяется через механизм UserControl. |
www.sourcetreesolutions.com |
||
Kentico |
Поддерживает расширенный функционал для создания социальных сетей. |
www.kentico.com |
||
Kooboo |
CMS разработана на MVC Framework. |
www.kooboo.com |
||
N2 CMS |
Проект с неплохой документацией в которой есть кросс-ссылки на более детальную информацию по платформе ASP.NET в MSDN. Может быть хорошим подспорьем при изучении ASP.NET. |
www.n2cms.com |
||
Orchard |
Проект, создаваемый разработчиками из команды ASP.NET. Хороший пример расширяемой архитектуры. |
www.orchardproject.net |
||
Composite C1 |
Многофункциональная CMS. Удобный интерфейс управления контентом. |
www.composite.net |
||
Bitrix.NET |
.NET версия самой популярной в России коммерческой CMS. |
www.1c-bitrix.ru |
||
AxCMS |
CMS для создания крупных порталов. |
www.axcms.net |
||
Электронная коммерция |
||||
nopCommerce |
Одно из самых популярных решений для электронной коммерции на .NET. Разрабатывается ребятами из Ярославля. |
www.nopcommerce.com |
||
Kartris |
Движок интернет-магазина, написанный на VB.NET. Удобный интерфейс для пользователя сайта. |
www.cactusoft.com |
||
Форумы |
||||
YetAnotherForum.NET |
Самый многофункциональный форум с открытым кодом на ASP.NET, простая система применения тем, возможность интеграции в существующий ASP.NET сайт. |
www.yetanotherforum.net |
||
Галереи |
||||
Gallery Server Pro |
Движок для публикации галерей изображений, аудио и видео. Поддерживает Silverlight и Flash. |
www.galleryserverpro.com |
||
KiGG |
Галерея новостей. |
kigg.codeplex.com |
||
Wiki-движки |
||||
ScrewTurn Wiki |
Wiki-движок с поддержкой плагинов и тем. Возможность использования СУБД SQL Server или файлового хранилища. |
www.threeplicate.com |
||
|
|
|||
Многие компании, занимающиеся созданием интернет-магазинов, предлагают так называемые готовые интернет-магазины, то есть предполагают использование некоторого шаблонного решения, не оптимизированного под тот или иной бизнес. При этом готовый интернет-магазин может не иметь эксклюзивный дизайн, в полной мере соответствующий требованиям заказчика, а его функциональность будет также ограниченной.
Вместе с тем, функциональность готовых интернет-магазинов обычно не поддается изменению, или такие изменения вносятся с трудом. Обычно в готовых магазинах бывает трудно изменить набор атрибутов для представления товаров, функциональность каталога, алгоритмы обработки заказов. Все настройки сводятся к изменению дизайна основных блоков страниц магазина.
Так как готовые интернет-магазины представляют собой недорогие решения, в них могут быть ограничения на количество товаров, представленных в каталоге, или на количество рубрик каталога.
В некоторых случаях готовые интернет-магазины предоставляются в домене, принадлежащим компании-разработчику. Тогда, рекламируя магазин, деньги будут тратиться на рекламу чужого домена.
Кажущееся преимущество готовых интернет-магазинов заключается в том, что такой магазин можно очень быстро открыть. Однако основные затраты придутся не на открытие, а на эксплуатацию интернет-магазина. Прежде всего, большие затраты могут быть на формирование каталога товаров, если он обширный. Как правило, фотографию каждого товара приходится обрабатывать вручную. Кроме того, это затраты на рекламу сайта интернет-магазина. Без такой рекламы, то есть без продвижения интернет-магазина, посетителей будет немного, особенно если тематика магазина уже широко представлена в глобальной сети.
2 Проектирование и разработка WEB-интерфейса
2.1 Разработка технического задания проекта
Интернет магазин – это реализованное в сети Интернет предста-вительство путем создания Web-сервера для продажи товаров и услуг другим пользователям сети Интернет. К нему полностью подходит определение виртуального предприятия. Иначе говоря, электронный магазин – это сообщество территориально разобщенных сотрудников магазина (продавцов, кассиров) и покупателей, которые могут общаться и обмениваться информацией через электронные средства связи при полном (или минимальном) отсутствии личного прямого контакта.
Основные функции информационной системы интернет-магазина:
- предоставление онлайновой помощи покупателю;
- регистрация покупателей;
- предоставление интерфейса к базе данных продаваемых товаров;
- работа с электронной корзиной покупателя;
- оформление заказов с выбором метода оплаты, доставки, страховки и выпиской счета;
- резервирование товаров на складе;
- проведение расчетов или контроль оплаты;
- формирование заявок на доставку товаров покупателям и выписка сопроводительных документов;
- предоставление покупателю средств отслеживания исполнения заказов;
- доставка товаров;
- сбор и анализ различной маркетинговой информации;
- обеспечение безопасности личной информации покупателей;
- Бланк технического задания
1 Назначение интернет-магазина
- Цели
а) охват широкой аудитории, которой могут быть интересны подобные услуги и товары;
б) для рекламы on/offline услуг, оказания offline услуг и привлечения дополнительной клиентуры;
в) увеличение прибыли от продажи товара заказчика.
- Задачи проекта
Создать интернет-магазин, который:
а) Позволит покупателям удобно и просто заказывать товары и услуги;
б) Привлечет новых покупателей и расширит рынок сбыта продукции заказчика;
в) Должен предоставлять пользователям доступ к информации: о самом заказчике и о направлениях его деятельности.
- Целевая аудитория
Целевой аудиторией магазина являются физические лица, желающие приобрести художественные витражи, выполненные по различным технологиям.
- Сфера деятельности заказчика
Основная сфера деятельности заказчика – это производство витражей, предметов интерьера и сувениров из художественного стекла по различным технологиям, а также изготовление авторской бижутерии из чешского бисера.
2 Дизайн
1) Стиль WEB-дизайна
Преобладают два стиля бионика (плавные, гибкие органические природные элементы) и барокко (использование виньеток и прочих легкомысленных визуалов).
2) WEB-проект по восприятию
а) спокойный
б) отражающий специфику фирмы
в) с уклоном в творческую деятельность (визуалы, формы, цвета, композиция)
3) Использование бренда
Бренд должен быть основным элементом главной страницы (внутренних страниц).
4) Динамика композиции WEB-сайта
а) горизонтальная
б) вертикальная
5) Цветовая гамма и насыщенность
Цвета подходящие к стилю дизайна и тематике – была выбрана холодная цветовая гамма с элементами теплых оттенков, так как товар относится к авангардным, для которых характерны необычные цвета: сиреневый, фиолетовый, белый, серый, черный, сине-розовый, сине-фиолетовый. Холодная цветовая гамма – фиолетовый, сиреневый - оказывает тормозящее действие на нервную систему и успокаивает - используется в случае если покупатель должен подумать прежде чем сделать выбор дорогого товара. Тон: серый – работает нейтрально и все внимание уделяется товару, сочетается с любым цветом; черный - покой и постоянство.
6) Формообразование: только 2D графика.
7) Визуалы
а) абстракции
б) животные
в)растения
9) Фон страницы: однотонный подходящий к дизайну.
2.1.2 Технические требования
Требования к программному обеспечению:
Операционная система: Microsoft Windows 2007.
Веб-сервер: Apache 1.x, 2.x и другие.
Среда разработки: Microsoft Visual Studio 2010.
Платформа: ASP.NET на основе C#.
База данных: MySQL Server 2008.
Графический редактор: Adobe Photoshop CS5.
2.1.3 Структура веб-приложения
Клиентская часть веб-приложения – это графический интерфейс. Графический интерфейс отображается в браузере. Пользователь взаимодействует с веб-приложением именно через браузер, кликая по ссылкам и кнопкам.
Серверная часть веб-приложения - это программа или скрипт на сервере, обрабатывающая запросы браузера. При каждом переходе пользователя по ссылке браузер отправляет запрос к серверу. Сервер обрабатывает этот запрос, вызывая некоторый скрипт, который формирует веб-страницу и отсылает клиенту по сети. Браузер тут же отображает полученный результат в виде очередной веб-страницы.
База данных – программное обеспечение на сервере, занимающееся хранением данных и их выдачей в нужный момент. В случае форума или блога, хранимые в БД данные - это посты, комментарии, новости, и так далее. База данных располагается на сервере. Серверная часть веб-приложения обращается к базе данных, извлекая данные, которые необходимы для формирования страницы, запрошенной пользователем.
2.1.4 Динамические элементы
1) Реализация рассылка новостей.
Посетитель имеет возможность подписаться (и отписаться) на новости интернет-магазина. После подписки покупателю периодически высылается информация о новинках магазина.
2) Поиск по сайту.
В интернет-магазине реализован удобный и быстрый поиск необходимого пользователю товара, так как не все имеют неограниченный доступ в интернет, и многие оплачивают его по часам.
Варианты поисковых алгоритмов:
- Сканирование каталогов.
Данный алгоритм имеет одно главное преимущество: отсутствует база страниц, по которым осуществляется поиск. Результат работы алгоритма формируется при последовательном (в более развитых алгоритмах - параллельном) просмотре файлов в искомых каталогах.
Для каждого найденного файла производятся 3 операции:
- чтение файла (x временных тактов);
- удаление всех html-тегов (2x);
- поиск в оставшемся тексте целевого запроса по шаблону (2x).
Чем сложнее алгоритм, тем менее простым становится шаблон поиска. Например, производится поиск не только для полного посимвольного совпадения целевого запроса, но и морфологически близких словосочетаний.
- Алгоритм поиска по индексной базе.
Данный алгоритм имеет единственный недостаток: индексная база занимает место. В зависимости от структуры индексной базы, она может занимать почти такой же объем, какой занимает сайт со всеми страницами. В пределе получаем удвоение размера на хостинговой площадке, что критично для сайтов с огромным количеством страниц (например, более 65000 страниц).
Для каждого найденного файла производятся 3 операции:
- чтение индексной базы (10x тактов, причем, всего 1 раз);
- поиск в отдельных строках базы целевого запроса (2x).
Сравнительный анализ поисковых алгоритмов.
- Алгоритм поиска по индексной базе работает в 2,5 раза быстрее алгоритма поиска со сканированием каталогов.
- Алгоритм поиска по индексной базе увеличивает размер занятого дискового пространства.
- Замедляющим фактором для любого алгоритма поиска является чтение информации с жесткого диска. Многократное чтение маленьких файлов всегда хуже однократного чтения большого файла.
- Анализ и выбор программного обеспечения для реализации проекта
2.2.1 Преимущества ASP.NET от PHP
ASP.NET - совершенно новые продукты, комплексно обеспечивающие самые высокие требования по надежности, безопасности, производительности создаваемых на из базисе продуктов.
Этого не скажешь о PHP, языке программирования, который постепенно развивался из пары скриптов, написанных на языке Perl, который и стал собственно языком программирования только с 3-й его версии. В отличие от C# это скриптовый язык с вытекающими вопросами производительности. В нем все вопросы надежности возложены на программиста, и некоторые ошибки программирования могут быть выявлены только на этапе эксплуатации, когда они повлекут неприятные последствия.
Кроме указанных преимуществ ASP.NET-сайт имеет еще одно большое преимущество: в отличие от PHP в ASP.NET код сайта и дизайн сайта могут быть полностью разделены. Макет сайта может создаваться и отлаживаться без дизайна (и даже наполняться контентом), при этом будут полностью реализована вся структура, система навигации и т.д. Программист сайта может даже не знать HTML, а создатель дизайна сайта может вообще не владеть программированием (в PHP-сайтах верстка дизайна осуществляется программистом одновременно с программированием сайта). Поэтому создание ASP сайта намного технологичнее.
Это позволяет разделить работы по созданию макета сайта и его дизайна, поручая их узкоспециализированным профессионалам в своих областях, а также создавать дизайн сайта под действующий макет с учетом всех особенностей работы сайта.
Единственный недостаток технологии ASP.NET заключается в том, что переход на нее с технологии PHP достаточно сложен и еще недостаточно специалистов по созданию ASP.NET-сайтов.
- Достоинства MySQL Server 2008
- Повышенная масштабируемость.
- MSSQL Management Studio – интегрированная среда для создания баз данных и управления ими. Эта среда радикально отличается от старых приложений MS SQL Server: Enterprise Manager и Query Она более похожа на Visual Studio, и максимально адаптирована к ней.
- Новые типы данных, в том числе не типизированные и типизированные Развитая модель управления XML-данными, интеграция XML в SQL Server 2008.
- Рекурсивные запросы, новые операторы и усовершенствование старых операторов, постраничный вывод данных.
- Обработка исключений, которая практически отсутствовала вMS SQL Server
- Интеграция многих новых и улучшенных средств повышения безопасности, среди которых:
1) Полная поддержка концепции схем, средств группировки объектов. Схема позволяет обращаться к группам объектов как к единому целому в части владения и прав.
2) Поддержка трех механизмов шифрования на базе сертификатов, ассиметричных ключей и симметричных ключей.
а) Microsoft SQL Server 2008 Transformation Serviсes – работа с данными, извлекаемыми в разных форматах и из разных источников.
б) Интегрированная поддержка HTTP и полнофункциональных Web-сервисов.
3) требования к оформлению
2.2.3 Преимущества Adobe Photoshop CS5 перед остальными графическими редакторами
Adobe Photoshop - это один из самых известных графических редакторов. Он позволяет как создавать новые изображения, так и редактировать существующие графические файлы. Графический редактор Photoshop применяют для создания фотореалистических изображений, работы с цветными сканированными изображениями, ретуширования, цветокоррекции, коллажирования, трансформации графики, цветоделения и т.д. Также данный редактор располагает всеми методами работы с точечными изображениями, при этом имеет возможность работы со слоями и использует контуры. Используются мощные инструменты для работы с цифровыми изображениями, а также превосходные возможности выделения, ретуширования и реалистичного раскрашивания изображений.
2.3 Макет WEB-интерфейса
Дизайн магазина должен быть броским и запоминающимся, но элементы дизайна не должны отвлекать потенциального покупателя от предлагаемых товаров. При создании необходимо было учесть, что скорость соединения с интернетом у многих пользователей ограничена, поэтому не следует делать страницы сайта слишком тяжелыми. Дизайн, заложенный на стадии создания интернет-магазина, отличается индивидуальностью. Также учитывалось обеспечение легкости поиска посетителем товара, а также предоставление ему информации о товарах в объеме, достаточном для осуществления выбора, поскольку посетитель интернет-магазина лишен возможности непосредственного общения с консультантами.
Интернет-магазин выполнен по классической схеме: меню каталога товаров и услуг и само представление товаров, представленное на отдельной странице, включающее описание и возможность положить данную позицию в корзину. На данном уровне функциональность нашего интернет-магазина достаточно часто повторяет функциональность остальных. Отличие большей частью заключается в дизайне интернет-магазина. Это не случайно, потому что дизайн интернет-магазина явление устоявшееся и многие клиенты привыкли к определенному представлению интернет-магазинов.
При создании интернет-магазина большое внимание уделяется его функциональности. То есть обеспечению надежной реализации полного цикла продажи и обслуживания клиентов.
- Удобство навигации. Требование номер один - удобство навигации. Навигация по сайту должна быть прозрачной из любого раздела и удобной для пользователя. Меню и пункты каталога должны появляться таким образом, чтобы у пользователя не возникало вопросов, как перейти из одной точки сайта в другую.
- Каталог товаров. Каталог товаров это тоже часть навигации сайта. Он должен обеспечивать не меньшую прозрачность отображения и иметь древообразную иерархичную структуру, с возможностью навигации по категориям товаров, списку товаров.
- Новости сайта. Самый обновляемый раздел сайта - это новости. Новости, должны быть максимум автоматизированы по удобству администрирования, что достигается удобной системой управления сайтом.
- Корзина покупок. При навигации по каталогу, часто удобно использовать виртуальную корзину покупок, для того чтобы посетитель мог отложить в нее товар по мере просмотра каталога товаров. Необходимо иметь возможность пересчета и удаления товаров из корзины на этапе просмотра корзины перед оформлением заказа.
- Регистрация покупателей. Регистрация дает посетителю много возможностей: предоставление истории покупок, запоминание адресов доставки и т.д.
Дизайн элементов
Каждый элемент структуры выдержан в соответствии со стилем. Чтобы стиль каждого элемента не выбивался из общего, был изготовлен макет. Макет разрабатывался в среде работы с графикой Adobe. Макет был разбит на отдельные элементы, которые были сохранены в одном из формате поддерживаемых браузерами.
1 Стилистика шрифтов
Вынесем отдельно стилистику шрифтов. Стилистика шрифтов в первом приближении делится на шрифты элегантные (мягкие с плавными изгибами) и грубые (без лишних изгибов, иногда даже подчеркнуто грубыми). Подбирается стилистика шрифтов исходя из того какая категория товаров будет представлена.
Так как на сайте представлен ассортимент в виде витражей и различных аксессуаров для женщин, то были использованы мягкие шрифты.
2 Навигация
Существует много вариантов организации навигационной схемы сайта. Рассмотрим два полярных подхода. Первый из них дает возможность пользователю перемещаться по иерархии страниц только вверх или вниз без возможности перехода между страницами одного иерархического уровня и называется линейный. При такой схеме навигации для перехода к странице, расположенной на другой ветви иерархии, необходимо вернуться назад, и лишь затем, перейдя на нужную ветвь, перемещаться по дереву вниз. Заблудиться на сайте с такой структурой тяжело, но и для перехода к нужной информации требуется много времени.
Другой подход, это когда пользователь получает возможность с любого уровня иерархии переходить на любую страницу сайта и называется иерархический. В этом случае достигается максимум возможностей по перемещению, но с другой стороны пользователю тяжело определить, в каком месте иерархической структуры он находится в данный момент.
На сайте удобнее использовать иерархическую схему навигации, для того, чтобы:
- Позволить пользователю самому выбирать информацию, а не заставлять его смотреть все;
- Иметь возможность модифицировать структуру сайта и добавлять/удалять разделы.
Рисунок 1 – Иерархическая навигационная схема интернет-магазина
Сайт делится на 3 группы навигации:
- Разделы общей тематики
- Каталог
- Информационно-аналитические разделы
Разделы общей тематики:
- Главная – текст, в котором изложена информация о заказчике
- Контакты – текст с контактной информацией и форма для обратной связи
- Новости – список в формате:
- Дата
- Заголовок новости
- Краткое содержание
- Полное содержание (текст + фото в свободной форме)
- Поиск по сайту – форма поиска
- Регистрация – форма с полями:
- ФИО*
- e-mail*
- телефон*
- Адрес доставки *
- Пароль*
- Повторить пароль*
- Авторизация (для зарегистрированных пользователей)
- Пароль
- Корзина (таблица с полями):
- Номер товара в корзине
- Название товара (с ссылкой на этот товар в БД каталога)
- Цена
- Количество (с возможностью поменять – по умолчанию 1)
- Возможность поставить галочку напротив выбранного товара и удалить его из корзины
- Общая стоимость заказа
По ссылке «Отправить заказ» пользователь переходит на страницу, где в таблице отображаются все данные его заказа (и его личные данные), под таблицей две кнопки «Подтвердить заказ» и «Вернуться к редактированию корзины». По нажатию на кнопку «Подтвердить заказ», содержимое «Корзины» уходит на e-mail администратора сайта интернет-магазина, пользователю приходит по e-mail подтверждение с перечнем заказанных товаров.
Каталог продукции
Многоуровневый универсальный каталог в формате:
Атрибуты подразделов:
- Название подраздела
- Маленькое фото
- Большое фото
- Краткий текст
- Полное описание
Атрибуты элементов списков:
- Название
- Маленькое фото
- Большое фото
- Краткое описание (по необходимости)
- Полное описание (по необходимости)
- Цена
С каждого элемента списка, а также со страницы с полным описанием ведет ссылка «Заказать», которая добавляет выбранную услугу (товар) в корзину.
Наличие изображений – фотографий, картинок, графических схем позитивно влияет на поисковую выдачу. Подписанные ключевыми словами фотографии поднимают страницу в поисковой выдаче, так как при прочих равных найденных страницах с разных сайтов предпочтение будет отдано той странице, на которой присутствуют изображения. Также страница будет преобладать в поиске картинок, и это будет являться хорошим подспорьем в раскрутке, так как конкуренция в поисковике по изображениям не так велика. Из основных требований к изображениям хотелось бы указать размер изображения – размер не большой, так как увеличивает время загрузки. Оптимальный размер – до 640х480.
Рисунок 2 – Эскиз интерфейса интернет-магазина
2.4 Разработка динамических элементов
Статистика посещаемости
Целью анализатора статистики является получение информации по посещаемости и активности пользователя на страницах. Обычно информация содержит в себе такие параметры как количество посещений, количество просмотров страниц, график времени посещения, демография посетителей, регионы с которых пришли посетители, а также поисковые фразы, благодаря которым посетители попали на сайт. В поисковых фразах содержится наиболее бесценная информация о посетителях, благодаря которой можно существенно увеличить эффективность вашего ресурса. Статистика посещаемости позволит отслеживать не только поисковые запросы, но и оценивать сезонность, а также среднестатистические показатели по неделям и даже месяцам.
В работе был выбран анализатор LiveInternet. Это наиболее распространенный в русскоязычном интернете сервис сбора статистики. Среди возможностей можно найти статистику по дням, по времени суток, по показам, по плотности посетителей, по ключевым фразам. Также есть возможность отслеживать статистику по переходам с каталогов и рейтингов, а также с других сайтов. Также можно отслеживать демографию и возрастной критерий и регион зашедших посетителей, узнавать о используемом браузере, о разрешении экрана, проводить аудит по поисковым фразам на Yandex и Google. Также сервис отслеживает глобальную статистику зоны России и стран СНГ.
2.5 Определение структуры программного продукта
2.5.1 Выбор модели жизненного цикла
В данном программном продукте применяется спиральная модель. Она предполагает итерационный процесс разработки программного средства.
Рисунок 3 - Спиральная модель жизненного цикла
Использование спиральной модели позволяет осуществлять переход на следующий этап выполнения проекта, не дожидаясь полного завершения работ на текущей итерации. Каждый виток итерации соответствует новой версии программного средства.
На первой итерации был проведен анализ существующих интернет-магазинов и выявление наиболее оптимальных средств для его реализации. На второй итерации была реализована навигация по сайту в среде разработки ASP.NET. В результате этих действий на следующей итерации были внесены дополнения и уточнения в интерфейс программного средства. На заключительной итерации была произведена оптимизация для разных браузеров.
2.5.2 Диаграмма варианта использования (use case)
Конструкция или стандартный элемент языка UML вариант использования (или прецедент) применяется для спецификации общих особенностей поведения системы или любой другой сущности предметной области без рассмотрения внутренней структуры этой сущности. Каждый вариант использования определяет последовательность действий, которые должны быть выполнены проектируемой системой при взаимодействии ее с соответствующим актером.
Рисунок 4 – Диаграмма вариантов использования
В качестве актеров в информационной системе могут выступать 4 субъекта: покупатель, интернет-магазин, курьер и склад. Каждый из этих актеров взаимодействует с рассматриваемой системой и является ее пользователем.
Рассмотрим подробнее, какую роль играют актеры в информационной системе.
Таблица 3 – Описательная спецификация прецедента «Запись в базу данных»
Прецедент |
Запись в базу данных |
Краткое описание |
При совершении заказа клиент вносится в базу данных покупателей |
Субъекты |
Интернет-магазин |
Предусловие |
Заказ товара |
Основной поток |
Ввод данных в БД |
Постусловие |
Хранение информации в базе данных |
Таблица 4 – Описательная спецификация прецедента «Поиск информации о производителях»
Прецедент |
Поиск информации о производителях |
Краткое описание |
поиск по БД информации о продукте конкретного производителя |
Субъекты |
Интернет-магазин |
Предусловие |
Заказ товара |
Основной поток |
Запрос в БД о производителях |
Постусловие |
Получение конечной информации |
Таблица 5 – Описательная спецификация прецедента «Каталог товаров»
Прецедент |
Каталог товаров |
Краткое описание |
Все товары, заказанные у производителей, каталогизируются |
Субъекты |
Интернет-магазин |
Предусловие |
Поступление нового товара |
Основной поток |
Занести в каталог новый товар |
Постусловие |
Хранение информации в каталоге |
Таблица 6 – Описательная спецификация прецедента «Работа с заказом»
Прецедент |
Каталог товаров |
Краткое описание |
Кладовщик подтверждает заказ и готовит товар к отправке |
Субъекты |
Кладовщик |
Предусловие |
Оформление заказа |
Основной поток |
Подтверждение заказа |
Постусловие |
Передача товара курьеру |
Таблица 7 – Описательная спецификация прецедента «Обработка информации»
Прецедент |
Обработка информации |
Краткое описание |
Каталогизация, сортировка и прочее |
Субъекты |
Интернет-магазин |
Предусловие |
Заказ товара, регистрация нового покупателя |
Основной поток |
Обработка данных |
Постусловие |
Сортировка и ранение информации |
Таблица 8 – Описательная спецификация прецедента «Учет товаров»
Прецедент |
Учет товаров |
Краткое описание |
Учет проданных и заказанных товаров |
Субъекты Кладовщик |
Субъекты Кладовщик |
Предусловие |
Заказ товара, поступление товара |
Основной поток |
Составляется отчет и заносится в БД |
Постусловие |
Хранение информации в базе данных |
Таблица 9 – Описательная спецификация прецедента «Доставка товара»
Прецедент |
Доставка товара |
Краткое описание |
Доставка заказанных товаров |
Субъекты |
Курьер |
Предусловие |
Наличие заказанного товара на складе |
Основной поток |
Доставить товар до места указанного при заказе товара покупателем |
Постусловие |
Товар доставлен |
2.5.3 Диаграмма последовательности действий
Рассмотрим построение диаграммы последовательности действий интернет-магазина и покупателя. Объектами в этом примере являются:
- интернет-магазин;
- покупатель;
- склад;
- курьер.
На первом этапе располагаются выбранные объекты. Процесс взаимодействия в информационной системе интернет-магазина начинается с выбора покупателем некоторого товара. Тем самым, он посылает запрос на заказ товара и его оплату. Запрос переводит базу данных в активное состояние и вызывает действия – запись и оформление заказа. Следующее действие также инициируется «интернет-магазином», то есть осуществляется передача информации о заказе товара «складу». После данного действия, «склад» выдает товар «курьеру» и производит учет товаров. Последнее действие инициирует следующее – доставка товара «покупателю».
Рисунок 5 –Диаграмма последовательности действий
2.5.4 Диаграмма действий
Рисунок 6 – Диаграмма действий
2.5.5 Диаграмма базы данных
Рисунок 7 – Диаграмма базы данных
3 Безопасность информационной системы
3.1 Архитектура безопасности ASP.NET
В этом разделе приведены общие сведения об инфраструктуре системы безопасности ASP.NET. На приведенном ниже рисунке изображены отношения между системами безопасности в ASP.NET.
Рисунок - Архитектура ASP.NET
Все веб-клиенты взаимодействуют с приложениями ASP.NET с помощью служб IIS. При необходимости IIS проверяет подлинность запроса и затем определяет местонахождение запрошенного ресурса (например, приложение ASP.NET). Если клиент авторизован, ему предоставляется доступ к этому ресурсу. Пользователь предоставляет учетные данные и отправляет страницу. Если приложение подтверждает подлинность запроса, система выдает билет проверки подлинности с учетными данными или ключом для повторного запроса удостоверения в файле Cookie. В последующих запросах содержится также билет проверки подлинности.
Во время выполнения приложение ASP.NET может использовать встроенные средства безопасности ASP.NET. Кроме того, в приложении ASP.NET могут использоваться средства безопасности платформы .NET Framework.
Настройка параметров безопасности ASP.NET выполняется в файлах Machine.config и Web.config. Базовые параметры и параметры по умолчанию, как и другие сведения о конфигурации, задаются в файле Machine.config вложенной папки Config текущей установки .NET Framework. Параметры узла и приложения (включая переопределение настроек файла Machine.config) можно установить в файлах Web.config корневых каталогов веб-узла и приложения. Вложенные папки наследуют параметры каталога, если они не переопределены файлом Web.config во вложенной папке. Для указания конкретного файла или каталога, к которому должны применяться параметры, можно использовать элемент конфигурации location.
- Классификация угроз безопасности информационной системы интернет-магазин
- Подделка идентификаторов
Подделка идентификаторов подразумевает недопустимое олицетворение пользователя или процесса. В самом упрощенном варианте это ввод учетных данных другого пользователя. Пользователь-злоумышленник может также изменить содержимое файла Cookie, чтобы выдать себя за другого пользователя или указать, что файл Cookie поступает с другого сервера.
- Подделка данных
Подделка данных подразумевает неавторизованное изменение или удаление ресурса. Примером может служить искажение внешнего вида веб-страницы, когда пользователь-злоумышленник получает доступ к веб-узлу и изменяет файлы. Косвенным способом подделки данных являются скриптовые эксплойты. Пользователю-злоумышленнику удается запустить код (скрипт), маскируя его как данные, вводимые пользователем на странице, или как ссылку.
- Отказ
Угроза отказа подразумевает выполнение транзакции таким образом, чтобы вовлечение определенных участников в транзакцию осталось недоказуемым. В веб-приложении это может означать использование учетных данных невиновного пользователя.
- Утечка информации
Утечка информации заключается в краже или разглашении частной информации. Классическим примером является кража паролей, но раскрытие информации может также заключаться в доступе к файлам или ресурсам сервера.
- Отказ в обслуживании
Цель атак типа «отказ в обслуживании» заключается в снижении уровня доступности приложения по сравнению с ожидаемым. Типичным примером является перегрузка веб-приложения с целью отказа в обслуживании обычным пользователям. В качестве альтернативы пользователи-злоумышленники могут просто предпринять попытку вызвать сбой сервера.
- Несанкционированное получение прав
Несанкционированное получение прав заключается в использовании вредоносных методов для получения большего объема прав доступа, чем обычно. Например, при успешном получении большего объема прав доступа пользователь-злоумышленник получает права доступа администратора на веб-сервере, тем самым получая доступ ко всем данным на сервере, а также контроль над возможностями сервера.
- Средства защиты
Угроза |
Средство защиты |
Подделка идентификаторов |
1) Строгая проверка подлинности. Каждый раз при запросе доступа к информации, доступной ограни-ченному числу пользователей, необходимо убедиться в том, что данный пользователь является тем, за кого себя выдает. 2) Хранение сведений об учетных данных в защищенном месте. Не следует хранить пароль или другую важную информацию в файле Cookie, где пользователь-злоумышленник может легко его найти или изменить. |
Подделка данных |
1) Использование защиты Windows для блокировки файлов, каталогов и других ресурсов Windows. Приложение также должно выпол-няться с минимально необходимым уровнем привилегий. Защиту от скриптовых эксплойтов можно усилить, если не доверять инфор-мации, приходящей от пользова-теля или даже из базы данных. При получении информации из неизвестного источника необходи-мо принять меры, чтобы убедиться, что она не содержит исполняемого кода. |
Отказ |
1) Строгая проверка подлинности. 2) Использование функции жур-нализации Windows, чтобы отсле-живать действия, выполняемые на сервере. |
Утечка информации |
1) Устранение уязвимой информа-ции. Если не сохранять пароли, то пользователи-злоумышленники не смогут их украсть. Альтернативой сохранению паролей может слу-жить сохранение только их хэшей. Когда пользователь вводит свои учетные данные, его пароль можно хэшировать и впоследствии сравнивать только хэши паролей. 2) Система безопасности Windows для ее защиты. Необходимо использовать про-верку подлинности, чтобы гаран-тировать, что доступ к закрытой информации получают только ав-торизованные пользователи. При необходимости предоставления конфиденциальных сведений рекомендуется шифрование сведе-ний при сохранении и использо-вание протокола SSL для шифро-вания сведений при обмене ими с обозревателем.
|
Отказ в обслуживании |
1) Службы IIS позволяют снижать скорость приложений, ограничивая количество обслуживаемых запро-сов. Можно отказывать в доступе заведомо злонамеренным пользо-вателям или IP-адресам. Поддерж-ка работоспособности приложения обеспечивается выполнением на-дежного кода. Необходимо тща-тельно тестировать приложение и при необходимости принять меры, необходимые для устранения ошибок.
|
Несанкционированное получение прав
|
1) Запуск приложения в контексте с минимальными правами, если это возможно. Не рекомендуется запускать приложения ASP.NET с использованием административ-ной учетной записи SYSTEM. |
Заключение
В результате проделанной работы были изучены теоретические материалы по созданию и редактированию графического дизайна интернет магазина, основы программирования с помощью технологии ASP.NET. Также разработан интерфейс будущего сайта.
В дальнейшем будет создана база данных, и сайт будет наполняться контентом. Затем планируется размещение интернет магазина на хостинге и его последующее развитие.
Cписок использованных источников
- Столбовский, Д.Н. Основы разработки Web-приложений на ASP.NET: учебное пособие / Д.Н. Столбовский. – М.: Интернет-Университет Информационных технологий; БИНОМ. Лаборатория знаний, 2009. – 304 с.: ил., табл. – (Серия «Основы информационных технологий»).
- http://www.seopro.ru/theory/2009/10/887.html - рекомендации по созданию интернет магазинов.
- http://iomarket.com.ua/sozdanie-internet-magazina-s-nulya-shag-za-shagom/ - статья о создании интернет магазина с нуля.
- http://www.i2r.ru/static/255/outshtml - статья о разработке эффективной структуры интернет магазина.
- http://www.shop2you.ru/articles/internet_shop.shtml - статья об устройстве интернет магазина.
Скачать: