Диплом: Разработка электронного магазина по реализации одежды для ООО «Хорошая одежда»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
25
Таблица 1
Сравнение современных популярных веб-фреймворков
Критерий
Yii
Zend
Symfony
Ruby
on
Rails
Django
Язык
PHP
PHP
PHP
Ruby
Python
Шаблон
проектирования MVC
ДА
ДА
ДА
ДА
ДА
Применение ORM
DAO и
ActiveRecord
ДА
ДА
ДА
ДА
Механизмы
интернационализации
и локализации
ДА
ДА
ДА
ДА
ДА
Применение
шаблонов при
создании
пользовательских
интерфейсов
ДА
ДА
ДА
ДА
ДА
Создание и проверка
форм
ДА
ДА
ДА
ДА
ДА
Управление доступом
на основе ролей
ДА
ДА
ДА
ДА
ДА
Использование AJAX
ДА
ДА
___
ДА
ДА
ЧПУ (Friendly URL)
ДА
ДА
ДА
ДА
ДА
Модульное
тестирование (unit-
testing)
ДА
ДА
ДА
ДА
ДА
Система кэширования
ДА
ДА
ДА
ДА
ДА
Встроенный
интерфейс
администратора
НЕТ
НЕТ
НЕТ
НЕТ
ДА
26
Хостинг необходимо выбирать по следующим критериям:
Поддержка Python;
Круглосуточная техподдержка;
Оптимальная цена при стабильной работе сервера;
Удобство в панели управления хостинга, где всё просто и интуитивно
понятно;
1.4 Обоснование проектных решений
Поскольку выбор инструмента для разработки пал на Django, то язык
программирования уже определён. Для разработки необходимо выбрать
систему управления базами данных (СУБД).
Существует довольно много различных СУБД, и некоторые из них
поддерживает Django:
Oracle – очень мощная коммерческая СУБД с хорошей документацией,
высокой производительностью, масштабируемая, надёжная, со
встроенными инструментами для разработки и администрирования. К
сожалению, имеет высокую цену, и для столь малого предприятия как
ООО «Хорошая одежда» этот вариант не подходит;
MySQL – пожалуй, самая популярная СУБД с широким функционалом,
способная хранить большие объёмы информации и сравнительно быстро
записывать и извлекать данные из таблиц. В виду её популярности, в
Сети присутствует довольно много обучающих материалов по этой
СУБД. Одним из недостатков является трудность использования в
масштабных проектах, потому что у неё есть проблемы с
мультипоточностью;
SQLite – СУБД, которая в Django используется по умолчанию. В отличии
от других систем, в ней данные хранятся в отдельных файлах и
27
обращение к ним происходит напрямую, а не посредством сокетов и
портов, из-за чего она довольно быстро работает на чтение, но плохо
работает на запись. Эту СУБД удобно использовать при разработке;
PostgreSQL – СУБД, которая в Django рекомендуется к использованию.
Именно для этой СУБД в данном фреймворке расширенный функционал.
Вообще PostgreSQL позиционируется как профессиональное решение.
Она имеет множество функций, которые необходимы приложениям,
предъявляющим очень высокие требования к надёжности и безопасности.
Масштабируема и бесплатна, поэтому в готовом проекте будет
использована именно эта СУБД;
Для разработки Django уже включает всю необходимую инфраструктуру:
Программное ядро, в частности модуль, отслеживающий запрошенные
посетителем интернет-адреса и запускающий соответствующие им
контроллеры (диспетчер);
Шаблонизатор – модуль приложения, принимающий подготовленные
контроллером данные и формирующий на их основе результирующую
web-страницу;
Базовая функциональность моделей и контроллеров;
Модули, реализующие второстепенные задачи – например, разграничение
доступа;
Инструменты отладки;
Встроенный локальный сервер;
[3]
Для разработки необходимо придерживаться следующих требований:
Компьютер с рабочей операционной системой без вирусов и
вредоносного программного обеспечения;
Современный мощный процессор, не менее чем двухъядерный;
28
Свободное место на жёстком или твердотельном накопителе не менее
2Гб;
Тактовая частота процессора от 2Ггц;
Интернет соединение с пропускной способностью от 512Кб/с;
Современный монитор, преимущественно с IPS матрицей и высоким
(1920*1080) разрешением для точной цветопередачи, и минимальной
нагрузки на зрение;
Драйвера для всех периферийных устройств рабочего компьютера;
Web-обозреватель для просмотра, вёрстки и отладки web-страниц.
Желательно установить не один браузер чтобы иметь возможность
создавать и тестировать кроссбраузерную версию сайта. Наиболее
предпочтительны, в связи со своей популярностью и
распространённостью Google Chrome, Opera, Mozilla Firefox;
Интегрированная среда разработки (IDE). Здесь выбор очень широк, но
для Django/Python есть хорошее решение – PyCharm. Эта IDE
предоставляет средства для анализа кода, графический отладчик,
инструмент для запуска юнит-тестов и поддерживает веб-разработку на
Django. Существует бесплатная версия Community Edition, обладающая
усечённым набором возможностей.
29
2 ПРОЕКТНАЯ ЧАСТЬ
2.1 Разработка проекта автоматизации
2.1.1 Этапы жизненного цикла проекта автоматизации
Проектирование информационной системы это всегда длительный
трудоёмкий и динамический процесс. В настоящее время, технологии
проектирования предполагают поэтапную разработку системы. Этапы могут
быть объединены по общности целей в стадии.
Жизненный цикл (ЖЦ) ИС – это совокупность этапов и стадий, которые
проходит ИС от момента принятия решения создать систему до момента, когда
система прекратит своё функционирование.
Полный набор процессов задаёт стандарт ISO/IEC 12207 – от анализа
предметной области до изготовления конечного продукта, охватывая все
возможные виды работ и задач, связанных с построением программного
средства. В российской федерации идентичным этому международному
стандарту является ИСО/МЭК 12207-2010. Данный стандарт содержит основные
и вспомогательные процессы (рисунок 6). Процессы, действия и задачи могут
быть выбраны, упорядочены и включены в модель жизненного цикла исходя из
требований проекта. При применении они могут выполняться итерационно или
рекурсивно, перекрывать или прерывать друг друга. Как раз это и определяет
динамический характер стандарта, позволяя реализовать с его помощью
произвольную модель ЖЦ ИС.
На основании данного стандарта выбираются только те процессы, которые
наиболее подходят для реализации данной ИС. Обязательными являются
основные процессы, которые присутствуют во всех известных моделях ЖЦ.
30
Рисунок 6. Группы процессов жизненного цикла.
Для рассматриваемой ИС выделяются следующие базовые процессы жизненного
цикла:
[2]
1. Разработка:
Планирование и анализ требований (предпроектная стадия);
Проектирование;
Реализация;
Тестирование;
Внедрение;
2. Эксплуатация:
31
Поддержка пользователей;
Техническое обслуживание компонентов системы;
3. Сопровождение:
Сбор рекламаций;
Исправление ошибок и недоработок;
Модернизация;
На предпроектной стадии техническое задание (ТЗ) оформляется по
результатам формулирования технических условий и требований к ИС. Данный
этап выполняется программистом с привлечением сотрудников магазина.
Входной информацией будут служить документы, описывающие существующие
бизнес-процессы, а также результаты интервью с сотрудниками.
На основании ТЗ осуществляется проектирование ИС, включающее в себя
разработку по функциональной архитектуре (сформулированным требованиям
автоматизируемых функций), системной архитектуре (составу обеспечивающих
подсистем), оформление технического проекта ИС. На данном этапе
определяется состав программных подсистем и компонентов оборудования,
составляются спецификации требований к компонентам ПО, определяется
состав компонентов ПО (в том числе повторно используемых компонентов),
интерфейсы с БД, структуры хранения данных, алгоритмы обработки
информации, спецификации интерфейсов с другими системами автоматизации,
требования к тестам. С точки зрения качества всей последующей разработки
данный этап является очень ответственным.
Этап реализации это уже непосредственно физическое проектирование,
программирование, наполнение баз данных, тестирование, разработка
инструкций для персонала.
На этапе тестирования оценивается система в целом на соответствие
требованиям ТЗ.
Внедрение системы необходимо проводить в три этапа:
32
Подготовка объекта к внедрению;
Опытное внедрение;
Сдача проекта в промышленную эксплуатацию.
При подготовке объекта к внедрению необходимо провести следующие
работы:
Выбрать хостинг и произвести необходимые настройки сервера;
Настроить базу данных;
Сконфигурировать и развернуть финальную версию интернет-
магазина;
Ввести учетные записи и настроить им права доступа;
Заполнить справочники системы реальными данными;
Обеспечить пользователей эксплуатационной документацией;
Обучить персонал работе с системой;
В процессе внедрения системы участвует разработчик системы и будущие
пользователи системы. Разработчик должен найти и приобрести подходящий
хостинг, произвести обучение пользователей, сконфигурировать систему,
заполнить справочники, проверить правильность взаимодействия всех
подсистем и, если необходимо, оперативно устранить возникающие при
развертывании системы неполадки.
Опытная эксплуатация системы должна проводиться не менее месяца. В случае
обнаружения ошибок на этапе опытной эксплуатации, осуществляется поиск
причин и устранение ошибок, внесение коррективов в программу, в технологию
обработки данных. После устранения ошибок подписывается «Акт о проведении
опытной эксплуатации», который служит началом перехода к третьему этапу –
сдаче системы в эксплуатацию.
На этапе эксплуатации выполняются следующие работы:
периодическая актуализация справочников системы (осуществляется
ответственным за справочник лицом);
33
локализация проблем и устранение причин их возникновения
(программист);
модификация ПО (программист);
подготовка предложений по совершенствованию системы (пользователи
системы);
развитие и модернизация системы (программист);
2.1.2 Ожидаемые риски на этапах жизненного цикла и их описание
Процессы анализа и сокращения рисков должны сопутствовать основным
этапам разработки и обеспечения жизненного цикла сложных программных
средств в соответствии с международными стандартами, а также методам
систем обеспечения качества ПС.
[4]
На этапах проектирования и реализации могут возникнуть риски:
Риск неправильного выбора задач проектирования из-за недостаточного
определения свойств ИС. Решается применением современных case-
средств;
Разработка системы может быть под угрозой срыва, в случае ухода одного
или нескольких ключевых специалистов. Решается мерами по
обеспечению более тесного сотрудничества исполнителей, обмену между
ними ключевой информацией, повышению взаимозаменяемости
сотрудников.
Риск затягивания процесса разработки, влекущий за собой удорожание
разработки. Для снижения такого риска необходимо строго
контролировать соблюдения графика разработки.
Требования по ходу работы над проектом могут изменяться, что может
нарушить все сроки и оценки;
Могут возникнуть дефекты программного продукта вследствие ошибок,
допущенных на различных этапах разработки системы. На этапе
разработки требований к ПО могут возникнуть ошибки, связанные с
34
некорректными требованиями заказчика. При планировании работ могут
возникнуть дефекты, обусловленные сложностью проекта. На этапе
проектирования архитектуры системы возможны ошибки планирования и
системного проектирования ПС. При детальном проектировании – ошибки
проекта или системные и алгоритмические дефекты. Возможны
программные дефекты и ошибки компонентов и документов при
кодировании ПО, а при тестировании – ещё и алгоритмические ошибки
ПС. Во время разработки документации – дефекты и ошибки обобщающих
документов.
На этапе эксплуатации могут возникнуть риски по причинам:
Злонамеренных, активных воздействий заинтересованных лиц. Для защиты
от такого рода внешних угроз применяют средства обеспечения защиты
программ и данных (антивирусные программы, защита локальных сетей
сетевыми экранами, аутентификация пользователей и т.п.).
Ошибочных действий пользователей, случайных негативных проявлений
внешней среды или дефектов системы. Отказы и сбои в аппаратуре, дефекты
или ошибки в программах и данных функциональных задач, некорректные
исходные требования – всё это является основными источниками отказных
ситуаций, проявляющиеся при исполнении в соответствии с назначением.
При таких воздействиях внешняя, функциональная работоспособность
систем может разрушаться не полностью, однако невозможно полноценное
выполнение заданных функций и требований к качеству информации для
потребителей.
[4]
Для снижения, связанных с дефектами системы рисков, проводят тщательное
тестирование на контрольных примерах, приближенных к действительности.
Для снижения рисков, связанных с ошибочными действиями пользователей,
нужно предусмотреть защиту от применения ошибочных действий по удалению
и порче данных (подтверждение действий и т.п.).

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран