{"id":14293,"url":"\/distributions\/14293\/click?bit=1&hash=05c87a3ce0b7c4063dd46190317b7d4a16bc23b8ced3bfac605d44f253650a0f","hash":"05c87a3ce0b7c4063dd46190317b7d4a16bc23b8ced3bfac605d44f253650a0f","title":"\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043d\u0435 \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u0432 \u043d\u0438 \u043a\u043e\u043f\u0435\u0439\u043a\u0438","buttonText":"","imageUuid":""}

Что такое формальная модель и как она может помочь при разработке сложной системы?

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

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

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

Зачастую этого сложно добиться с первого раза, не потеряв при этом во времени и финансах.

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

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

Давайте определим, что есть формальная модель?

Формальная модель объекта — это описание объекта на языке математики, специального языка моделирования или иного алгоритмического языка.

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

Пример применения формального моделирования:

Рис. 1 Модель сетевого протокола.

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

Это в значительной мере помогает сократить затраты на разработку и с точки зрения времени и финансов.

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

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

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

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

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

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

Не ошибайтесь на первых этапах и накопления ошибок не произойдет!

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

Будем рады знакомству с Вами!

0
Комментарии
-3 комментариев
Раскрывать всегда