Файл: Автоматизированная информационная система на основе вебтехнологий для частной медицинской клиники.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.12.2023

Просмотров: 286

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Оглавление

ВВЕДЕНИЕ

1. Анализ предметной области

1.1 Описание предметной области

1.2 Обзор существующих аналогов

1.3 Моделирование бизнес-процессов

2. Проектирование веб-приложения

2.1 Требования к веб-приложению

2.1.1 Требования к структуре меню

2.1.2 Требования к структуре страниц

2.1.3 Требование к системе контроля доступа

2.1.4 Требование к хранению данных

2.1.5 Требования к программному обеспечению серверной части

2.1.6 Функциональные требования к системе

2.1.7 Требования к информационному обеспечению

2.1.8 Требования к надежности системы

2.1.9 Требования к безопасности системы и к обеспечению защиты информации

2.1.10 Требования к эргономике системы

2.1.11 Требования к эксплуатации системы, техническому обслуживанию, ремонту и хранению систем

2.1.12 Требования к патентной чистоте

2.1.13 Требования по стандартизации

2.2 Описание средств проектирования

2.3 Разработка UML – диаграмм

2.3.1 Диаграмма вариантов использования

2.3.2 Диаграмма последовательности

2.4 Технология проектирования БД

2.5 Логическая модель данных

2.6 Физическая модель данных

3. Разработка веб-приложения

3.1 Выбор системы управления базами данных

3.3 Инструменты разработки web-приложений

3.4 Особенности разработки web-приложений

3.5 Выбор средств реализации

3.6 Разработка веб-сайта

3.7 Создание класса для работы с базой данных

3.8 Фронтенд разработка

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Приложение А


Базы данных.

База данных представляет собой набор информации.

  1. MySQL: одна из самых популярных в мире баз данных с открытым исходным кодом.

  2. MariaDB: сделано оригинальными разработчиками MySQL. MariaDB также становится очень популярным в качестве сервера базы данных с открытым исходным кодом.

  3. MongoDB: база данных следующего поколения, которая позволяет создавать приложения как никогда прежде.

  4. Redis: хранилище структуры данных в памяти с открытым исходным кодом, используемое в качестве базы данных, кэша и посредника сообщений.

  5. PostgreSQL: мощная система объектно-реляционных баз данных с открытым исходным кодом.

CSS препроцессоры.

CSS препроцессор - язык сценариев, который расширяет CSS, а затем компилирует его в обычный CSS.

  1. Sass: очень современное, стабильное и мощное расширение CSS профессионального уровня.

  2. Less: позиционируется как расширение CSS, которое также обратно совместимо с CSS. Это делает изучение Less легким и, в случае сомнений, позволяет вернуться к CSS.

  3. Stylus: новый язык, обеспечивающий эффективный, динамичный и выразительный способ создания CSS. Поддержка как синтаксиса с отступом, так и обычного стиля CSS.

Web-серверы.

Web-сервер, который конечном итоге используется для web-приложений, обычно зависит от комбинации личных предпочтений, функциональности или ранее существовавшей инфраструктуры. Nginx и Apache являются двумя наиболее широко используемыми web-серверами, однако есть и другие варианты:

  1. Nginx: открытый и высокопроизводительный web-сервер. Хорошо обрабатывает статическое содержимое и имеет небольшой вес.

  2. Apache: в настоящее время работает почти на 50% всех сайтов. Имеет большое сообщество и большой выбор модулей.

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

  4. Caddy: относительно новый web-сервер. Это web-сервер с открытым исходным кодом, HTTP/2 с автоматическим HTTPS.

Локальные сервера (Dev среда разработки).

В зависимости от того, какую ОС использует компьютер, к которому у есть доступ, может потребоваться запустить быструю локальную среду разработки. Существует множество бесплатных утилит, которые объединяют Apache, mySQL, phpmyAdmin и т.д. вместе. Это может быть быстрый способ проверить что-то на вашей локальной машине. У многих из них есть портативные версии [2].


  1. XAMPP: Полностью бесплатный, простой в установке дистрибутив Apache, содержащий MariaDB, PHP и Perl.

  2. MAMP: локальная серверная среда на OS X или Windows.

  3. WampServer: среда web-разработки Windows. Которое позволяет создавать web-приложения с Apache2, PHP и базой данных MySQL.

  4. Vagrant: создание и настройка облегченных, воспроизводимых и переносимых сред разработки.

  5. Laragon: отличный быстрый и простой способ создания изолированной среды разработки для Windows. Включает Mysql, PHP Memcached, Redis, Apache и отлично подходит для работы с проектами Laravel.




