- •Введение
- •Анализ поставленной задачи
- •Формулировка поставленной задачи
- •Изучение предметной области
- •Обзор и сравнение аналогичных решений
- •Функциональные требования
- •Распространенность
- •Безопасность
- •Заключение
- •Список использованных источников
- •Снятие записи
- •Добавление и удаление врача
- •Описание входных и выходных данных
- •Модель работы продукта
- •Эргономические и техническо-эстетические требования
- •Распределение прав доступа
Функциональные требования
Исходя из требований заказчика и обзора аналогичных решений, было принято решение создать веб-сервис отвечающий следующим функциональным требованиям:
Аунтификация пользователя.
Печать номерка.
Возможность поиска медучреждения по районам.
Запись, проверка записи, снятие записи на прием.
Список всех поддерживаемых медучреждений.
Адаптивный дизайн.
Страницы врачей с возможностью оставить отзыв.
Личный кабинет.
Разграничения пользователей, на администраторов и обычных пользователей.
Панель управления администратора, для добавления расписания врачей, просмотра расписания, добавления и удаления врачей.
Сохранение истории записей.
Модель разработки
Моделирование требований к разработке
Функциональная модель
Для построения функциональной модели работы программы используется методология IDEF0, результаты представлены на рисунках П1.5-П1.8.
При проведении анализа действий пользователя в программе используется диаграмма вариантов использования, представленная на рисунке П1.4.
Входные и выходные данные
Входными данными для программы является информация, получаемая от пользователя и администратора
Выходными данными для программы является HTML-страница с оформленной информацией
Обоснование выбора технологий и средств разработки
Программные средства разработки программы сервера
В список конкурентов PHP входит множество других языков программирования, например: Perl, C#, Java. PHP обладает множеством преимуществ, в том числе:
простотой;
распространенностью;
безопасностью;
поддержкой множества СУБД.
Простота
PHP — язык, который может быть встроен непосредственно в html -код страниц, которые, в свою очередь будут корректно обрабатываться PHP -интерпретатором. Мы можем использовать PHP для написания CGI-сценариев и избавиться от множества неудобных операторов вывода текста. Мы можем привлекать PHP для формирования HTML-документов, избавившись от множества вызовов внешних сценариев.
Большое разнообразие функций PHP избавят вас от написания многострочных пользовательских функций на C или Pascal .[3]
Распространенность
По официальной статистике, на январь 2013 года на PHP разработано 244 миллиона функционирующих сайтов. [2]
Безопасность
В РНР реализованы механизмы безопасности, находящиеся под управлением администраторов; при правильной настройке РНР это обеспечивает максимальную свободу действий и безопасность. РНР может работать в так называемом безопасном режиме (safe mode), который ограничивает возможности применения РНР пользователями по ряду важных показателей. Например, можно ограничить максимальное время выполнения и использование памяти (неконтролируемый расход памяти отрицательно влияет на быстродействие сервера). По аналогии с cgi-bin администратор также может устанавливать ограничения на каталоги, в которых пользователь может просматривать и исполнять сценарии РНР, а также использовать сценарии РНР для просмотра конфиденциальной информации на сервере (например, файла passwd).
В стандартный набор функций РНР входит ряд надежных механизмов шифрования. РНР также совместим с многими приложениями независимых фирм, что позволяет легко интегрировать его с защищенными технологиями электронной коммерции (e-commerce). Другое преимущество заключается в том, что исходный текст сценариев РНР нельзя просмотреть в браузере, поскольку сценарий компилируется до его отправки по запросу пользователя. Реализация РНР на стороне сервера предотвращает похищение нетривиальных сценариев пользователями, знаний которых хватает хотя бы для выполнения команды View Source.[3]
Поддержка множества СУБД
PHP поддерживает взаимодействие с большим количеством различных систем управления базами данных (СУБД) по умолчанию. С помощью средств PHP можно подключиться к базам данных MySQL, Oracle, Microsoft SQL.[2]
Программные средства разработки базы данных
Для реализации базы данных была выбрана СУБД MySQL. В список конкурентов MySQL входят системы управления БД Oracle, Microsoft SQL.
MySQL обладает множеством преимуществ, в том числе:
бесплатной лицензией;
кроссплатформенностью;
простотой.
Бесплатная лицензия
Все программное обеспечение MySQL можно приобрести с общедоступной лицензией (GNU GPL), но в тех случаях, когда требуется коммерческая лицензия, систему можно также купить.[4]
Кроссплатформенность
MySQL портирована на множество популярных систем, таких как Windows (начиная с версии Windows 95), Mac OS X, Linux. Yа официальном сайте СУБД для свободной загрузки предоставляются не только исходные коды, но и откомпилированные и оптимизированные под конкретные операционные системы готовые исполняемые модули СУБД MySQL[5]
Простота
Для начала работы с MySQL не требуется сложной процедуры конфигурации. MySQL Server начнет работать соответствующим образом сразу. По умолчанию выбираются значения, соответствующие минимальному использованию ресурсов диска и памяти.
MySQL использует язык построения запросов SQL. SQL и работе с СУБД MySQL, в частности, посвящено множество книг и интернет-ресурсов.[4]
