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

Автор работы: Пользователь скрыл имя, 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 Мб (Скачать файл)

 

5.3 Настраиваемое разбиение  на страницы с помощью ObjectDataSource

 

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

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

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

Необходимо настроить элемент управления источником данных на автоматическое кэширование:

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

TypeName="ComponentsDB.CatalogDB" SelectCountMethod="GetCountByGenre" ……………………………………………………. OnSelected="ObjectDataSource_Selected" EnableCaching="true" CacheDuration="360">

                  <SelectParameters>

                        <asp:QueryStringParameter Name="GenreID" QueryStringField="GenreID" 

                         Type="Int32" />

                </SelectParameters>

</asp:ObjectDataSource>

, где

EnablePading = “true” - ……………………….

SelectCountMethod = "GetCountByGenre" – метод  для подсчёта общего кол-ва  строк в таблице. Данный метод  необходим, для того чтобы GridView мог создать корректное количество  ссылок страниц на панели навигации.

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

Метод GetCountByGenre:

public static int GetCountByGenre(int GenreID)

{

SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["connStr"].ConnectionString);

SqlCommand cmd = new SqlCommand("GetCountByGenre", conn);

……………………………………………………

cmd.Parameters.Add("GenreID", SqlDbType.Int);

cmd.Parameters["GenreID"].Value = GenreID;

int count=-1;

try

{

conn.Open();

count = (int)cmd.ExecuteScalar();

}

………......

{

conn.Close();

}

finally

{

conn.Close();

}

return count;

}

 

Хранимая процедура GetCountByGenre

CREATE PROCEDURE GetCountByGenre (@GenreID INT)

AS

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

WHERE GenreID = @GenreID

GO

 

Метод GetPageProductsByGenre вызывает хранимую процедуру GetPageProductsByGenre, которая возвращает данные для текущей страницы GridView.

 

Метод GetPageProductsByGenre:

public static DataSet GetPageProductsByGenre(int startRowIndex, int maximumRows, int GenreID)

        {

            SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["connStr"].ConnectionString);

            SqlCommand cmd = new SqlCommand("GetPageProductsByGenre", conn);

            cmd.CommandType = CommandType.StoredProcedure;

 

            cmd.Parameters.Add("Start", SqlDbType.Int);

            cmd.Parameters["Start"].Value = startRowIndex;

            ……………………………………………………

            cmd.Parameters["Count"].Value = maximumRows;

            cmd.Parameters.Add("GenreID", SqlDbType.Int);

            cmd.Parameters["GenreID"].Value = GenreID;

 

            DataSet ds = new DataSet();

            SqlDataAdapter da = new SqlDataAdapter();

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

            try

            {

                conn.Open();

                da.Fill(ds);

            }

            catch (SqlException)

            {

                conn.Close();

                return null;

            }

            finally

            {

                conn.Close();

            }

            return ds;

        }

Хранимая процедура GetPageProductsByGenre:

CREATE PROCEDURE GetPageProductsByGenre (@Start INT, @Count INT, @GenreID INT)

AS

 

CREATE TABLE #TempProductsList

(

……………….

ProductID INT,

ArtistName NVARCHAR(50),

ArtistID INT,

………………………..

UnitCost MONEY,

Presence BIT

)

 

INSERT INTO #TempProductsList

(ProductID, ArtistName, ArtistID, AlbumName, UnitCost, Presence)

SELECT ProductID, ArtistName, Catalogue.ArtistID, AlbumName, UnitCost, Presence

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

WHERE GenreID = @GenreID AND Catalogue.ArtistID = Artists.ArtistID

ORDER BY ArtistName

 

DECLARE @FromNum INT

DECLARE @ToNum INT

 

SET @FromNum = @Start

……………………………

 

SELECT ProductID, ArtistName, ArtistID, AlbumName, UnitCost, Presence FROM #TempProductsList

WHERE Num >= @FromNum AND Num <= @ToNum

GO

 

