О стандартах архитектуры
На просторах инета (и кто бы мог подумать — в msdn) найдена статья по сравнительному анализу различных методов выработки архитектуры — Zachman, TOGAF, FEA, Gartner. Весьма интересно. Во вводной части там отсутствуют слова, но они есть в английском оригинале. Если совсем кратко, то суть в следующем.
- Zachman framework — на самом деле, это таксономия, то есть классификация области архитектуры предприятия на 30 клеточек (5×6), к которым надо относить артефакты, и утверждается, что в идеале все клеточки должны быть заполнены, а каждый артефакт должен быть в одной клеточке.
- TOGAF — это стандарт на процедуру, процесс порождения архитектуры. При этом он не гарантирует качественной архитектуры в результате.
- FEA — порождение бюрократических попыток стандартизовать структуру автоматизации для агенств и подразделений правительства США. В целом — оказалось практически мертворожденным.
- Gartner Methodology — скорее похож на набор успешных практик, нежели на методологию или стандарт.
А в подробностях — там приведена история, основные идеи и проиллюстрировано использование каждого подхода в гипотетическом проекте автоматизации. В целом там много интересного и полезного для общего развития.
Зато — выскажу мысли, которые возникли, когда метод, процедуру делают стандартом. Ведь TOGAF, например — именно стандарт от Open Group для процесса получения архитектуры. Он, правда, не гарантирует правильность и качество архитектуры. На SECR-2010 мэтр от OMG вещал про важность стандартов и начал от пожара в Балтиморе, когда выяснилось, что шланги разных пожарных машин нельзя состыковать, чтобы получить длинный шланг. Такие стандарты безусловно важны. Но когда стандартизуют процесс, то получают совсем другое — получают правила, регламентную процедуру тужения пожара. А это уже перебор. Безусловно, в тушении пожара существуют правила, которым надо следовать — какие вещества чем тушить и тому подобное. Наверняка существуют также хорошие практики, которые полезно знать. Но все это никоим образом не образует стандарта или регламентной процедуры, место стандартов тут — ограничено, в области шлангов, которые должны сопрягаться…
Кстати, есть другой аналогичный пример — футбол. Там есть свои стандарты — на футбольное поле, на мяч, есть правила игры, это тоже стандарты. Но вот дальше — есть свобода творчества и хорошие практики. И все понимают, что это — нормально. А вот в IT — не останавливаются на этом. В медицине, кстати, тоже, и это печально отзывается на пациентах.