Архитектура системы — Википедия
Архитектура системы — принципиальная организация системы, воплощенная в её элементах, их взаимоотношениях друг с другом и со средой, а также принципы, направляющие её проектирование и эволюцию[1]:3.
Понятие архитектуры в значительной мере субъективно и имеет множество противоречивых толкований; в лучшем случае оно отображает общую точку зрения команды разработчиков на результаты проектирования системы.[2]:27 Существует большое количество определений архитектуры. Коллекция определений, относящихся, в основном, к архитектуре программного обеспечения, собрана на сайте Института программной инженерии Университета Карнеги — Меллона[3].
В настоящее время существует сильная тенденция рассматривать архитектурное и не архитектурное проектирование как различные виды деятельности; делаются попытки определить их как отдельные практики, однако эти виды проектирования в значительной мере «переплетены». Архитектурные решения в сравнении с обычными проектными решениями рассматриваются как более абстрактные, концептуальные и глобальные; они нацелены на успех всей миссии и на наиболее высокоуровневые структуры системы
Другие определения архитектуры системы
- Общий план или концепция, используемая для создания системы, такой как здание или информационная система, или абстрактное описание системы, её структуры, компонентов и их взаимосвязей (Defining Architecture for IT: A Framework of Frameworks, Gartner, 2002)[5]:79-80.
- Конструктивные решения, которые после их принятия с трудом поддаются изменению; согласие в вопросе идентификации главных компонентов системы и способов их взаимодействия, а также выбор таких решений, которые интерпретируются как основополагающие и не подлежащие изменению в будущем.[2]:27
По мере роста сложности решаемых задач возникла необходимость структурирования систем. Однако практики нашли термин «структура» недостаточным для описания всех аспектов системы [4]:272.
Термин «архитектура» в системной инженерии ввел профессор университета Южной Калифорнии Эберхард Рехтин (англ. Eberhardt Rechtin) в начале 90-х годов XX-го века. Он считал, что по мере усложнения систем их «высокоуровневого проектирования» (или «концептуального проектирования»), как оно понималось в те годы, было недостаточно, чтобы приводить инженеров и проектировщиков к созданию точных и эффективных проектов. Он изучил архитектурные принципы в строительстве, чтобы понять, как создаются и разрабатываются сложные системы (например, здания)[6]:223.
Рехтин поясняет термин архитектура системы следующим образом:
Суть создания архитектуры — структурирование. Структурирование может означать превращение формы в функцию, извлечение порядка из хаоса, или преобразование частично сформированных идей клиента в пригодную для работы концептуальную модель
[6]:223-224.
Термины «архитектура» и «архитектурное проектирование» уже используются в течение приблизительно 30 лет, особенно интенсивно в программной инженерии и таких проблемных областях как ракетно-космическая отрасль[4]:272.
Для более подробного описания принципов построения архитектуры стандарт ISO/IEC/IEEE 42010-2011 вводит следующие понятия[7]:2.
- Архитектурная группа описаний (англ. architectural view) — представление системы в целом с точки зрения связанного набора интересов. Каждая группа описаний относится к одному или более стейкхолдеру. Термин «группа описаний» употребляется для выражения архитектуры системы при некотором методе описания.
- Архитектурное описание (англ. architectural description) — рабочий продукт, использующийся для выражения архитектуры.
- Архитектурный подход (англ. architectural framework) — соглашения, принципы и практики для описания архитектуры, установленные для конкретной области применения и/или конкретным сообществом стейкхолдеров.
- Архитектурный метод описания (англ. architectural viewpoint) — спецификация соглашений для конструирования и применения группы описаний. Шаблон или образец, по которому разрабатываются отдельные группы описаний посредством установления назначений и аудитории для группы описаний, а также приемы их создания и анализа. Метод описания устанавливает соглашения, по которым группа описаний создается, отображается и анализируется. Тем самым метод описания определяет языки (включая нотации, описания или типы продуктов), применяемые для определения группы описаний, а также все связанные методы моделирования или приемы анализа, применяемые к данным представлениям группы описаний. Данные языки и приемы применяются для получения результатов, имеющих отношение к адресуемым интересам.
- Вид модели (англ. model kind) — соглашения по средствам моделирования (например, сети Петри, диаграммы классов, организационные диаграммы и т. д.).
Свод знаний по системной инженерии (SEBoK) делит архитектуру на логическую и физическую[4]:269.
Логическая архитектура[править | править код]
Логическая архитектура поддерживает функционирование системы на протяжении всего её жизненного цикла на логическом уровне. Она состоит из набора связанных технических концепций и принципов. Логическая архитектура представляется с помощью методов, соответствующих тематическим группам описаний, и как минимум, включает в себя функциональную архитектуру, поведенческую архитектуру и временную архитектуру.
Функциональная архитектура. Функциональная архитектура представляет собой набор функций и их подфункций, определяющих преобразования, осуществляемые системой при выполнении своего назначения.
Поведенческая архитектура. Поведенческая архитектура — соглашение о функциях и их подфункциях, а также интерфейсах (входы и выходы), которые определяют последовательность выполнения, условия для управления или потока данных, уровень производительности, необходимый для удовлетворения системных требований. Поведенческая архитектура может быть описана как совокупность взаимосвязанных сценариев, функций и/или эксплуатационных режимов.
Временная архитектура. Временная архитектура является классификацией функций системы, которая получена в соответствии с уровнем частоты её исполнения. Временная архитектура включает в себя определение синхронных и асинхронных аспектов функций. Мониторинг решений, который происходит внутри системы, следует той же временной классификации [4]:287.
Физическая архитектура[править | править код]
Цель проектирования физической архитектуры заключается в создании физического, конкретного решения, которое согласовано с логической архитектурой и удовлетворяет установленным системным требованиям.
После того, как логическая архитектура определена, должны быть идентифицированы конкретные физические элементы, которые поддерживают функциональные, поведенческие, и временные свойства, а также ожидаемые свойства системы, полученные из нефункциональных требований к системе.
Физическая архитектура является систематизацией физических элементов (элементов системы и физических интерфейсов), которые реализуют спроектированные решения для продукта, услуги или предприятия. Она предназначена для удовлетворения требований к системе и элементам логической архитектуры и реализуется через технологические элементы системы. Системные требования распределяются как на логическую, так и физическую архитектуру. Глобальная архитектура системы оценивается с помощью системного анализа и, после выполнения всех требований, становится основой для реализации системы[4]:296.
Концептуальная схема архитектурного описания (ISO/IEC 42010)Архитектура может быть зафиксирована с помощью полного архитектурного описания (АО) (см. рисунок). Стандарт ISO/IEC/IEEE 42010-2011 предписывает различать концептуальную архитектуру системы и одно из описаний данной архитектуры, являющееся конкретным продуктом или артефактом.
В сложных системах АО может разрабатываться не только для системы в целом, но и для компонентов системы. Два разных концептуальных АО могут включать группы описаний, которые будут соответствовать одному и тому же методу описания. Хотя системы, описываемые данными двумя группами описаний, будут соотноситься как целое и часть, это не пример множества групп описаний, соответствующих одному методу. Эти АО считаются отдельными, даже хотя они связаны через системы, которые они описывают[7]:3.
Концептуальный подход[править | править код]
Концептуальный подход определяет термины и понятия, относящиеся к содержанию и применению АО. На рисунке изображены основные понятия и их взаимосвязи. Все понятия определены в контексте архитектуры определенной системы и соответствующего архитектурного описания. Не нужно предполагать, что у системы существует лишь одна архитектура или что эта архитектура изображается лишь одним архитектурным описанием.
На рисунке прямоугольники изображают классы сущностей.
Линии, соединяющие прямоугольники, изображают связи между сущностями. Связь включает две роли (по одной в каждом направлении). Каждая роль может по желанию быть именована меткой. Роль, направленная от A к B, [помечена] ближе к B, и наоборот. Например, роли между «системой» и «средой» могут читаться: «„система“ живёт в „среде“» и «„среда“ влияет на „систему“». На рисунке роли обладают арностью 1:1, если не указано иное. Роль может обладать множественной арностью, например, роль, обозначенная как «1..*», применяется для обозначения многих, как в связях «один ко многим» или «многие к одному». Ромб (на конце линии связи) обозначает отношение части целого. Например, «группы описаний» являются частью «архитектурного описания». Эта нотация заимствована из UML.
Рассмотрим каждое составляющее концептуальной схемы подробнее. В контексте рассматриваемой схемы система распространяется на отдельные прикладные программные средства, системы в традиционном смысле, подсистемы, системы систем, продукты, семейства продукции, организации в целом и другие интересующие совокупности.
Система обитает в некоторой среде. Среда некоторой системы может влиять на данную систему. Её среда, или контекст, определяет обстановку и обстоятельства разработки, эксплуатации, политических и иных влияний на данную систему. Такая среда может включать другие системы, взаимодействующие с целевой системой, как напрямую через интерфейсы, так и косвенно иными путями. Такая среда определяет границы, определяющие предмет целевой системы по отношению к другим системам.
У каждой системы есть один или более стейкхолдеров. Каждый стейкхолдер обычно принимает участие в системе, или имеет интересы к данной системе. Интересы предполагают учёт таких аспектов системы как производительность, надежность, безопасность, распределённость и способность к эволюции.
Любая система существует для реализации в своей среде одной или более миссий.
В концептуальном подходе архитектурное описание организовано как одна или более архитектурных групп описаний.
Архитектурное описание выбирает для применения один или более подходящих методов описания. Выбор методов описания обычно основывается на соображениях и интересах заинтересованных сторон, которым адресовано это АО. Определение метода описания может возникать совместно с АО, а может быть определено отдельно. Метод описания, определенный отдельно от АО называется библиотечным методом описания.
Группа описаний может состоять из одного или более архитектурных описаний. Каждое такое архитектурное описание разрабатывается с применением установленных соответствующим ему методов архитектурного описания. Архитектурное описание может входить более чем в одну группу описаний[7]:4-6.
Типы групп описаний архитектуры[править | править код]
Существует три типа группы описаний: функциональные, логические и физические. Каждая из групп предназначена для описания собственных точек зрения и соответствующего им уровня сложности[6]:224.
Функциональная группа описаний[править | править код]
Данная группа обеспечивает представление с точки зрения пользователей или операторов, которое включает продукты, относящиеся к фазам, сценариям и потокам задач операционной системы. Информационный поток может быть рассмотрен с пользовательского ракурса, также описываются и пользовательские интерфейсы. Примером продуктов, которые могут быть включены в это описание, будут функциональные данные или графики, сценарное описание (включая использование кейсов), блок-схемы задач, организационные диаграммы и схемы информационных потоков[6]:224.
Логическая группа описаний[править | править код]
Данная группа обеспечивает представление с точки зрения руководителя или заказчика. Логическое представление включает продукты, которые определяют системные границы с её окружением и функциональные интерфейсы с внешними системами, также основные функции и поведение системы, потоки информации, внутренние и внешние наборы данных, внутренних и внешних пользователей, и внутренние функциональные интерфейсы. Примером продуктов могут быть блочные диаграммы функциональных потоков[en] (FFBD), контекстные диаграммы, N2-диаграммы[en], IDEF0-диаграммы, данные поточных диаграмм и различных стейкхолдеров — характерные продукты (в том числе бизнес-зависимые продукты)[6]:224.
Физическая группа описаний[править | править код]
Данная группа обеспечивает представление с точки зрения проектировщиков. Включает в себя:
- продукты, которые определяют физические границы системы;
- физические компоненты системы и то, как они взаимодействуют и влияют друг на друга;
- внутренние базы данных и структуры данных;
- инфраструктуру информационных технологий (ИТ) системы;
- внешнюю ИТ-инфраструктуру, с которой система взаимодействует;
- требования, необходимые для развития системы.
Продукт может включать в себя физические блок-схемы на довольно высоком уровне детализации, топологии базы данных, интерфейс управления документами и стандарты. Все из трёх типов групп должны присутствовать в каждом описании архитектуры[6]:224.
Архитектурные описания в ходе жизненного цикла могут различно применяться всеми стейкхолдерами. Такие применения включают, но не ограничиваются, следующим:
- анализ альтернативных архитектур
- деловое планирование перехода от унаследованной архитектуры к новой;
- коммуникация организаций, участвующих в разработке, производстве, установке, эксплуатации и обслуживании систем;
- коммуникация между заказчиками и разработчиками как часть подготовки соглашения;
- критерии для сертификации соответствия реализации данной архитектуре;
- документирование разработки и обслуживания, включая подготовку материалов для хранилищ с целью повторного использования и учебных материалов;
- исходные данные для последующих мероприятий по системному проектированию и разработке;
- исходные материалы для инструментов создания и анализа системы;
- эксплуатационная и инфраструктурная поддержка; управление конфигурацией и ремонт; перепроектирование и обслуживание систем, подсистем и компонентов;
- поддержка планирования и финансирования[7]:9.
- ГОСТ Р ИСО/МЭК 15288—2008. Системная инженерия — Процессы жизненного цикла систем. — 2008.
- Данилин А., Слюсаренко А. Архитектура и стратегия. «Инь» и «Янь» информационных технологий предприятия. — М.: Интернет-университет информационных технологий, 2005. — 504 с. — ISBN 5-9556-0045-0.
- Фаулер М. Архитектура корпоративных программных приложений.: Пер. с англ. — М.: Издательский дом «Вильямс», 2006. — 544 с. ISBN 5-8459-0579-6
- Pyster, A., D. Olwell, N. Hutchison, S. Enck, J. Anthony, D. Henry, and A. Squires (eds). Guide to the Systems Engineering Body of Knowledge (SEBoK) version 1.0. — The Trustees of the Stevens Institute of Technology, 2012.
- Kossiakoff A., Sweet W. N., Seymour S. J., Biemer S. M. Systems Engineering Principles and Practice. — 2-е изд. — Hoboken, New Jersey: A John Wiley & Sons, 2011. — 599 с. — ISBN 978-0-470-40548-2.
- ISO/IEC 42010:2011. System and software engineering — Architecture description. — 2011.
Архитектура программного обеспечения — Википедия
Архитектура программного обеспечения (англ. software architecture) — совокупность важнейших решений об организации программной системы. Архитектура включает:
- выбор структурных элементов и их интерфейсов, с помощью которых составлена система, а также их поведения в рамках сотрудничества структурных элементов;
- соединение выбранных элементов структуры и поведения во всё более крупные системы;
- архитектурный стиль, который направляет всю организацию — все элементы, их интерфейсы, их сотрудничество и их соединение[1][2].
Документирование архитектуры программного обеспечения (ПО) упрощает процесс коммуникации между разработчиками, позволяет зафиксировать принятые проектные решения и предоставить информацию о них эксплуатационному персоналу системы[3], повторно использовать компоненты и шаблоны проекта в других.
Общепринятого определения «архитектуры программного обеспечения» не существует. Так, сайт Software Engineering Institute приводит более 150 определений этого понятия[4][5].
Область компьютерных наук с момента своего образования столкнулась с проблемами, связанными со сложностью программных систем. Ранее проблемы сложности решались разработчиками путём правильного выбора структур данных, разработки алгоритмов и применения концепции разграничения полномочий. Хотя термин «архитектура программного обеспечения» является относительно новым для индустрии разработки ПО, фундаментальные принципы этой области неупорядоченно применялись пионерами разработки ПО начиная с середины 1980-х. Первые попытки осознать и объяснить программную архитектуру системы были полны неточностей и страдали от недостатка организованности, часто это была просто диаграмма из блоков, соединенных линиями. В 1990-е годы наблюдается попытка определить и систематизировать основные аспекты данной дисциплины. Первоначальный набор шаблонов проектирования, стилей проектирования, передового опыта (best practices), языков описания и формальная логика были разработаны в течение этого времени[6].
Основополагающей идеей дисциплины программной архитектуры является идея снижения сложности системы путём абстракции и разграничения полномочий. На сегодняшний день до сих пор нет согласия в отношении чёткого определения термина «архитектура программного обеспечения».
Являясь в настоящий момент своего развития дисциплиной без четких правил о «правильном» пути создания системы, проектирование архитектуры ПО все ещё является смесью науки и искусства. Аспект «искусства» заключается в том, что любая коммерческая система подразумевает наличие применения или миссии. С точки зрения пользователя программной архитектуры, программная архитектура дает направление для движения и решения задач, связанных со специальностью каждого такого пользователя, например, заинтересованного лица, разработчика ПО, группы поддержки ПО, специалиста по сопровождению ПО, специалиста по развертыванию ПО, тестера, а также конечных пользователей. В этом смысле архитектура программного обеспечения на самом деле объединяет различные точки зрения на систему. Тот факт, что эти несколько различных точек зрения могут быть объединены в архитектуре программного обеспечения, является аргументом в защиту необходимости и целесообразности создания архитектуры ПО ещё до этапа разработки ПО[7][8][9].
Начало архитектуре программного обеспечения как концепции было положено в научно-исследовательской работе Эдсгера Дейкстры в 1968 году и Дэвида Парнаса в начале 1970-х. Эти ученые подчеркнули, что структура системы ПО имеет важное значение, и что построение правильной структуры — критически важно. Популярность изучения этой области возросла с начала 1990-х годов вместе с научно-исследовательской работой по исследованию архитектурных стилей (шаблонов), языков описания архитектуры, документирования архитектуры, и формальных методов.
В развитии архитектуры программного обеспечения как дисциплины играют важную роль научно-исследовательские учреждения. Мэри Шоу и Дэвид Гэрлан из университета Carnegie Mellon написали книгу под названием «Архитектура программного обеспечения: перспективы новой дисциплины в 1996 году», в которой выдвинули концепции архитектуры программного обеспечения, такие как компоненты, соединители (connectors), стили и так далее. В калифорнийском университете институт Ирвайна по исследованию ПО в первую очередь исследует архитектурные стили, языки описания архитектуры и динамические архитектуры.
Первым стандартом программной архитектуры является стандарт IEEE 1471: ANSI / IEEE 1471—2000: Рекомендации по описанию преимущественно программных систем. Он был принят в 2007 году, под названием ISO ISO / IEC 42010:2007.
Языки описания архитектуры (ADLS) используются для описания архитектуры программного обеспечения. Различными организациями было разработано несколько различных ADLS, в том числе AADL (стандарт SAE), Wright (разработан в университете Carnegie Mellon), Acme (разработан в университете Carnegie Mellon), xADL (разработан в UCI), Darwin (разработан в Imperial College в Лондоне), DAOP-ADL (разработан в Университете Малаги), а также ByADL (Университет L’Aquila, Италия). Общими элементами для всех этих языков являются понятия компонента, коннектора и конфигурации. Также, помимо специализированных языков, для описания архитектуры часто используется унифицированный язык моделирования UML.
Архитектура ПО обычно содержит несколько видов, которые аналогичны различным типам чертежей в строительстве зданий. В онтологии, установленной ANSI / IEEE 1471—2000, виды являются экземплярами точки зрения, где точка зрения существует для описания архитектуры с точки зрения заданного множества заинтересованных лиц.
Архитектурный вид состоит из 2 компонентов:
- Элементы
- Отношения между элементами
Архитектурные виды можно поделить на 3 основных типа[10]:
- Модульные виды (англ. module views) — показывают систему как структуру из различных программных блоков.
- Компоненты-и-коннекторы (англ. component-and-connector views) — показывают систему как структуру из параллельно запущенных элементов (компонентов) и способов их взаимодействия (коннекторов).
- Размещение (англ. allocation views) — показывает размещение элементов системы во внешних средах.
Примеры модульных видов:
- Декомпозиция (англ. decomposition view) — состоит из модулей в контексте отношения «является подмодулем»
- Использование (англ. uses view) — состоит из модулей в контексте отношения «использует» (т.е. один модуль использует сервисы другого модуля)
- Вид уровней (англ. layered view) — показывает структуру, в которой связанные по функциональности модули объединены в группы (уровни)
- Вид классов/обобщений (англ. class/generalization view) — состоит из классов, связанные через отношения «наследуется от» и «является экземпляром»
Примеры видов компонентов-и-коннекторов:
- Процессный вид (англ. process view) — состоит из процессов, соединённых операциями коммуникации, синхронизации и/или исключения
- Параллельный вид (англ. concurrency view) — состоит из компонентов и коннекторов, где коннекторы представляют собой «логические потоки»
- Вид обмена данными (англ. shared-data (repository) view) — состоит из компонентов и коннекторов, которые создают, сохраняют и получают постоянные данные
- Вид клиент-сервер (англ. client-server view) — состоит из взаимодействующих клиентов и серверов, а также коннекторов между ними (например, протоколов и общих сообщений)
Примеры видов размещения:
- Развертывание (англ. deployment view) — состоит из программных элементов, их размещения на физических носителях и коммуникационных элементов
- Внедрение (англ. implementation view) — состоит из программных элементов и их соответствия файловым структурам в различных средах (разработческой, интеграционной и т.д.)
- Распределение работы (англ. work assignment view) — состоит из модулей и описания того, кто ответственен за внедрение каждого из них
Хотя было разработано несколько языков для описания архитектуры программного обеспечения, в настоящий момент нет согласия по поводу того, какой набор видов должен быть принят в качестве эталона. В качестве стандарта «для моделирования программных систем (и не только)» был создан язык UML.
Для удовлетворения проектируемой системы различным атрибутам качества применяются различные архитектурные шаблоны (паттерны). Каждый шаблон имеет свои задачи и свои недостатки.
Примеры архитектурных шаблонов:
- Многоуровневый шаблон (Layered pattern). Система разбивается на уровни, которые на диаграмме изображаются один над другим. Каждый уровень может вызывать только уровень на 1 ниже него. Таким образом разработку каждого уровня можно вести относительно независимо, что повышает модифицируемость системы. Недостатками данного подхода являются усложнение системы и снижение производительности.
- Шаблон посредника (Broker pattern). Когда в системе присутствует большое количество модулей, их прямое взаимодействие друг с другом становится слишком сложным. Для решения проблемы вводится посредник (например, шина данных), по которой модули общаются друг с другом. Таким образом, повышается функциональная совместимость модулей системы. Все недостатки вытекают из наличия посредника: он понижает производительность, его недоступность может сделать недоступной всю систему, он может стать объектом атак и узким местом системы.
- Шаблон «Модель-Представление-Контроллер» (Model-View-Controller pattern). Т.к. требования к интерфейсу меняются чаще всего, то возникает потребность часто его модифицировать, при этом сохраняя корректное взаимодействие с данными (чтение, сохранение). Для этого в шаблоне Model-View-Controller (MVC) интерфейс отделён от данных. Это позволяет менять интерфейсы, равно как и создавать их разные варианты. В MVC система разделена на:
- Модель, хранящую данные
- Представление, отображающее часть данных и взаимодействующее с пользователем
- Контроллер, являющийся посредником между видами и моделью
Однако, концепция MVC имеет и свои недостатки. В частности, из-за усложнения взаимодействия падает скорость работы системы.
- Клиент-серверный шаблон (Client-Server pattern). Если есть ограниченное число ресурсов, к которым требуется ограниченный правами доступ большого числа потребителей, то удобно реализовать клиент-серверную архитектуру. Такой подход повышает масштабируемость и доступность системы. Но при этом сервер может стать узким местом системы, при его недоступности становится недоступна вся система.
Базовые фреймворки для архитектуры ПО[править | править код]
Существуют следующие фреймворки (англ. software architecture frameworks), относящиеся к области архитектуры ПО:
- 4+1
- RM-ODP (Reference Model of Open Distributed Processing)
- Service-Oriented Modeling Framework (SOMF)
Такие примеры архитектур, как фреймворк Захмана (Zachman Framework), DoDAF и TOGAF, относятся к области архитектуры предприятия (enterprise architectures).
- ↑ Kruchten, Philippe. The Rational Unified Process-An Introduction, Addison-Wesley, 1998
- ↑ Rumbaugh, J., Jacobsen, I. and Booch, G. The Unified Modelling Language Reference Manual. Reading, Mass.: Addison-Wesley, 1999
- ↑ Documenting Software Architectures: Views and Beyond, 2010, P.1.1. Overview.
- ↑ Documenting Software Architectures: Views and Beyond, 2010, P.1.2. Architecture and Quality Attributes.
- ↑ Software Architecture:Glossary, Software Engineering Institute
- ↑ What Is Your Definition of Software Architecture (англ.). resources.sei.cmu.edu. Дата обращения 23 октября 2019.
- ↑ ISO/IEC/IEEE 42010: Defining «architecture» (неопр.). www.iso-architecture.org. Дата обращения 23 октября 2019.
- ↑ M. Fowler. Design — Who needs an architect? // IEEE Software. — 2003-9. — Т. 20, вып. 5. — С. 11–13. — DOI:10.1109/MS.2003.1231144.
- ↑ An Introduction to Software Architecture (неопр.).
- ↑ Len Bass, Paul Clements, Rick Kazman. Software Architecture in Practice (3rd Edition) (SEI Series in Software Engineering). — 3 edition (October 5, 2012). — 2012. — 640 с. — ISBN 978-0321815736.
- Paul Clements; Felix Bachmann; Len Bass; David Garlan; James Ivers; Reed Little; Paulo Merson; Robert Nord; Judith Stafford. Documenting Software Architectures: Views and Beyond. — Second Edition. — Addison-Wesley Professional, 2010. — ISBN 978-0-13-248861-7.
- Len Bass, Paul Clements, Rick Kazman: Software Architecture in Practice, Third Edition. Addison Wesley, 2012, ISBN 978-0321815736 (This book, now in third edition, eloquently covers the fundamental concepts of the discipline. The theme is centered around achieving quality attributes of a system.)
Архитектура компьютера — Википедия
Материал из Википедии — свободной энциклопедии
Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 5 января 2019; проверки требуют 5 правок. Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 5 января 2019; проверки требуют 5 правок.Архитекту́ра компью́тера — набор типов данных, операций и характеристик каждого отдельно взятого уровня. Архитектура связана с программными аспектами. Аспекты реализации (например, технология, применяемая при реализации памяти) не являются частью архитектуры[1].
Выделяют несколько уровней организации компьютера (компьютерной архитектуры), от двух и более:[1]
Схема, иллюстрирующая многоуровневую структуру компьютера- Уровень 0
- Цифровой логический уровень, это аппаратное обеспечение машины, состоящий из вентилей. См. также Логические элементы (защелки), триггеры, регистры
- Уровень 1
- Микроархитектурный уровень, интерпретация (микропрограммы) или непосредственное выполнение. Электронные схемы исполняют машинно-зависимые программы. Совокупность регистров процессора формирует локальную память. См. также арифметико-логическое устройство.
- Уровень 2
- Уровень архитектуры системы команд, трансляция (ассемблер).
- Уровень 3
- Уровень операционной системы, трансляция (ассемблер). Это гибридный уровень: одна часть команд интерпретируется операционной системой, а другая — микропрограммой. См. также виртуальная память, файлы.
- Уровень 4
- Уровень языка ассемблера, трансляция (компилятор). Четвертый уровень и выше используется для написания прикладных программ, с первого по третий — системных программ. Программы в удобном для человека виде транслируются на язык уровней 1-3.
- Уровень 5
- Язык высокого уровня. Программы на языках высокого уровня транслируются обычно на уровни 3 и 4.
Первая документально оформленная компьютерная архитектура находилась в переписке между Чарльзом Бэббиджем и Адой Лавлейс, описывающим механизм анализа. При создании компьютера Z1 в 1936 году Конрад Цузе описал в двух патентных заявках свои будущие проекты.[2] Два других ранних и важных примера:
Статья Джона фон Неймана 1945 года, первый проект отчета об EDVAC, в котором описана организация логических элементов;
Более подробный Предложенный Электронный Калькулятор Алана Тьюринга для Автоматического Вычислительного Двигателя, также 1945 и который привел статью Джона фон Неймана.
Термин «архитектура» в компьютерной литературе можно проследить до работы Лайла Р. Джонсона, Фридриха П. Брукса-младшего и Мохаммада Усмана-хана. Все они были членами отдела машинной организации в основном исследовательском центре IBM в 1959 году. У Джонсона была возможность написать собственное исследовательское сообщение о суперкомпьютере Stretch, разработанном IBM в Лос-Аламосской национальной лаборатории (в то время известном как Лос-Аламос Научная лаборатория). Чтобы описать уровень детализации для обсуждения роскошно украшенного компьютера, он отметил, что его описание форматов, типов команд, аппаратных параметров и улучшений скорости было на уровне «системной архитектуры» — термин, который казался более полезным, чем «машинная организация».
Впоследствии Брукс, дизайнер стретч, начал главу 2 книги («Планирование компьютерной системы: проект Stretch», изд., W. Buchholz, 1962), написав:
«Компьютерная архитектура, как и другая архитектура, — это искусство определения потребностей пользователя структуры, а затем проектирования для максимально эффективного удовлетворения этих потребностей в рамках экономических и технологических ограничений.»
Брукс продолжал помогать в разработке линейки компьютеров IBM System / 360 (теперь называемой IBM zSeries), в которой «архитектура» стала существительным, определяющим «то, что пользователь должен знать».[3]
Самые ранние компьютерные архитектуры были разработаны на бумаге, а затем непосредственно встроены в окончательную аппаратную форму. Позже прототипы компьютерной архитектуры были физически построены в виде транзисторно-транзисторной логической системы (TTL), такой как прототипы 6800 и испытанного PA-RISC, и исправлены, прежде чем перейти к окончательной аппаратной форме. Начиная с 1990-х годов, новые компьютерные архитектуры обычно «строятся», тестируются и настраиваются внутри какой-либо другой компьютерной архитектуры в симуляторе компьютерной архитектуры; или внутри ПЛИС в качестве мягкого микропроцессора; Или оба — перед тем, как совершить окончательную аппаратную форму.[4]
По типу применяемого процессора[править | править код]
- CISC (англ. complex instruction set computing) — архитектура с полным набором команд. Такие процессоры выполняют все команды, простые и сложные, за большое количество тактов. Команд в таких процессорах много, и бывает, что компиляторы верхнего уровня очень редко используют все команды.
- RISC (англ. reduced instruction set computing) — архитектура с сокращенным набором команд. Такие процессоры работают быстрее, чем CISC архитектура, за счет упрощения архитектуры и сокращения количества команд, но для выполнения сложной команды, она составляется из набора простых, что увеличивает время выполнения команды (за большее количество тактов).
- MISC (англ. minimal instruction set computing) — архитектура с минимальным набором команд. Такие процессоры имеют минимальное количество команд, все команды простые и требуют небольшого количества тактов на выполнение, но если выполняются сложные вычисления, например с числами с плавающей запятой, то такие команды выполняются за большое количество тактов, превышающее CISC и RISC архитектуры.
- VLIW (англ. very long instruction word — «очень длинная машинная команда») — архитектура с длинной машинной командой, в которой указывается параллельность выполнения вычислений. Такие процессоры получили широкое применение в цифровой обработке сигналов.
По принципу разделения памяти[править | править код]
- Joseph D. Dumas II. Computer Architecture: Fundamentals and Principles of Computer Design. — CRC Press, 2005. — ISBN 978-0-8493-2749-0.
- David A. Patterson, John L. Hennessy. Computer Architecture: A Quantitative Approach, 5th Edition. — Morgan Kaufmann, 2011. — 856 p. — ISBN 012383872X. (англ.)
- Дэвид Харрис, Сара Харрис. Цифровая схемотехника и архитектура компьютера, 2-е издание, перевод командой компаний и университетов России, Украины, США и Великобритании, Morgan Kaufman,2013
- Таненбаум Э., Остин Т. Архитектура компьютера. 6-е изд. СПб.: Питер, 2014, ISBN 978-5-496-00337-7
Дом Мельникова (Дом-мастерская архитектора К. С. Мельникова) — одноквартирный жилой дом, всемирно известный памятник архитектуры советского авангарда. Был построен в 1927—1929 годах в Кривоарбатском переулке в Москве по проекту выдающегося советского архитектора Константина Мельникова для себя и своей семьи. Дом-мастерская является вершиной творчества К. С. Мельникова и отличается новаторскими конструктивными особенностями, оригинальным художественным образом и объёмно-пространственной композицией, продуманной функциональной планировкой. Одноквартирный жилой особняк в центре Москвы — уникальный для советского времени пример такого рода постройки. В настоящее время здание находится в неудовлетворительном техническом состоянии. (далее…)Архив · Править >>
Арка и гробница Галерия (греч. Aψίδα του Γαλερίου (Καμάρα), Τάφος του Γαλερίου; Ротонда святого Георгия) — сохранившиеся в городе Салоники части погребального (по другой версии дворцового) комплекса римского императора Галерия, построенного в конце III — начале IV веков. Гробница в начале V века стала христианской церковью, посвящённой Георгию Победоносцу, и получила своё второе название — Ротонда святого Георгия. С 1590 года гробница использовалась как мечеть, а после возвращения здания церкви в 1912 году в нём был открыт музей христианского искусства и богослужения совершаются только по великим праздникам. В 1988 году арка и ротонда в составе раннехристианских и византийских памятников Салоник были включены в перечень объектов Всемирного наследия. (далее…)Архив · Править >>
Текущая подборка · Править >>
Константи́н Степа́нович Ме́льников (22 июля (3 августа) 1890, Москва — 28 ноября 1974, Москва) — русский и советский архитектор, художник и педагог, заслуженный архитектор РСФСР, один из лидеров направления авангарда в советской архитектуре в 1923—1933 годах. Константин Мельников ещё в 1930-е годы получил мировое признание как «великий русский архитектор» современности, однако его уникальная творческая концепция в те же годы подверглась в СССР резкой критике за «формализм»; архитектор по сути был отлучён от профессии (последняя постройка по его проекту датирована 1936 годом). (далее…)Архив · Править >> Править >>
|
|
Архитектура (значения) — Википедия
Материал из Википедии — свободной энциклопедии
Архитектура — искусство проектировать и строить здания и другие сооружения (также их комплексы), создающие материально организованную среду, необходимую людям для их жизни и деятельности, в соответствии с назначением, современными техническими возможностями и эстетическими воззрениями общества. Архитектурой также называют здания и сооружения собирательно, их облик.
- В инженерной деятельности
- Архитектура системы — принципиальная организация системы, воплощенная в её элементах, их взаимоотношениях друг с другом и со средой, а также принципы, направляющие её проектирование и эволюцию.
- В управленческой деятельности
- Архитектура предприятия — это наиболее общее и всестороннее представление предприятия, как хозяйствующего субъекта, имеющего краткосрочные и долгосрочные цели ведения своей основной деятельности, определённые миссией на региональном и мировом рынке, и стратегией развития, внешние и внутренние ресурсы, необходимые для выполнения миссии и достижения поставленных целей, а также сложившиеся правила ведения основной деятельности (бизнеса).
- Бизнес-архитектура на основании миссии, стратегии развития и долгосрочных бизнес-целей определяет необходимые организационную структуру, структуру каналов продаж и функциональную модель предприятия, документы, используемые в процессе разработки и реализации продуктов.
- В области информационных технологий и вычислительной техники
- Архитектура программного обеспечения является множеством структур, необходимых для рассуждения о программной системе, и включает элементы системы, связи между ними и свойства этих элементов и связей.
- Архитектура компьютера — концептуальная структура вычислительной машины, определяющая проведение обработки информации и включающая методы преобразования информации в данные и принципы взаимодействия технических средств и программного обеспечения.
- Архитектура данных — способы взаимодействия систем и хранения данных.
Архитектура — это… Что такое Архитектура?
Греческий храм на Сицилии, посвященный Гере, построен в 5-м столетии до н. э.Архитекту́ра (лат. architectura от др.-греч. αρχι — старший, главный и др.-греч. τέκτων — строитель, плотник) — искусство проектировать, строить здания и сооружения (также их комплексы). Архитектура непременно создает материально организованную среду, необходимую людям для их жизни и деятельности, в соответствии с современными техническими возможностями и эстетическими воззрениями общества[1].
Архитектурой также называют облик зданий и сооружений, а также и сами здания и сооружения собирательно[2][3].
Архитектурные работы часто воспринимаются как культурные или политические символы, как произведения искусства. Исторические цивилизации характеризуются своими архитектурными достижениями. Архитектура позволяет выполняться жизненным функциям общества, в то же время направляет жизненные процессы. Однако архитектура создается в соответствии с возможностями и потребностями людей[3].
Предметом работы с пространством является и организация населенного места в целом. Это выделилось в отдельное направление — градостроительство[3], которое охватывает комплекс общественно-экономических, строительно-технических, архитектурно-художественных, санитарно-гигиенических проблем. По этой же причине трудно дать правильную оценку архитектурному сооружению, не зная градостроительства. Почти все известные градостроители имели архитектурное образование[4].
Этимология слова «архитектура»
Слово «архитектура» по своей форме латинское (architectura), хотя и происходит от греческих корней αρχι и τεκτονική, что значит высшее плотничное или строительное искусство. В этом смысле слову «архитектура» придавали очень обширное значение; так, например, были в ходу выражения «военная архитектура», «корабельная архитектура», «гидротехническая архитектура» и т. д. Но в настоящее время под словом «архитектура» разумеется исключительно искусство строить здания, предназначенные только для помещения людей, животных или каких-либо предметов.
— Энциклопедический Словарь Брокгауза и Ефрона[5], 1890—1907 гг.
Этимологический словарь русского языка Макса Фасмера[6] указывает на польский след в происхождении русского слова «архитектура»:
В русском языке имеется оригинальное слово для обозначения строительного искусства: «зодчество» (ст.-слав. «зьдьчий» от «зьдь» — глина, материя)[7].
Архитектор
Архитектор (от др.-греч. αρχι- (главный, старший) и др.-греч. τέκτων (плотник, строитель) — «главный строитель»[8]) — специалист, занимающийся архитектурным проектированием, то есть разработкой планов зданий, их фасадов — в целом и в деталях, а также внутренних пространств. В Российской Федерации высшее архитектурное образование предоставляется по специальности 270100 «Архитектура», а также по специальности 270900 «Градостроительство»[9].
Архитектура как вид искусства
Как вид искусства архитектура входит в сферу духовной культуры, эстетически формирует окружение человека, выражает общественные идеи в художественных образах.
Историческое развитие общества определяет функции и типы сооружений (здания с организованным внутренним пространством, сооружения, формирующие открытые пространства, ансамбли), технические конструктивные системы, художественный строй архитектурных сооружений.
По способу формирования образов архитектуру относят к неизобразительным (тектоническим) видам искусства, которые пользуются знаками, не допускающими узнавания в образах каких бы то ни было реальных предметов, явлений, действий и обращённых непосредственно к ассоциативным механизмам восприятия[11].
По способу развёртывания образов архитектуру относят к пространственным (пластическим) видам искусства, произведения которых:
- существуют в пространстве, не изменяясь и не развиваясь во времени;
- имеют предметный характер;
- выполняются путём обработки вещественного материала;
- воспринимаются зрителями непосредственно и визуально[11][12].
Основные области архитектуры
Проектирование зданий и сооружений
Объёмно-планировочное проектирование (архитектура в узком смысле, зодчество) — основной раздел архитектуры, связанный с проектированием и строительством зданий и сооружений.
Архитектурная деятельность — профессиональная деятельность архитекторов, имеющая целью создание архитектурного объекта и включающая в себя
Градостроительная деятельность
В середине XX века архитектурная профессия разделилась на две ветви: «объёмное проектирование» (которое ведает проектированием зданий — «объёмов»), и «градостроительство» (то есть проектирование городских районов или крупных многофункциональных комплексов).
Градостроительство — раздел архитектуры, решающий задачи проектирования и развития городской среды. В том числе комплексно охватывает вопросы развития планировочного решения города, строительства новых объектов, санитарно-экономические и экологические проблемы.
Одним из основоположников современного градостроительства считается Ле Корбюзье[13]. Ему принадлежит большое количество градостроительных проектов (1922—1945), в которых проведена идея «свободного городского плана», или «зеленого города» («Лучезарный Город» — по Ле Корбюзье) — идея, получившая настоящее распространение лишь во второй половине XX века.
Весьма важным (и дискуссионным) является вопрос о соотношении архитектуры и градостроительства
О соотношении понятий архитектуры и градостроительства пункт 92 Афинской хартии (градостроительного манифеста, составленного Ле Корбюзье и принятого конгрессом CIAM в Афинах в 1933 году) говорит следующее:
Архитектура приобретает первостепенное значение. Архитектура предрешает судьбу города. Архитектура определяет структуру жилища, первооснову градостроительного плана. Архитектура группирует жилища в крупные комплексы на основе точных расчётов.
Из сказанного следует, что Афинская хартия первичной считает архитектуру, исходя из принципа сомасштабности человеку: «Человек — мера всех вещей».
Однако существуют иные мнения. В частности, Зигфрид Гидион пишет[14]:
В наше время архитекторы точно знают, что будущее архитектуры неразрывно связано с градостроительством. Один-единственный красивый дом сравнительно мало значит.
Очевидно, такой подход основан не на масштабе отдельного человека, а на масштабе крупных социальных групп, общества в целом.
Советская градостроительная школа также учила мыслить масштабами города как среды[15]:
Невозможно почувствовать и выразить индивидуальный характер отдельного здания, не поняв его места в городе. Градостроитель… занимается объектами, которые по своим размерам и сложности на порядок превосходят обычное архитектурное сооружение.
Современное российское законодательство также рассматривает градостроительную деятельность как более широкое понятие, нежели архитектурную деятельность. В соотв. со ст. 1 ГСК РФ:
Градостроительная деятельность — деятельность по развитию территорий, в том числе городов и иных поселений, осуществляемая в виде:
Урбанистика
В конце XX века, из градостроительства, на стыке социологии и общей теории систем, выделилась как самостоятельная дисциплина урбанистика, имеющая своим предметом город и принципы городского развития[источник не указан 586 дней].
Ландшафтная архитектура
Ландшафтная архитектура — раздел архитектуры, посвящённый организации садов, парков и других сред, в которых материалом является ландшафт и естественная растительность. Ландшафтный архитектор занимается разбивкой парков садов, озеленением городских микрорайонов и придомовых участков.
Дизайн интерьера
Дизайн интерьера — это профессиональная творческая деятельность архитекторов и дизайнеров по созданию функционального, эргономичного и эстетичного пространства внутри помещения архитектурно-художественными средствами.
Архитектура малых форм
Архитектура малых форм — раздел архитектуры, к которому относятся объекты функционально-декоративного (напр., ограды), мемориального характера (напр., надгробия), объекты, являющиеся частью городского благоустройства (напр., фонари), объекты-носители информации (напр., стенды, рекламные щиты).
«Бумажная архитектура»
«Бумажная архитектура» — теоретическая деятельность архитекторов, состоящая в проектировании архитектурных форм без цели их последующей материализации. Пример бумажной архитектуры — графические циклы Якова Георгиевича Чернихова.
Теория архитектуры
Строительный словарь[16] определяет теорию архитектуры как науку о природе и специфике архитектуры и о её общих закономерностях.
Основа предмета теории архитектуры — общие закономерности возникновения, развития и функционирования архитектуры как искусства, её сущность, содержание и формы.
Также в предмет теории архитектуры входит система основных понятий (категорий).
Авторские суждения о сущности архитектуры
Чтобы понять, чем действительно является архитектура, мне понадобилось пятьдесят лет — полстолетия… |
- Архитектура заключается в том, чтобы превратить дешёвый камень в камень из чистого золота. Алвар Аалто[17]
- Пространство, а не камень — материал архитектуры. Николай Александрович Ладовский[17]
- Я верю в то, что архитектура — разумный способ организации пространства. Луис Кан[17]
- Я могу сказать, чем архитектура не является. Это не жилье и не функциональность. Питер Эйзенман[17]
История архитектуры
Забудьте обо всех архитектурах мира, если не понимаете того, что они были хороши в своём роде и в своё время. |
История архитектуры представляет собой науку, исследующую функциональное, техническое и эстетическое развитие архитектуры во времени и пространстве.
Архитектурный стиль
- Подробное рассмотрение темы: Хронология архитектурных стилей
Архитектурный стиль может определяться как совокупность основных черт и признаков архитектуры определённого времени и места, проявляющихся в особенностях её функциональной, конструктивной и художественной сторон (назначение зданий, строительные материалы и конструкции, приёмы архитектурной композиции). Понятие архитектурного стиля входит в общее понятие стиля как художественного мировоззрения, охватывающего все стороны искусства и культуры общества в определённых условиях его социального и экономического развития, как совокупности главных идейно-художественных особенностей творчества мастера.
Развитие архитектурных стилей зависит от климатических, технических, религиозных и культурных факторов.
Хотя развитие архитектуры напрямую зависит от времени, не всегда стили сменяют друг друга последовательно, известно одновременное сосуществование стилей как альтернативы друг другу (например, барокко и классицизм, модерн и эклектика, функционализм, конструктивизм и ар-деко)[21].
Архитектурный стиль, как и стиль в искусстве вообще, — понятие условное. Он удобен для осмысления истории европейской архитектуры. Однако для сопоставления истории архитектуры нескольких регионов стиль как описательное средство не подходит.
Существуют такие стили (например, модерн), которые в различных странах именуются по-разному.
В рамках постмодернистской парадигмы оформилось множество направлений, которые существенно различаются по философии и языковым средствам. Пока идут научные споры о самостоятельности того или иного направления, нет и не может быть единства в терминологии.
Несмотря на указанные недостатки, стиль как описательное средство является частью научного метода истории архитектуры, поскольку позволяет проследить глобальный вектор развития архитектурной мысли. Принято выделять архитектурные стили глобального значения:
См. также
Примечания
- ↑ Большой энциклопедический словарь
- ↑ Ожегов С. И., Шведова Н. Ю. Толковый словарь русского языка
- ↑ 1 2 3 Большая советская энциклопедия
- ↑ А. Гутнов, В. Глазычев Мир архитектуры. — Москва: Молодая гвардия, 1990. — 351 с. — 200 000 экз. — ISBN 5-235-00487-6
- ↑ Архитектура // Энциклопедический словарь Брокгауза и Ефрона: В 86 томах (82 т. и 4 доп.). — СПб., 1890—1907.
- ↑ Этимологический словарь русского языка Макса Фасмера
- ↑ Преображенский, А. Этимологический словарь русского языка. — М.: Типография г. Лиссиера и Д. Совко, 1910-1914. — С. 246-247.
- ↑ Архитектор // Энциклопедический словарь Брокгауза и Ефрона: В 86 томах (82 т. и 4 доп.). — СПб., 1890—1907.
- ↑ http://www.consultant.ru/online/base/?req=doc;base=LAW;n=118285;p=3 Приказ Минобрнауки РФ от 17.09.2009 г. № 337 «Об утверждении перечней направлений подготовки высшего профессионального образования»
- ↑ Иллюстрация из «Энциклопедии, или Толкового словаря наук, искусств и ремёсел». Франция, XVIII век
- ↑ 1 2 Проект apxu.ru — Художественно-творческая деятельность человека
- ↑ Глоссарий.ru
- ↑ Ле Корбюзье Три формы расселения. Афинская хартия = Пер. с франц. Ж. Розенбаума. Послесл. Ю. Бочарова и А. Раппапорта. — М.: Стройиздат, 1976. — 136 с.
- ↑ Гидион, Зигфрид Пространство. Время. Архитектура = Перевод. изд.: Raum, Zeit, Architektur: Die Entstehung einer neuen Tradition / S. Giedion — Ravensburg / Сокр. пер. с нем. М.В. Леонене, И.Л. Черня.. — 3-е изд. — М.: Стройиздат, 1984. — С. 39. — 455 с., ил. с.
- ↑ Гутнов А.Э. Эволюция градостроительства. — М.: Стройиздат, 1984. — С. 5. — 256 с., ил. с.
- ↑ Терминологический словарь по строительству на 12 языках
- ↑ 1 2 3 4 5 6 7 Проектирование и строительство гражданских зданий. Сайт Александра Прокуратова. Архитектура или революция
- ↑ Витрувий. Десять книг об архитектуре. Пер. с лат. Ф. А. Петровского. — М.: Едиториал УРСС, 2003.
- ↑ Aphorism.ru. Афоризмы, мысли, фразы. Архитектура
- ↑ Роберт Вентури. Определение архитектуры как укрытия с декорацией на нём, и другие оправдания банального символизма в архитектуре
- ↑ Давидич Т.Ф. Стиль как язык архитектуры. — Харьков: Изд-во Гуманитарный центр, 2010. — 336 с. — ISBN 978-966-8324-70-3
Ссылки
Народная архитектура — Википедия
Материал из Википедии — свободной энциклопедии
Эта статья или раздел описывает ситуацию применительно лишь к одному региону (Россия), возможно, нарушая при этом правило о взвешенности изложения. Вы можете помочь Википедии, добавив информацию для других стран и регионов. |
Народная архитектура | |
---|---|
Дом в Нижегородской области, неподалёку от Кстово | |
Концепция | подчинение климатическим и культурным особенностям |
Медиафайлы на Викискладе |
Народная архитектура — неперсонифицированная архитектура, формообразование которой более подчинено природным факторам нежели вкусовым предпочтениям и модным тенденциям. Понятие относится к любой эпохе и любой культуре, включает разновидности жилых, хозяйственных построек. Сельская архитектура является хранителем традиций народной архитектуры[1].
В отличие от профессиональной архитектуры, народное архитектурное творчество не индивидуальное, а коллективное, воплотившее многовековой опыт поколений[2].
Традиционной архитектурой для России является т. н. деревянная архитектура. Она имеет две принципиальные конструктивные системы: срубную и каркасную. В её основе лежит соответственно сруб или клеть с двух- или четырёхскатной крышей. Срубная конструкция образуется горизонтально уложенными брёвнами (венцами). В каркасной системе столбы вместе с горизонтальными тягами-ригелями образуют раму (прочность последней может усиливаться с помощью связей-раскосов), которая заполняется деревом или инертными материалами (глиной, камнем, кирпичом). Храмы перекрываются верхами из четвериков и восьмериков. До XVII века имели распространение срубные оборонительные сооружения — остроги.
С середины XIX века с развитием направления историзма в разных странах начали обращаться к архитектурному наследию минувших эпох, в частности, с ростом национального самосознания, к народной архитектуре. На территории Российской империи художники и архитекторы обратили взоры на древнерусское зодчество, создав псевдорусский и неорусский стили[3]. Надеждин Николай Иванович писал[4]:
Возьмём для примера архитектуру, которая, к сожалению, до сих пор наименее сообразна с условиями народности. Может ли сие искусство ожидать для себя новой, блистательной будущности, оставаясь закованным в чужие, заносные формы? Если скульптуре и живописи может быть дозволено подражание под известными условиями, то архитектура должна быть всегда выражением окружающей природы.