Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Задание лабораторной работы

Разработка сценария диалога

Сценарий диалога – описание всей совокупности обменов между пользователем и диалоговой системой.

Будем понимать под обменом операцию, связанную с вводом данных с клавиатуры терминала в ответ на запрос диалоговой системы. Совокупность обменов по выполнению определенной функции системы назовем процедурой. Очевидно, что процедура может состоять и из одного обмена. Рассмотрим наиболее существенные факторы, которые необходимо учитывать при проектировании сценария диалога:

1. Конечные цели диалога. Эти цели вытекают из постановки задачи диалога. Лучше всего изображать цели в виде графа диалога. Граф диалога должен предусматривать асинхронные выходы, т. е. при желании пользователь должен иметь возможность вернутся на верхний уровень из любой точки обмена.

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

3. Расположение сообщений на экране. Существенное значение для правильного и быстрого восприятия информации имеет расположение текста сообщений на экране.

Программирование

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

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

Основными составляющими структурного программирования являются:

· Проектирование сверху вниз;

· Модульное программирование;

· Структурное кодирование.

Проектирование сверху вниз предполагает определение задачи в общих чертах с последующей ее детализацией (уточнением). Уточнение задачи приводит к появлению нижних уровней иерархии.

Пример:

Модульное программирование – разделение программы на части (модули). Модуль оформляется в виде подпрограммы или процедуры. При модульном программировании важно знать, какие входные данные поступают на вход модуля и какие данные должны быть на выходе. При этом с точки зрения других модулей совершенно не важно, что делается внутри модуля, главное. Чтоб он давал правильные выходные данные. Этим обеспечивается независимость модулей. Модульное программирование является логическим продолжением проектирования сверху вниз, при котором отдельные части каждого уровня иерархии реализируются в виде соответствующих модулей. Разбиение на модули также облегчает программирование и отладку.

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

Таким образом, при разработке программы необходимо учитывать следующие соображения. Последовательность операторов предполагает их последовательное выполнение. Условный переход - конструкция IF – THEN – ELSE (или ее разновидности, например, CASE – OF – END). Повторение – циклы типа WHILE – DO – (или его частный случай FOR – TO – DO) и REPEAT – UNTIL –.

Тестирование

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

Обычно ошибки появляются на входе программы по трем причинам:

1. Неверно заданы входные данные.

2. Допущены логические ошибки в программе.

3. Неправильно выбран алгоритм.

Существует два вида выявления ошибок:

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

· Тестирование – часть процесса верификации программы, относящаяся к выявлению ошибок во время функционирования программы. Задачей тестирования является обнаружение ошибок, а не демонстрация правильности работы программы. Желательно чтобы тестовые данные подготавливал человек, не принимавший участия в реализации программы.

Процесс тестирования модуля включает в себя следующие этапы:

1. Тестирование путей прохождения модуля.

2. Проверку циклов.

3. Проверку ветвлений.

4. Проверку правильности внутренних переменных.

Сопровождение

Любая разработанная диалоговая система должна быть подтверждена соответствующей документацией с описанием.

 

Задание лабораторной работы

Выбрать из списка и программно реализовать диалоговую систему:

1. Справочная система. Необходимо выбрать тематическое направление справочной системы. Подготовить контент (содержимое) справочных файлов. Доступ пользователя к файлам организовать с помощью иерархии меню.

2. Система для проверки учебной подготовки студентов методом тестирования. Необходимо выбрать тему (из какого-либо раздела математики или информатики) для проверки знаний. Подготовить 20-30 вопросов с 4 вариантами ответов, один из которых правильный, один – “не знаю”, остальные – неправильные, но правдоподобные (дистракторы). Вопросы должны быть приблизительно одного уровня сложности, на ознакомление с вопросом и ответи пользователь должен тратить не более 1 минуты. Организовать хранение в файле вопросов с вариантами ответов и правильными ответами. При тестировании организовать доступ к вопросам в случайном порядке.

3. Система, имитирующая разумный диалог. Необходимо выбрать тему диалога. Продумать все ответвления в сценарии диалога. Решить какие типы диалога использовать. Разработать программу.

 

Вопросы для контроля и самоконтроля

 

1. Что такое диалог.

2. Перечислите основные типы диалога в системе Человек-Компьютер и дайте их характеристику.

3. Объясните по схеме работу алгоритма простейшего диалога с машиной.

4. Охарактеризуйте состав современного аппаратного обеспечения ПК, предназначенного для организации ведения диалога пользователя с ПК.

5. Приведите примеры использования в работе известных программ различных типов диалога.

6. Сравните различные типы диалога по удобству для пользователя. Обоснуйте свои выводы.

7. Сравните различные типы диалога по простоте программной реализации. Обоснуйте свои выводы.

8. Какие типы диалога вы использовали при выполнении своей лабораторной работы. Чем был обусловлен ваш выбор.

9. Как реализована в вашей работе проверка вводимых пользователем данных на корректность.

10. Как использовались в вашей работе файлы. В чем вы видите целесообразность их использования при организации диалога.

11. Каковы основные этапы обработки файлов, какие средства языка программирования вы использовали для организации работы с файлами.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...