Есть основания полагать, что глубина производства в индустрии ПО станет уменьшаться.
Рынок будут формировать производители, специализирующиеся на комплексных решениях и
выполняющие сборку компонентов в рамках (своих) инфраструктур, а также поставщики
компонентов. Между этими двумя полюсами займут место изготовители подсистем,
поставляющие промежуточные продукты.
Отбор и замена компонентов будут производиться по принципу «лучших представителей
своего класса», а при сборке в центре внимания будет ноу-хау самого бизнеса и возможности
его моделирование в соответствии с методом сборки. Таким образом, точками фокусировки при
разработке программного обеспечения станут уровень инжиниринга как часть концепции АБИ
с его методами моделирования, а также связи для интеграции с workflow и адаптации бизнес-
объектов.
Точно так же, как в автомобильной промышленности производители должны обладать
знаниями и опытом в области разработки (инжиниринга), логистики и сборки, поставщикам
комплексных решений, помимо овладения инфраструктурами, потребуются навыки в работе с
методами наполнения их содержанием и моделирования, представленные на уровне I. Кроме
того, им необходимо будет оценивать кандидатуры поставщиков компонентов, а также
устанавливать связи между производителями и поставщиками. Производителям комплексных
решений потребуются также знания и опыт в области консалтинга и технического
обслуживания на глобальном уровне, т.]е.]возможности, которыми располагают только крупные
корпорации. Такой «багаж» необходим, чтобы гарантировать целостность предлагаемых
полных решений. Поставщики помельче сосредоточатся на разработке отдельных компонентов
и подсистем.
С другой стороны, не следует переоценивать возможности рынка компонентного ПО —
здесь крупным поставщикам решений придется делать выбор. Проблема в том, что принцип
конструктора «Лего», допускающего произвольную компоновку элементов, в этой области
неприменим. Элементы «Лего» совершенно идентичны и собираются по типовой схеме. Для
этого необязательно понимать их внутреннюю структуру, достаточно знать, что они имеют
стандартные размеры и «связи».
В отличие от «Лего» программные компоненты содержат прикладную информацию —
каждый свою. Для их сборки необходимо хорошо разбираться в технических интерфейсах и
логике приложения. Этим определяется возможность или невозможность использования в
сборке того или иного компонента. Главное условие для правильной сборки — наличие
исчерпывающего документального описания компонентов. Создание сложных модулей требует
объединения усилий поставщиков комплексных решений и поставщиков отдельных
компонентов. Здесь можно провести аналогию с аэрокосмической и автомобильной отраслями.
В этих отраслях обмен информацией о продуктах и тесное сотрудничество в процессе
разработки называются параллельным инжинирингом. Опыт в области параллельного
инжиниринга и многие его методы в значительной мере применимы и к разработке
программного обеспечения. К сожалению, в отличие от сферы материального производства,
поставщику программных компонентов труднее защитить свое ноу-хау. Если знания и опыт,
которыми обладают изготовители автотранспортных средств в области научно-
исследовательских и опытно-конструкторских разработок, а также в области производства,
охватывают процедуры и технические ресурсы, и при этом они постоянно производят свою
продукцию, то все, чем располагают поставщики ПО, — это методы и технологии разработки.
После совместной работы над каким-нибудь проектом поставщику решений не составит
ни малейшего труда «позаимствовать» у партнера его ноу-хау.
Важнейшими условиями интенсивного развития компонентного ПО являются создание
эффективных механизмов защиты и определенная культура отношений, основанная на
принципах доверия и сотрудничества между поставщиками компонентов и поставщиками
готовых решений.