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

Тип работы:
Дипломная
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Дипломная работа

на тему:

«Разработка программного модуля на основе понятийно-тезисной модели»

Введение

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

По некоторым оценкам, среднегодовой темп прироста новых знаний составляет 4−6%. Это значит, что около 50% профессиональных знаний специалист должен получить по окончании учебного заведения. Объем времени, необходимый для возобновления профессиональных знаний для специалистов с высшим образованием составляет 28% от общего объема времени, которым владеет работник в течение всего работоспособного периода. Непрерывное образование становится важным фактором конкурентоспособности специалиста на рынке труда. Вся история становления и развития учебы человека как самостоятельной области его деятельности указывает на то, что учеба должна быть непрерывной и адаптивной.

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

Отличием Web-систем, которые применяются для поддержки непрерывной учебы, от других систем представления информации в Интернет есть наличие специфических для образования функций, среди которых важную роль играет контроль знаний. Экстенсивное увеличение объемов информации и знаний требуют усовершенствование и автоматизации подготовки и проведения контроля знаний в системах непрерывной учебы. При этом формирования образовательного контенту и средств контроля должны происходить параллельно, а их разграничение может привести к несоответствию и неактуальности контроля.

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

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

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

1. Специальный раздел

1. 1 Исследовательская часть

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

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

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

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

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

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

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

· Работать нескольким ученикам с одним курсом. У каждого пользователя своя учетная запись.

· Разграничивать права обучающихся в зависимости от их достижений.

Реализовать распределенную базу данных / знаний (БД/БЗ) для хранения как аутентификационных данных пользователей, так и материалов используемых курсов.

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

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

Целью технологии построения последовательности курса обучения (также называемой технологией учебного планирования) является обеспечение обучаемого наиболее подходящей, индивидуально спланированной последовательностью блоков знаний для заучивания и последовательностью учебных заданий для занятий. Другими словами, она помогает обучаемому найти «оптимальный путь» через учебный материал. Одним из представителей данной технологии является ИОС SIETTE. Единственный вид учебного материала, которым обладает система SIETTE, вопросы. Единственное, что она может делать, это — генерировать адаптивную последовательность вопросов для оценивания знаний обучаемого. Системы типа SIETTE неполны по своей природе, и должны использоваться как компоненты распространяемых обучающих систем.

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

Интерактивная поддержка в решении задач более современная и более мощная технология. Вместо ожидания конечного решения эта технология предоставляет обучаемому интеллектуальную помощь на каждом шаге решения задачи. Уровень помощи может быть разным: от оповещения о неправильно сделанном шаге до выдачи совета и выполнения следующего шага за студента.

В контексте решения задач на примерах, обучаемые решают новые задачи, используя в качестве помощи примеры из своего ранее полученного опыта. В этом плане ИОС помогает обучаемым, предлагая им самые подходящие варианты (примеры, объясненные им или задачи, решенные ими ранее).

Одним из примеров такой системы может служить ELM-ART и ELM-ART-II. Основным минусом этой системы является ее пассивность (работают по запросу обучаемого). В то время как настоящий интерактивный репетитор должен быть не только интерактивным, но и активным. Он не должен спать в промежутках от одного запроса к другому, а вместо этого он должен быть способен наблюдать, что делает обучаемый и немедленно реагировать на ошибки.

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

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

Интеллектуальное наблюдение за классом также основано на возможности сравнивать записи о различных обучаемых. Однако вместо поиска совпадений оно ищет различия. Целью является определение обучаемых, которые учат записи существенно отличающимся образом от их сокурсников. Система HyperClassroom представляет интересный пример использования нечетких механизмов для определения застоявшихся обучаемых в аудитории. Это один из немногих, а может и единственный пример технологии интеллектуального наблюдения за классом.

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

