Главная > Документ


Ситуационная модель.

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

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

Предварительные пояснения к таблице. Простой синтез программ использует автоматическое доказательство спецификаций проблемы [Красилов85в, 87б] для извлечения текста программы. Сложный синтез программы включает аналитические выкладки для формирования новых математических методов решения данной проблемы, например, приводящих к построению спецификаций проблемы, к которым может применяться простой метод синтеза программы. Синтез программ в Интеллсист является именно таким. Как было показано на примерах, риюз применим ко всей совокупности действий по созданию субпрограммы. Степень автоматизации риюза зависит от разработанности и формализма соответствующих методов применения риюза. Согласно приведенной таблице риюз выглядит перспективно (если не принимать во внимание автоматический синтез субпрограмм).

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

Таблица Обзор операций по созданию субпрограмм

Действия по созданию субпрограммы

Существующая традиция

Простой синтез

Сложный синтез

Риюз

Постановка цели использования ВМ

нет

нет

нет

да

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

нет

нет

нет

да

Математический анализ задачи

нет

нет

нет

да

Разработка численного метода

нет

нет

да

да

Построение схемы решения проблемы

нет

нет

да

да

Спецификация проблемы

нет

нет

да

да

Доказательство проблемы

нет

да

да

да

Построение алгоритма

нет

да

да

да

Применение языка программирования

нет

да

да

да

Трансляция субпрограммы

да

да

да

да

Выполнение субпрограммы

да

да

да

да

Анализ полученных результатов

да

да

да

да

3.3.2. Ситуационная модель создания субпрограмм. Ситуационная модель, в соответствии с общим определением, представляет собой мысленное формирование ситуаций с субпрограммами, мотивацию проблемы, решаемой с их помощью, характеристику цели создания субпрограмм, оценку их состояния. Ситуационная модель в нашем случае позволяет изучать разнообразные стандартные ситуации и действия, связанные с проектированием и разработкой субпрограмм. Она имеет свое отношение к действиям по созданию субпрограмм и к состоянию реального мира. И при таком подходе к риюзу требуется расширение в представлениях цепочки действий. Ситуационная модель создания субпрограмм может быть представлена четырьмя этапами (изобретание, проектирование, разработка и сопровождение программ), фазами (их четыре на каждом этапе) и работами (их восемь для каждой фазы). Каждая технологическая операция (реально их может быть более 400) использования ВМ в рамках какой-либо работы может рассматриваться с точки зрения риюза. И здесь можно обнаружить интересные параллели после сопоставления технологических операций и операций риюза.

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

3.4. Жизненный цикл программ в риюзе

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

1) Прежде всего рассмотрим общие соображения:

  • ЖЦ субпрограммы является инвариантом, что и оправдывает применение к нему методологии риюза,

  • риюзом в чистом виде является использование аналогов и прототипов в программировании и информатике,

  • само понятие технологии подразумевает выявление и внедрение риюза, это в особенности относится к программным средствам поддержки ЖЦ,

  • исследование и применение риюза скорее всего должны ориентироваться на дорогие в смысле затрат ресурсов этапы.

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

3) Технологический маршрут создания субпрограмм методом риюза сам является предметом исследований.

3.5. Методология реализации риюза

Обычно рассматривают следующие методы, которые являются наиболее яркими средствами реализации риюза:

  • разработка и применение метакомпилятора для генерации конкретного компилятора с некоторого исходного языка на некоторый рабочий язык;

  • применение микроассемблерных языков программирования;

  • проведение моделирования предметной области;

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

  • разработка и применение конверторов одного языка высокого уровня в другой язык высокого уровня;

  • широкое применение библиотек субподпрограмм и пакетов прикладных программ;

  • средства непроцедурного программирования;

  • использование языка программирования Ада [Джехани88, Красилов86б, 87а, 88б, 89в, 91а],

  • применение Интеллсист на основе ЯПП.

Последние две строчки выглядит несколько предвзято. Однако тщательное исследование языков Ада, ЯПП и методов, формализованных в языке, убедительно показывает правомерность этих строчек.

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

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

Номер

Конкретный код

Абстракция

1

код

лексемы

2

величина

идентификатор или термин и их описания

3

множество данных или смыслов понятия

тип данных и его описание

4

скобочная формула

выражение

5

единица действия

оператор или вызов процедуры

6

технологическая или программная единица

модуль или блок и абзац

7

проект модуля

спецификация модуля (его описание)

8

программный шаблон

настройка подпрограммы на объекты, типы и подпрограммы

9

проблема

спецификация проблемы (ее описание) или запрос

10

метод решения

математика проблемы или знания

11

логика решения

схема решения или логический вывод

12

знание

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

13

постановка проблемы

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

14

цель

спецификация цели

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

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

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

Системного программиста, да и любого другого программиста не удивит данный список методов и средств риюза. Каждая строчка указывает на возможность риюза (в смысле повторного использования) той или иной стороны программирования. Эти методы являются основными для реализации риюза. Можно конкретизировать методы вширь и вглубь. Однако мы оставляем это дело для читателя. Важно подчеркнуть в заключении раздела, что методология риюза почти ничем не отличается от методологии программирования и методологии информатики.



Скачать документ

Похожие документы:

  1. Моу «якутский городской лицей» п у б л и ч н ы й о т ч ё т 2009-2010 г г

    Документ
    ... ПОЛНЫЕ СЕМЬИ НЕПОЛНЫЕ СЕМЬИ ОПЕКУНЫ МНОГОДЕТНЫЕ СЕМЬИ 487 ... Гин А. - исследовательские методы в обучении - технология внутриклассной ... Е.Н., учитель информатики Жиркова М.М., учитель информатики Замятина А.В., ... программы ЯГЛ, в том числе и в процессах ...
  2. Образовательная программа (61)

    Основная образовательная программа
    ... (в том числе ЕГЭ ... малообеспеченных семей, для ... и проектный методы, игровые методики ... 3 3 литература 2 2 2 2 2 2 иностранный язык 3 3 3 3 3 3 математика 5 5 5 5 5 5 информатика и ИКТ 1 1 1 1 2 1 история 2 2 2 2 2 2 обществознание 1 1 1 1 1 1 география 2 ...
  3. «создание единого информационного пространства»

    Программа
    ... информатики 1 13 1 1 1 Кабинет информатики 2 13 1 1 1 Кабинет информатики 3 13 1 1 1 Кабинет информатики 4 13 1 1 1 Кабинет информатики 5 11 1 1 1 Кабинет информатики ... исследовательские методы обучения ... незащищенных семей и ... курсов, в том числе с ...
  4. За 2011-2012 учебный год (7)

    Анализ
    ... Информатика 9 82 % Ветрова Т.А. Информатика 8 Б 93 % Ветрова Т.А. Информатика 10 А 100 % Ветрова Т.А. Информатика 10 Б 92 % Ветрова Т.А. Информатика ... методы, используемые для диагностики и определения категорий учащихся и их семей ... благодаря тому ...
  5. А а красилов информатика в семи томах том 1 основы информатики

    Книга
    ... ИНФОРМАТИКА В СЕМИТОМАХТом 1. Основы информатики (Введение в информатику) Москва 1997 - 2003 ИНФОРМАТИКАТом 1. Основы информатики (Введение в информатику) Том 2. Информатика смысла (Машинная лингвистика) Том ...

Другие похожие документы..