Notice: file_put_contents(): Write of 18401 bytes failed with errno=28 No space left on device in /var/www/tgoop/post.php on line 50

Warning: file_put_contents(): Only 4096 of 22497 bytes written, possibly out of free disk space in /var/www/tgoop/post.php on line 50
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.@emacsway_log P.1383
EMACSWAY_LOG Telegram 1383
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Начнем с Solution Space, или почему вносить изменения в проект становится дорого. В начале 2000-х размер средней системы на рынке постоянно возрастал и достиг такого предела, когда создавать системы по-старому было уже затруднительно. Основных сдерживающих…
Представьте, что нужно проложить маршрут из Москвы в Мурманск. Сможет ли это сделать человек по точной копии Земли в масштабе один к одному? Очевидно, что нет, т.к. количество деталей, нерелевантных решаемой проблеме (т.е. паразитная когнитивная нагрузка), превысит когнитивные возможности человека. Чтобы осуществить эту задачу, необходимо абстрагироваться от нерелевантных деталей и снизить уровень единовременно рассматриваемой сложности. Т.е. нужно оставить в модели только те аспекты оригинала моделирования, которые релевантны решаемой проблеме. Именно этим и занимаются навигационные карты.

💬️ “Модель - это упрощение; это такая интерпретация реальности, при кото­рой из явления извлекаются существенные для решения задачи аспекты, а лишние детали игнорируются.

A model is a simplification. It is an interpretation of reality that abstracts the aspects relevant to solving the problem at hand and ignores extraneous detail.”

—“Domain-Driven Design: Tackling Complexity in the Heart of Software” by Eric Evans, перевод В.Л. Бродового

Я затрудняюсь в точном переводе термина problem. И хотя употребление термина "проблема" не совсем корректно, но термин "задача" (task) тесно ассоциируется в SDLC с запросом на системный инкремент (т.е. о том, как нужно изменить конструкцию). Поэтому я предпочитаю придерживаться термина "проблема".

В контексте решения проблемы определения степени загрузки лифта все, что требуется от оригинала (т.е. от человека) - это его масса.

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

А вот для столовой нам будет релевантно только то, есть ли у человека какая-то предписанная ему диета и имеются ли аллергические реакции.

Если мы посмотрим на оригинал как на плательщика, то нам будут релевантными только его платежные реквизиты.

Если мы посмотрим на оригинал как на получателя товара, то нам будут релевантыми адрес и время вручения груза.

В перечисленных моделях рассматриваются совершенно различные аспекты оригинала.

У @StanislavBolsun есть хороший Long Read по моделированию.

Понимание основ моделирования - это фундамент эффективной разработки. Без этого фундамента не получится создать крупную систему. Поэтому определение контуров моделей и их разделение - это основная (но не единственная) цель антикризисной архитектуры.
👍7🔥73



tgoop.com/emacsway_log/1383
Create:
Last Update:

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

💬️ “Модель - это упрощение; это такая интерпретация реальности, при кото­рой из явления извлекаются существенные для решения задачи аспекты, а лишние детали игнорируются.

A model is a simplification. It is an interpretation of reality that abstracts the aspects relevant to solving the problem at hand and ignores extraneous detail.”

—“Domain-Driven Design: Tackling Complexity in the Heart of Software” by Eric Evans, перевод В.Л. Бродового

Я затрудняюсь в точном переводе термина problem. И хотя употребление термина "проблема" не совсем корректно, но термин "задача" (task) тесно ассоциируется в SDLC с запросом на системный инкремент (т.е. о том, как нужно изменить конструкцию). Поэтому я предпочитаю придерживаться термина "проблема".

В контексте решения проблемы определения степени загрузки лифта все, что требуется от оригинала (т.е. от человека) - это его масса.

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

А вот для столовой нам будет релевантно только то, есть ли у человека какая-то предписанная ему диета и имеются ли аллергические реакции.

Если мы посмотрим на оригинал как на плательщика, то нам будут релевантными только его платежные реквизиты.

Если мы посмотрим на оригинал как на получателя товара, то нам будут релевантыми адрес и время вручения груза.

В перечисленных моделях рассматриваются совершенно различные аспекты оригинала.

У @StanislavBolsun есть хороший Long Read по моделированию.

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

BY emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.




Share with your friend now:
tgoop.com/emacsway_log/1383

View MORE
Open in Telegram


Telegram News

Date: |

Avoid compound hashtags that consist of several words. If you have a hashtag like #marketingnewsinusa, split it into smaller hashtags: “#marketing, #news, #usa. Telegram iOS app: In the “Chats” tab, click the new message icon in the right upper corner. Select “New Channel.” 6How to manage your Telegram channel? On Tuesday, some local media outlets included Sing Tao Daily cited sources as saying the Hong Kong government was considering restricting access to Telegram. Privacy Commissioner for Personal Data Ada Chung told to the Legislative Council on Monday that government officials, police and lawmakers remain the targets of “doxxing” despite a privacy law amendment last year that criminalised the malicious disclosure of personal information. fire bomb molotov November 18 Dylan Hollingsworth yau ma tei
from us


Telegram emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
FROM American