Web F-SMILE является Интеллектуальной Обучающей Средой с Графическим Интерфейсом Пользователя для начинающих пользователей, манипулирующих файлами, как в Проводнике Windows 98/NT (Windows 98/NT Explorer). Главной отличительной чертой системы является то, что она может адаптировать свое взаимодействие к каждому конкретному учащемуся. Для этого Web F-SMILE назначает агентов для наблюдения за учащимися и дает непосредственные, непринужденные и индивидуализированные советы и обучение в случае возникновения проблемы основанные на модели учащегося. Комплекс может работать и как приложение, использующее Веб технологии, и как автономное приложение, когда компьютер учащегося не подключен к Интернету. Когда система работает онлайн, сведения об учащемся сохраняются на Сервере Моделирования Учащихся и отдаются в распоряжение любого клиента приложения, который вызывает его. Однако учащийся также может управлять файловым хранилищем, когда находится в оффлайн. По вышеуказанной причине комплекс хранит две копии моделей учащихся, одну на сервере, а другую на ПК пользователя, для того, чтобы комплекс мог работать, как онлайн, так и оффлайн. Таким образом, удобство и простота использования комплекса увеличиваются.

Система «Орокс» разрабатываемая в МОЦНИТ МИЭТ представляет собой сетевую оболочку для организации и проведения полномасштабного обучения с использованием сетевых технологий. Система по сути реализует «традиционный подход» к системы обучения с большими трудовыми затратами как на подготовку курсов для размещения так и для генерации тестовых заданий, которые составляются непосредственно преподавателем, велико значение проявления так называемого «человеческого фактора», который может привести к негативным последствиям для обучаемого. К тому же единообразие интерфейса плохо влияет на мотивационную составляющую обучения.

Web F-SMILE использует Веб службы для обеспечения взаимодействия агентов комплекса с Веб сервером. Веб службы, в широком смысле этого термина, являются службами, представленными через Веб. В последнее время, однако, этот термин относится к набору отдельных протоколов связанных с взаимодействием удаленных приложений. Если быть более конкретным, Веб службы являются отдельными, модульными приложениями, которые предоставляют набор выполняемых функций любому, запрашивающему их.

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

Таблица 1.1. Сравнение различных обучающих систем

Система

Адаптивное планирование

Поддержка Адаптивной навигации

Поддержка решения задач

Интеллектуальный анализ решений

Аудио видео составляющая

CALAT

+

InterBook

+

+

PAT-InterBook

+

+

+

+

De Bra’s

+

Belvedere

+

+

Web F-SMILE

+

+

+

Система «Орокс»

+

ELM-ART

+

+

+

Активная деятельность по отысканию приемлемых способов обобществления непрерывно растущего объема информации привела к созданию в начале 60-х годов специальных программных комплексов, называемых «Системы управления базами данных» (СУБД). Вот список лишь нескольких потребностей, которые не покрывались возможностями систем управления файлами:

· поддержание логически согласованного набора файлов;

· обеспечение языка манипулирования данными;

· восстановление информации после разного рода сбоев;

· реально параллельная работа нескольких пользователей.

Можно считать, что если прикладная информационная система опирается на некоторую систему управления данными, обладающую этими свойствами, то эта система управления данными является системой управления базами данных (СУБД). Основная особенность СУБД — это наличие процедур для ввода и хранения не только самих данных, но и описаний их структуры. Файлы, снабженные описанием хранимых в них данных и находящиеся под управлением СУБД, стали называть банки данных, а затем «Базы данных» (БД).

Реляционная структура данных

Любое представление данных сводится к совокупности двумерных таблиц особого вида, известного в математике как отношение — relation. Наименьшая единица данных реляционной модели — это отдельное атомарное (неразложимое) для данной модели значение данных. Так, в одной предметной области фамилия, имя и отчество могут рассматриваться как единое значение, а в другой как три различных значения.

Доменом называется множество атомарных значений одного и того же типа. Смысл доменов состоит в следующем. Если значения двух атрибутов берутся из одного и того же домена, то, вероятно, имеют смысл сравнения, использующие эти два атрибута. Заголовок состоит из такого фиксированного множества атрибутов A1, A2,…, An, что существует взаимно однозначное соответствие между этими атрибутами Ai и определяющими их доменами Di (i=1,2,…, n). Тело состоит из меняющегося во времени множества кортежей, где каждый кортеж состоит в свою очередь из множества пар атрибут-значение (Ai: Vi), (i=1,2,…, n), по одной такой паре для каждого атрибута Ai в заголовке. Для любой заданной пары атрибут-значение (Ai: Vi) Vi является значением из единственного домена Di, который связан с атрибутом Ai.