В данном пункте был рассмотрен метод настраиваемогого разбиения на страницы с использованием GridView и ObjectDataSource, который позволяет выбирать из базы данные только конкретной страницы, а не целиком для всей таблицы. Тем самым, снижая объём данных, выбираемых из базы данных.

 

 

 

 

 

 

6 РАЗВЁРТЫВАНИЕ WEB-ПРИЛОЖЕНИЯ И МОДЕЛИ КОМПИЛЯЦИИ

 

6.1 Развёртывание web-приложения

 

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

  • Прежде всего, нужно убедиться, что на целевой ЭВМ установлено необходимое ПО (ОС Windows XP Professional, Windows 2000 Server или Windows Server 2003, IIS 5.0 или 6.0 в зависимости от ОС, .NET Framework 2.0, СУБД SQL Server 2000). Если какой-то компонент отсутствует, то его необходимо установить.
  • В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы.  Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении.
  • Необходимо скопировать структуру каталога приложения и его файлы на целевой сервер.
  • Создать виртуальный каталог на основе каталога приложения. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы.  Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении. Если на сервере установлено несколько версий .NET Framework, необходимо установить для виртуального каталога именно версию 2.0, это можно сделать в его свойствах на вкладке ASP.NET.
  • Установить права учётной записи Windows для пользователя рабочего процесса ASP.NET на доступ к каталогам приложения. В IIS 5.0 рабочий процесс называется aspnet_wp.exe и по умолчанию работает от имени учётной записи ASP.NET Machine Account, в IIS 6.0 – w3wp.exe, учётная запись – Network Service. На корневой каталог приложения необходимо дать право на чтение, а на папку AlbumImage дополнительно установить права на запись и изменение. Это можно сделать на вкладке “Безопасность” в свойствах папки.
  • Далее нужно создать и сконфигурировать базу данных для приложения. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы.  Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении.
  • Последним шагом, возможно, понадобится внести какие-то изменения в файл web.config, например, модифицировать строку соединения с базой данных. По умолчанию подразумевается, что используется сервер localhost и используется интегрированная аутентификация для подключения к базе данных.

Таким образом, для развёртывания web-приложения “Музыкальный Интернет-магазин” необходимо скопировать каталог  с приложением на целевой сервер, сконфигурировать виртуальный каталог и задать необходимые права учётной записи ASP.NET, а также создать и сконфигурировать базу данных.

 

6.2 Модели компиляции

 

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

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

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7 РАЗРАБОТКА БИЗНЕС-ПЛАНА

 

7.1 Резюме

 

Целью дипломного проекта является создание программного продукта под  общим названием «Музыкальный Интернет-магазин». Данный продукт предназначен для  организации работы магазина по продаже музыкальной продукции, осуществляющую свою деятельность только в сети Интернет или использующий её в качестве дополнительного канала сбыта продукции.

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

В ходе оценки экономической эффективности инвестиционного проекта с помощью критерия NPV (чистая приведённая стоимость), было установлено, что значение NPV выходит на положительную величину уже с первого года реализации, а за весь жизненный цикл проекта, который составляет 2 года, значение NPV составит 082512 руб., что свидетельствует об экономической целесообразности проекта.

В заключение, были проанализированы возможные риски при реализации проекта и определены возможные  меры по их устранению.

 

7.2 Анализ положения дел в отрасли

 

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

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

 

7.3 Суть разрабатываемого  проекта

 

7.3.1 Назначение

 

Программный продукт “Музыкальный Интернет-магазин” предназначен для  выполнения следующих функций:

Со стороны продавца:

  • Хранить информацию о товарах, заказах, личные данные пользователя;
  • Возможность управления каталогом продукции;
  • Прием заказов от покупателей;
  • Возможность отвечать на вопросы покупателей;

Со стороны покупателя:

  • Предоставление покупателю полную информацию о продукции;
  • Предоставление удобной и быстрой системы поиска продукции по различным критериям поиска;
  • Позволять осуществлять заказ продукции;
  • Просмотр хода выполнения заказа;
  • Возможность задавать вопросы по работе магазина;
  • Возможность оставлять отзывы о продукции;

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