О проблеме синтеза систем

СИНТЕЗ СИСТЕМ

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

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

В отличие от проектирования при синтезе систем могут отсутствовать характеристики объектов (нет прототипов), их необходимо разрабатывать по заданным требованиям.

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

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

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

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

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

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

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

Таким образом, выбор объектно-ориентированного подхода для решения задач программирования, анализа и проектирования систем представляет собой работу системы, когда определены объекты и взаимосвязи между ними.

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

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

Напрашивается вывод о необходимости поиска решений системных задач по единой методологии, как при анализе, так и при синтезе систем.

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

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

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: