Главная страница
Навигация по странице:

  • Масштабирование

  • Гибкая архитектура.

  • Безопасность.

  • Кеширование.

  • Инрстрп. ПЗ_Курсовой проект по ПИ. Курсовая работа по дисциплине Программная инженерия Управление жизненным циклом ис Создание интернеткаталога по продаже фастуда для ооо Мания вкуса


    Скачать 3.09 Mb.
    НазваниеКурсовая работа по дисциплине Программная инженерия Управление жизненным циклом ис Создание интернеткаталога по продаже фастуда для ооо Мания вкуса
    АнкорИнрстрп
    Дата04.11.2022
    Размер3.09 Mb.
    Формат файлаdocx
    Имя файлаПЗ_Курсовой проект по ПИ.docx
    ТипКурсовая
    #769849
    страница8 из 11
    1   2   3   4   5   6   7   8   9   10   11

    4 Проектирование решения




    4.1 Описание архитектуры/структуры системы



    Выбрана древовидная структура сайта с уровнями иерархии. Основная страницей является Главная. Она содержит структуру основных ссылок меню ( Магазин, Доставка, Контакты, Отзывы, Блок Меню с категориями продуктов, а также приветствие компании). Структура представлена в виде развернутой блок схемы на рисунке 13.



    Рисунок 13 - Структура проектируемого сайта

    4.2 Описание возможных технических решений


    Для разработки веб-сайта выбираем CMS Drupal v.8. Drupal – система управления контентом, выход которой состоялся в 2001 году. Разработчиком является Дрис Бёйтарт, который до сих пор остается бессменным руководителем проекта. Архитектура Drupal дает возможность применить его для разработки разнообразных видов сайтов — как например, новостные сайты, блоги, вплоть до соц. сетей и архивов информации. Наличествующую по умолчанию функциональность легко увеличить подсоединением новых расширений, по терминологии Drupal – «модулей».

    Выбор данной CMS обусловлен eго преимуществом перед другими CMS.

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

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

    Сообщество. В силе поддержки этого продукта сомневаться не приходится. Для этого достаточно лишь посетить официальный сайт Drupal. Ресурс Drupal.org — в некотором смысле настоящий комбайн, где можно отыскать практически все главные модули, доступные темы и советы. Он предоставляет возможность, например, создать проект с модулями Issue или Bug report, без внимания которые точно не останутся. Этот ресурс обладает мощной структурой. В его базах данных хранится подробнейшая информация обо всех изменениях, вносимых в каждый из проектов модулей, тем и прочих файлов. Кроме того, каждый выложенный в широкий доступ модуль в обязательном порядке проходит целую систему тестов, а в итоге его подвергают еще и процедуре ручной модерации. Drupal-сообщество всегда богато активностью в плане проведения конференций самого разного масштаба.

    Безопасность. Во многом эта концепция кажется субъективной, так как большинство зависит от «прямоты рук» разработчика. Однако опытные разработчики признают, что сайты на этом движке подвергаются взлому реже других. Так, многие отмечают дырявость DLE, а сайты на Joomla чаще других становятся целью взлома, так что некоторые из разработчиков отмечают, что уже порядок подустали очищать свои сайты от скриптов, которые сливают их трафик другим.

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

    СУБД выбираем MySQL 5.5. MySQL обладает API для языков C, C++, Java, Perl, PHP, Python, Ruby, Smalltalk и Tcl, библиотеки под языки платформы.NET, оказывает поддержку для ODBC, используя ODBC‑драйвера MyODBC.

    Несомненная гибкость СУБД MySQL формируется поддержкой немалого количества видов таблиц: пользователи имеют возможности выбрать таблицы типа MyISAM, в которых есть полнотекстовый поиск, или таблицы InnoDB, где имеются транзакции на уровне отдельных записей. СУБД MySQL поставляется с особым типом таблиц EXAMPLE, представляющем принципы разработки новых видов таблиц.

    Web-сервер Apache 2.4. Самый распространенный Web-сервер в мире - Apache. Являясь свободным ПО, применяющихся в свободных Unix-системах (FreeBSD, Linux и др.), Apache благодаря своим возможностям и надежности превосходит многие коммерческие серверы, а широчайшие возможности конфигурирования дают возможность настраивать его для работы фактически с любой системой. Кроме того, Apache входит в состав пакета

    С помощью данного сервера была реализована локальная разработка веб-сайта, его тестирование и отладка для последующего размещения на виртуальный хостинг в сети Интернет.

    Также написания серверных процессов используется язык PHP 5.6, также входящий в пакет «OpenServer».

    PHP. Язык программирования общего назначения (PHP), часто использующийся для создания веб-программ. В текущие дни поддерживается безоговорочным большинством хостинг-провайдеров и значится в списке лидров среди языков программирования, использующихся для разработки динамических веб-сайтов. Частая применяемость в области сайтостроительства, объясняется наличием немалого набора встроенных средств для создания веб-программ.

    PHP – это язык программирования, не требующий указания вида при объявлении переменных, обладающий динамической типизацией. Массивы (array) имеют поддержку строковых и числовых ключей будучи гетерогенными. Массивы могут иметь значения любых видов, не исключая и другие массивы. При этом сохраняется порядок элементов, их ключей.

    PHP имеет поддержку широких объектно-ориентированные возможностей, в пятой версии языка была введена их полная поддержка.

    PHP также располагает поддержкой наследования (родительский класс указывается при помощи слова-ключа extends позади имени класса) и интерфейсы.

    Аутентификация и авторизация посетителей, зашедших на сайт; администрирование веб-сайта реализовано с помощью языка PHP.

    Для редактирования изображений, используется графический редактор Photoshop CC 2017.

    Для поверки и редактирования программного кода используется редактор NodePad++.

    На CMS Drupal, существуют готовые бесплатные платформы интернет- магазинов, основные это Ubercart и Commerce.

    Ubercart - готовая легко настраиваемая система, состоящая из множества модулей, таких как: «Корзина», «Каталог», платежные системы, тип материала «Product» и др. Основными ее недостаками является то, что для версии Drupal 8 вышла альфа-версия этой платформы, допллнительных модулей создано мало. Настраивать Ubercart очень неудобно, ненужные поля ни убрать, ни отформатировать.

    Commerce – гораздо более гибкая система, чем Ubercart, но и гораздо сложнее в настройке, она подходит для сложных проектов и требует больших временных затрат. Commerce для Drupal 8 также «сырая», многие ее модули находятся также в состоянии альфа-версии. Да и устанавливается она на Drupal 8 через «костыли».

    Т.к. в требования к нашему сайту не входят установка «Корзины» и платежных систем, нет необходимости устанавливать эти платформы. Можно добавить тип материала «Product» со всеми необходимыми параметрами: «Название продукта», «Цена» «Вес», «Описание товара» и д.р. При необходимости в перспективе можно установить дополнительный модуль.

    1   2   3   4   5   6   7   8   9   10   11


    написать администратору сайта