Совсем скоро аналитики информационного рынка и многочисленные компьютерные издания подведут итоги 2001 года. Они, конечно же, назовут его наиболее значительные технологические и научные достижения. Специфика этого года заключается в том, что на этот раз многие новинки из числа самых ярких почти наверняка будут включать в свои названия те или иные варианты слова «интеграция». На протяжении всех двенадцати месяцев оно возникало при самых разных обстоятельствах.
Известные интеграционные тенденции образуют несколько потоков, пронизывающих практически сферы ИТ для корпоративных приложений. Самый мощный из них — технологии интеграции программных приложений на базе альтернативных платформ .NET и J2EE/EJB. Другой поток, пока менее популярный, но не менее многообещающий, образуют интеграционные технологии в аппаратном обеспечении. Сети хранения (SAN — storage area network) как средство объединения становятся одним из наиболее важных системообразующих компонентов современной ИТ-инфраструктуры предприятия. Все направление, связанное с SAN, получило дополнительный импульс в связи возросшим этой осенью интересом к созданию резервных центров и катастрофоустойчивых конфигураций.
Это очень отрадные и вполне закономерные явления, но все же, если сегодня представить себе корпоративную информационную систему в виде некоего единого здания, то нетрудно заметить, что пока каждая из существующих интеграционных тенденций активно захватывает отдельные этажи корпоративного строительства, оставляя в стороне предназначение сооружения в целом. Может показаться удивительным, но эти этажи и развиваются как-то независимо друг от друга. Как следствие даже специалисты, работающие на каждом из этажей, довольно плохо осведомлены о деятельности коллег-соседей. В целом, получается довольно эклектичная картина, которую совершенно невозможно обнаружить, если обратить взгляд на такие классические инженерные сооружения индустриальной эпохи, как дома, самолеты, корабли и так далее.
Что же происходит в области информационных систем, являющихся гордостью цифровой эпохи? Как бы часто не употреблялось слово «архитектура» по отношению к ним, подлинную архитектурную стройность эти информационные системы еще не обрели. Как отметил Клиф Финкельштейн, известный специалист в области корпоративного строительства (enterprise engineering), благодаря ним, из ручного хаоса многие предприятия попали в непрерывное состояние автоматизированного хаоса [1].
И все же есть ученые, озабоченные архитектурой информационных систем. Один из наиболее интересных специалистов, работающих в этой области, Джон Захман, стал в последние годы буквально культовой фигурой в США и Западной Европе, к тому же он очень популярен в Австралии, благодаря тесному взаимодействию с упомянутым выше австралийцем Финкельштейном. Они часто выступают совместно и оба входят в совет Международной ассоциации по управлению данными (Data Administration Management Association), участвуют в издании журнала Data Management Review.
Современные взгляды Захмана на архитектуру систем изложены им в статье [2]. В ней он пишет, что вот уже более сорока лет применение технологий к решению корпоративных проблем стало чем-то вроде поиска Священной чаши Грааля. Много раз на протяжении этого времени появлялось какое-то решение в виде пакета программ, процессора или чего-то еще, объявлявшееся сразу же панацеей, но в итоге их применения мы оказывались все дальше и дальше от конечного пункта маршрута.
Захман предлагает признать, что компьютеры во всех их ипостасях есть всего лишь исполнительные элементы. Сами же по себе они ни архитектуры, ни системы не образуют. И архитектура, и система могут сложиться только в результате совместной деятельности всех участников процесса, в том числе владельца системы, проектировщика и строителя. Все должно происходить точно так же, как это бывает при строительстве дома, корабля или самолета.
Но Захман не просто критик — он сделал одну из немногочисленных попыток хоть как-то систематизировать подходы к созданию корпоративных информационных систем. Он создал таблицу для моделирования архитектуры, получившую признание под именем Zachman Framework. Впервые таблица была предложена в 1987 году, во второй же своей редакции она появилась в 1992 году. Пятнадцать лет назад Захман, представляя ее, писал, что видит свою миссию в том, чтобы удержать бизнес от дезинтеграции с информационными системами. В качестве средства интеграции он предложил модель, которая позволяет описать процедуру создания сложных систем, установить взаимодействие разных участвующих в этом сторон и даже создать общую для них лексику. Довольно долго таблица Захмана оставалась инструментом для бумажного моделирования, и вот только сейчас на волне увлечения языком XML появились первые автоматизированные реализации таблицы [3].
Она разработана на основе сравнительного анализа развития других технологий, имеющих многовековую историю. Ее конечная цель заключается в том, чтобы представить в понятном и наглядном виде стратегические проблемы создания крупных систем не только для лиц, принимающих решения, но и позволит самим ИТ-профессионалам посмотреть на область своей деятельности «с высоты птичьего полета».
Таблица Захмана позволяет свести сложные архитектурные проблемы корпоративных информационных систем к ответам на простые вопросы: кто, что, когда, где, зачем и как. Под данными Захман понимает не формальное представление в виде битов и байтов, а скорее содержательное, можно было бы использовать и слово «знание». Это очень любопытно, поскольку сам Захман не говорит о предмете управлении знаниями, но позволяет связать эту область с технологиями.
Таблица состоит из шести столбцов и шести строк. В ее первой редакции было только три столбца: Данные, Функция и Мотивация. Позже к ним добавились Сети, Люди и Время. Каждый из столбцов отвечает на один из поставленных выше вопросов.
- ЧТО - данные (data), любые формы представления информации, критически важной для бизнеса, в данном случае это основной субъект таблицы. Важно, что данные описываются во взаимосвязи между собой.
- КАК - функции (function), операции, выполняемые над субъектом, выделение и передача знаний. Это функциональное описание системы, здесь представлено то, как организация работает, как устроен поток работ, как используются данные.
- ГДЕ - сеть (network), расположение субъекта. Это, в конечном итоге, описание информационных потоков предприятия.
- КТО - люди (people), распределение ответственности и функции работников. Человек рассматривается в роли носителя и распорядителя знаний.
- КОГДА - время (time), может быть абсолютным или относительным, отражающим взаимосвязанность процессов.
- ЗАЧЕМ - мотивация (motivation), ключевой вопрос бизнес цели и стратегия.
Создание системы по Захману есть совокупность процедур, состоящих из ответов на перечисленные вопросы, на шести уровнях, каждому из которых соответствует строка.
- Намерение (scope). Документы, составляемые на этом уровне как можно менее техничны, от них не требуется полнота. Желательно, чтобы на таком глобальном уровне проектированием занимались специалисты, не являющиеся ни исполнителями, ни владельцами будущей системы.
- Модель предприятия (Enterprise Model). На этом уровне описывается функциональность в понимании заказчика.
- Разработка модели системы (system model). Это и есть собственно работа архитектора, которая позволяет совместить представления заказчика с глобальным видением проблемы.
- Разработка технологической модели (technology model). Привязка архитектуры к определенным аппаратным и программным средствам.
- Компоненты (components). Распределение работ между субконтакторами.
- Оценка функционирования (functioning system). По завершении всех предыдущих этапов пользователь может соотнести полученное с желаемым и внести изменения.
Тем, кому таблица Захмана покажется интересной, рекомендую сходить по адресу [4], где она представлена в полуинтерактивном виде.
Ссылки
- http://members.ozemail.com.au/~visible/papers/dmr11.htm
- John A. Zachman, "Enterprise Architecture: The Past and the Future". http://www.dmreview.com/editorial/dmreview/print_action.cfm?EdID=2187
- Clive Finkelstein, Peter Aiken, "Building Corporate Portals with XML. McGraw-Hill, Sep 1999
- http://www.istis.unomaha.edu/isqa/vanvliet/arch/isa/isa.htm