Входные и выходные документы (данные)
Входными данными для экспертной системы «Выбор ноутбука» являются ответы пользователя на предлагаемые вопросы системы о предпочтениях клиента, его потребностях, а так же о располагаемых средствах для совершения покупки. (Группы информации)
Выходные данные экспертной системы «Выбор ноутбука» – сообщение в окне приложения о ноутбуке, подходящем требованиям пользователя, в частности, о технических характеристиках данного ноутбука и его цене. (отчет)
2. ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННОЙ СИСТЕМЫ
«ВЫБОР НОУТБУКА»
Концептуальная модель данных в BPWin
Контекстная диаграмма отражает взаимодействие системы с внешним миром, а именно, информационные потоки между системой и внешними сущностями, с которыми она должна быть связана. Она идентифицирует эти внешние сущности, а также, единственный процесс, отражающий главную цель или природу системы насколько это возможно. Так же, отражает взаимодействия внутри самой системы.
Рисунок 1 – содержит контекстную диаграмму «Выбор ноутбука» и описывает все входные (Клиенты, ассортимент, прайс-листы), выходные (оформление или отказ от покупки), регулирующие документы (Законы, нормативно-правовые акты, кодекс и внутренняя организация), механизмы помогающие осуществлять деятельность компании (консультант).
Рисунок 1. Контекстная диаграмма "Выбор ноутбука"
Рисунок 2 – содержит декомпозицию контекстной диаграммы, представленной на рисунке 1. Она включает в себя следующие работы: прием товара, выбор и осмотр техники, принятие решения.
Рисунок 2. Декомпозиция диаграммы "Выбор ноутбука"
Рисунок 3 – содержит декомпозицию работы «Прием товара». Работа включает в себя следующие процессы: выбор товара у поставщика, проверка наличия товара на складе, оформление покупки, оплата и доставка.
Рисунок 3. Декомпозиция работы "Прием товара"
Рисунок 4 – содержит декомпозицию работы «Выбор и осмотр техники». Работа включает в себя следующие процессы: формирование потребностей клиента, демонстрация подходящих моделей.
Рисунок 4. Декомпозиция диаграммы "Выбор и осмотр техники"
Модель базы данных
На основе анализа основных характеристик ноутбуков, которыми чаще всего интересуются покупатели при выборе подходящей модели, был осуществлен их отбор для поиска и построены инфологические (логическая и физическая) модели баз данных.
Концептуальное (инфологическое) проектирование — построение семантической модели предметной области, то есть информационной модели наиболее высокого уровня абстракции. Такая модель создаётся без ориентации на какую-либо конкретную СУБД и модель данных. Термины «семантическая модель», «концептуальная модель» и «инфологическая модель» являются синонимами. Кроме того, в этом контексте равноправно могут использоваться слова «модель базы данных» и «модель предметной области» (например, «концептуальная модель базы данных» и «концептуальная модель предметной области»), поскольку такая модель является как образом реальности, так и образом проектируемой базы данных для этой реальности.
Конкретный вид и содержание концептуальной модели базы данных определяется выбранным для этого формальным аппаратом. Обычно используются графические нотации, подобные ER-диаграммам.
Чаще всего концептуальная модель базы данных включает в себя:
· описание информационных объектов, или понятий предметной области и связей между ними.
· описание ограничений целостности, т.е. требований к допустимым значениям данных и к связям между ними. [1]
Логическое (даталогическое) проектирование — создание схемы базы данных на основе конкретной модели данных, например, реляционной модели данных. Для реляционной модели данных даталогическая модель — набор схем отношений, обычно с указанием первичных ключей, а также «связей» между отношениями, представляющих собой внешние ключи.
Преобразование концептуальной модели в логическую модель, как правило, осуществляется по формальным правилам. Этот этап может быть в значительной степени автоматизирован.
На этапе логического проектирования учитывается специфика конкретной модели данных, но может не учитываться специфика конкретной СУБД.
На рисунке 5 представлена логическая модель данных.
Рисунок 5. Логическая модель базы данных
Физическое проектирование — создание схемы базы данных для конкретной СУБД. Специфика конкретной СУБД может включать в себя ограничения на именование объектов базы данных, ограничения на поддерживаемые типы данных и т.п. Кроме того, специфика конкретной СУБД при физическом проектировании включает выбор решений, связанных с физической средой хранения данных (выбор методов управления дисковой памятью, разделение БД по файлам и устройствам, методов доступа к данным), создание индексов и т.д.
На рисунке 6 представлена физическая модель базы данных.
Рисунок 6. Физическая модель базы данных
Физическая модель базы данных приложения состоит из 14 таблиц:
1. Bluetooth,
2. Diagonal,
3. Disk,
4. Firm,
5. HDD,
6. Money,
7. Operativ,
8. OS,
9. Processor,
10. Using,
11. Notebook,
12. Opisanie,
13. Users,
14. Vopros.
Опишем каждую из них более подробно.
Первые 10 таблиц содержат возможные ответы на вопросы, или, иначе говоря, все возможные характеристики ноутбуков. Эти таблица схожи по своим определениям, но отличаются назначением и содержанием.
Таблица «Bluetooth» предназначена для выбора ответа о наличии в ноутбуке Bluetooth подключения.
Имя столбца | Тип данных |
Bluetooth | Varchar(15) |
Таблица 1 - Bluetooth
Таблица «Diagonal» предназначена для выбора ответа о размере диагонали ноутбука.
Имя столбца | Тип данных |
Diagonal | Varchar(10) |
Таблица 2 - Diagonal
Таблица «Disk» предназначена для выбора ответа о возможности загружать на ноутбук информацию с дисков.
Имя столбца | Тип данных |
Disk | Varchar(15) |
Таблица 3 - Disk
Таблица «Firm» предназначена для выбора ответа о фирме – производителе ноутбука.
Имя столбца | Тип данных |
Firm | Varchar(12) |
Таблица 4 - Firm
Таблица «HDD» предназначена для выбора ответа об объеме жесткого диска ноутбука.
Имя столбца | Тип данных |
HDD | Varchar(10) |
Таблица 5 - HDD
Таблица «Money» предназначена для выбора ответа об интервале денежных средств, в пределах которого клиенты могут себе позволить приобрести ноутбук.
Имя столбца | Тип данных |
Money | Varchar(15) |
Таблица 6 - Money
Таблица «Operativ» предназначена для выбора ответа о желаемом объеме оперативной памяти ноутбука.
Имя столбца | Тип данных |
Operativ_pam | Varchar(10) |
Таблица 7 - Operativ
Таблица «OS» предназначена для выбора ответа о желаемой операционной системе, установленной на ноутбуке, либо ее отсутствие.
Имя столбца | Тип данных |
OS | Varchar(10) |
Таблица 8 - OS
Таблица «Processor» предназначена для выбора ответа о желаемом процессоре ноутбука.
Имя столбца | Тип данных |
Proc | Varchar(30) |
Таблица 9 - Processor
Таблица «Using» предназначена для выбора ответа о желаемом назначении ноутбука, т.е. для каких целей он приобретается и как планируется его использовать.
Имя столбца | Тип данных |
Using | Varchar(20) |
Таблица 10 - Using
Следующая рассматриваемая таблица «Notebook» хранит в себе все возможные модели ноутбуков и их характеристики, по которым осуществляется поиск.
Имя столбца | Тип данных |
Id | Int |
Notebook | Varchar(50) |
Parameters | Varchar(150) |
Price | Varchar(9) |
Таблица 11 - Notebook
В поле «Notebook» хранится информация о названии модели. Поле «Parameters» содержит перечень всех главных характеристик, по которым осуществляется поиск, и перечень которых содержится в выше описанных таблицах. Поле «Price» содержит цену модели. Поле «Id» является идентификатором модели.
При поиске пользователю выводятся 3 поля: «Id», «Notebook» и «Price». Т.о. клиент может по идентификатору посмотреть более подробную характеристику понравившейся модели в таблице «Opisanie».
Таблица «Opisanie» содержит полную, подробную характеристику каждого ноутбука.
В таблице «Users» хранится логин и пароль администратора, и других пользователей, при необходимости. Пароль администратору нужен для редактирования базы данных ноутбуков или вопросов.
Имя столбца | Тип данных |
Kod | Int |
FIO | Varchar(20) |
Login | Char(20) |
Hash_Pwd | Char(50) |
Таблица «Vopros» хранит дополнительные вопросы для поиска, которые может добавлять, редактировать или удалять администратор.
Имя столбца | Тип данных |
Id | Varchar(1) |
Vopr | Varchar(100) |
Таблица 12 – Vopros
Кроме данных таблиц, в базе данных есть хранимая функция «Проверить_пароль». Функция нужна, чтобы проверить наличие в таблице, где хранятся логины и пароли, пароля и логина введенных пользователем для входа.
Имя параметра | Тип данных | Описание |
@login | Char(20) | Логин пользователя |
@hpwd | Char(50) | Пароль пользователя |
Таблица 13 – Описание входных параметров процедуры "Проверить_пароль"
Код функции представлен в Приложении 1.
Модель интерфейса
Модель интерфейса зависимости форм можно представить в виде схемы, представленной на рисунке 7.
Рисунок 7. Схема взаимодействия форм
Дизайн интерфейса приложения разрабатывался в MS Visio 2007.
Visio поддерживает обширный набор шаблонов — блок-схемы бизнес-процессов, схемы сетей, диаграммы рабочих процессов, модели баз данных и диаграммы ПО. Их можно использовать для визуализации и рационализации бизнес-процессов, отслеживания хода работы над проектами и использования ресурсов, оптимизации систем, составления схем организационных структур, карт сетей и планов зданий.
Шаблоны дают возможность быстро приступить к работе. Office Visio 2007 содержит ряд средств, с помощью которых специалисты из сферы ИТ и бизнеса могут создавать различные диаграммы в соответствии со своими потребностями.
Office Visio 2007 можно расширить программным способом и интегрировать с другими приложениями в соответствии с конкретными сценариями использования для той или иной отрасли. Для этого либо разрабатываются собственные решения и фигуры, подключаемые к данным, либо используются продукты поставщиков решений для Visio. [5]
При запуске приложения будет появляться следующая форма:
Рисунок 8. Форма запуска приложения
В соответствии с потребностями пользователя, он может осуществить поиск интересующей модели либо по характеристикам, либо по назначению ноутбука. Форма поиска ноутбука по характеристикам выглядит следующим образом:
Рисунок 9. Поиск по характеристикам
Форма поиска ноутбука по назначению представлена на рисунке 10.
Рисунок 10. Поиск по назначению
Форма особого поиска доступна в 2 разных вариантах. На рисунке 11 представлена форма, в которой может осуществлять поиск клиент (пользователь).
Рисунок 11. Особый поиск (пользовательский)
Чтобы увидеть форму администратора, нужно в текстовое поле ввести специальный пароль, после чего форма развернется, и будут видны поля для редактирования.
Рисунок 12. Особый поиск (администратор)
После того, как пользователь выполнил поиск, в таблице появились интересующие модели, но может посмотреть их самое подробное описание в следующей таблице, представленной на рисунке 13. Слева располагается описание в таблице, а с право изображение самого ноутбука.
Рисунок 13. Подробное описание ноутбука
У администратора есть еще одна специальная форма, в которой он может редактировать базу данных ноутбуков. Чтобы в нее попасть, сначала нужно выполнить авторизацию.
Рисунок 14. Вход администратора
После ввода специального пароля, администратор попадает в следующую форму.
Рисунок 15. База данных (администратор)
3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ЭКСПЕРТНОЙ СИСТЕМЫ
«ВЫБОР НОУТБУКА»