Структурный подход - направление, ориентированное на выявление и описание структуры объектов (явлений). Для него характерно: углубленное внимание к описанию актуального состояния объектов; выяснение внутренне присущих им вневременных свойств; интерес не к изолированным фактам, а к отношениям между ними. В итоге строится система взаимосвязей между элементами объекта на различных уровнях его организации .
Обычно при структурном подходе не акцентируются соотношение в объекте частей и целого и динамика выявленных структур. При этом разложение целого на части (декомпозиция) может производиться по различным вариантам . Важным достоинством структурного метода является относительная легкость наглядного представления результатов в виде различных моделей. Эти модели могут даваться в форме описаний, перечня элементов, графической схемы, классификации и пр.
Неисчерпаемым примером подобного моделирования служит представление структуры и типов личности: трехэлементная модель по 3. Фрейду; типы личности по Юнгу; «круг Айзенка»; многофакторная модель Р. Ассаджиоли. Не отстала от зарубежной психологии в этом вопросе и наша отечественная наука: эндо- и экзопсихика по А. Ф. Лазу рскому и развитие его взглядов у В. Д. Балина ; структура личнос- ти из четырех сложных комплексов по Б. Г. Ананьеву; индивидно-ин-дивидуальная схема В. С. Мерлина; перечни А. Г. Ковалева и П. И. Иванова; динамическая функциональная структура личности по К. К. Платонову; схема А. И. Щербакова и т. д.
Структурный подход - атрибут любого исследования, посвященного изучению конституциональной организации психики и строения ее материального субстрата - нервной системы. Здесь можно упомянуть о типологии ВНД И. П. Павлова и ее развитии Б. М. Тепловым, В. Д. Небыли-цыным и другими. Широкое признание получили модели В. М. Русалова, отражающие морфологическую, нейро- и психодинамическую конституции человека . Структурные модели человеческой психики в пространственном и функциональном аспектах представлены в работах . Классическими образцами рассматриваемого подхода служат ассоциативная психология Ф. Гартли и ее следствия (в частности, психофизика «чистых ощущений» XIX века), а также структурная психология В. Вунд-та и Э. Титченера. Специфической конкретизацией подхода выступает метод микроструктурного анализа, включающий в себя элементы и генетического, и функционального, и системного подходов .
3.3. Функциональный метод
Функциональный подход, естественно, ориентирован на выявление и изучение функций объектов (явлений). Неоднозначность трактовки в науке понятия «функция» затрудняет определение данного подхода, а также идентификацию с ним тех или иных направлений психологических исследований. Будем придерживаться мнения, что функция есть проявление свойств объектов в определенной системе отношений, а свойства есть проявление качества объекта при его взаимодействии с другими объектами. Таким образом, функция - это реализация соотношения объекта и среды, а еще уже - «соответствие между средой и системой» .
Следовательно, функциональный подход интересуется главным образом связями изучаемого объекта со средой. Он исходит из принципа саморегулирования и поддержания равновесия объектов действительности (в том числе психики и ее носителей). [ 47]
Примерами реализации функционального подхода в истории науки являются такие известные направления как «функциональная психология» и «бихевиоризм». Классическим образцом воплощения функциональной идеи в психологии является знаменитая динамическая теория поля К. Левина . В современной психологии функциональный подход обогащен компонентами структурного и генетического анализа. Так, уже прочно установилось представление о многоуров-невости и многофазности всех психических функций человека, действующих одновременно на всех уровнях как единое целое . Приведенные выше примеры структур личности, нервной системы, психики с полным основанием можно взять и в качестве иллюстрации к функциональному подходу, так как элементы этих структур большинство авторов соответствующих моделей рассматривают также и как функциональные единицы, олицетворяющие определенные связи человека с действительностью.
Функциональный подход к управлению — это традиционное делегирование полномочий и определенной ответственности через функции, т.е. такие "подсистемы" организации, которые можно выделить по схожести проводимых работ. Фактически, это привычные всем управления, департаменты и отделы (институты, факультеты и кафедры, если рассматривать систему образования) — производство, логистика, продажи, финансы и персонал, маркетинг и т.д., которые можно (при необходимости) разделить на подфункции и т.д., поставив во главе каждого подразделения функционального руководителя, с которого и будет спрос по всем задачам данного направления.
Для управления регулярной деятельностью этот подход применяется практически повсеместно, т.к. привычен для всех сотрудников (от топ-менеджмента до рядовых исполнителей) и не вызывает никаких сложностей в иерархии организации. Естественно, что каждый функциональный руководитель заинтересован в максимальной эффективности именно своего подразделения, однако, если все будут стремиться к этому (при функциональном подходе), то далеко не каждая компания сможет нормально функционировать, ведь совокупный Бизнес-процесс может быть далек от оптимального при максимальной эффективности каждого из участников. Наглядным примером производства, не лучшим образом подходящего для применения функционального подхода, является производство фломастеров. Согласитесь, куда как проще и быстрее производить их одного цвета — оптимально для производственников, а вот продавцам нужна максимально широкая гамма цветов. Соответственно, и тем, и другим приходится "договариваться", находить "золотую середину" между количеством и числом цветов. И таких примеров можно привести достаточно много. Этого достаточно, чтобы заявить о том, что функциональный подход работает далеко не всегда.
Рассмотрим следующий вариант — проектный подход к управлению . Как понятно из названия, этот вариант подходит для каких-то индивидуальных задач, исполнение которых требует привлечение специалистов самого разного профиля (кросс-функциональная команда), один из которых и назначается руководителем проекта, т.е. лицом, ответственным за его своевременное исполнение. Также (при необходимости) назначается главный инженер проекта. Логично предположить, что участники проектной команды попадают под "двойное" управление: со стороны назначенного руководителя проекта и своего традиционного функционального руководителя, которого никто не отменял. Получается некая матричная организационная структура, возникающая из-за одновременного применения двух подходов к управлению. Исключением могут являться проектные организации, для которых индивидуальные задачи — самое обычное дело, однако и здесь, несмотря на "стабильный" функционал главных инженеров и руководителей проектов, общий подход к системе управления не меняется.
Третий вариант, на котором сегодня хотелось бы акцентировать самое пристальное внимание — процессный подход к управлению , т.е. делегирование как полномочий, так и ответственности через Бизнес-процессы. В данном случае под Бизнес-процессом понимается многократно повторяющаяся (устойчивая) деятельность по "преобразованию" ресурсов (или Входов) в результаты (Выходы). Соответственно, выделяется проблемный Бизнес-процесс (чуть Выше мы приводили пример производства фломастеров) и его участники, один из них назначается Владельцем процесса, именно ему и делегируются полномочия и ответственность, связанные с управлением данным Бизнес-процессом. Естественно, что при этом также возникает матричная орг. структура, т.к. участник Бизнес-процесса одновременно подчиняется функциональному руководителю и Владельцу процесса, а при участии в проектной деятельности — еще и руководителю проекта. В чем "изюминка"? А в том, что речь идет о настройке некоторой не оптимальности подпроцессов ("страшный сон" приверженцев функционального метода управления), которая приведет к достижению максимальной оптимальности всего Бизнес-процесса (а не каждой из отдельных его частей).
Для процессного подхода к управлению характерно наличие пяти подсистем, на каждой из которых мы сейчас и акцентируем внимание.
Выделенный бизнес-процесс — сам объект управления с определением границ системы, т.е. "проблема", требующая решения. Сюда входят не только потребляемые ресурсы и результаты, которые необходимо получить, но и подсистемы (отделы), без прямого участия которых решения задачи не получится, а также внешнее окружение. В качестве примера можно привести кондитерское производство для ресторана (особенно если продукция реализуется розничным покупателям, а не только клиентам заведения) или отделение поддержки "1С" для компании, занимающейся ИТ-аутсорсингом широкого профиля. Соответственно, если "границы" будут заданы слишком "узко", то решение проблем будет невозможно в рамках выделенного Бизнес-процесса, а если слишком "широко", то придется разбираться с массой попутных задач, к которым наш Бизнес-процесс не имеет никакого отношения.
KPI (ключевые показатели эффективности) — инструменты управления любыми Бизнес-процессами, которые можно условно разделить на два типа: показатели производительности (результативности) и эффективности. Первые измеряют умение создавать качественный результат для потребителя в срок и в необходимом количестве, т.е. "делать правильные вещи". А второй — достигать результата, оптимально расходуя ресурсы, т.е. "делать вещи правильно". Совершенно естественно, что Результативность и Эффективность противоречат друг другу, поэтому необходимо использовать какую-то "золотую середину", получая достаточное качество в обмен на разумное количество затраченных ресурсов. При этом для любого Бизнес-процесса можно определить критерии совершенно не вдаваясь в подробности самого процесса, достаточно зафиксировать границы процесса и получить общее представление о нем, чтобы решить "что" и "как" измеряем. А вот с целевым значением пресловутой "золотой середины" все значительно сложнее, т.к. необходимо досконально изучить Бизнес-процесс, включая уровень автоматизации, квалификацию исполнителей, технологии и последовательность работ и т.д., чтобы понять, какое значение будет оптимальным для системы.
Владелец Бизнес-процесса — участник этого самого процесса, ответственный за результативность и эффективность и обладающий полномочиями для их достижения.
- Логично, что он должен быть как можно ближе к результату, т.е. Выходу Бизнес-процесса, т.к. в этом случае он будет намного лучше понимать нужны потребителя. Это и есть первый критерий для выбора Владельца Бизнес-процесса.
- Вторым критерием выбора Владельца является оптимальность использования ресурсов, поэтому важно не только то, сколько ресурсов потребляется под руководством данного участника, но и насколько эффективно они используются.
- К третьему критерию можно отнести формальный уровень в иерархии функциональной системы управления, т.к. трения, в любом случае, неизбежны, особенно на фоне традиционного авторитарного стиля управления. А разбиение Бизнес-процессов по границам ответственности функциональных подразделений и, соответственно, назначение функциональных руководителей Владельцами никак не решает кросс-функциональные проблемы, ради чего, собственно, и необходимо использование процессного подхода в управлении.
- Четвертым критерием является общая менеджерская квалификация потенциального Владельца, ведь ему предстоит управлять "разношерстной" многофункциональной командой. Без знаний и навыков в сфере управления Владелец просто не сможет "заставить" коллектив приносить требуемый результат.
Регламент Бизнес-процесса — это четвертая подсистема, документ, который отвечает на такие вопросы как:
- какова цель деятельности Бизнес-процесса?
- где находятся границы процесса: начало и конец, участники, а также расположение именно этого процесса в схеме всех используемых процессов системы?
- каковы границы применения данного Регламента?
- кто Владелец Бизнес-процесса?
- какие KPI планируется использовать для планирования и контроля?
- насколько подробно описан Бизнес-процесс (необходим подробный документ)?
- каков порядок внесения изменений в настоящий Регламент?
Система мотивации — это пятая и последняя подсистема, основная задача которой понятна из названия: мотивировать участников процесса достигать целевые значения KPI, причем показатели мотивации могут быть выбраны не только из KPI Бизнес-процесс, для которого внедряется процессный подход, но и для более широкого Бизнес-процесса. Самый простой пример — "Подбор персонала". Вакансия появилась, кандидатов рассмотрели, выбранный вышел на работу. Казалось бы, результат получен, поэтому Результативность выполнена. Однако, если расширить границы до "Подбор и адаптация персонала", то Результативность можно оценивать по факту прохождения адаптации в коллективе и ее успешности (качества), а не просто по факту "закрытия" вакансии. Вот только для этого потребуется не только качественная система мониторинга, но и проведение анализа причин отклонений, чтобы произвести действительно качественную коррекцию.
Обратите внимание на тот факт, что разработка и внедрение процессного подхода к управлению — задача непростая и весьма трудоемкая, поэтому мы рекомендуем использовать его только для наиболее проблемных Бизнес-процессов, не забывая соотнести ожидаемый результат с себестоимостью внедрения данного подхода. Кроме того, в процессе описания и анализа "проблемного" Бизнес-процесса Вы организуете обмен информацией между участниками, практически "мозговой штурм", что приведет к единству в понимании Бизнес-процесса. А это, в свою очередь, позволит решить солидную часть проблем системного и поведенческого характера, поэтому даже если Вы внедрите не все подсистемы Бизнес-процесса, Результативность и Эффективность системы управления серьезно возрастут. А ведь именно для этого его и внедряют, не так ли?
Функциона́льное программи́рование - раздел дискретной математики и парадигма программирования , в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних (в отличие от функций как подпрограмм в процедурном программировании).
Противопоставляется парадигме императивного программирования , которая описывает процесс вычислений как последовательное изменение состояний (в значении, подобном таковому в теории автоматов). При необходимости, в функциональном программировании вся совокупность последовательных состояний вычислительного процесса представляется явным образом, например, как список .
Функциональное программирование предполагает обходиться вычислением результатов функций от исходных данных и результатов других функций, и не предполагает явного хранения состояния программы. Соответственно, не предполагает оно и изменяемость этого состояния (в отличие от императивного , где одной из базовых концепций является переменная , хранящая своё значение и позволяющая менять его по мере выполнения алгоритма).
На практике отличие математической функции от понятия «функции» в императивном программировании заключается в том, что императивные функции могут опираться не только на аргументы, но и на состояние внешних по отношению к функции переменных, а также иметь побочные эффекты и менять состояние внешних переменных. Таким образом, в императивном программировании при вызове одной и той же функции с одинаковыми параметрами, но на разных этапах выполнения алгоритма, можно получить разные данные на выходе из-за влияния на функцию состояния переменных. А в функциональном языке при вызове функции с одними и теми же аргументами мы всегда получим одинаковый результат: выходные данные зависят только от входных. Это позволяет средам выполнения программ на функциональных языках кешировать результаты функций и вызывать их в порядке, не определяемом алгоритмом и распараллеливать их без каких-либо дополнительных действий со стороны программиста (что обеспечивают функции без побочных эффектов - чистые функции ).
Языки функционального программирования [ | ]
Ещё не полностью функциональные изначальные версии и Лиспа , и APL внесли особый вклад в создание и развитие функционального программирования. Более поздние версии Lisp, такие как Scheme , а также различные варианты APL поддерживали все свойства и концепции функционального языка .
Как правило, интерес к функциональным языкам программирования, особенно чисто функциональным, был скорее научный, нежели коммерческий. Однако, такие примечательные языки как Erlang , OCaml , Haskell , Scheme (после 1986) а также специфические (статистика), Wolfram (символьная математика), и (финансовый анализ), и XSLT (XML) находили применение в индустрии коммерческого программирования. Такие широко распространённые декларативные языки как SQL и Lex /Yacc содержат некоторые элементы функционального программирования, например, они остерегаются использовать переменные. Языки работы с электронными таблицами также можно рассматривать как функциональные, потому что в ячейках электронных таблиц задаётся массив функций, как правило зависящих лишь от других ячеек, а при желании смоделировать переменные приходится прибегать к возможностям императивного языка макросов.
История [ | ]
Первым функциональным языком был Лисп , созданный Джоном Маккарти в период его работы в в конце пятидесятых и реализованный, первоначально, для IBM 700/7000 (англ.) русск. . В Лиспе впервые введено множество понятий функционального языка, хотя при этом в языке применяется не только парадигма функционального программирования . Дальнейшим развитием Лиспа стали такие языки как Scheme и Dylan .
Концепции [ | ]
Некоторые концепции и парадигмы специфичны для функционального программирования и в основном чужды императивному программированию (включая объектно-ориентированное программирование). Тем не менее, языки программирования обычно представляют собой гибрид нескольких парадигм программирования, поэтому «большей частью императивные» языки программирования могут использовать какие-либо из этих концепций .
Функции высших порядков [ | ]
Функции высших порядков - это такие функции, которые могут принимать в качестве аргументов и возвращать другие функции. Математики такую функцию чаще называют оператором , например, оператор взятия производной или оператор интегрирования.
Функции высших порядков позволяют использовать карринг - преобразование функции от пары аргументов в функцию, берущую свои аргументы по одному. Это преобразование получило своё название в честь Х. Карри .
Чистые функции [ | ]
Чистыми называют функции, которые не имеют побочных эффектов ввода-вывода и памяти (они зависят только от своих параметров и возвращают только свой результат). Чистые функции обладают несколькими полезными свойствами, многие из которых можно использовать для оптимизации а:
- Если результат чистой функции не используется, её вызов может быть удалён без вреда для других выражений.
- Результат вызова чистой функции может быть мемоизирован , то есть сохранён в таблице значений вместе с аргументами вызова. Если в дальнейшем функция вызывается с этими же аргументами, её результат может быть взят прямо из таблицы, не вычисляясь (иногда это называется принципом прозрачности ссылок). Мемоизация , ценой небольшого расхода памяти, позволяет существенно увеличить производительность и уменьшить порядок роста некоторых рекурсивных алгоритмов.
- Если нет никакой зависимости по данным между двумя чистыми функциями, то порядок их вычисления можно поменять или распараллелить (говоря иначе вычисление чистых функций удовлетворяет принципам thread-safe)
- Если весь язык не допускает побочных эффектов, то можно использовать любую политику вычисления. Это предоставляет свободу компилятору комбинировать и реорганизовывать вычисление выражений в программе (например, исключить древовидные структуры).
Хотя большинство компиляторов императивных языков программирования распознают чистые функции и удаляют общие подвыражения для вызовов чистых функций, они не могут делать это всегда для предварительно скомпилированных библиотек, которые, как правило, не предоставляют эту информацию. Некоторые компиляторы, такие как gcc , в целях оптимизации предоставляют программисту ключевые слова для обозначения чистых функций . Fortran 95 позволяет обозначать функции как «pure» (чистые) .
Рекурсия [ | ]
Рекурсивные функции можно обобщить с помощью функций высших порядков, используя, например, катаморфизм и анаморфизм (или «свертка» и «развертка»). Функции такого рода играют роль такого понятия как цикл в императивных языках программирования. [ ]
Подход к вычислению аргументов [ | ]
Функциональные языки можно классифицировать по тому, как обрабатываются аргументы функции в процессе её вычисления. Технически различие заключается в денотационной семантике выражения. К примеру, при строгом подходе к вычислению выражения
print (len ([ 2 + 1 , 3 * 2 , 1 / 0 , 5 - 4 ]))
на выходе будет ошибка, так как в третьем элементе списка присутствует деление на ноль. При нестрогом подходе значением выражения будет 4, поскольку для вычисления длины списка значения его элементов, строго говоря, не важны и могут вообще не вычисляться. При строгом (аппликативном) порядке вычисления заранее подсчитываются значения всех аргументов перед вычислением самой функции. При нестрогом подходе (нормальный порядок вычисления) значения аргументов не вычисляются до тех пор, пока их значение не понадобится при вычислении функции .
Как правило, нестрогий подход реализуется в виде редукции графа. Нестрогое вычисление используется по умолчанию в нескольких чисто функциональных языках, в том числе Miranda , Clean и Haskell . [ ]
В нефункциональных языках [ | ]
Принципиально нет препятствий для написания программ в функциональном стиле на языках, которые традиционно не считаются функциональными, точно так же, как программы в объектно-ориентированном стиле можно писать на структурных языках. Некоторые императивные языки поддерживают типичные для функциональных языков конструкции, такие как функции высшего порядка и списковые включения (list comprehensions), что облегчает использование функционального стиля в этих языках, в частности, такой подход широко применяется в практике языка Python . Другим примером является язык Ruby , который имеет возможность создания как анонимных функций с использованием связанных переменных (λ-объектов), так и возможность организации анонимных функций высшего порядка через блок с помощью конструкции yield . В языке Си указатели на функцию в качестве типов аргументов могут быть использованы для создания функций высшего порядка. Функции высшего порядка и отложенная списковая структура реализованы в библиотеках С++ . В языке версии 3.0 и выше можно использовать λ-функции для написания программы в функциональном стиле.
Стили программирования [ | ]
Императивные программы имеют склонность акцентировать последовательности шагов для выполнения какого-то действия, а функциональные программы к расположению и композиции функций, часто не обозначая точной последовательности шагов. Простой пример двух решений одной задачи (используется один и тот же язык Python) иллюстрирует это.
# императивный стиль target = # создать пустой список for item in source_list : # для каждого элемента исходного списка trans1 = G (item ) # применить функцию G() trans2 = F (trans1 ) # применить функцию F() target . append (trans2 ) # добавить преобразованный элемент в список
Функциональная версия выглядит по-другому:
# функциональный стиль # языки ФП часто имеют встроенную функцию compose() compose2 = lambda A , B : lambda x : A (B (x )) target = map (compose2 (F , G ), source_list )
В отличие от императивного стиля, описывающего шаги, ведущие к достижению цели, функциональный стиль описывает математические отношения между данными и целью.
Более точно, существует четыре ступени развития функционального стиля, в порядке убывания роли данных в программах:
- Рефал (для этой категории, представленной единственным языком, нет общепринятого названия);
- Аппликативные (Лисп , , Tcl , Rebol);
- Комбинаторные (APL / / , / );
- Бесточечные (чистые конкатенативные) (Joy , Cat , Factor , подмножество PostScript).
В первом случае вся структура программы определяется структурой данных, в последнем - данные как таковые вообще отсутствуют в исходном е, они лишь подразумеваются на входе. Некоторые языки поддерживают ряд стилей: например, Haskell позволяет писать и в аппликативном, и в комбинаторном, и в бесточечном стилях.
Особенности [ | ]
Основной особенностью функционального программирования, определяющей как преимущества, так и недостатки данной парадигмы, является то, что в ней реализуется модель вычислений без состояний . Если императивная программа на любом этапе исполнения имеет состояние, то есть совокупность значений всех переменных, и производит побочные эффекты, то чисто функциональная программа ни целиком, ни частями состояния не имеет и побочных эффектов не производит. То, что в императивных языках делается путём присваивания значений переменным, в функциональных достигается путём передачи выражений в параметры функций. Непосредственным следствием становится то, что чисто функциональная программа не может изменять уже имеющиеся у неё данные, а может лишь порождать новые путём копирования и/или расширения старых. Следствием того же является отказ от циклов в пользу рекурсии.
Сильные стороны [ | ]
Повышение надёжности а [ | ]
Привлекательная сторона вычислений без состояний - повышение надёжности а за счёт чёткой структуризации и отсутствия необходимости отслеживания побочных эффектов. Любая функция работает только с локальными данными и работает с ними всегда одинаково, независимо от того, где, как и при каких обстоятельствах она вызывается. Невозможность мутации данных при пользовании ими в разных местах программы исключает появление труднообнаруживаемых ошибок (таких, например, как случайное присваивание неверного значения глобальной переменной в императивной программе).
Удобство организации модульного тестирования [ | ]
Поскольку функция в функциональном программировании не может порождать побочные эффекты, менять объекты нельзя как внутри области видимости, так и снаружи (в отличие от императивных программ, где одна функция может установить какую-нибудь внешнюю переменную, считываемую второй функцией). Единственным эффектом от вычисления функции является возвращаемый ей результат, и единственный фактор, оказывающий влияние на результат - это значения аргументов.
Таким образом, имеется возможность протестировать каждую функцию в программе, просто вычислив её от различных наборов значений аргументов. При этом можно не беспокоиться ни о вызове функций в правильном порядке, ни о правильном формировании внешнего состояния. Если любая функция в программе проходит модульные тесты, то можно быть уверенным в качестве всей программы. В императивных программах проверка возвращаемого значения функции недостаточна: функция может модифицировать внешнее состояние, которое тоже нужно проверять, чего не нужно делать в функциональных программах .
Возможности оптимизации при компиляции [ | ]
Традиционно упоминаемой положительной особенностью функционального программирования является то, что оно позволяет описывать программу в так называемом «декларативном» виде, когда жесткая последовательность выполнения многих операций, необходимых для вычисления результата, в явном виде не задаётся, а формируется автоматически в процессе вычисления функций. Это обстоятельство, а также отсутствие состояний даёт возможность применять к функциональным программам достаточно сложные методы автоматической оптимизации.
Возможности параллелизма [ | ]
Ещё одним преимуществом функциональных программ является то, что они предоставляют широчайшие возможности для автоматического распараллеливания вычислений. Поскольку отсутствие побочных эффектов гарантировано, в любом вызове функции всегда допустимо параллельное вычисление двух различных параметров - порядок их вычисления не может оказать влияния на результат вызова.
Недостатки [ | ]
Недостатки функционального программирования вытекают из тех же самых его особенностей. Отсутствие присваиваний и замена их на порождение новых данных приводят к необходимости постоянного выделения и автоматического освобождения памяти, поэтому в системе исполнения функциональной программы обязательным компонентом становится высокоэффективный сборщик мусора . Нестрогая модель вычислений приводит к непредсказуемому порядку вызова функций, что создаёт проблемы при вводе-выводе, где порядок выполнения операций важен. Кроме того, очевидно, функции ввода в своём естественном виде (например, getchar из стандартной библиотеки языка ) не являются чистыми, поскольку способны возвращать различные значения для одних и тех же аргументов, и для устранения этого требуются определённые ухищрения.
Для преодоления недостатков функциональных программ уже первые языки функционального программирования включали не только чисто функциональные средства, но и механизмы императивного программирования (присваивание, цикл, «неявный PROGN» были уже в Лиспе). Использование таких средств позволяет решить некоторые практические проблемы, но означает отход от идей (и преимуществ) функционального программирования и написание императивных программ на функциональных языках. В чистых функциональных языках эти проблемы решаются другими средствами, например, в языке Haskell ввод-вывод реализован при помощи монад - нетривиальной концепции, позаимствованной из теории категорий.
См. также [ | ]
Примечания [ | ]
- А. Филд, П. Харрисон Функциональное программирование: Пер. с англ. - М.: Мир, 1993. - 637 с, ил. ISBN 5-03-001870-0 . Стр. 120 [Глава 6: Математические основы: λ-исчисление].
Мир экономических явлений многообразен и динамичен, он характеризуется внутренним единством составляющих его элементов, что объективно предопределяет необходимость использования системной методологии исследования усложняющихся хозяйственных проблем. В учебнике реализован принцип единства структурно-генетического и функционального подходов к исследованию экономических явлений. В частности, при выявлении сущности собственности , рынка, а также других социально-экономических явлений используется диалектический метод , нацеливающий на поиск внутренних противоречий, обусловливающих развитие хозяйственных процессов . Анализ же поведения потребителя и производителя основывался на субъективистской и позитивистской методологии исследования и т. д. В результате применения системного метода при рассмотрении социально-экономических явлений личность предстает как "свернувшееся общество", а общество видится как "развернутая личность".
Разделы 11.2 и 11.4 помогают уяснить принципиальные различия между детерминированным (функциональным) и стохастическим (вероятностным) подходами к исследованию факторных систем хозяйственной деятельности.
Предельный (маржинальный) подход к исследованиям экономических процессов представляет частный случай анализа функциональных отношений, которые обычно задаются тремя способами графическим, аналитическим, табличным. Приведем пример графического способа.
Каковы сущность и особенности целевого, ситуационного, функционального, процессного, рефлексивного и системного методологических подходов к исследованию СУ
Маркетинг,-читаем мы в заключительном разделе главы,-это сфера быстрого устаревания задач, политических установок, стратегий и программ. Каждая фирма должна периодически переоценивать свой общий подход к рынку, пользуясь для этого приемом, известным под названием ревизии маркетинга (с. 598). Это и есть то, что именуется стратегическим контролем . Любопытно, что автор настаивает на том, чтобы ревизору маркетинга была предоставлена полная свобода в проведении бесед с любыми лицами как в самой фирме, так и вне ее, в анализе любой документации и т.п. Ревизия маркетинга -это глубинное исследование всех сторон деятельности фирмы, начиная от маркетинговой среды и кончая функциональными составляющими маркетинга. Рекомендации, ко-
Заключение. В данном параграфе были рассмотрены самые простые модели и подходы к анализу систем стимулирования производства в условиях неопределенности . В настоящее время развиваются методы анализа систем стимулирования в динамической постановке, со случайными факторами и т. д. Все же, пока в таких исследованиях удается проанализировать лишь упрощенные, модельные экономические механизмы, которые, может быть, и отражают суть явлений, но еще далеки от сложностей экономических механизмов, существующих в реальной жизни. Самый главный недостаток этих исследований состоит в том, что описание поведения на основе концепции максимизации некоторой функции поощрения не отражает реальность, оно вызывает недоверие у практиков и критику со стороны специалистов в области социальной психологии. Поэтому в исследованиях, направленных в первую очередь на получение практических результатов (а не на развитие методов исследования), стараются поведение производственных единиц описать более просто и в то же время более правдоподобно. Поскольку результаты анализа экономического механизма зависят непосредственно от отклика производственной единицы , а не от внутреннего механизма выработки этого отклика, то требуемое упрощение может состоять в построении функциональной модели производственной единицы . В такой модели отклик будет описан как функция воздействия. Несмотря на значительную упрощенность функционального описания (и в значительной степени благодаря ей) такие исследования нашли свое практическое применение . Они рассмотрены в следующем параграфе.
При традиционных способах проектирования экономичность конструкций часто оказывалась на последнем месте. Обоснование затрат, определяемых техническими решениями , долгое время носило стихийный, случайный характер. Системный подход к выполнению экономических исследований появился в годы второй мировой войны, когда возникла необходимость замены дефицитных материалов на более доступные с сохранением основных функций изделия. В послевоенные годы родилось самостоятельное направление технико-экономического анализа , получившее впоследствии название функционально-стоимостной анализ.
Для рассмотрения всех возникающих при таком подходе к явлению вопросов теория предельной полезности , а вслед за ней и специальные маркетинговые исследования рынка потребителей привлекают функции спроса , кривые и поверхности безразличия , предпочтения, которые базируются на умозрительных построениях в рамках так называемого функционального подхода . Эти построения исходят из того, что при определенных рыночных ситуациях возникают некоторые универсальные характеристические соотношения между ценами и объемами одного и того же товара.
Эта тема предполагает выяснение содержания таких ключевых категорий, как товар, стоимость, цена, деньги. При первом же приближении к исследованию этих понятий встает проблема методологии будем ли использовать функциональный или каузальный (т.е. причинно-следственный) подход к анализу этих явлений Максимально упрощая проблему, можно пояснить ее следующим образом функциональный подход рассматривает взаимосвязи экономических явлений по горизонтали, не ставя вопрос что первично, что вторично - например, цена определяет спрос или, наоборот, спрос определяет цену Этот подход не задается широко известным шутливым вопросом Что вначале - курица или яйцо, ибо, по мнению сторонников этого подхода, в экономике все определяется всем.
Распространение сферы принятия стратегических решений на более низкие функциональные уровни (маркетинг, производство, финансы, исследования и разработки, персонал, электронная обработка данных и др.) способствует формированию в компании совершенно нового подхода к бизнесу и расширению возможностей выбора для назначения на должности исполнителей, которые также требуют знаний в области бизнеса. Разработка функциональной стратегии подразумевает активное поведение менеджеров в рамках заданной функции. Таким образом, функциональная стратегия сводится к такой ориентации того или иного функционального подразделения (отдела) в соответствии с общей деловой стратегией, которую каждый имеющий к ней отношение работник воспринимает как логическое продолжение своей деятельности.
Одновременно происходила интеграция в единое целое всех ранее названных трех подходов к организации маркетинговой деятельности - функционального, институционального и товарного - и возникло понимание маркетинга как системы, охватывающей все виды деятельности предприятия, связанные с производством продукции и ее продвижением от производителя до потребителя. Появился такой новый элемент маркетинга , как маркетинговые исследования , ставшие впоследствии основой всей маркетинговой деятельности.
Неудивительно, что защитники организационно-функционального подхода были не готовы легко отказаться от накопленных за 50 лет научных работ и исследований, и административный подход не был принят с равным энтузиазмом. Однако, по мере того, как росли требования к более тщательной подготовке менеджеров в 1950-х и начале 1960-х гг., управленческая школа стала доминировать и ей суждено было сохранить данный статус на протяжении почти трех десятилетий.
С одной стороны, усилия ряда крупных исследовательских коллективов направлены на разработку проектов экспериментальных роботов- гигантов, в которых одновременно интегрируются многие сложные функции по восприятию, управлению движением, принятию решений и связи с оператором. С другой стороны, ведутся многочисленные изолированные работы по отдельным узловым аспектам проблемы. При этом характерно, что, несмотря на кажущуюся излишнюю многоплановость исследований и разрозненность результатов, в подходах к построению интегральных роботов просматривается общая идейная основа, которая, как ожидается, уже в ближайшем будущем сможет привести к единому пониманию функциональной структуры интегральных роботов и к установлению общих взглядов на перспективу их технической реализации.
После того, как менеджер изучил показатели конкурентоспособности изделий своей фирмы, ему необходимо приступить к осуществлению конкретных мероприятий по повышению и удержанию на достигнутом уровне и конкурентоспособности. Работа в этом направлении начинается с выбора подхода к рассмотрению управления конкурентоспособностью товара. Таких подходов известно несколько системный, воспроизводственный, комплексный, функциональный. Системный подход - это такое направление методологии специально-научного познания и социальной практики, в основе которого лежит исследование объектов > в качестве целостных систем. Важнейшими принципами системного подхода являются следующие
По нашему мнению, такой контроль должен основываться на принципах демократизации ценообразования и предполагать несколько этапов. Прежде всего необходимо обоснование нормативной себестоимости базового изделия параметрического ряда. Выше мы уже говорили о том, как следует подходить к обоснованию нормативной себестоимости . Здесь же добавим, что обоснование величины затрат по условиям "типового предприятия" обязательно должно дополняться исследованием нормативной величины затрат с помощью методов функционально-стоимостного анализа (ФСА), до сих пор практически игнорируемого органами ценообразования.
При разработке терминологии во главу угла ставилась специфика СЭ, их отличие от других больших искусственных систем. Общетехническая теория надежности (ОТН) имеет дело с техническими объектами - от простых изделий (элемент, устройство) до сложных (функциональная единица, подсистема, система). Технический объект может состоять из технических средств , программных средств или их сочетания и может в частных случаях включать людей, его эксплуатирующих, обслуживающих и/или ремонтирующих . Теория надежности СЭ исследует объекты энергетики, которые не всегда можно свести к техническим. Многогранность проблемы надежности СЭ на примере больших трубопроводных систем, ее зависимость от большого числа технических, технологических, экономических, экологических и социальных факторов , необходимость комплексного подхода к ее решению показана в монографии . В заключении к работе отмечается, что особенности СЭ выделяют их в особый класс больших производственных систем. Однако, в чем заключается отличие с позиций исследования и обеспечения надежности систем производственных от технических в работах не раскрывается.
Рассеянный подход применяется, когда факторы риска существенно отличны для функциональных и бизнес-единиц , а также тогда, когда функциональные и производственные единицы работают весьма независимо. При подобном подходе отсутствуют любые направленные усилия по исследованию рисков организации в совокупности или типичные методы, годные для всех производственных единиц . Этот подход также требует, чтобы менеджмент распределял ресурсы организации с учетом многочисленных требований капитала. В то же время менеджмент предприятия может и преднамеренно принять рассеянный подход к управлению рисками , однако на практике это происходит в результате общего устремления. Предельно рассеянный подход к управлению рисками позволяет каждой функциональной или каждой бизнес-единице создавать собственное информационное поле и собственный язык для управления рисками , а также собственные инструменты и методы.
Теоретическая новизна приведенной классификации ценностей заключается в том, что впервые, на наш взгляд, к исследованию одного из важнейших объектов стратегического маркетинга - ценностей - применены такие научные подходы , как системный, динамический, воспроизводственный, функциональный, комплексный, оптимизационный, ситуационный и др. Сущность этих подходов освещена в теме 4.
Теоретические представления о том, какие функции менеджеры исполняют и в каких видах мастерства они нуждаются, все же не дают полного описания их фактической деятельности. Функциональный и эмпирический подходы к менеджменту помогают нам понять, что менеджеры делают, но дают недостаточное представление о том, как они это делают. Ряд исследований о распределении практикующими менеджерами своего времени был предпринят для того, чтобы помочь перспективным менеджерам представить, как они будут проводить свои рабочие дни в этой сфере.
Статья посвящена исследованию одного из подходов к созданию отказоустойчивых систем дискретного типа, основанного на использовании функциональных свойств поведения объекта в условиях существования неисправностей. Работа поддержана грантом РФФИ 98-01-00835.
Следовательно, интегративно-конвергешщальный подход к исследованию СУ представляет собой такую методологию исследовательского процесса, которая интегративно использует системный, целевой, процессный, параметрический, функциональный, ситуационный, поведенческий, рефлексивный и другие подходы (рис. 3.4).
Проблемы методические как формировать современный подход к персоналу Как обучать и воспитывать у руководителей правильное и адекватное природе и потенциалу персонала отношение к нему, кто это должен делать и как готовить этих специалистов Очевидно различие подходов к обучению линейных и функциональных менеджеров неповеденческих направлений, с одной стороны, и менеджеров в области управления персоналом, с другой. Преподавание во всех случаях должны осуществлять ученые и специалисты, знания которых в области управления персоналом имеют фундаментальный характер, и проводящие самостоятельные исследования в этой области.
Принятый нами подход к разработке АИС предполагает способ отбора информационных совокупностей по схеме, представленной на рис.1. При поэтапном определении информационного фонда (Ш) АИС используются функциональный подход - декомпозиция конечной цели функционирования и развития объекта с целью выявления информационного фонда АИС, действительно необходимого для управления объектом (этап I) функционально-обьвктянй лодход - декомпозиция необходимой а ретроспективной информационной потребности для выявления состава баев данных АИС (этапы П и Ж) объектный подход - исследование возможностей используемых базы данных, информационного языка показателей (ИЯП) и дрограмшого обеспечения для выявления номенклатуры ж ассортимента продукции , которую способна выдавать АИС (этал Ш).
К. э. рассматривает экономику, а также её структурные и функциональные звенья как системы, в к-рых протекают процессы регулирования и управления, реализуемые движением и преобразованием информации. Методы К. э. дают возможность стандартизировать и унифицировать эту информацию, рационализировать получение, передачу и обработку экономич. информации, обосновывать структуру и состав технич. средств её обработки. Системный подход к экономике с выделением и совмещением в его рамках аспектов регулирования, управления и информации определяет внутр. единство и характер исследований К. э. Они способствуют комплексной разработке мероприятий по совершенствованию управления нар. х-вом н служат, в частности, теоретич. основой создания автоматизированных систем управления (АСУ) н систем обработки данных (СОД) в нар. х-ве. В ряде стран соответств. исследования ещё не выделены из проблематики системного анализа , исследования операций , науки управления (management s ien e), напр, в США п Великобритании, или информатики, напр, во Франции. К. э. пока находится (сер. 70-х гг.) в стадии становления. Впервые термин К. э. появился в нач. 60-х гг. в трудах
Исследования сторонников Э. к. т. сконцентрированы па выработке критерия эффективной конкуренции, определении того состояния отрасли, когда гос-ву следует вмешаться в экономич. механизм с целью поддержания эффективной конкуренции . Два осн. подхода к решению этого вопроса получили названия структурного и функционального. Сторонники первого подхода обращают осн. внимание на экономич. структуру отрасли, складывающуюся из двух сторон экономии, концентрации, или доли крупнейших фирм на отраслевом рынке , и барьеров для новой конкуренции, или условий вступления в отрасль новых фирм. Барьеры для новой конкуренции, характеризующие степень монополизации отрасли 1) экономичность крупных размеров. Если высокий уровень концентрации связан с экономичностью крупных масштабов произ-ва (на уровне заводов) или крупных. масштабов деятельности (на урои-не фирм), то в этом случае новая фирма должна считаться с необходимостью постройки достаточно крупного предприятия. 2) Степень дифференциации продукции . Наличие дифференциации затрудняет действие потенциального конкурента, поскольку ему приходится преодолевать приверженность покупателей отраслевой продукции к определённой его разновидности. 3) Абсолютные преимущества в издержках у существующих фирм (доступ к ограниченным источникам сырья, патентная защита отрасли, наличие производств, секретов, существенных для эффективной организации деятельности, меры гос. регулирования). 4) Размер капитала, необходимый для организации эффективного нроиз-ва. При чрезвычайно большом размере начальных капиталовложений, характерном для ряда oup, отраслей нром-сти, вторжение в эти отрасли может совершить либо фирма, имеющая большие внутр. накопления, либо фирма, связанная с финанс. посредниками.
Функциональный подход
Функциональный подход - понятие и виды. Классификация и особенности категории "Функциональный подход" 2017, 2018.
Отличительная черта функционального подхода состоит в исследовании процессов самоорганизации предбиологических систем, выявлении законов, которым подчиняются такие процессы. Теория саморазвития элементарных каталитических систем в самом общем виде является общей... .
Плюралистический подход Основными представителями плюралистического подхода являются американский исследователь Роберт Даль и австрийский ученый Йозеф Шумпетер. По их мнению, ресурсы политической власти, а именно деньги, престиж, доступ к СМИ и др., распределены в... .
Признавая значительный вклад, который сделали как элитисты, так и плюралисты в исследовании структуры общества и механизмов социального взаимодействия, ряд учёных отмечает и слабые стороны данных моделей. Самое общее возражение в адрес плюрализма опирается на очевидное... .
Первой возникла рационалистическая школа. У ее истоков стоял американский инженер Фредерик Тейлор (1856-1915). Свою карьеру он начал с простого рабочего, а затем, получив заочно высшее образование, за 8 лет дослужился до должности главного инженера сталелитейной компании в г.... .
Несмотря на успешное развитие моделей памяти, использующих компьютерные метафоры, стало понятно, что аналогия между переработкой информации у человека и компьютера не является удовлетворительной. Прежде всего исследователи столкнулись с фактом влияния таких... .
Данный подход предложен в 1960 г. американским социологом Толкоттом Парсонсом (1902-1979) в рамках его теории структурно-функционального анализа общества и социальных явлений. В этом подходе организации выделяются по функциям, реализуемым в обществе – по их предназначению: -...