#дляайтишников
А для этого в наших фреймворках не хватает viewpoints
И на сегодня, многие системы, которыми мы пользуемся, это унылое говно
Хотя с точки зрения их создателей, они вполне успешны, потому что ожидания создателей удовлетворены. Пользователи вынуждены использовать безальтернативные системы.
А для этого в наших фреймворках не хватает viewpoints
И на сегодня, многие системы, которыми мы пользуемся, это унылое говно
Хотя с точки зрения их создателей, они вполне успешны, потому что ожидания создателей удовлетворены. Пользователи вынуждены использовать безальтернативные системы.
👍1
Долго не писал, рефлексировал над обратной связью и сводил план.
Хочется побыстрее закончить с системами, но остались несколько вопросов и точек зрения, которые нельзя обойти стороной.
Один из таких вопросов, важнейший, именно важнейший – это сложность.
И давайте договоримся, что в контексте «Промышленной архитектуры» мы будем понимать под сложными системами.
Хочется побыстрее закончить с системами, но остались несколько вопросов и точек зрения, которые нельзя обойти стороной.
Один из таких вопросов, важнейший, именно важнейший – это сложность.
И давайте договоримся, что в контексте «Промышленной архитектуры» мы будем понимать под сложными системами.
👍1
Приведу цитату из книги «Systems Engineering Principles And Practice, Second Edition» Александра Косякова. Цитаты из этой книги буду оставлять на десерт, потому что считаю её лучшей в своей области.
«There are many ways in which to define systems engineering.
For the purposes of this book, we will use the following definition: The function of systems engineering is to guide the engineering of complex systems .
…
To guide is defined as “to lead, manage, or direct, usually based on the superior experience in pursuing a given course ” and “ to show the way. ”
This characterization emphasizes the process of selecting the path for others to follow from among many possible courses — a primary function of systems engineering.»
«There are many ways in which to define systems engineering.
For the purposes of this book, we will use the following definition: The function of systems engineering is to guide the engineering of complex systems .
…
To guide is defined as “to lead, manage, or direct, usually based on the superior experience in pursuing a given course ” and “ to show the way. ”
This characterization emphasizes the process of selecting the path for others to follow from among many possible courses — a primary function of systems engineering.»
👍3
В переводе это звучит так:
«Существует множество определений системной инженерии.
Для этой книги мы будем использовать следующее определение: функция системной инженерии заключается в том, чтобы направлять инженерные процессы в сложных системах.
…
Направлять означает "вести, режиссировать, обычно на основе глубокого опыта" и "показывать путь".
Это определение акцентирует внимание на процессе выбора наиболее подходящего пути из множества возможных вариантов — основной функции системной инженерии.»
«Существует множество определений системной инженерии.
Для этой книги мы будем использовать следующее определение: функция системной инженерии заключается в том, чтобы направлять инженерные процессы в сложных системах.
…
Направлять означает "вести, режиссировать, обычно на основе глубокого опыта" и "показывать путь".
Это определение акцентирует внимание на процессе выбора наиболее подходящего пути из множества возможных вариантов — основной функции системной инженерии.»
👍2
Действительно, как мы уже говорили, существует множество определений системной инженерии. Также существует и множество определений сложной системы.
Приводить разные определения сложной системы и выполнять их анализ я не буду.
Вместо этого дам несколько ссылок на работы, где такой анализ уже проведён, перечислю наиболее часто встречающиеся характеристики сложных систем, выскажу свою точку зрения и предложу определение, которое мне видится наиболее прикладным в контексте «Промышленной архитектуры»
Приводить разные определения сложной системы и выполнять их анализ я не буду.
Вместо этого дам несколько ссылок на работы, где такой анализ уже проведён, перечислю наиболее часто встречающиеся характеристики сложных систем, выскажу свою точку зрения и предложу определение, которое мне видится наиболее прикладным в контексте «Промышленной архитектуры»
👍2
Итак, сложные системы.
Ёмкий, как мне кажется, обзор эволюции «сложная система» понятия дан в статье:
«Эволюция понятия «сложная система», Ознамец Владимир
Процитирую ряд важных для нас выводов:
«В настоящее время понятие сложной системы от абстрактной или технической формы приобретает комплексный аспект с учетом когнитивных и ресурсных факторов.
Понятие сложной системы приобретает социальный аспект и аспект саморазвития.
Первоначальное понятие сложной системы ставило задачу ее формального описания.
Современное понятие сложной системы ставит несколько задач.
В первую очередь, это результат функционирования или деятельности системы.
Следующими задачами являются: связь сложной системы с окружающей средой и описание причинно-следственных механизмов, влияющих на результат, качественное описание элементов системы и определение критериев образования этих элементов в виде информационных единиц.
Современное понятие сложной системы включает фактор жизненного цикла и человеческий фактор.»
Ёмкий, как мне кажется, обзор эволюции «сложная система» понятия дан в статье:
«Эволюция понятия «сложная система», Ознамец Владимир
Процитирую ряд важных для нас выводов:
«В настоящее время понятие сложной системы от абстрактной или технической формы приобретает комплексный аспект с учетом когнитивных и ресурсных факторов.
Понятие сложной системы приобретает социальный аспект и аспект саморазвития.
Первоначальное понятие сложной системы ставило задачу ее формального описания.
Современное понятие сложной системы ставит несколько задач.
В первую очередь, это результат функционирования или деятельности системы.
Следующими задачами являются: связь сложной системы с окружающей средой и описание причинно-следственных механизмов, влияющих на результат, качественное описание элементов системы и определение критериев образования этих элементов в виде информационных единиц.
Современное понятие сложной системы включает фактор жизненного цикла и человеческий фактор.»
👍2
Для нас эти выводы очень важны.
В «Промышленной архитектуре» будут даны ответы на вопросы:
- Как строить самоорганизующиеся программные системы?
- Как делать качественные описания систем?
- Какой жизненный цикл у инженерных систем?
В «Промышленной архитектуре» будут даны ответы на вопросы:
- Как строить самоорганизующиеся программные системы?
- Как делать качественные описания систем?
- Какой жизненный цикл у инженерных систем?
#дляайтишников
В последние годы на хайпе эволюционная архитектура. На Английском “Evolutionary architecture”.
Эволюционные архитектуры нужны для построения самоорганизующихся систем.
В последние годы на хайпе эволюционная архитектура. На Английском “Evolutionary architecture”.
Эволюционные архитектуры нужны для построения самоорганизующихся систем.
👍2
#дляайтишников
Бубны износились
Мы подойдём к построению эволюционных архитектур с помощью инженерии.
Бубны износились
Мы подойдём к построению эволюционных архитектур с помощью инженерии.
#тизер
И снова тизер, самоорганизующиеся системы - самые живучие, наиболее устойчивые к изменениям, в том числе в условиях неопределённости.
Сегодня нужны именно такие системы.
И да, такие системы почти всегда сложные.
И снова тизер, самоорганизующиеся системы - самые живучие, наиболее устойчивые к изменениям, в том числе в условиях неопределённости.
Сегодня нужны именно такие системы.
И да, такие системы почти всегда сложные.
#отсебя #дляайтишников
По моему сугубо личному мнению, известные книги из серии “Building Evolutionary Architectures” не дают ответы, как строить самоорганизующиеся системы.
Весь их смысл де-факто редуцирован до Алертов, которые называют фитнес-функциями.
Во всяком случае, при обучении инженеров на материалы этих книг лично я опираться практически не могу. Если конечно не брать во внимание несколько вернеуровневых идей.
По моему сугубо личному мнению, известные книги из серии “Building Evolutionary Architectures” не дают ответы, как строить самоорганизующиеся системы.
Весь их смысл де-факто редуцирован до Алертов, которые называют фитнес-функциями.
Во всяком случае, при обучении инженеров на материалы этих книг лично я опираться практически не могу. Если конечно не брать во внимание несколько вернеуровневых идей.
🔥2
Intelligent Systems Architecture
Для нас эти выводы очень важны. В «Промышленной архитектуре» будут даны ответы на вопросы: - Как строить самоорганизующиеся программные системы? - Как делать качественные описания систем? - Какой жизненный цикл у инженерных систем?
После обсуждения решили, что неверно называть программные системы самоорганизующимися.
Во всяком случае до тех пор, пока их разрабатывают люди.
Мы будем говорить об архитектурах программных систем, которые способствует самоорганизации каких-то других систем, уже сосциотехнических, частью которых программные системы могут являться.
Во всяком случае до тех пор, пока их разрабатывают люди.
Мы будем говорить об архитектурах программных систем, которые способствует самоорганизации каких-то других систем, уже сосциотехнических, частью которых программные системы могут являться.
🔥2
Возможно стоит говорить о самоорганизации в Software Intensive Systems.
Перевода пока не нашёл подходящего.
Перевода пока не нашёл подходящего.
Из обсуждения:
«Из IEEE1471-2000:
A software-intensive system is any system where software contributes essential influences to the design, construction, deployment, and evolution of the system as a whole»
«Из IEEE1471-2000:
A software-intensive system is any system where software contributes essential influences to the design, construction, deployment, and evolution of the system as a whole»
Также приведу несколько заключений из статьи: “Определение понятия «сложная система» в контексте науки устойчивого развития”, Глаз Роман Алексеевич
«Так, сложные системы имеют следующие отличительные особенности:
1. Любая сложная система является и большой;
2. Любая сложная система имеет эволюционное развитие;
3. Любая сложная система характеризуется наличием большого количества уровней, на которых может быть рассмотрена (например, экосистема, лес, дерево);
4. Любой сложной системе присущи паттерны формирования»
Далее автор ссылается на работы И.Н. Глухих и В.Н. Чернышева и указывает на существование прямой взаимосвязи между сложностью и размером системы:
«Любая сложная система является и большой. Для сложной системы предлагаются следующие характеристики:
- сложность назначения и многообразие выполняемых функций;
- большие размеры системы по числу элементов, их взаимосвязей, входов и выходов;
- сложная иерархическая структура системы, позволяющая выделить в ней несколько уровней с достаточно самостоятельными элементами на каждом из уровней, с собственными целями элементов и особенностями функционирования;
…»
Автор данной статьи отдельно отмечает, что есть и авторы, которые «называют главной характеристикой сложной системы наличие у нее подсистем.»
В своих исследованиях с такой точкой зрения я тоже нередко встречался.
«Так, сложные системы имеют следующие отличительные особенности:
1. Любая сложная система является и большой;
2. Любая сложная система имеет эволюционное развитие;
3. Любая сложная система характеризуется наличием большого количества уровней, на которых может быть рассмотрена (например, экосистема, лес, дерево);
4. Любой сложной системе присущи паттерны формирования»
Далее автор ссылается на работы И.Н. Глухих и В.Н. Чернышева и указывает на существование прямой взаимосвязи между сложностью и размером системы:
«Любая сложная система является и большой. Для сложной системы предлагаются следующие характеристики:
- сложность назначения и многообразие выполняемых функций;
- большие размеры системы по числу элементов, их взаимосвязей, входов и выходов;
- сложная иерархическая структура системы, позволяющая выделить в ней несколько уровней с достаточно самостоятельными элементами на каждом из уровней, с собственными целями элементов и особенностями функционирования;
…»
Автор данной статьи отдельно отмечает, что есть и авторы, которые «называют главной характеристикой сложной системы наличие у нее подсистем.»
В своих исследованиях с такой точкой зрения я тоже нередко встречался.
Заметьте, до сих пор я не привёл определения сложной системы. Я сделал это намеренно, потому что не нашёл определения, которое, на мой взгляд, было бы достаточно прикладным, чтобы использовать его в обучении.
При этом, как мне кажется, уже сформировалось понимание необходимости изучения таких важных вопросов, как самоорганизация, иерархичность, качественное описание и жизненный цикл.
При этом, как мне кажется, уже сформировалось понимание необходимости изучения таких важных вопросов, как самоорганизация, иерархичность, качественное описание и жизненный цикл.
В контексте этого канала, то есть “Промышленной архитектуры”, сформулирую определение “сложной системы” опираясь на когнитивный фактор. И в первую очередь, на определение сложности, которое этот фактор учитывает.
Разумеется, есть множество определений сложности. В нашем случае буду опираться на следующее определение:
“Сложность (complexity): Свойство системы или компонента, имеющих устройство, исполнение или поведение, трудные для понимания или верификации.”, ГОСТ Р МЭК 61513-2011 (IEEE 610)
“Сложность (complexity): Свойство системы или компонента, имеющих устройство, исполнение или поведение, трудные для понимания или верификации.”, ГОСТ Р МЭК 61513-2011 (IEEE 610)
Поскольку мы говорим об архитектуре программных систем, то для нас:
Сложная система — это трудная для понимания система, которую невозможно исследовать, моделировать, проектировать и описывать без применения методов управления сложностью, таких как декомпозиция, абстракция, моделирование, иерархичность, модульность и системное мышление, чтобы с наибольшей вероятностью обеспечить её успех.
Сложная система — это трудная для понимания система, которую невозможно исследовать, моделировать, проектировать и описывать без применения методов управления сложностью, таких как декомпозиция, абстракция, моделирование, иерархичность, модульность и системное мышление, чтобы с наибольшей вероятностью обеспечить её успех.
👍4
Мы все эти методы рассмотрим отдельно и будем их использовать при решении задач по проективанию архитектуры «Промышленных программных систем». И конечно рассмотрим разные паттерны их формирования и не забудем про эволюционное развития.
👍2
Чтобы идти дальше, нужно поставить точку в вопросе, инженеры ли архитекторы программных систем, или нет.
На этот вопрос можно найти ответы в статьях инфлюенсеров, но цитировать их я не буду, потому что мне не удалось найти ни одного убедительного ответа.
На этот вопрос можно найти ответы в статьях инфлюенсеров, но цитировать их я не буду, потому что мне не удалось найти ни одного убедительного ответа.