Степень отношения — это число его атрибутов. Отношение степени один называют унарным, степени два — бинарным, степени три — тернарным, а степени n — n-арным. Кардинальное число или мощность отношения — это число его кортежей. Кардинальное число отношения изменяется во времени в отличие от его степени.

Поскольку отношение — это множество, а множества по определению не содержат совпадающих элементов, то никакие два кортежа отношения не могут быть дубликатами друг друга в любой произвольно-заданный момент времени. Уникальность: в произвольный заданный момент времени никакие два различных кортежа R не имеют одного и того же значения для Ai, Aj,…, Ak. Минимальность: ни один из атрибутов Ai, Aj,…, Ak не может быть исключен из K без нарушения уникальности.

Каждое отношение обладает хотя бы одним возможным ключом, поскольку, по меньшей мере, комбинация всех его атрибутов удовлетворяет условию уникальности. Один из возможных ключей (выбранный произвольным образом) принимается за его первичный ключ. Остальные возможные ключи, если они есть, называются альтернативными ключами. Вышеупомянутые и некоторые другие математические понятия явились теоретической базой для создания реляционных СУБД, разработки соответствующих языковых средств и программных систем, обеспечивающих их высокую производительность, и создания основ теории проектирования баз данных.

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

Сравнительные характеристики некоторых подходов к компьютерному тестированию.

Наведем короткий обзор технологий реализации тестирования, которые могут применяться в системах дистанционной учебы (Табл. 1.2.). Сравнивается традиционное создание компьютерных тестов вручную и тестирование на основе семантических моделей — на основе семантической сети и понятийно-тезисной модели.

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

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

Понятийно-тезисная модель предусматривает однозначную связь семантических данных с учебным материалом. Это дает возможности для управления учебным процессом и процессом контроля знаний и их адаптации. В данном случае мы имеем информацию о понятиях и их месте нахождения в учебном материале. Количество семантических единиц, которые касаются понятия, с легкостью обсчитывается для каждого учебного фрагменту. В действительности система не рассуждает знаниями из предметной области, однако относительно отдельных высказываний или утверждений, которые описывают понятие и воспринимаются системой «как есть», она владеет информацией о том, где они содержатся в общей структуре учебного материала.

Таблица 1.2. Сравнительный анализ технологий тестирования

Критерий

Технологии тестирования

Традиционный подход

Семантические сети

Понятийно-тезисная модель

Принцип работы

Компьютерная реализация традиционного тестирования.

На основе базы знаний семантической сети. Центральная архитектурная идея для

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

На основе педагогической технологии.

формирования тестовых вопросов: триада — «понятие» — «отношение" — «понятие» На основе технологии инженерии знаний.

тестовых вопросов: связь «учебный материал» — «тезис" — «понятие». Модель носит педагогический характер с элементами применения инженерии знаний.

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

Ручным способом. Фактическое создание вопросов и вариантов ответов.

Формирование базы знаний экспертом из предметной области. Определение понятий и связей между ними.

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

Трудовые и часовые расходы, необходимые для подготовки теста

Высокие. Прямо пропорциональные количества необходимых вопросов. Трудно оптимизируются.

Необходимы большие расходы на формирование базы знаний. Однако формирование тестов идет автоматически

Сравнительно небольшие расходы. Генерация тестов идет автоматически.

Необходимость привлечения экспертов для формирования тестов или проведения дополнительной учебы

Не нуждается. Формирование тестов может осуществлять преподаватель соответствующей дисциплины.

Кроме эксперта из данной предметной области нуждается в эксперте из области инженерии знаний

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

Качество тестовых заданий, их лингвистическая понятность

Высокая, так как их формирование осуществляется непосредственно человеком

Часто тяжелая для восприятия человеком. Семантические сети создавались скорее для «объяснения» знаний компьютеру, а не человеку.

Достаточно высокая, так как вопросы строятся на основе фрагментов учебного текста, созданного человеком.

Степень автоматизации генерации вопросов теста

