Автор работы: Пользователь скрыл имя, 07 Декабря 2013 в 19:24, дипломная работа
Данный дипломный проект посвящен разработке экспертной системы для автоматизации построения компонентов в системе Moodle. В пояснительной записке представлены анализ предметной области, цели и задачи проекта, обзор существующих аналогов, структурная схема экспертной системы, база знаний экспертной системы и дерево вопросов, на которые пользователь будет отвечать в процессе работы с системой, а так же проведен сравнительный анализ языков программирования и моделей представления знаний.
Введение 5
Основная часть 7
1 Специальная часть 7
1.1 Аналитический обзор системы Moodle 7
1.1.1 О системе Moodle 7
1.1.2 Преимущества Moodle 9
1.1.3 Экспертная система 11
1.2 Обзор существующих экспертных систем в данной предметной области 14
1.3 Постановка задачи на разработку экспертной системы 16
1.4 Анализ программного построения существующих модулей в системе Moodle 17
1.4.1 Содержимое папки базового модуля 18
1.4.2 Описание файлов 19
1.5 Разработка структурной схемы экспертной системы 21
1.6 Выбор программных средств для реализации экспертной системы 25
1.6.1 Perl 26
1.6.2 Delphi 27
1.6.3 Python 28
1.6.4 PHP: Hypertext Preprocessor 29
1.6.5 Сводная таблица сравнения языков программирования 31
1.7 Создание базы знаний экспертной системы 32
1.8 Разработка дерева вопросов 33
1.9 Выбор модели представления знаний 34
1.10 Выбор алгоритма поиска решений 37
1.11 Оценка эффективности системы 39
2 Экономическая часть 40
2.1 Расчет стоимости разработки экспертной системы 41
2.2 Расчет экономического эффекта экспертной системы 45
2.3 Показатели эффективности 50
3 Защита информации 52
3.1 Анализ возможных угроз безопасности информации в экспертной системе 53
3.2 Выбор средств защиты информации 56
Заключение 58
Приложения 59
Список использованной литературы 64
- определение порядка просмотра и применения правил.
Различают прямой и обратный порядок вывода.
Прямой поиск осуществляется от фактов к заключениям. В экспертных системах с прямыми выводами по известным фактам отыскивается заключение, которое из этих фактов следует. Если такое заключение удается найти, оно заносится в рабочую память. Прямые выводы часто применяются в системах диагностики, их называют выводами, управляемыми данными.
Обратный порядок вывода осуществляется от заключений к фактам. В системах с обратным выводом вначале выдвигается некоторая гипотеза о конечном суждении, а затем механизм вывода пытается найти в рабочей памяти факты, которые могли бы подтвердить или опровергнуть выдвинутую гипотезу. Процесс отыскания необходимых фактов может включать достаточно большое число шагов, при этом возможно выдвижение новых гипотез.
Для решения поставленной задачи выбрана стратегия поиска в ширину с прямым порядком вывода, чтобы можно было обеспечить наиболее полное представление о создаваемом модуле и на основе этого вывести соответствующий код.
До разработки экспертной системы процесс создания модуля для системы Moodle был не автоматизирован. Перед начинающими разработчиками возникала проблема отсутствия знаний для дальнейшей разработки модулей в системе Moodle. Поэтому на поиск, изучение правил построения компонентов модуля разработчику требовалось большое количество времени.
Разработанная система для автоматизации построения компонентов позволяет сократить время на создание нового модуля, сохраняя полученные в процессе работы экспертной системы необходимые файлы в архиве.
На этапе исследования
предметной области среди разработчиков Mo
Всего были опрошены сто человек. Результат опроса представлен на рисунке 6.
Рисунок 6 – Опрос об использовании экспертной системы
Как показал опрос, большинству разработчиков пригодилась бы экспертная система для создания модуля.
В разработке проекта
участвуют разработчик и
В таблице 4 приведен календарный план работ всего проекта: начало проекта – март 2012 года, расчетный период – 3 месяца, шаг временной шкалы – 1 день/клетку.
Таблица 4 – Календарный план
Расчет расходов на оплату труда проектной группы по формуле (1):
Зот пр = ∑Qi * Ki * (1 + Kнч ) (1),
где
i – индекс профессиональной группы, занятой в разработке проекта.
Разработку экспертной системы осуществляет разработчик. Руководитель проекта контролирует выполнение работ на каждом этапе.
i = 2;
Qi – суммарная трудоемкость работ, выполняемых исполнителями i-ой профессиональной группы, чел.-дни;
рассчитывается по формуле (2):
Qi = Ki * ∑Ti (2),
где
К – количество людей в профессиональной группе, чел.;
Т – время, которое работает профессиональная группа, дни.
Q1 (Разработчик) = 1 * (7 + 3 + 30 + 36 + 3) = 79 (чел.-дней);
Q2 (Руководитель) = 1 * (5 + 3) = 8 (чел.-дней);
Ki – стоимость оплаты одного рабочего дня, руб.
К1 = 1000 руб.;
К2 = 1500 руб.;
Kнч – коэффициент отчислений по страховым взносам в соответствии с нормативом, определенным действующим федеральным законом Российской Федерации от 24 июля 2009 г. N 212-ФЗ "О страховых взносах в Пенсионный фонд Российской Федерации, Фонд социального страхования Российской Федерации, Федеральный фонд обязательного медицинского страхования и территориальные фонды обязательного медицинского страхования". Страховые отчисления составляют 30,2%;
Kнч = 0, 302.
Для расчета Зот пр удобно использовать таблицу 6.
Таблица 6 - Расчет затрат на оплату труда проектной группы
Для данного дипломного проекта единовременные затраты будут складываться из затрат по оплате труда проектной группы, аренды компьютера, оплаты коммунальных услуг и интернета, и будут рассчитываться по формуле (3).
Кд = Зот пр + Ак + Зк + Зи + Зб + Пр (3),
где
Зот пр – затраты по оплате труда проектной группы;
Ак – стоимость аренды компьютера;
Зк – расходы на оплату коммунальных услуг;
Зи – оплата интернета;
Зб – затраты по оплате труда бухгалтера;
Пр – прочие расходы.
Для разработки экспертной системы из оборудования потребуется персональный компьютер, имеющий выход в интернет. Сама разработка системы занимает приблизительно 3 месяца.
Для экономии денежных средств было решено взять оборудование в аренду. Мониторинг информации о стоимости аренды данного оборудования показал, что средняя стоимость аренды компьютера составляет 3300 рублей в месяц.
Затраты на коммунальные услуги составляют 1500 рублей в месяц, а на интернет – 1000 рублей.
Для начисления заработной платы проектной группе и перечисления страховых взносов, необходимо воспользоваться услугами бухгалтера. Заработная плата бухгалтера составляет 18 000 руб. в месяц, т.е. приблизительно 900 руб. в день. Услуги бухгалтера понадобятся лишь в последние 5 дней каждого месяца, исходя из этого можно рассчитать затраты на бухгалтерские услуги, которые приведены в таблице 7.
Таблица 7 – Затраты на услуги бухгалтера
Таким образом, Зб = 17 577 руб.
Для удобства расчетов все единовременные затраты за 3 месяца приведены в таблице 8.
Таблица 8 – Единовременные затраты
Таким образом, сумма всех затрат по формуле (3):
Кд = 156 459 руб.
Процесс внедрения разработки является очень сложной задачей. На этом этапе неминуемы риски связанные с развертыванием разработки, поэтому всегда следует закладывать процент на их ликвидацию или минимизацию. Общая практика показывает, что оптимальной ставкой выделяемой на сглаживание рисков является 20% от общей стоимости проекта.
Общая стоимость проекта составляет 156 459 рублей, с учетом 20% – 187 751 рубль.
Главной целью разработанной экспертной системы является сокращение временных затрат на построение программных компонентов.
Экономический эффект экспертной системы состоит в уменьшении времени на разработку модуля системы Moodle. Если раньше на выполнение поставленной задачи программист затрачивал до 6 часов в день, то с применением данной программы время сократится до 2 часов. По этим данным далее будут сравниваться два подхода - базисный и предлагаемый.
При базисном подходе программист разрабатывает будущий модуль без помощи экспертной системы. Т.е. при необходимости ищет в интернет-ресурсах правила написания программных компонентов. При предлагаемом подходе разработка будет происходить с использованием экспертной системы.
Расчет годовой трудоемкости при базисном подходе по формуле (4):
Tб = ∑Qi * Bi * Ki * 12 (4),
где
i – индекс профессиональной группы, занятой в разработке будущего модуля
i = 1
Qi – численность персонала i-ой профессиональной группы. Численность составляет 5 человек;
Q1 = 5 чел.;
Bi – месячный фонд рабочего времени работника i-ой группы в часах;
B1 = 160 часов (8 часов * 5 дней * 4 недели = 160 часов - четыре недели по 5 рабочих дней в неделю и восемь часов работы в день).
Ki – доля рабочего времени в годовом фонде рабочего времени, затрачиваемая работником i-ой профессиональной группы;
K1 = 0, 75 (четыре недели по 5 рабочих дней в неделю и 6 часов работы в день; 120 часов / 160 часов = 0, 75).
Tб = 5 * 160 * 0, 75 * 12 = 7 200 чел. - часов.
Годовая трудоемкость при предлагаемом подходе так же будет рассчитана по формуле (5):
Tп = ∑Qi * Bi * Ki * 12 (5),
где
i = 1 проф. группа;
Q1 = 5 чел.;
B1 = 160 часов;
K1 = 0,25 (четыре недели по 5 рабочих дней в неделю и 2 часа работы в день; 40 часов / 160 часов = 0,25).
Тп = 5* 160 * 0,25 * 12 = 2 400 чел. – часов.
Себестоимость построения программных компонентов без экспертной системы за год рассчитывается по формуле (6):
Cб = ∑Qi * Oкп i * (1 + Кнч) * Кi * 12 (6),
где
i – индекс профессиональной группы, занятой в построении компонентов;
i = 1;
Qi – численность персонала i-ой профессиональной группы;
Q1 = 5 чел.;
Кi – доля рабочего времени, затрачиваемая работником i-ой профессиональной группы на построение компонентов модуля;
K1 = 0,75 (четыре недели по 5 рабочих дней в неделю и 6 часов работы в день; 120 часов / 160 часов = 0,75);
О кп i – месячный оклад персонала i-ой профессиональной группы в рублях;
О кп 1 = 15 000 руб.;
Кнч – коэффициент отчислений по страховым взносам в соответствии с нормативом, определенным действующим законодательством;
Кнч = 0,302.
Cб = 5 * 15 000 * (1 + 0,302) * 0,75 * 12 = 878 850 руб.
Себестоимость автоматизированного построения программных компонентов за год рассчитывается по формуле (7):
Cп = ∑Qi * Oкп i * (1 + Кнч) * Кi * 12 (7),
где
i = 1;
Q1 = 5 чел.;
K1 = 0,25;
О кп 1 = 15 000 руб.;
Кнч = 0,302.
Cп = 5 * 15 000 * (1 + 0,302) * 0,25 * 12 = 292 950 руб.
Абсолютный показатель изменения годовой трудоемкости в результате внедрения проекта рассчитывается по формуле (8):
∆Т = Тб – Тп (8),
где
Тб – годовая трудоемкость при базисной технологии;
Тп - годовая трудоемкость при предлагаемой автоматизированной технологии разработки программных компонентов.
∆Т = 7 200 – 2 400 = 4 800 часов.
Абсолютный показатель изменения годовых затрат в результате внедрения проекта рассчитывается по формуле (9):
∆С = Сб – Сп (9),
где
Сб – годовые затраты по базисной технологии;
Сп - годовые затраты по предлагаемой автоматизированной технологии разработки программных компонентов.
∆С = 878 850 руб. – 292 950 руб. = 585 900 руб.
Коэффициент изменения трудовых затрат рассчитывается по формуле (10):
Кт = (∆Т/ Тб) * 100% (10)
Кт = 4 800 / 7 200 * 100% = 67%
Коэффициент изменения стоимостных затрат рассчитывается по формуле (11):
Кс = (∆С/Сб) * 100% (11)
Кс = 585 900 / 878 850 * 100% = 67 %
Индекс изменения трудовых затрат характеризует рост производительности труда засчет применения экспертной системы, его можно определить по формуле (12):
Iт = Тб/Тп (12)
Iт = 7 200 / 2 400 = 3.
Индекс изменения стоимостных затрат рассчитывается по формуле (13):
Iс = Сб/ Сп (13)
Iс = 878 850 / 292 950 = 3
Расчетный коэффициент эффективности единовременных затрат на разработку и внедрение проекта выводится из формулы (14):
Ер = ∆С / Кд (14)
Ер = 585 900 руб. / 156 459 руб. = 3,7
Срок окупаемости
Ток = Кд / ∆С (15)
Ток = 156 459 руб. / 585 900 руб. = 0,3
Экономические показатели, полученные в процессе расчета экономической эффективности, представлены в таблице 9 для лучшего восприятия.
Таблица 9 – Показатели эффективности
Вывод:
Разработка экспертной системы для автоматизации построения компонентов в системе Moodle является целесообразной. Общая стоимость разработки системы составит 156 459 рублей.
После внедрения экспертной системы трудовые затраты сократятся на 67%, что позволит повысить уровень эффективности использования рабочего времени, а стоимостные затраты на разработку компонентов снизятся на 67%. При этом производительность труда увеличится в 3 раза.
Срок окупаемости
Одним из важнейших аспектов проблемы обеспечения безопасности компьютерных систем является определение, анализ и классификация возможных угроз безопасности. Перечень значимых угроз, оценки вероятностей их реализации, а также модель нарушителя служат основой для проведения анализа рисков и формулирования требований к системе зашиты.
Информация о работе Экспертная система для автоматизации построения компонентов системы Moodle