Информатика в семи томах




НазваниеИнформатика в семи томах
страница2/24
Дата27.11.2012
Размер3.16 Mb.
ТипДокументы
1   2   3   4   5   6   7   8   9   ...   24

5.6. Методы создания проекта


5.7. Методы ведения проекта

5.8. Методы управления проектами

5.9 Методы ведения библиотек

5.10. Методы синтеза программ

Глава 6. Методы, поддерживающие разработку

6.1. Метод модульного проектирования разработки

6.1.1. Пояснение требований к модулю

6.1.2. Создание модулей

6.2. Метод блочного проектирования разработки

6.3. Метод разработки из готовых блоков

6.4. Методы проектирования последовательных вычислений

6.5. Метод макропроектирования

6.6. Метод проектирования сверху вниз

6.7 Метод разработки снизу-вверх

6.8. Заметка о методе пакетов прикладных программ

6.9. Метод проектирования реального времени

6.9.1. Определение метода

6.9.2. Характеристика реального времени

6.9.3 Способы синхронизации процессов

6.9.4. Технология планирования реального времени

6.10 Метод использования астрономического времени

6.10.1. Проблемы астрономического времени

6.10.2 Определение метода

6.10.3. Характеристика астрономического времени

6.11 Метод контроля логической правильности знаний и запросов

Глава 7. Методы, поддерживающие сопровождение

7.1. Методы контроля

7.2. Метод развивающегося программирования

7.3. Методы обеспечения надежности процессов сопровождения

7.4. Методы повышения эффективности труда программистов и знаниеведов

7.5. Методы обеспечения надежности программ

7.6. Методы обеспечения эффективности программ

7.7. Метод сопряжения языков высокого и низкого уровней

7.8. Методы обеспечения машинной зависимости и независимости

7.8.1. Метод машинной зависимости

7.8.2. Машинная независимость

7.9. Методы сокрытия данных, операций и управления

7.10. Методы обеспечения читаемости программ текстов

7.11. Методы обеспечения программ документами

Литература


Сокращения для терминов


АП - алгоритмическое программирование

БД - база данных

БЗ - база знаний

ВМ - вычислительная машина

гл. - глава

ГЯ - граф языка

ЕЯ - естественный язык

ЖЦ - жизненный цикл

ИИС - инструментарий интеллектуальной системы

ИМГР - интерпретатор машины грамматического разбора

Интеллсист- интеллектуальная система

ИП - интеллектуальное программирование

КП - концептуальное программирование

КС - контекстно-свободный

ЛП - логическое программирование

МГР - машина грамматического разбора

МТ - машина Тьюринга

НП - наглядное программирование

ПИ - повторное использование

разд. - раздел

СеГ - семантическая грамматика

СиГ - синтаксическая грамматика

СП - синтезированная программа

СУБД - система управления базой данных

СУБЗ - система управления базой знаний

ФРАК - формульный автокод

ФЯ - формальный язык

ЯЛ - язык Лейбниц

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

ЯПП - язык профессиональной прозы


Введение


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


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


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


Составной и также значительной частью методологии информатики является технология создания нового знания. Большая часть тома посвящена методологическим основам информатики, которые подразумевают детальную планировку деятельности человека, оснащенного СВТ, для создания нового знания. Всю деятельность в информатике подразделяют на этапы (они уже перечислены в подзаголовке), каждый этап - на фазы (их 8), а фазы - на конкретные работы (как в [Боэм85]). Главными этапами являются:

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

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

  3. разработка - рабочая часть в деятельности человека по распределению времени и ресурсов эффективной организации и исполнению всех работ;

  4. сопровождение - большей частью организационная деятельность человека по внедрению или распространению результатов всего процесса создания нового знания.

Четыре этапа отражены в четырех главах тома (4, 5, 6 и 7) в форме разбора основных методов информатики.


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


Глава 1. Методология информатики


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


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


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


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