Фактически отсутствует. Используются готовые вопросы. Разве что разные варианты ответов могут добываться из банка заданий.

Полная автоматизация на основе созданной семантической сети.

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

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

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

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

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

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

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

В зависимости от степени интеграции с учебным материалом.

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

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

1. 2 Конструкторская часть

В спецификации качества ПМ могут быть определены несколько уровней реализации функциональности ПМ: может быть определена некоторая упрощенная (начальная или стартовая) версия, которая должна быть реализована в первую очередь, могут быть также определены и несколько промежуточных версий. В этом случае возникает дополнительная технологическая задача: организация наращивания функциональности ПМ. Здесь важно отметить, что разработка упрощенной версии ПМ не есть разработка его прототипа. Прототип разрабатывается для того, чтобы лучше понять условия применения будущего ПМ, уточнить его внешнее описание. Он рассчитан на избранных пользователей и поэтому может сильно отличаться от требуемого ПМ не только выполняемыми функциями, но и особенностями пользовательского интерфейса. Упрощенная же версия требуемого ПМ должна быть рассчитана на практически полезное применение любыми пользователями, для которых оно предназначено. Поэтому главный принцип обеспечении функциональности такого ПМ заключается в том, чтобы с самого начала разрабатывать ПМ таким образом, как будто требуется ПМ в полном объеме, до тех пор, пока разработчики не будут иметь дело с теми частями или деталями ПМ, реализацию которых можно отложить в соответствии со спецификацией его качества.

Исходя из поставленной задачи, были сформулированы требования к разрабатываемому ПМ.

· поддержка нескольких курсов обучения;

· обеспечение многопользовательского доступа к курсам обучения;

· ведение статистики для каждого студента;

· дружелюбная система профилей студентов;

· система настроек курса:

1. возможность добавления, удаления и изменения курсов;

2. возможность добавления и изменения заданий по отдельному курсу;

3. настройка уровня контроля встроенного анализатора над отдельным курсом;

· ведение журнала прогресса обучаемых;

· разделение прав доступа пользователей к системе:

1. система разделения прав доступа пользователей к различным функциональным возможностям системы;

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

· возможность печати отчета об успехах как отдельного студента так и целой группы студентов;

Требования к надежности

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

· использование технологии транзакций (commit, rollback) во избежание конфликтных ситуаций одновременного доступа к информации;

· должна поддерживаться базовая ролевая модель безопасности;

Минимальные системные требования.

Для нормального функционирования разрабатываемого ПМ к системе пользователя предъявляются следующие требования;

· операционная система WindowsXP, WindowsXP sp2, Windows Vista;

· процессор не ниже Intel Pentium III;

· 16-битная звуковая карта;

· SVGA-видеокарта (или выше);

· Ms Windows-совместимая мышь;

· Пакет не ниже Framework 2. 0;

Организация входных, выходных данных.

Одним из важных вопросов при организации ПМ является способ представления учебного материала. Преподаватель должен подготовить теоретический материал, структурированный на темы и разделы с подборкой иллюстраций, элементов гипертекста, мультимедиа, контрольных вопросов и тестов и составляет сценарий изучения курса для организации эффективной познавательной деятельности студентов. Инструментальные средства ПМ должны содержать дизайнер курсов, с помощью которого учебные материалы по каждому курсу представляются в виде HTML-документа со следующей структурой:

· сведения об авторах курса;

· сведения о курсе и его структуре;

· количество частей в курсе;

· количество часов для изучения;

· итоговый контроль (зачет / экзамен);

· сведения по структуре каждого модуля;

· сведения о дополнительных учебных материалах (видео, материалы мультимедиа и т. д.);

· описание лекций, лабораторных работ, практик и тестов по каждому курсу.

Дополнительный материал к лекциям может представлять собой: видео-фрагменты, тексты и рисунки, анимацию, аудио-фрагменты.

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

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

Выбор платформы проектирования и средств разработки

Наиболее распространенными системами для создания промышленных программных продуктов в настоящее время являются:

· Microsoft Visual Studio 2008;

· Borland Developer Studio 2006;