3.4 Особенности разработки web-приложений


Web-приложения имеют архитектурные, технологические и пользовательские особенности:

  • web-приложения должны развертываться очень быстро, и требования к ним постоянно меняются в ходе этапа разработки;

  • все более частой практикой в web-разработке становится замена документов на реальные прототипы приложения;

  • раннее подключение конечных пользователей к тестированию и развитию web-приложения;

  • в то время как при разработке обычных приложений создается только одна версия приложения, которая удовлетворяет всем заданным требованиям, для web-приложений все более частой (и желательной) становится публикация в web-сети приложения, которое еще не удовлетворяет всем заданным требованиям;

  • получение ранних отзывов пользователей становится все более важным для разработки web-приложения, а цикл развития действительно начинает рассматриваться в качестве реальной возможности для улучшения web-приложения, а не как дополнительная трата времени на доведение приложения до рабочего состояния;

  • работа по проектированию web-приложений делится на проектирование данных и проектирование навигации.

Разработка web-приложений включает специфические процессы:

  • web-приложения являются специальным видом обычных программных приложений, и поэтому web-инженерия может рассматриваться в качестве специальной разновидности программной инженерии;

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

  • существуют специальные процессы разработки, которые учитывают специфические возможности web-приложений.

Модель жизненного цикла современных web- приложений показана на Рисунке 14.



Рисунок 14 - Модель жизненного цикла современных web- приложений
Основное различие данной модели от модели разработки обычного ПО заключается в понимании развертывания приложения не как вида деятельности (работы), а как перехода между работами.


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

Данная модель предлагает явное соединение работы по поддержке и развитию с анализом требований. Именно этот переход характеризует модель, он создает второй цикл модели, который включает анализ требований. Данный цикл называется «Циклом развития». Первый цикл связывает проектирование, реализацию, тестирование и развитие. Данный цикл называется «Цикл построения и проверки». Такие два цикла соответствуют двум этапам, которые характерны для современных web-приложений: офлайн-разработка и онлайн-разработка. Офлайн-разработка заключается в создании web-приложения в среде разработки, например, Visual Studio без использования реального web-сервера. Разработка в режиме онлайн выполняется после переноса web-приложения под управление реального web-сервера: создание виртуального каталога, файлов настройки, управление web-сервером.

3.5 Выбор средств реализации


Для реализации серверной части были использованы программные продукты:

  • Вэб-сервер Apache 2.4;

  • PHP 5.5;

  • MySql 5.6;

  • phpMyAdmin;

  • PhpStorm 2022.1.1.


Вэб-сервер Apache 2.4.

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

Передача информации веб-сервера выполняется по протоколу HTTP (HyperText Transfer Protocol), изначально созданного для работы с HTML-страницами.

Apache – это свободное программное обеспечение для размещения веб-сервера. Он хорошо показывает себя в работе с масштабными проектами, поэтому заслуженно считается одним из самых популярных веб-серверов.

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

Ядро Apache разработано Apache Software Foundation на языке C. Основные функции — обработка конфигурационных файлов, протокол HTTP/HTTPS и загрузка модулей.


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

PHP — скриптовый язык общего назначения, интенсивно применяемый для разработки веб-приложений.

Язык определяется наличием большого набора встроенных средств и дополнительных модулей для разработки веб-приложений.

Основные из них:

  • автоматическое извлечение POST- и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы;

  • взаимодействие с большим количеством различных систем управления базами данных через дополнительные модули;

  • автоматизированная отправка HTTP-заголовков;

  • работа с HTTP-авторизацией;

  • работа с cookies и сессиями;

  • работа с локальными и удалёнными файлами, сокетами;

  • обработка файлов, загружаемых на сервер;

  • работа с XForms.

Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.

Для написания простейшего скрипта не требуется описывать какие-либо переменные, используемые модули и т. п.
MySql 5.6.

MySQL — свободная реляционная система управления базами данных. Разработку и поддержку MySQL осуществляет корпорация Oracle.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Ветка MySQL 5.6 базируется на невыпущенной серии MySQL 5.5 и содержит ряд значительных улучшений, связанных с повышением масштабируемости и производительности, среди которых: