Бизнес-план интренет-магазина

Автор работы: Пользователь скрыл имя, 17 Мая 2013 в 10:12, дипломная работа

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

Целью данного дипломного проекта является создание web-приложения, представляющего собой интернет – магазин по продаже музыкальных CD и DVD дисков, которое позволит продавцу размещать в Интернет информацию о продукции и принимать заказы покупателей. А покупатели соответственно смогут просматривать каталог и заказывать музыкальную продукцию, доставка которой будет осуществляться через систему почтовой связи.
В качестве ОС для разработки была выбрана Windows XP Professional. В качестве технологии разработки будет использоваться ASP.NET 2.0. Информационная система будет представлять собой реляционную базу данных под управлением СУБД SQL Server 2000.

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

Перечень сокращений………………………………………………………………………………9
Введение……………………………………………………………………………………………10
1 Исследование предметной области…………………………………………………………….11
1.1 Актуальность систем электронной коммерции……………………………………...11
1.2 Требования к системе………………………………………………………………….11
1.3 Сравнение с аналогами………………………………………………………………..12
1.4 Описание способов оплаты……………………………………………………….…...14
1.5 Решения по реализации………………………………………………………………..15
1.5.1 Выбор технологии для разработки………………………………………….15
1.5.2 Основные особенности технологии ASP.NET……………………………..17
1.5.3 Выбор ОС и web-сервера………………………………………………...….18
1.5.4 Выбор языка программирования для разработки………………………….19
1.5.5 Выбор информационной системы…………………………………………..20
1.5.6 Выбор среды разработки…………………………………………………….21
1.6 Обработка страниц на web-сервере и модель событий ASP.NET………………..…22
2 Проектирование БД…………………………………………………………………………...…25
2.1 Физическая модель БД………………………………………………………………...25
2.2 Описание таблиц БД……………………………………………………………….….27
3 Взаимодействие с БД………………………………………………………………………...….30
3.1 Архитектура ADO.NET……………………………………………………………..…30
3.2 Компоненты доступа к данным…………………………………………………….....31
3.3 Привязка данных……………………………………………………………………....34
3.4 Пример взаимодействия с БД………………………………………………………...35
4 Разработка компонентов web-приложения…………………………………………………....38
4.1 Общая структура web-приложения……………………………………………….….38
4.1.1 Структура каталогов…………………………………………………………38
4.1.2 Файла конфигурации web-приложения web.config………………………..43
4.2 Компоновка и оформление web-страниц…………………………………………….46
4.2.1 Мастер-страницы………………………………………………………….....46
4.2.2 Пользовательские элементы управления…………………………………...49
4.2.3 Каскадные таблицы стилей и темы оформления…………………………..50
4.3 Элементы управления проверкой достоверности……………………………….…..52
4.4 Класс web-страницы с возможностью отслеживания обновления………………....53
4.5 Аутентификация и авторизация пользователей……………………………………..58
4.5.1 Описание и настройка интерфейса Membership API………………………58
4.5.2 Аутентификация форм………………………………………………………60
4.5.3 Авторизация и настройка интерфейса Roles API………………………….63
4.6 Описание профилей пользователей………………………………………………….68
4.7 Основные элементы интерфейса покупатель музыкального Интернет-магазина...72
4.7.1 Регистрация нового покупателя…………………………………………….72
4.7.2 Личные данные покупателя…………………………………………………74
4.7.3 Каталог продукции…………………………………………………………..75
4.7.4 Страница подробностей о продукции………………………………………76
4.7.5 Отзывы о продукции………………………………………………………...77
4.7.6 Корзина покупателя………………………………………………………….79
4.7.7 Оформление заказа…………………………………………………………..80
4.7.8 История заказов……………………………………………………………...81
4.7.9 Страница вопросов покупателей……………………………………………82
4.8 Основные элементы интерфейса администратора музыкального Интернет-магазина…………………………………………………………………………………………….84
4.8.1 Управление каталогом товаров……………………………………………..84
4.8.2 Управление заказами………………………………………….......................87
4.8.3 Страница для ответов на вопросы покупателей…………….......................88
5 Производительность и масштабируемость web-приложения………………………………..89
5.1 Способы повышения производительности и масштабируемости………………....89
5.2 Применение механизма кэширования……………………………….........................90
5.2.1 Кэширование вывода………………………………………………………..90
5.2.2 Кэширование данных…………………………………………………….....91
5.3 Настраиваемое разбиение на страницы с помощью ObjectDataSource…………93
6 Развёртывание web-приложения и модели компиляции……………………………………..98
6.1 Развёртывание web-приложения……………………………………………………..98
6.2 Модели компиляции………………………………………………………………......99
7 Разработка бизнес-плана……………………………………………………………………….101
7.1 Резюме………………………………………………………………………………...101
7.2 Анализ положения дел в отрасли……………………………………………………101
7.3 Суть разрабатываемого проекта……………………………………………………..102
7.3.1 Назначение…………………………………………………………………..102
7.3.2 Форма реализации…………………………………………………………..102
7.3.3 Преимущества перед аналогами…………………………………………..103
7.4 План маркетинга……………………………………………………………………..103
7.4.1 Анализ конкурентоспособности товара………………………………….103
7.4.2 Анализ рынка сбыта……………………………………….........................104
7.4.3 Разработка стратегии ценообразования и стратегии продвижения товара……………………………………………………………………………………………..105
7.5 Производственный план…………………………………………………………….105
7.6 Планирование разработки и определение себестоимости программного обеспечения………………………………………………………………………………………106
7.6.1 Планирование разработки…………………………………………………106
7.6.2 Определение себестоимости программного обеспечения………………107
7.7 Оценка экономической эффективности инвестиционного проекта.......................109
7.7.1 Критерии эффективности коммерческих инв

Файлы: 1 файл

Диплом.doc

— 2.87 Мб (Скачать файл)

Рис. 23 «Вопросы покупателей»

 

Рис. 24 «Размещение вопроса администрации  музыкального Интернет-магазина»

 

 

4.8 Основные элементы  интерфейса администратора музыкального 

Интернет-магазина

 

4.8.1 Управление каталогом  товаров

 

Администратор музыкального Интернет-магазина может добавлять, модифицировать и удалять товары в каталоге. Чтобы добавить альбом в каталог необходимо перейти по ссылке «Альбомы -> Добавить альбом» в меню «Функции». После этого администратор будет перемещён на страницу AddProduct.aspx, изображённую на рисунке 25.

Рис. 25 «Добавление альбома в  каталог»

 

После заполнения необходимых полей  и нажатия кнопки «Добавить», альбом будет добавлен в каталог. Описание товара и треклист могут вводиться  как вручную так и из файла. Поддерживаются файлы с расширением .txt и xml.

Для описания альбома формат xml-файла  должен быть следующим:

<description>

… описание …

</description>

Для треклиста альбома xml-файла должен быть следующим:

<tracklist>

<track> название песни № 1</track>

<track> название песни № 2</track>

</tracklist>

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

 

Для того чтобы изменить или удалить  альбом в каталоге необходимо перейти  по ссылке «Альбомы -> Изменить информацию об альбоме/Удалить альбом» в меню «Функции». В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы.  Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении. Удалить можно только альбом, который ещё ни разу не заказывали. Это необходимо для поддержания целостности информации в истории заказов, а также в текущих заказов, находящихся в обработке. Если в данный момент альбом отсутствует на складе, необходимо просто снять галочку «Наличие на складе».

На рисунке 26 изображена страница UpdateDeleteProduct.aspx.

Рис. 26 «Изменение и удаление альбомов в каталоге»

 

Также администратор может управлять структурой каталога, а именно добавлять изменять и удалять информацию об исполнителях, музыкальных жанрах, категориях продукции и фирмах-издателях. Для этого необходимо выбрать соответствующий подпункт в элементе меню «Управление магазином». На рисунке 27 изображена страница ManagementArtist.aspx, предназначенная для управления исполнителями. Другие страницы управления каталогом действуют аналогично.

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

Рис. 27 «Управление исполнителями»

 

4.8.2 Управление заказами

 

Для управления заказами администратор  должен перейти по ссылке «Заказы» в меню «Функции». После этого  он будет перемещён на страницу Orders.aspx. Используя панель поиска он может  отсортировать заказы по дате и состояния  выполнения. Изображение страницы Orders.aspx приведено на рисунке 28.

Рис. 28 «Заказы покупателей»

 

Она содержит общую информацию о  заказе. Чтобы посмотреть детали заказа, необходимо перейти по ссылке «Подробности»  напротив соответствующего заказа. После  этого администратор будет перемещён на страницу OrderDetails.aspx. Здесь администратор может изменить состояние выполнения, а также распечатать бланк заказа. Изображение страницы OrderDetails.aspx приведено на рисунке 29.

Рис. 29 «Подробности заказа»

 

4.8.3 Ответы на вопросы покупателей

 

Администратор может также отвечать на вопросы покупателей. Для этого  необходимо перейти по ссылке «Вопрос/Ответ» в меню «Функции» на страницу AdminFAQ. Изображение страницы приведено  на рисунке 30.

 

 

Рис. 30 «Страница ответов на вопросы покупателей»

 

 

5 ПРОИЗВОДИТЕЛЬНОСТЬ  И МАСШТАБИРУЕМОСТЬ 

WEB-ПРИЛОЖЕНИЯ

 

5.1 Способы повышения  производительности и масштабируемости

 

Для любого web-приложения, которое  одновременно обслуживает большое  число пользователей, важна скорость работы. Особенно это важно для приложений электронной коммерции, в конкурентной борьбе за клиентов это имеет огромное значение. Ведь если пользователю придется подолгу ждать загрузки страницы, то он, скорее всего, предпочтёт пользоваться услугами другого Интернет-магазина, который, предлагая аналогичные услуги, обеспечивает более высокую производительность.

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

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

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

 

В данной главе была обозначена важность обеспечения высоких показателей производительности и масштабируемости для систем электронной коммерции, а также приведены некоторые способы их достижения, такие как кэширование и разбиение на страницы. В следующих разделах будут приведены конкретные способы, которые использовались при разработке web-приложения “Музыкальный Интернет-магазин”.

 

 

5.2 Применение механизма  кэширования

 

5.2.1 Кэширование вывода

 

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

При разработке дипломного проекта этот способ кэширования применялся для некоторых пользовательских элементов управления, например, пользовательский элемент управления TopSales.ascx, который отображает пять наиболее продаваемых товаров. Он отображается на каждой странице, доступной пользователю, и если не применять кэширование, то при каждом запросе любой страницы любым пользователем необходимые данные извлекались бы из базы данных. Кэширование вывода применяется декларативно:

<%@ OutputCache Duration=”3600” VaryByParam=”None”  Shared=”true” %>

Если добавить эту строку в файл дескрипторов TopSales.ascx, то при первом запросе сгенерированный HTML-код  пользовательского элемента управления будет сохранён в памяти на один час, и при последующих запросах пользователей будет вставляться  в мастер-страницу в готовом виде, без обращения к базе данных. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы.  Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении. Если пользовательский элемент управления используется на нескольких страницах, то по умолчанию, в КЭШе сохраняется копию для каждой страницы отдельно. Чтобы не хранить лишние копии, указан параметр Shared = ”true”. Таким образом, в кэше сохраняется одна копия элемента для всех страниц, где он используется.

 

Приведённый выше пример, показывает как, применяя кэширование вывода можно в десятки и сотни раз уменьшить частоту обращения к базе данных, что позволит web-приложению одновременно обрабатывать большее запросов пользователей и с более высокой скоростью.

 

5.2.2 Кэширование данных

 

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

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

Ниже приведён пример наполнения списка “Музыкальные жанры”:

DataSet ds;

if (Cache["GenresList"] != null)

{

ds = (DataSet)Cache["GenresList"];

}

else

{

ds = GenresDB.GetGenres();

……………….

{

            Response.Redirect("~/ErrorPage.aspx");

}

Cache.Insert("GenresList", ds, null, DateTime.Now.AddMinutes(60), TimeSpan.Zero);

}

GenreList.DataSource = ds;

…………………………

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

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

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

<asp:ObjectDataSource ID="ObjectDataSource3" runat="server"

TypeName="ComponentsDB.CatalogDB"SelectCountMethod="GetCountByLetter"     

…………………………………………………………………………………………..

        OnSelected="ObjectDataSource_Selected" EnableCaching="true" CacheDuration="360">

        <SelectParameters>

                   <asp:QueryStringParameter Name="Letter" QueryStringField="Letter" Type="Char" />

        ……………………

</asp:ObjectDataSource>

……………………………………………………………………………..

CacheDuration="360" – устанавливает срок нахождения данных в кэше.

 

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

Информация о работе Бизнес-план интренет-магазина