Следует заметить, что приведенный выше список прежде всего ориентирован на разработку Window-приложений на Windows-платформах. Каждая из указанных средств обладает самодостаточностью. Под самодостаточностью понимается наличие в составе среды минимального набора инструментов, необходимого для проектирования и создания визуальных приложений с возможностью работы с базами данных.

Возможности пакета Borland Developer Studio

Borland Developer Studio поддерживает «родную» (Win32) разработку под Windows (для C/C++ и Delphi) и разработку для. NET (для C# и Delphi) в единой целостной среде разработки, упрощая сопровождение и создание новых приложений Win32, в то же время позволяя разработчикам более легко освоить технологии. NET. Одним из улучшений, по мнению разработчиков BDS, является возможность для групп разработчиков любого размера использовать преимущества по улучшению как индивидуальной, так и групповой разработки, сопровождению и управлению приложениями для Windows и. NET. В дополнение к улучшенной производительности и готовым расширениям:

· Enterprise Framework — ECO III — обеспечивает важные сервисы уровня предприятия, такие как object-relational mapping и transparent object persistence, избавляя разработчиков от сложного и нудного сопровождения созданных ими сервисов. Модель-ориентированные приложения могут быть эффективно созданы при помощи нового ECO Synchronization Server, и разработчики также могут разрабатывать приложения уровня предприятий на уровне диаграмм состояний;

· новая функциональность IDE включает систему «живых» шаблонов, которая позволяет разработчикам легко осуществлять навигацию в любом шаблоне кода и производить больше операций рефакторинга, включая автоматическое отслеживание изменений исходного текста;

· улучшенная Visual Component Library (VCL) обеспечивает легкую разработку графического интерфейса пользователя (GUI) с применением большого количества различных компонент, с новым дизайнером VCL, который автоматически выстраивает компоненты в соответствии с настраиваемыми правилами, для соблюдения целостности GUI или его соответствия корпоративным стандартам;

· большая интеграция с ведущими инструментами ALM от Borland, включая интеграцию с Together modeling suite (встроен в редакции Architect), предоставляя мощную визуальную разработку и возможность обратной реконструкции кода. Также включена интеграция с StarTeam и Caliber для получения полноценного решения ALM по написанию исходного кода и управления требованиями.

· C# Builder 2006 хорошо укомплектован для разработчиков и руководителей проектов, которые разрабатывают приложения уровня предприятия на платформе. NET или сопровождают проекты C#, в особенности для тех, кто переходит с Java/J2EE или C/C++ на C#. Ключевые возможности:

· ECO III Enterprise Framework — пользователи C# получают все те возможности, которые пользователи Delphi 2006 найдут в ECO III, включая object-relational mapping, transparent object persistence, модель-ориентированную разработку и поддержку диаграмм состояний;

· интеграция с Borland Together® упрощает обратный анализ исходных текстов, облегчает сопровождение помощи двусторонней функциональности Live Source™, обеспечивающей синхронизацию моделей и кода, с дополнительной поддержкой ALM для исходного кода, управления требованиями и изменениями;

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

· глубокая интеграция среды разработки с ведущими инструментами ALM от Borland, включая поддержку контроля версий, управления требованиями, отслеживанием исправления ошибок, общения в команде разработчиков.

Возможности пакета Microsoft Visual Studio 2008

Среда разработки Visual Studio представляет собой полный набор средств разработки для создания веб-приложений ASP. NET, XML (веб-службы), настольных приложений и мобильных приложений. Все языки (Visual Basic, Visual C# и Visual C++) используют единую интегрированную среду разработки (IDE), которая позволяет совместно использовать средства и упрощает создание решений на базе нескольких языков.

Кроме того, в этих языках используются функциональные возможности платформы. NET Framework, которая позволяет получить доступ к ключевым технологиям, упрощающим разработку веб-приложений ASP и XML (веб-службы).

Среда разработки Visual Studio поддерживает достаточно широкий перечень технологии, основные из них представлены в табл. 1.3.

Таблица 1.3. Перечень поддерживаемых технологии средой VS2008

Технология

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

NET Framework

Дополнительные сведения о. NET Framework — неотъемлемом компоненте Windows, который поддерживает построение и выполнение нового поколения приложений и XML (веб-службы)

Windows Presentation Foundation (WPF)

WPF представляет собой набор типов. NET Framework, который можно использовать для создания внешнего вида клиентских приложений Windows. WPF состоит из таких компонентов, как расширяемый язык исправления для приложений XAML, элементы управления, привязка данных, двухмерная и трехмерная графика, анимация, стили, шаблоны, документы, мультимедийные данные, текст и типографические средства

Windows Communication

Foundation (WCF)

WCF — это среда выполнения и набор интерфейсов API для создания систем, которые обеспечивают обмен сообщениями между службами и клиентами. Эти же самые инфраструктура и интерфейсы API используются для создания приложений, обменивающихся данными с другими приложениями на данном компьютере или на компьютере, доступ к которому можно получить через Интернет

Windows Workflow Foundation

Компонент Windows Workflow Foundation включает модель программирования, ядро и средства для быстрого создания приложений, поддерживающих бизнес-процессы

Silverlight

Silverlight — это независимая от обозревателя и платформы технология, позволяющая проектировать, разрабатывать и поставлять интерфейсы с поддержкой мультимедиа и многофункциональные приложения в Интернете

Windows Forms

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

ASP. NET AJAX

В основу ASP. NET положены классы программирования. NET Framework; в состав этой технологии входит модель веб-приложения, набор элементов управления и инфраструктура, благодаря которым упрощается процесс построения веб-приложений. Технология AJAX — составная часть ASP. NET — содержит библиотеки клиентских сценариев, включающих не зависящий от обозревателя сценарий ECMAScript (JavaScript), и технологии динамического HTML (DHTML). AJAX-функциональность интегрирована с платформой серверной разработки ASP. NET. С помощью возможностей AJAX можно улучшить работу пользователей и повысить эффективность веб-приложений

Язык XAML

XAML — это язык разметки для декларативной разработки

приложений. Windows Presentation Foundation (WPF) реализует загрузчик XAML и обеспечивает поддержку языка XAML для типов WPF, поэтому большую часть пользовательского интерфейса приложения можно создавать с помощью разметки XAML

LINQ

В LINQ используются стандартные шаблоны запросов и обновления данных с помощью Visual Basic или Visual C#. Синтаксис LINQ можно расширить для поддержки большинства типов хранилищ данных. Visual Studio 2008 содержит сборки поставщиков LINQ, которые обеспечивают интегрированный в язык механизм запросов коллекций. NET Framework, баз данных SQL, наборов данных ADO. NET и документов XML

Visual Studio 2008 содержит новые средства разработки, облегчающие создание подключенных приложений на самых современных платформах, включая веб-приложения, приложения для Windows Vista, Office 2007, SQL Server 2008 и Windows Server 2008. Платформа. NET обеспечивает быстрое создание подключенных приложений с удобным пользовательским интерфейсом благодаря формированию основы (готовых программных модулей) для решения наиболее частых задач программирования. Подключенные приложения, построенные на платформе. NET Framework, обеспечивают моделирование бизнес-процессов и интеграцию систем в разнородной среде.

Visual Studio и. NET Framework снижают необходимость в написании кода общего назначения, что сокращает время разработки.

Решение Visual Studio 2008 предоставляет полнофункциональную среду разработки программного обеспечения для операционной системы Windows и Интернета. Оно обеспечивает более высокую производительность при создании управляемых данными клиентских приложений и веб-приложений. Visual Studio 2008 идеально подходит индивидуальным разработчикам, которые стремятся создавать подключенные приложения с пользовательским интерфейсом следующего поколения. Современным разработчикам приходится ориентироваться на широкий спектр платформ, создавая приложения, позволяющие организациям быстро получать ожидаемый результат. Встроенные в Visual Studio конструкторы и функции языков позволяют разработчикам создавать подключенные приложения, отвечающие чаяниям сегодняшнего бизнеса, а использование преимуществ среды. NET Framework 3.5 помогает сократить время разработки.

Сравнения Microsoft Visual Studio 2005 и Borland Developer Studio 2006

К явным преимуществам Microsoft Visual Studio 2005 относится поддержка. NET Framework 2.0 и Compact Framework. Еще один традиционный конек Microsoft — инструментальный набор Visual Studio Tools for Office, которому Borland противопоставить просто нечего.

В свою очередь Borland располагает очень интересной и зрелой платформой для создания Enterprise-решений — ECO III. Также следует отметить, что на рынке интегрированных средств для коллективной разработки Microsoft со своим продуктом VS 2008 Team System является новичком, а Borland уже достаточно давно продвигает подобного рода решения с центральным компонентом StarTeam. Хотя сегодня Team Foundation Server от Microsoft выглядит не менее перспективно.

Казалось бы, дополнительным аргументом в пользу Borland может служить кросс-платформенность Delphi. Однако развитие проекта Kylix остановилось, и несмотря на то, что Borland обещает поддерживать компилятор в актуальном состоянии, в современных условиях без богатой библиотеки классов он будет практически бесполезен. С другой стороны, не нужно забывать о проекте Mono (mono-project. com), который хоть и развивается без прямого участия Microsoft, располагает влиятельным сообществом сторонников. Уже сегодня Mono предлагает разработчикам мощную библиотечную поддержку, так что в вопросах кроссплатформенности, преимущество скорее у Microsoft.

Одним из минусов Borland Developer Studio 2006 является крайне малый объем литературы, посвященной Delphi, по сравнению с потоком изданий о конкурирующих решениях и технологиях.

Пользователям с правами «Администратор» разрешено изменение и добавление профилей пользователей с ролями «Студент», «Наблюдающий преподаватель». Так же администратор имеет право добавлять и редактировать уже существующие курсы, изменять набор тестов и проверочных заданий.

Наблюдающему преподавателю разрешено вносить изменение только в тот курс к которому он приписан как «Наблюдающий преподаватель».

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

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

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

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

Краеугольным камнем модели являются семантические единицы — понятия и тезисы. Понятие указывает на некоторый объект из предметной области знаний, о котором идет речь. Понятие — это, как правило, одно-два слова, которые текстово выражают предмет рассмотрения. Тезис — это некоторая утверждение о понятии. Фактически тезис являет собой одно или несколько предложений, в которых язык идет непосредственно о соответствующем понятии, однако именно понятие в тексте тезиса не фигурирует. Тезис относится в соответствие понятию, таким образом между ними устанавливается связь.

Начало класса отмечается служебным словом class за которым следует имя класса, выбираемое произвольно, в данном случае Helloworld.

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

«Класс»

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

Для реализации процесса наполнения понятийно-тезисной базы знаний предлагается следующий программный интерфейс.

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

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

· Случайный выбор тезиса, по которому будет идти контроль знаний, из очерченного круга семантических данных для данного участка учебного материала — контрольный тезис;

· Определение понятия, касающегося контрольного тезиса, — контрольное понятие;

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

· Построение задания по данным: контрольное понятие, контрольный тезис, альтернативные тезисы.

Таблица 1.4. Таблица Courses

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

Описание поля

Тип

CourseId

Ключевое поле, определяет уникальный номер записи в таблице

int

CourseName

Название курса. (Пример «Основы ООП»)

nvarchar (MAX)

TeacherId

Поле определяющее отношение с таблицей «Преподаватели»

int

Таблица 1.5. Таблица Kadr

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

Описание поля

Тип

KadrId

Ключевое поле, определяет уникальный номер записи в таблице

int

FirstLine

Определяет начальную строку кадра в коллекции материала по курсу

int

LastLine

Определяет конечную строку кадра в коллекции материала по курсу

int

CourseId

Поле определяющее отношение с таблицей «Courses»

int

Таблица 1.6. Таблица Concept

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

Описание поля

Тип

ConceptId

Ключевое поле, определяет уникальный номер записи в таблице

int

Conc_Text

Содержит текст определения

nvarchar (MAX)

Таблица 1.7. Таблица Definition

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

Описание поля

Тип

DefId

Ключевое поле, определяет уникальный номер записи в таблице

int

Def_Text

Содержит текст тезиса

nvarchar (MAX)

ConceptId

Поле определяющее отношение с таблицей «Concept»

int

Таблица 1.8. Таблица ConcInKadr

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

Описание поля

Тип

ID

Ключевое поле, определяет уникальный номер записи в таблице

int

ConcId

Поле определяющее отношение с таблицей «Concept»

int

KadrId

Поле определяющее отношение с таблицей «Kadr»

int

Ролевая модель безопасности использует данные пользователя в качестве источника информации. Как правило, эта информация состоит из имени и роли пользователя. Ролевая модель безопасности в. NET Framework использует две концепции: личность (identity), представляющее собой имя пользователя, и его роль (principal).. NET Framework позволяет разработчикам применять встроенный в Microsoft Windows набор ролей. Также вы можете задействовать и частный набор ролей. Перед тем как использовать роль пользователя, нам необходимо проверить личность этого пользователя. Аутентификация — это обнаружение и проверка личности пользователя путем сравнения введенной пользователем информации с существующими данными. Например, при проверке электронной почты вы вводите имя пользователя и пароль. Сервер сверяет их со своими данными и, если они идентичны, открывает доступ к вашей почте. Сегодня существует множество механизмов аутентификации пользователей. Некоторые из них могут использоваться в. NET Framework приложениях. В операционной системе Windows используется механизм Microsoft Passport.

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

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

В библиотеке. NET Framework есть три типа объекта «роль» (Табл. 1.9.).

Таблица 1.9. Типы объекта роль. NET Framework

Роль

Описание

Windows Principal

Представляет пользователей операционной системы Windows и их роли. Реализуется классом WindowsPrincipal

Generic Principal

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

Custom Principal

Представляет специальную для приложения информацию о ролях. Реализуется классом, в котором имеется интерфейс IPrincipal

Все классы, описывающие объект «роль», должны реализовывать интерфейс IPrincipal. Интерфейс IPrincipal имеет одно свойство — Identity, которое описывает объект класса, реализующего интерфейс Iidentity, и метод — IsInRole, который определяет, принадлежит ли текущий «принципал» к заданной роли.

Методика испытаний и результаты экспериментальной проверки.

Общая цель проведения испытаний — определение степени соответствия созданного ПМ техническому заданию.

В жизненном цикле ПМ можно выделить следующие виды испытаний:

· испытания опытного образца ПМ на полное соответствие требованиям технического задания;

· испытания рабочей версии ПМ, адаптированной к условиям конкретного применения;

· испытания версии модернизированного ПМ при сопровождении.

Наиболее полным и разносторонним испытаниям подвергается ПМ при первичной проверке опытного образца.

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

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

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

Среди методов, с помощью которых проводилось тестирование разработанных подсистем и модулей, можно выделить два основных:

· метод «стеклянного ящика»;

· метод «чёрного ящика».

Тестирование методом «стеклянного ящика» — это тестирование на этапе реализации. Данный метод можно отнести к процессу программирования, т.к. программисты выполняют тестирование на протяжении всего процесса создания программного продукта. Поскольку программист разрабатывает тесты, зная исходный код программы, он имеет определённые преимущества: направленность тестирования, полный охват кода, управление потоком, отслеживание целостности данных, внутренние граничные точки, тестирование, определяемое выбранным алгоритмом.

Результаты тестирования показали:

1) Модуль полностью удовлетворяет функциональным требованиям.

2) Корректного поведения или аварийного завершения работы модуля не удалось добиться ни некорректными действиями пользовательского кода, ни ошибками доступа к хранилищам.

3) Модуль защищен от ошибок, связанных с многопоточной средой выполнения.

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

Затронуты вопросы проектирования баз данных, рассмотрены общие положения, применяемые разработчиками СУБД, даны основные подходы создания реляционных баз данных.

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

Описана схема информационных потоков и рассмотрена структура данных.

Рассмотрена методика испытаний и представлены результаты экспериментальной проверки.

2. Технологический раздел

2. 1 Введение

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

Методика разработки и отладки программных систем должна дополняться и методикой изготовления и отладки отдельных программных блоков, подпрограмм, модулей, разрабатываемых одним программистом. Без применения эффективных способов создания таких программных единиц невозможно надеяться на успешное решение проблемы создания программных комплексов.

ПоказатьСвернуть
Заполнить форму текущей работой