Файл: Обоснование проектных решений по программному обеспечению.pdf

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

Категория: Курсовая работа

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

Добавлен: 17.06.2023

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

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

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

В состав программного обеспечения входят общесистемные и специальные программные продукты, в том числе: операционная система, системы программирования, инструментальные средства программиста, тестовые и диагностические программы, программные средства телекоммуникации, защиты информации, функциональное программное обеспечение (автоматизированные рабочие места, системы управления базами данных и т. п.).

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

В качестве языка программирования был выбран язык php.

PHP (PersonalHomePageTools – «Инструмент для создания персональных веб-страниц») – является скриптовым языком программирования общего пользования, используемый для создания Web-приложений. В данный момент времени поддерживают подавляющие большинство хостинг-провайдеров и стал одним из ведущих языком программирования, использующих для разработки динамических Web-сайтов.

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

  • автоматически извлекаемые GET и POST -параметров, а также переменных окружения веб-сервера в предопределённые массивы;
  • взаимодействует с очень большим количеством разныхСУБД (MySQL, SQLite,MySQLi, Oracle (OCI8), PostgreSQL, Microsoft SQL Server и пр.);
  • автоматическая отправка HTTP-заголовков;
  • работает с HTTP-авторизацией;
  • работает с сессиями и cookies;
  • работает с удалёнными и локальными файлами, сокетами;
  • обрабатывает файлы, загруженные на сервер;

В качестве системы управления базой данных была выбрана СУБД MySQL.

MySQL – разработка шведской компании MySQL AB. СУБД MySQL является программным обеспечением с открытым исходным кодом, распространяемым по лицензии GNU (GPL) и коммерческой лицензии для ситуаций, не подпадающих под действие лицензии GPL.

MySQL поддерживает реляционную модель данных, т. е. представляет собой реляционную СУБД.

Основные достоинства СУБД MySQL:

  • Высокое качество – MySQL характеризуется устойчивой работой.
  • Наряду с Oracle, MySQL считается одной из самых быстрых СУБД в мире.
  • Открытый код доступен для просмотра и модернизации, что позволяет постоянно улучшать программный продукт.
  • СУБД MySQL, разработанная с использованием языков C/C++, протестирована на многих платформах, среди которых Windows, Linux, FreeBSD, Mac OS X, OS/2, Solaris и др.
  • MySQL поддерживает API (Application Programming Interface, программный интерфейс приложения) для С, C++, Eiffel, Java, Perl, PHP, Python, Ruby и Tcl. MySQL можно успешно применять как для построения Web-страниц с использованием Perl, PHP и Java, так и для работы прикладной программы, созданной с использованием Delphi, Builder C++ или платформы .NET.4
  • СУБД MySQL предоставляет широкий выбор типов таблиц, в том числе и сторонних разработчиков, что позволяет реализовать оптимальную для решаемой задачи производительность и функциональность.
  • Локализация в MySQL выполнена корректно. У пользователя, как правило, не возникает проблем при обработке русского содержимого БД

MySQL поддерживает несколько типов данных.

Числовые данные. К ним относят целые числа, не содержащие дробной части (например, 124), а также вещественные числа, имеющие как целую, так и дробную части (например, 56.45). Числовые данные делятся на точечные (bit, boolean, integer и decimal) и приближенные (float, real и double precision).

Строковые данные— последовательность символов, заключенных в одинарные или двойные кавычки: 'Hello world', '123', "MySQL". Поскольку в качестве стандарта в SQL определены одинарные кавычки, для совместимости с другими базами данных рекомендуется использовать именно их. Различают строковые типы CHAR, VARCHAR, BLOB, TEXT, MEDIUMTEXT, MEDIUMBLOB, LONGTEXT, LONGBLOB, ENUM, SET.

Календарные данные.

СУБД MySQL имеет пять календарных типов данных: DАТЕ, DATETIME, TIME, TIMESTAMP и YEAR. Тип DАТЕ предназначен для хранения даты, TIME — для времени суток, a TIMESTAMP – для представления и даты, и времени суток. Тип TIMESTAMP предназначен для представления даты и времени суток в виде числа секунд, прошедших с полуночи 1 января 1970 года. Тип данных YEAR позволяет хранить только год.

Для значений, имеющих тип DATE и DATATIME принят формат YYYY-MM-DD или YY-MM-DD. В типах TIME и DATATIME время приводится в привычном формате hh:mm:ss

2 глава. Проектная часть.

2.1. Информационная модель и её описание.

Информационной моделью называют схему движения входной, промежуточной и результативной информации и функций предметной области. Также с помощью информационной модели объясняется с помощью каких входных данных (документов) и какой нормативно-справочной информации происходит выполнение основных функций. Информационная модель проектируемой ИС представлена на рисунке 6.

