Концепция программирования

Главная / Публикации / Концепция программирования

Концепция программирования

 

Текст «Концепция программирования» представляет собою главу из работы Г. П. Щедровицкого «Типология ситуаций проведения изысканий». Опубликовано в Щедровицкий Г.П. «Программирование научных исследований и разработок». М. 1999.

1. Концепция программирования выдвинулась на передний план, а само программирование оформилось в самостоятельный и обособленный тип работ в конце 50-х и начале 60-х годов. В системе подготовки и организационного обеспечения комплексных исследований и разработок оно вытеснило планирование и стало тем ядром в организационно-управленческой работе, к которому крепились и вокруг которого соорганизовывались организационное проектирование и планирование.

Основными факторами, вызвавшими это изменение в структуре организационно-управленческой работы, были:

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

2. К середине 60-х годов это изменение в организационно-управленческом обеспечении исследований и разработок было уже осознано и в различных формах зафиксировано в США, СССР и различных странах Западной Европы.

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

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

В СССР с середины 60-х гг. началась интенсивная разработка методологии программирования и вслед за тем — больших программ научно-технического и территориального развития, во второй половине 70-х гг. в г. Свердловске было проведено два специальных симпозиума по проблемам программирования, а с 1979 г. началось систематическое проведение организационно-деятельностных игр, направленных на создание различных программ комплексных научных исследований и проектных разработок и развитие методологических представлений о программировании.

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

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

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

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

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

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

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

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

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

Для начала, чтобы задать основу, мы можем воспользоваться двумерной таблицей, которая развертывается в двух направлениях: (1) слева направо в каждой строке таблицы и (2) сверху вниз по строкам (см. рис. 4.1.).

Рис. 4.1. Формальная схема программирования
Рис. 4.1. Формальная схема программирования

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

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

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

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

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

3.4. Если дальше мы обернем ситуацию нашей работы и будем двигаться от таблицы к заданию, то сможем сказать, что в задании мы должны схватить и выделить единицы трех родов: (1) темы, (2) цели и (3) ситуации. И, соответственно этому, мы должны проделать три мыслительные работы: (I) тематизацию, (2) целеобразование (или целеопределение) и (3) анализ и представление ситуации.

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

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

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

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

3.6. Но затем весь этот процесс схватывания смысла и содержания задания надо повторить, перефокусировав его в план целеобразования (или целеопределения). При этом главными должны стать четкая субъективация и позиционное самоопределение исполнителей, связанное с возложением на себя ответственности за определение необходимых и возможных продуктов работы. В нашем случае это отчетливо проявилось в том, что задание разработать «методику типологии» было квалифицировало как несообразное ситуации и современным культурным представлениям, как ненужное возможным заказчикам и потребителям и невозможное при существующих средствах и методах мыслительной работы. Вместо цели «разработать методику типологии» была выдвинута другая, сложная и многоэлементная цель: (1) «разработать методологию программирования инженерных изысканий», (2) распространить программирование в практику организации и проведения инженерных изысканий, (3) обобщить опыт программирования инженерных изысканий, среди прочего, в виде типологии ситуаций проведения инженерно-изыска­тельских работ, а для этого (4) наметить пути разработки методологии типологизации ситуаций.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Понимание сути проблем рождалось крохами, в первую очередь там, где происходило соединение научно-технической работы с рефлексией, прежде всего — методологической. Именно в таком соединении родились первые образцы решения проблем и были осознаны как новый метод. Основные результаты были получены, как это ни странно, в том, что мы привыкли третировать как схоластику — у Дунса Скотта, Орема, Фомы Аквинского, Николая Кузанского и др. Отсюда оно перешло в науку нового времени и было там блестяще развито Галилеем уже на материале новой механики.

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

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

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

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

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

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

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

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

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

Если нам это удалось — очень здорово; это значит, что мы можем решить проблему, и мы фиксируем это сначала в программе задач, а потом в программе работ по решению задач и выходим на составление плана работ.

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

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

4. Итак, основные результаты и продукты программирования выступают в четырех разных формах: (1) в виде иерархированной структуры целей, (2) в виде иерархированной структуры проблем, (3) в виде иерархированной структуры задач и (4) в виде иерархированной структуры работ. Каждая из этих структур создается — и это определяется в первую очередь логико-методологической организацией процессов разработки — как программа и предназначается для использования в качестве программы. Последнее, конечно, зависит от отношения пользователей, от того, в какой роли и в каком качестве они будут принимать эти структуры. Но общее правило гласит, что оптимальными являются те программы, которые создаются самими будущими пользователями или, во всяком случае, при их активном участии.

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

5. Поэтому процесс разработки программ реально сопровождается еще двумя организационно-управленчес­кими процессами: а) оргпроектированием и б) планированием.

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

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

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

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

Рис. 4.3. Схема соорганизации программирования, оргпроектирования и планированияРис. 4.3. Схема соорганизации программирования, оргпроектирования и планирования