В.В. Плещев
АНАЛИЗ И ФОРМИРОВАНИЕ СОДЕРЖАНИЯ ПРЕДМЕТА ИЗУЧЕНИЯ И МЕТОДИЧЕСКОГО ОБЕСПЕЧЕНИЯ АДАПТИВНОГО ОБРАЗОВАНИЯ В ОБЛАСТИ ПРОГРАММИРОВАНИЯ
Уральский государственный экономический университет
При формировании содержания образования в области программирования (языки и средства программирования, СУБД, САБЕ-средства) за основу взят государственный образовательный стандарт по специальности «Прикладная информатика (по областям)». Изучение ведется в рамках взаимосвязанных курсов «Информатика и программирование», «Высокоуровневые методы информатики и программирования», «Базы данных», «Разработка и стандартизация программных средств и информационных технологий».
Анализ предмета изучения
Для определения содержания образования нужно проанализировать состояние этой области. Сформулируем кратко результаты такого анализа по основным разделам этой области. Ввиду массового применения Windows рассматривались средства, работающие под Windows. В перспективе можно рассмотреть средства на платформе Linux.
Visual Bask широко используется для интеграции офисных пакетов и различных типов СУБД.
Visual Basic имеет простую и удобную среду RAD, допускает работу с различными типами СУБД. Позволяет создавать Web-страницы совместно с HTML и ASP. Приложения на Visual Basic имеют более низкую скорость выполнения и требуют подключения DLL-файлов. Visual Basic поддерживается платформой Microsoft NET при создании корпоративных решений. Visual Basic рекомендуется для быстрой разработки простых и недорогих приложений и Internet-приложений.
Delphi является мощной системой программирования. Программы, написанные на Delphi, не требуется снабжать дополнительными библиотеками. В Delphi имеется собственная СУБД Interbase. В версии Delphi 7 Studio (проект Aurora) появились новые возможности (термин Delphi используется уже в качестве языка программирования, а не только как название среды RAD). CASE-инструмент ModelMaker, базирующийся на стандартах языка проектирования объектно-ориентированных приложений UML (Unified Modeling Language). Инструмент моделирования Bold for Delphi, реализующий архитектуру MDA (Model Driver Architecture). Данная архитектура позволяет оперировать целыми бизнес-объектами. Изменение модели производится без изменения исходного кода. Средство JntraWeb позволяет создавать Web-системы по аналогии создания обычных форм и приложений. Мощный генератор отчетов Rave Reports Borland Edition. Среда разработки поддерживает синтаксис языков HTML, XML, C++, С#. Delphi имеет средства для интеграции Windows-, Linux- и NЕТ-приложений. Новый проект Galileo позволит создавать многоплатформенные приложения и будет поддерживать языки Delphi, C# и Visual Basic NET. Delphi рекомендуется для быстрой разработки приложений.
C++ используется как самостоятельно, так и в средах RAD C++ Builder и Visual С+т, Язык допускает эффективное использование практически всех возможностей компьютеров и операционных систем. Реализует кроссплатформенные разработки для различных типов архитектур и процессоров. В Visual Studio NET язык C++ был расширен для обеспечения полной поддержки программирования под Microsoft NET Framework. Любой класс, написанный на C++, становится доступен любому другому языку программирования, ориентированному на Microsoft NET Framework. Отсюда вытекает межъязыковое наследование классов. Язык отличается сложностью и необходимостью запоминания методов работы с каждым объектом,
C++ Builder есть некий «гибрид» Delphi и C++: использует ту же среду RAD и библиотеку VCL, что и Delphi. C++ Builder имеет гораздо лучшую объектную модель. Существует возможность совместного использования компонентов (классов) из библиотек VCL и фундаментальных классов фирмы Microsoft
(MFC). Библиотека VCL написана на Delphi, а не на C++, что увеличивает, по сравнению с Delphi, размер исполняемых файлов.
Microsoft Visual C++ обладает самыми большими возможностями, имеет очень хороший компилятор C++, отличный отладчик, мощную библиотеку MFC. Правка кода в режиме отладки и последующее его выполнение без полной перекомпиляции и прерывания отладочной сессии. Имеется отличная, хорошо структурированная полная справочная система. Имеются кроссплатформенные средства. Возможна разработка Web-приложений, сервисов NT, DLL и статических библиотек, консольных приложений. Среда разработки ограничивается простым GUIbuilder и средствами автоматического связывания результатов его работы с программным кодом.
Visual C++, C++, C++ Builder рекомендуются для разработки сложных, дорогостоящих прикладных и общесистемных приложений.
С#-язык совмещает простоту Visual Basic с мощью C++. Сама фирма Microsoft отмечает следующие преимущества: синтаксис, аналогичный C++ и столь же мощный, как C++, но прост и безопасен; полное взаимодействие с сервисами СОМ; полная поддержка СОМ' и нлчтЛюгмы NET Framework; контроль типов; расш - - поз .-
щие создавать но: ■ •' - ХМ! ~~ *
грамма на языке С~ L: "п г*"т иа. я^ыкал, поддерживаемых NET) тра; . в промежуточный код
MSIL (Microsoft I Language), который в
процессе выполнения приложения заменяется в памяти машины на машинный код, оптимизированный для данной платформы. Это обеспечивает переносимость приложений без перетрансляции на различные платформы с использованием библиотек NET Framework.
Microsoft Visual J++ имеет среду RAD, аналогичную среде Visual Basic. Позволяет создавать ActiveX-элементы, которые можно использовать в Visual Basic, Visual C++, Delphi, C++ Builder. Допускается использование Acti veX/COM-компонентов и Windowsspecific функций, что позволяет реализовать, например, доступ к ADO, преобразование JavaBeans в ActiveX-компоненты, классы поддержки DHTML, компоненты работы с базами данных. Сам язык Java имеет следующие преимущества: безопасность, легкость интеграции в Internet/Intranet, универсальность, простоту, высокую скорость исполнения промежуточного байткода, автоматическую «сборку мусора», отсутствие указателей, что позволяет избежать трудно обнаруживаемых ошибок и несанкционированного доступа к оперативной памяти. Однако Microsoft Visual J++ не поддерживает стандарт визуального Java-nporpaM-мирования JavaBeans. Рекомендуется для разработки Internet-приложений.
СУБД Access. Идеальная по простоте и удобству среда разработки. В качестве недостатков можно от-
метить отсутствие возможности формирования исполняемого файла, медленная работа с базами данных больших объемов, отсутствие средств администрирования, Рекомендуется использовать для разработки простых приложений и персональных баз данных с ограниченным объемом (несколько сотен тысяч записей) информации.
СУБД Visual FoxPro. СУБД имеет собственный язык программирования с возможностью создания исполняемого ЕХЕ-файла. Недостатки СУБД те же, что и у СУБД Access, плюс наличие ошибок при визуальном связывании таблиц. Рекомендуется использовать для разработки достаточно сложных приложений с ограниченным объемом (не более миллиона записей) обрабатываемой информации.
СУБД SQL Server. Полнофункциональная серверная СУБД с прекрасными средствами зашиты, администрирования, архивирования и восстановления базы данных, с мощным языком, запросов Transact-SQL. Обеспечивает надежное и компактное хранение и высокопроизводительную обработку баз данных больших объемов. SQL Server поддерживает тиражирование данных, параллельную обработку, отличается простотой управления и использования. Пользователь компьютера-клиента с помощью сетевых средств своей операционной системы может устанавливать связь с компьютером-сервером, где установлен SQL Server. На компьютерах-клиентах с помощью персональных СУБД (Access, Visual FoxPro) или языков программирования (Visual Basic, Delphi, C++ Builder, Visual C++) через ODBC осуществляется доступ к удаленным базам данных.
Новая версии SQL Server под названием Yukon содержит NET Framework Common Language Runtime внутри ядра СУБД. SQL Server не имеет собственных средств разработки приложений, выполняется только под Windows. Обычно СУБД SQL Server используется для организации сервера баз данных, к которому организован доступ с клиентских машин средствами других СУБД или языков программирования. SQL Server рекомендуется использовать для создания очень больших централизованных или распределенных баз данных коллективного использования для средних и крупных предприятий.
СУБД Oracle. Современная универсальная полнофункциональная система управления реляционной базой данных, работающая в различных операционных средах и на различных типах компьютеров. Oracle представляет собой целый мир, включающий методы и средства по проектированию (CASE-сред-ства), созданию и использованию распределенных баз данных, языки запросов (SQL. SQL*PLU8, PL/ SQL), генераторы обработки и оперативного анализа данных (Oracle Express OLAP), конструкторы и мастера форм (Oracle Form Builder), запросов, отчетов (Report Builder) и приложений (Oracle Developer, Oracle Project Builder) и др. Oracle отличается слож-
ностью и большой стоимостью приобретения. Рекомендуется использовать для очень больших централизованных или распределенных баз данных крупных предприятий.
Классификация CASE-средств
Рассмотрим классификацию по различным критериям.
1. Ориентация на этапы жизненного цикла:
- средства анализа для построения и анализа моделей предметной области: BPwin (Logic Works), Design/IDEF (Meta Software);
- средства анализа и проектирования для создания проектных спецификаций: CASE, Аналитик (Мак-роПрожект), Vantage Team Builder (Cayenne), Silverrun (Silverrun Technologies), PRO IV (McDonnel Douglas);
- средства разработки приложений: Delphi (Borland), PowerBuilder (SyBase), Developer/2000 (ORACLE), New Era (Informix), SQL Windows (Centura), Uniface (Compuware), JAM (JYACC).
2. Функциональная полнота:
- автоматизация отдельных этапов жизненного цикла: Erwin (Logic Works), CASE, Аналитик (Мак-роПрожект), Silverrun (Silverrun Technologies), S-Designer (SPD);
- интегрированные системы, поддерживающие весь жизненный цикл: Vantage Team Builder (Cayenne), Designer/2000 с системой Developer/2000 (ORACLE).
3. Степень зависимости от СУБД:
- независимые, поддерживающие несколько форматов данных через ODBC: S-Designer (SPD, Powersoft), ERwin (Logic Works), Silverrun (Computer Systems Adviser Inc.);
- встроенные в СУБД: Designer/2000 (ORACLE).
4. Тип используемой модели:
- структурные, основанные на методах структурного и модульного программирования: Vantage Team Builder (Cayenne);
- объектно-ориентированные Rational Rose (Rational Software), Object Team (Cayenne);
- комбинированные, поддерживающие одновременно обе модели: Designer/2000 (ORACLE).
В таблице приводятся примерные экспертные оценки (по десятибалльной системе) возможностей и быстроты их освоения (оценки перечисляются в ячейке таблицы через запятую) для средств разработки приложений: Visual Basic (VB), Delphi (Del), C++ Builder (CB), Visual C++ (VC), Access (Acc), SQL Server (Sql), Oracle (Ora), Visual FoxPro (Fox). Произведение этих оценок определяет значение рейтинга.
Для более точной оценки программного средства (ПС) можно использовать методику балловой оценки.
1. Составляется дерево требуемых показателей качества ПС.
2. Каждой терминальной вершине экспертом присваивается оценка по десятибалльной системе. Если оцениваемый показатель отсутствует в ПС, то указывается нулевая оценка.
Экспертная оценка основных средств разработки приложений
Оцениваемое средство ¥1 Del СВ VC Асс Sql Ora Fox
Команды управления 7,7 8,6 8,6 9,5 2,9 5,5 6,9
Мастера форм 5,8 6,8 6,8 2,7 7,9 8,8 6,7
Мастера запросов и представлений 4,6 5,5 5,5 9,9 9,7 7,5
Мастера отчетов 5,9 3,9 3,9 8,9 9,8 7,7
Конструкторы форм 5,4 6,5 6,5 2,2 8,8 9,6 6,7
Конструкторы запросов и представлений 6,6 5,5 5,5 5,6 9,9 5,6 9,7 7,4
Конструкторы отчетов 4,5 8,7 8,7 7,9 9,8 7,7
Команды формирования запросов и представлений №) 5,4 6,5 6,5 7,5 7,8 8,7 9,6 6,5
Работа с файлами 7,8 9,9 8,7 9,6 5,6 7,6 6,7
Работа с базами данных (БД) 9,6 8,7 8,6 9,7
Оперативная обработка (ОЬАР) 7,8 7,7 9,7
Обработка сбойных ситуаций 4,8 8,7 8,6 9,5 7,6 8,6 4,4
Администрирование БД 3.7 8,7 9,6 4,4
Копирование и восстановление БД 4,9 8,8 9,8 3,5
Взаимодействие с другими приложениями 7,7 8,8 8,6 9,4 5,7 6,7 7,5 7.6
Приближенная средняя оценка (без учета нулевых оценок) 6,7 7,7 7,6 7,5 6,8 7,7 8,7 6,6
Итоговый рейтинг (с учетом дробной части средних оценок) 37 46 42 35 52 45 54 34
3. Каждому исходному узлу дерева присваивается оценка, равна* средней оценке ее подчиненных узлов,
4. Полученная оценка для корневого узла дает нам интегрированную оценку (итоговый рейтинг) всего ПС.
В оценке ПС могут участвовать несколько независимых экспертов, и их оценки усредняются. Приведем основные показатели ПС:
- категория пользователей: программисты, администраторы БД; квалифицированные пользователи, разрабатывающие приложения; конечные пользователи;
- удобство и простота использования: понятные процедуры установки ПС, удобный и унифицированный интерфейс пользователя, простота и полнота команд работы с базой, наличие и удобство оперативной справочной системы и документации;
- качество и возможности средств разработки: мастеров, экспертов, конструкторов, построителей таблиц, форм, запросов, представлений, отчетов;
- модель представления данных: реляционная, объектно-ориентированная и др.;
- качество средств защиты: контроль на уникальность записей по первичному ключу; контроль целостности связей, проверка значений нолей;
- качество коммуникационных средств: поддержка различных сетевых протоколов и интерфейсов (8(2Ь, ОШС, ШАР1, 8АА), наличие средств групповой работы (языки программирования, администрирование разработкой, разграничение полномочий.
защита от несанкционированного доступа), возможность реорганизации БД;
- фирма-разработчик: солидность, время существования, опыт, специализация, доступность, наличие «горячей линии», размер и финансовое положение;
- стоимость и технические характеристики: общие параметры, ограничения, типы данных, типы запросов, многопользовательская работа.
- производительность выборки, просмотра, загрузки, индексации, обновления, чтения и записи с произвольной выборкой, генерации запроса, отчета и др.
На формирование содержания предмета изучения влияют варианты разработки приложений:
1. Использование исключительно средств (если они имеются) СУБД (Oracle, Visual FoxPro). Достоинство: высокая эффективность обработки данных. Недостатки: трудно сменить в приложении тип СУБД, сложность и трудоемкость освоения разнообразных средств СУБД. Этот вариант рекомендуется для больших предприятий, использующих один тип СУБД Oracle при создании и использовании очень больших баз данных с длительным сроком работы, с хорошим процессом обучения персонала и сопровождения фирмой Oracle.
2. Использование средств универсальных языков программирования Delphi, C++ Builder, Visual C++ или Visual Basic. Достоинства: универсальность, возможность легко сменить в приложении тип СУБД, использование уже освоенных пользователем языков программирования, упрощение процесса освоения
СУБД. Недостатки: более низкая эффективность обработки данных. Этот вариант рекомендуется для предприятий с ограниченным персоналом на обслуживание баз данных с различными типами СУБД и для предприятий-разработчиков пакетов прикладных программ (ППП), легко настраиваемых на тип СУБД.
3. Комбинация первых двух вариантов. Для каждого приложения или его части выбирают наиболее подходящий вариант.
Таким образом, каждый из вариантов разработки приложений и средств программирования СУБД имеет свои преимущества, недостатки и области эффективного применения. Это обосновывает необходимость их изучения и освоения.
Особенности адаптивного образования
Адаптивный подход позволяет эффективно развивать способности и профессиональные навыки каждого студента с учетом его индивидуальных особенностей, исходного и результирующего уровней подготовки.
Отметим основные особенности такого подхода;
- систематичность и последовательность в работе со студентом на максимально доступном для него уровне;
- развитие самостоятельности и творчества у студента, умения эффективной работы с технической литературой и электронными средствами обучения и контроля знаний;
- интенсивное развитие способных студентов;
- разработка индивидуальных программ обучения и самостоятельного планирования;
- контроль хода обучения с возможной корректировкой программы обучения;
- создание адаптируемого учебно-методического обеспечения для самостоятельной работы;
- гибкое и оптимальное сочетание индивидуальных и групповых форм учебной работы.
Принципы формирования адаптивного методического обеспечения
Содержание предмета изучения должно задаваться методическим обеспечением. Исхода из необходимости адаптации процесса обучения, сформулируем основные принципы разработки такого обеспечения.
Системность. Учет взаимосвязей между указанными дисциплинами, исключение дублирования учебного материала. Согласованность и унификация понятий, правил изложения и оформления учебного материала.
Самодостаточность (кейс-обеспечение). Все, что нужно для изучения и контроля (включая электронное тестирование) полученных знаний и навыков, содержится в этом обеспечении.
Развитие. Оперативное изменение и дополнение учебного материала с учетом современного состояния изучаемой области.
Модульность. Описание групп взаимосвязанных тем выделяется в отдельные тематические модули (блоки):
- основы теории программирования;
- системы программирования. Visual Basic, Object Pascal, Delphi, С, C++, C++ Builder, Visual C++;
- основы теории проект ирования баз данных',
- СУБД Access, Visual FoxPro, SQL Server, Oracle;
- разработка приложений. CASE-средства BPwin, ERwin, Rational Rose.
Классификация. Декомпозиция учебного материала по специализации (видам программных средств) и по уровням изучения и освоения. Укрупненно сформулируем результаты классификации. По специализации программных средств были выбраны все вышеописанные средства, кроме С# (средство только формируется и пока мало используется) и Java, Visual J++ (достаточно узкая специализация). Примерное соответствие уровней изучения типам учебных заведений и содержанию учебного материала было принято следующим:
1. Начальны! уровень (студенты колледжей по некомпьютерным специальностям) - основные команды, функции, классы, объекты, методы, свойства, события; визуальные мастера и построители объектов. Студенты учатся составлять простые программы на Visual Basic и (или) Delphi, базы данных с СУБД Access.
2. Основной уровень (студенты вузов, институтов повышения квалификации кадров по некомпьютерным специальностям и студенты колледжей по компьютерным специальностям) - дополнительные команды, функции, классы, объекты, методы, свойства, события; объектно-ориентированное программирование; визуальные средства в полном объеме; всевозможные конструкторы (таблиц, форм, диаграмм, запросов и отчетов); средства создания, использования и администрирования баз данных. Студенты создают приложения и Internet-приложения.
3. Углубленный уровень (студенты вузов, институтов повышения квалификации кадров по компьютерным специальностям) - командные средства создания и использования классов, объектов, свойств, методов, событий, баз данных, запросов, форм и других элементов и технологий (например ADO, COM/DCOM, OLE DB, ODBC, CORBA, MIDAS, OLE, OLAP, DLL-библиотеки, ActiveX-элементы, Internet). Студенты создают сложные и объемные приложения и Internet-приложения с использованием средств разработки приложений (Visual Basic, Delphi, C++ Builder, Visual C++, Assembler, VBScript, HTML, ASP, Dreamweaver, Crystal Reports и др.), СУБД (Visual FoxPro, Access, SQL Server, Oracle) и CASE-средства (BPwin, ERwin, Rational Rose).
Заключение
Путем комбинации учебных модулей, тем и уровней изучения можно создать индивидуальные образовательные траектории, ориентированные на различные формы обучения, аудиторию и на отдельных студентов. Таким образом, реализуется принцип адаптации.
Для всего образовательного процесса в области программирования и баз данных в соответствии с указанными принципами были разработаны учебники [1, 2] и пособия [3,4], в которых учебный матери-
ал классифицировал по специализации и уровням изучения. Для контроля знаний студентов были разработаны примеры, упражнения и задачи для программирования, темы практических, контрольных и курсовых работ, тесты для электронного тестирования, вопросы для зачетов и экзаменов.
Разработанное методическое и программное обеспечение было применено в учебном процессе в нескольких высших и средних учебных заведениях с различными формами обучения и показало свою эффективность.
Литература
Плещев В.В. Информатика и программирование, Quick Basic и Visual Basic 6,0, VBScript, HTML, ASP, Dreamweaver, Crystal Reports с примерами и упражнениями: Учеб, 3-є изд., испр, и доп. (реком. УМО Минобразования РФ), Екатеринбург, 2002. Плещев В,В. Высокоуровневые методы информатики и программирования. Delphi 5, C++ Builder 5, Visual C++ с примерами и упражнениями: Учеб. 2-е изд., испр. и доп. (реком. УМО Минобразования РФ), Екатеринбург, 2002,
Плещев В.В. Базы данных. Visual FoxPro, Access, SQL Server, Oracle: Учеб, пос. Екатеринбург, 2002.
Плещев В.В. Разработка и стандартизация программных средств и информационных технологий: Учеб. пос. Екатеринбург, 2003.