Проектирование и разработка автоматизированной системы для проверки знаний студентов

Автор работы: Пользователь скрыл имя, 15 Декабря 2013 в 20:45, дипломная работа

Краткое описание

Разработка и внедрение автоматизированной системы для тестирования позволила упростить процедуру, сократить время студентов и преподавателей, избежать ошибок в подсчете результатов.
Во время выполнения данной работы требовалось решить следующие задачи:
разработать техническое задание (ТЗ) на автоматизированную систему (АС);
разработать и реализовать АС;
провести внедрение АС.

Содержание

Введение 3
Глава 1.Описание предметной области и содержательная постановка задачи 4
1.1. Описание предметной области 4
1.2. Содержательная постановка задачи 8
Глава 2. Технческое задание 9
2.1 Описание технических требований 9
2.2. Описание требований к интерфейсу 9
2.3. Дополнительные требования 10
Глава 3. Практическая разработка автоматизированной системы 11
3.1. Этапы разработки 11
3.2. Функциональная модель 13
3.3. Обоснование выбора в качестве среды программирования MS Visual Basic 6.0 15
Глава 4. Описание автоматизированной системы 17
4.1. Состав автоматизированной системы 17
4.2. Описание функциональных возможностей 17
4.3. Ограничения 18
Заключение 20
Список используемой литературы 21
Приложения. 22
Приложение 1. Техническое задание. 22
Приложение 2. Экранные формы 28
Приложение 3. Листинги модулей. 31

Вложенные файлы: 1 файл

Диплом - Коршунов.doc

— 474.50 Кб (Скачать файл)

 

  • Разработанная АС должна позволить в будущем при разумных затратах развивать и модернизировать систему

 

  • установленная и настроенная АС  во время эксплуатации не должна требовать персонала для ее сопровождения
  • для установки и настройки АС должно хватать одного пользователя знакомого со строением и особенностями эксплуатации АС и вычислительной техники

 

  1. АС должна позволять добавлять новые темы для проверки
  2. АС должна позволять изменять форму (бланк) листа с оценкой студента

 

  1. срок эксплуатации АС должен быть не менее пяти лет.

 

  1. надежность АС должна обеспечиваться гарантированным запуском, безаварийной работой в течении всего рабочего дня и отсутствием ошибок в вычислении результатов тестирования
  2. оценка надежности АС производится во время тестовой и рабочей эксплуатаций АС по числу воспроизводимых и невоспроизводимых сбоев в течении недели
  3. допустимой надежностью АС для эксплуатации признается отсутствие воспроизводимых сбоев и не более 5 (Пяти) невоспроизводимых сбоев в неделю
  4. ошибки в вычислении результатов тестирования недопустимы

 

  1.  требования по безопасности при эксплуатации и обслуживании такие же, как и действующие нормативы при работе с ПЭВМ;

 

  1. при работе с АС должны использоваться стандартные средства ввода-вывода (мышь, клавиатура, дисплей);
  2. АС должна позволять администратору системы конфигурировать цветовую гамму значимых элементов системы;
  3. АС должна быть удобна в использовании на ПЭВМ без мыши;

 

  1. АС должна устанавливаться и работать на широком спектре оборудования с установленной ОС компании Microsoft (от Windows 98 до Windows 7);

 

  1. разрабатываемая АС не должна иметь нарушений патентного и авторского прав

 

Требования к функциям АС:

- перед началом тестирования  требуется выбор темы тестирования

- перед началом тестирования  требуется ввод фамилии, имени, отчества тестируемого

- кроме фамилии, имени, отчества  предусмотреть 2 поля для дополнительной  информации о тестируемом

- генерирование списка вопросов  для тестирования из пула вопросов  должно проводиться случайным  образом

 

- во время тестирования АС должна позволять:

а) видеть список номеров вопросов;

б) видеть текущий номер вопроса;

в) выделять номера отвеченных вопросов;

г) выделять выбранный ответ шрифтом  и цветом;

 

- во время тестирования студендов,  АС не должна позволять случайным образом прервать тестирование; 

- АС должна позволять протоколировать  список вопросов и данных ответов;

- итоговый протокол должен сохраняться  в текстовом файле

- имя файла итогового протокола  должно быть в форме ГОД-МЕСЯЦ-ДЕНЬ-ФамилияИО.txt

- в АС должен быть предусмотрена  возможность задания администратором  или преподавателем разной глубины  детализации итогового протокола  (оценка; оценка, число неправильных/правильных  ответов; оценка, число правильных/неправильных  ответов по подтемам);

- в АС должен быть предусмотрен режим «работы над ошибками» - показ правильных ответов после тестирования;

- АС после очередного тестирования  система сразу должна быть  готова к следующему;

- конфигурирование параметров  работы АС должно быть в  одном отдельном файле;

- конфигурирование параметров  оформления АС должно быть  в одном отдельном файле;

 

Последовательность реализации отдельной  функциональности АС оставляется на усмотрение Разработчика.

Отказы по функциональности недопустимы.

 

 

4. Состав и содержание работ по созданию системы

 

Разработка должна быть проведена  в следующем порядке:

  • разработка, согласование и утверждение технического задания;
  • рабочее проектирование на территории Разработчика;
  • внедрение АС с полной функциональностью на испытательном полигоне Заказчика и тестовая эксплуатация  Заказчиком в течении месяца;
  • при возникновении во время тестовой эксплуатации замечаний или претензий у Заказчика о несоответствии  АС с техническим заданием, Разработчик устраняет несоответствия в течении 2(Двух) недель, тестовая эксплуатация продлевается на срок устранения несоответствий;
  • при возникновении у Заказчика пожеланий к АС не входящих в техническое задание производится согласование: дополнений к техническому заданию, а также сроков и стоимости работ;
  • после успешного завершения тестовой эксплуатации происходит внедрение АС в рабочую среду Заказчика;
  • Разработчик поддерживает АС в течении года после внедрения АС, т.е. при возникновении ситуаций, когда поведение АС не соответствует техническому заданию по вине Разработчика, Разработчик за свой счет устраняет недостатки. Срок поддержки АС увеличивается на время устранения недостатка.

 

5. Порядок контроля и приемки  системы

 

Приемо-сдаточные испытания должны проводиться на объекте Заказчика  в оговоренные сроки.

Приемо-сдаточные испытания АС должны проводиться согласно согласованной Заказчиком и Разработчиком программой испытаний, а так же с помощью тестовой эксплуатацией системы.

Ход проведения приемо-сдаточных испытаний  Заказчик и Разработчик документируют  в протоколе проведения испытаний.

В случае выявления несоответствия АС техническому заданию, Заказчик письменно  сообщает о всех выявленных несоответствиях  Разработчику. Разработчик выясняет обстоятельства несоответствия системы  и устраняет несоостветствия.

В случае отсутствия несоответствий АС техническому заданию, Заказчик принимает АС, подписывая акт о приеме АС в эксплуатацию в течении недели после внедрения АС в рабочую среду.

 

 

6. Требования к составу и содержанию  работ по подготовке объекта  автоматизации к вводу

системы в действие

 

На время внедрения АС для  тестовой эксплуатации, устранения возникших  замечаний, внедрения в рабочую  среду и для поддержания АС, Заказчик обеспечивает доступ Разработчику на свою территорию  в объеме необходимом  для Разработчика (включая, при необходимости, доступ во внерабочее время, и в выходные и праздничные дни).

Разработчик несет ответственность  за нарушения по своей вине нормального  функционирования оборудования и систем Заказчика при работе на территории Заказчика.

Разработчик обязуется обучить одного представителя Заказчика работам по внедрению и эксплуатации АС.

 

7.Требования к документированию.

 

При внедрении АС в тестовую эксплуатацию Разработчик передает в электронной  форме Заказчику следующую документацию:

- документацию администратора АС (позволяющую самостоятельно установить, настроить для работы АС);

- документацию пользователя АС;

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

 

До истечения сроков поддержки  АС Разработчик обязан поддерживать перечисленную выше документацию в  актуальном состоянии.

 

 

  • Приложение 2.  Экранные формы

Рис П2.1 Форма в момент начала тестирования.

Рис П2.2 Форма в момент тестирования.

 

Рис П2.3 Форма окна настройки параметров

 

  • Приложение 3. Листинги модулей.

Листинг модуля mdlAuto.bas

Attribute VB_Name = "mdlAuto"

Option Explicit

Dim prmDebug As Long                ' prm = parameter устанавливаем включена  ли отладка vbYes, vbNo

 

Public Const MaxAnswerInQuestion = 10      ' Максимальное число вариантов ответа

Const OptionsFile = "o.txt"

Const FileQ = "q"

Const ExtFileQ = ".txt"

Const FileA = "a"

Const ExtFileA = ".txt"

Dim FileR As String

Const ExtFileR As String = ".rtf"

Const FileP = "p.txt"

Const FileSN = "sn.txt"

 

Public Const FileHelpUser = "help_user.txt"

 

 

Rem Параметры считываемые из файла mtest2.ini

Dim prmWidht As Long                ' Ширина окна

Dim prmHeight As Long               ' Высота окна

Dim prmFontSize As Integer          ' Размер шрифта для текста вопросов и вариантов ответа

Dim FolderResult As String          ' Директория куда нужно сохранять результаты тестирования

Dim FolderQuestions As String       ' Директория откуда загружаются вопросы теста

Rem -----------------------------------------------

 

Const flParameters = "MTest2.ini"          ' fl = file параметров

Dim flHeaderResult As String               ' файл с Шапкой для результатов

Rem Dim dirOptions As String            ' откуда загружаем вопросы

 

Rem ----- Ключевые переменные

Dim Group As Integer                ' Число групп (секций) вопросов в тесте

'   Введено ограничение  - Максимум 30 секций вопросов

Dim Options(30, 4) As Integer          'первый индекс: номер секции;

                    ' второй индекс: 0 номер пп; 1 - всего  вопросов; 2 - вопросов для теста;

                    ' 3 - сколько вопросов в предыдущих  секциях

Dim NameSections(30) As String

'   Введено ограничение - Максимум 3000 вопросов в тесте

Dim Question(3000, 11) As String        ' Вопросы теста: первый индекс - порядковый номер вопроса,

                    ' Второй индекс: 0 - вопрос, далее  варианты ответа

Dim AnswerInQuestion(3000) As Integer          ' Число вариантов ответов в вопросе

Dim Answer(3000) As String                      ' правильный ответ

Dim AllQuestionForTest As Integer                   ' Число вопросов для тестирования

Dim AllQuestionInTest As Integer        'Число всех возможных вопросов в тесте

Dim MaxAnswerInQuestionThisTest As Integer  ' определение сколько максимум вариантов ответа возможно

 

'   Введено ограничение  - Максимум 160 вопросов для теста

Const MaxQuestionsInTest = 160      ' Максимальное число вопросов задаваемых в тесте

Dim GenQListQuestion(160) As Integer   '   Номера вопросов для теста

Public GenQListAnswer(160) As String      '   Ответ данный тестируемым

Dim tmpK(160) As Integer

 

Rem ----- Переменные необходимые для процедуры тестирования

Public TestInProgress As Boolean

Public CurrentQ As Integer             ' текущий вопрос

 

' Переменные для расчета  результата

Dim Result(30) As Integer               ' Массив правильных ответов по группам

Dim ResultFull As Integer

Dim Mark As Integer                     ' оценка

Dim MarkDiv(3) As Double                ' граница оценок (ниже первой - 2, выше третей - 5)

 

' Переменные для просмотра  неправильных ответов

Dim ShowWrongAnswers As Integer

Public ShowAnswersMode As Boolean

 

' Переменная для печати  полного протокола

Dim PrintFullProtocol As Integer

 

' Еще переменные для  реализации дополнительных требований

Dim TypeOfStandardProtocol As Integer           ' Тип стандартного протокола

Dim ShowNumberQuestion As Integer                ' Показывать ли номера вопросов в секции

Dim BackColorStandard As Long

Dim BackColorAnsweredQ As Long                ' Цвет отвеченного вопроса

Dim BackColorCurrentQ As Long                 ' Цвет текущего вопроса

Dim BackColorWrongAnsw As Long                ' Цвет неправильных ответов

     

 

 

Dim PushButton As VbMsgBoxResult ' объявляем  переменную для нажатой кнопки

 

Public Sub Main()

 

    Rem flParameters = "MTest2.ini"

 

    With frmMain

        .Show

       

        LoadCheckSet_Parameters

 

    End With

End Sub

Sub debugOnOff()

    Rem PushButton = MsgBox("начало", vbOKOnly, "debugOnOff")

    If prmDebug = vbNo Then

        prmDebug = vbYes

        Rem frmDebug.Visible = True

        Rem frmDebug.Show

    Else

        prmDebug = vbNo

        Rem frmDebug.Visible = False

    End If

End Sub

 

Sub LoadCheckSet_Parameters() 'Загрузка, проверка, установка параметров

    Dim F As Long

    Dim MyText As String

    Dim fullFileName As String

    Dim i, j, k, m, n As Integer

   

       

    Rem

    Rem PushButton = MsgBox("Загрузка", vbOKOnly, "Загрузка")

   

    prmDebug = vbNo

    MaxAnswerInQuestionThisTest = 1

    Rem debugOnOff                                  ' Включаем отладку

   

    F = FreeFile

   

    fullFileName = Command()

    If fullFileName = "" Then

        fullFileName = App.Path & "\" & flParameters

    Else

        ' MsgBox ("Параметры будут читаться  из файла: " & fullFileName)

        fullFileName = App.Path & "\" & fullFileName

    End If

    Rem frmDebug.Text1(0).Text = fullFileName

   

    Open fullFileName For Input As #F           ' открываем файл для чтения параметров программы

    Rem Do Until EOF(F)

        Rem Line Input #F, MyText

    Rem Loop

   

        Input #F, MyText, prmWidht

        Input #F, MyText, prmHeight

        Input #F, MyText, prmFontSize

        Input #F, MyText, FolderResult

        Input #F, MyText, FolderQuestions

        Input #F, MyText, MarkDiv(0), MarkDiv(1), MarkDiv(2) ' считали  границы оценок

        Input #F, MyText, flHeaderResult                    ' имя файла, где хранится шапка для результата

        Input #F, MyText, ShowWrongAnswers                  ' Будут ли показаны неправильные ответы тестируемому

        Input #F, MyText, PrintFullProtocol                 ' Печатать ли полный протокол теста (вопросы, правильные ответы, ответы данные испытуемым)

        Input #F, MyText, TypeOfStandardProtocol            ' Тип стандартного протокола

        Input #F, MyText, ShowNumberQuestion                ' Показывать ли номера вопросов в секции

Информация о работе Проектирование и разработка автоматизированной системы для проверки знаний студентов