Комментарий
Programming-in-the-large и истинная предмет-ориентированность тут достигается тем, что все системы поддержки master data обмениваются сообщениями. Почитайте свежее интервью Alan Kay http://www.computerworld.com.au/article/352182/z_programming_languages_smalltalk-80/ -- там он как раз говорит, что ООП он дал название крайне неудачно, потому как идея "объектов" была менее важной, чем идея масштабирования через обеспечение обмена сообщениями. Объекты были нужны только как активные, т.е. умеющие обмениваться сообщениями, ибо "просто данные" не могут обмениваться сообщениями.
Один из разработчиков Erlang тоже высказал мысль, что единственный способ создания масштабируемых систем - это передача сообщений.
Я тоже всегда так думал, года по крайней мере с 2002 :).
Причем странно, что часто прогарммеры зачем-то пытаются юзать и приделывать везде RPC (Remote Procedure Call), хотя RPC очевидным образом распадается на пару сообщений. Т.е. сообщения более гибкая и мощная конструкция, что для многопоточных и распределенных приложений критично.
Насчет programming-in-large меня посетила мысль, что тут требуется интенсивная трансформация кода, т.е. metaprogramming. Ибо есть куча всякого кода, с разными интерфейсами и протоколами, и нужно их заставить работать совместно. И тут без интенсивных кодо-трансформаций тяжело, ибо всякие брокеры/миддлваре тормозное и тупое.