explanation of architecture