Рисунок 6. Информационная модель

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

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

2.2. Характеристика нормативно-справочной, входной и оперативной информации.

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

Таблица 2


Справочники информационной системы

№ пп

Название справочника

Ответственный за ведение

Средний объём справочника в записях

Среднюю частоту актуализации

Средний объем актуализации, %

1

Пользователи

Маркетолог

2

1 раз в полгода

50

2

Типы конкурентов

Маркетолог

10

1 раз в месяц

10

3

Типы акций

Маркетолог

10

1 раз в месяц

10

4

Возможности конкурентов

Маркетолог

50

1 раз в неделю

5

За ведение всех справочников отвечает маркетолог, для каждого вида справочника своя частота актуализации и средний объем актуализации.

Реквизитный состав каждого справочника представлен в виде таблицы 3.

Таблица 3

Реквизитный состав справочников информационной системы

№ п/п

Наименование справочника

Перечень реквизитов

1

Пользователи

ФИО пользователя;

логин;

пароль;

электронная почта;

2

Типы конкурентов

Наименование типа

3

Типы акций

Наименование типа

4

Возможности (или особенности) конкурентов

Наименование возможности

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

На рисунке 7 изображена форма для работы с записями справочника «Пользователи».

Рисунок 7. Форма Пользователь

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

Перед сохранением данных проверяется наличие пользователей с таким же логином (каждый пользователь должен иметь уникальный логин), сложность введенного пароля (минимум одна цифра и один прописной знак).

Формы для работы с записями других справочников имеют аналогичный вид (Рисунок 8-10).

Рисунок 8. Форма Тип конкурента

Рисунок 9. Форма Тип акции

Рисунок 10. Форма Возможности конкурентов

В качестве входных данных для информационной системы выступают данные о конкурентах и их акциях. Перечисленные входные данные создаются с помощью форм, расположенных на сайте. Внешний вид форм представлен на рисунках 11 (форма создания конкурента) и 12 (форма добавления акции).


Рисунок 11. Форма для создания конкурента

Рисунок 12. Форма добавления акции

Данные, введенные в формы, которые приведены выше, сохраняются в базе данных и используются для формирования выходных данных.

2.3. Характеристика результатной информации.

В качестве выходных данных выступает список конкурентов и отчет по конкурентам.

Подробное описание выходных данных в таблице 4.

Таблица 4

Описание результатной информации

Наименование

Список конкурентов

Отчет по конкурентам

Реквизиты

Наименование

Телефон

Адрес

Сайт

Тип конкурента

Количество акций

Наименование

Тип конкурента

Возможности (сильные стороны)

Слабы стороны

Активные акции

Комментарий

Таблицы, на основе которых формируется

Конкурент

Акции

Тип конкурента

Конкурент

Акции

Тип конкурента

Тип акции

Возможности

Частота формирования

По мере необходимости

По мере необходимости

Способ доставки

Экранная форма, с возможностью выгрузки в файл Excel

Экранная форма, с возможностью выгрузки в файл Excel

2.4. Общие положения (дерево функций и сценарий диалога).

Базовый набор функций разработанной информационной системы можно изобразить в виде дерева, изображенного на рисунке 13.

Рисунок 13. Дерево функций

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

Рисунок 14. Сценарий диалога

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


2.5. Характеристика базы данных.

В качестве системы управления базой данный для разрабатываемой информационной системы была выбрана СУБД MySQL.

Для хранения всех необходимых данных была спроектирована и создана база данных, состоящая из 7 таблиц. ER-модель спроектированной базы данных представлена на рисунке 15.

Рисунок 15. ER-модель базы данных

Описание всех таблиц базы данных представлено в таблицах 5-11.

Таблица 5

Таблица users

Наименование поля

Идентификатор поля

Тип поля

Длина поля

Прочее

Код пользователя

id

int

4

AI

ФИО пользователя

fio

varchar

120

Логин пользователя

login

varchar

120

Пароль пользователя (в зашифрованном виде)

password

varchar

120

Email пользователя

email

varchar

120

Таблица 6

Таблица competitors

Наименование поля

Идентификатор поля

Тип поля

Длина поля

Прочее

Код конкурента

id

int

4

AI

Наименование

caption

varchar

120

Телефон

phone

varchar

120

Адрес

address

varchar

120

Веб-сайт

website

varchar

120

Дата открытия

opendate

datetime

10

Комментарий

comment

varhar

255

Слабые стороны

weak

longtext

65655

Тип конкурента

typeid

int

4

Сотрудник, добавивший конкурента

authorid

int

4

Таблица 7

Таблица comptypes

Наименование поля

Идентификатор поля

Тип поля

Длина поля

Прочее

Код типа

id

int

4

AI

Наименование

caption

varchar

120

Таблица 8

Таблица actiontypes