Имеющиеся определения методологии. Наиболее полным и удачным описанием сущности понятия методологии программирования (и информатики) считается работа [Турский87]. Будет следовать указаниям этой работы в определении понятия методологии. В книге сказано: «Методология программирования на ВМ - как, по-видимому, и любая другая методология - включает в себя три компоненты, которые почти невозможно отделить одну от другой. Это наука, ремесло и фольклор (мифология)» Действительно, наука изучает цели информатики (программирования) и дает теоретические рекомендации для ответа на вопрос, как искать знания; ремесло - это передача традиций в информатике (программировании), или экспериментальный и эмпирический подход к проблеме поиска решений на ВМ и результата обучения пользователя (программиста); фольклор связан с мифами и ритуалами, с накопленными опытом и особенностями практической деятельности в применении ВМ.


В работе [Непейвода81] указаны такие три кита методологии: теория, технология и прагматика. Теория - это способ обобщения практических знаний на базе строгой проверки методов и методик программирования; технология - это способ конкретизации теоретических знаний применительно к практической деятельности; прагматика - это систематизация практических запросов, потребностей и т.п. на изготовление программы и при оценке качества изготовляемого программного продукта. Характеристика понятия методологии согласуется с приведенной выше, но в данном случае очерчивается несколько другая проблемная область. В этом ничего плохого нет, наоборот, варианты определений способствуют точному пониманию термина.


Новое определение методологии. Будем основываться на следующих семи китах методологии (в скобках указаны ссылки на указанные выше компоненты): фиксация знаний (фольклор), языки в информатике (отчасти - прагматика), понятия (отчасти - наука), данные и факты (отчасти относящиеся к ремеслу), основания информатики (теория), собственная технология информатики (технология), система знаний (наука). Эта семерка также хорошо согласуется с предыдущими двумя версиями определения методологии, но расшифровывает и расширяет ее назначение и область применения. Изложение методологии программирования, как части методологии информатики, является лишь иллюстрацией общих построений понятия методологии. Мы считаем, что данное здесь определение методологии может относиться к любой области деятельности человека. Заметим, что естественным образом реализуется эволюция понятий конкретной деятельности из фольклора в язык информатики, из языка к понятиям, из понятий к данным, из данных к основаниям, из оснований к технологии и из технологии к системе знаний, а в целом в информатику как науку.


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


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

1   2   3   4   5   6   7   8   9   ...   24

Похожие:

Информатика в семи томах iconСобрание сочинений в семи томах 3 «Собрание сочинений в семи томах»: Время; 2008
Собрание сочинений М. М. Зощенко — самое полное издание прозы одного из крупнейших писателей-новаторов XX века. В него входят практически...
Информатика в семи томах iconИнформатика в семи томах
Определяются логические лексемы, фундаментальные операции, правила преобразования логических уравнений, а также металогика для обоснования...
Информатика в семи томах iconИнформатика в семи томах
Словарь поможет пользователям Интеллсист и разработчикам машинных систем разнообразного назначения в написании отчетов, руководств...
Информатика в семи томах iconВ семи томах том Информатика смысла Машинная лингвистика
Семантическая и распознающая грамматики связаны между собой как алгоритм и средства его реализации. Основой для контроля правильности...
Информатика в семи томах iconВ семи томах том Основы информатики (Введение в информатику)
Вм на основе своих общих и профессиональных знаний без привлечения программистов для решения задач, для разрешения вопросов или проблем...
Информатика в семи томах iconВ семи томах том Представление знаний (Структуры данных)
Приводимые примеры служат фрагментами прототипов записей знаний и запросов, предназначенных для создателей заданий и запросов к базе...
Информатика в семи томах iconРавительство республики башкортостан академия наук республики башкортостан история башкирского народа в семи томах том V уфа гилем 2010
Российская академия наук Уфимский научный центр ■ Институт истории, языка и литературы
Информатика в семи томах iconЬство республики башкортостан академия наук республики башкортостан история башкирского народа в семи томах том VI москва восточная литература 2011
Российская академия наук Уфимский научный центр Институт истории, языка и литературы
Информатика в семи томах iconВ семи томах том Интеллектуальные системы (Системы решения проблем)
Интеллсист, их структуры и технологии работы с инструментарием составляют центральную часть тома. Оценка возможностей Интеллсист...
Информатика в семи томах iconСтихотворения М. И. Цветаевой печатаются в основном по двум изданиям
Стихотворений (главным образом ранних, относящихся к 10-м годам) печатается по изданию: М. Цветаева. Неизданное: Стихи. Театр. Проза....
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница