Loading AI tools
来自维基百科,自由的百科全书
系统架构是定义系统的结构、行为及其他视图(view)的概念模型[1]。架构叙述(architecture description)是有关系统的正式描述以及呈现,以有助于了解系统结构和行为的方式来组织。
系统架构可以包括系统中的组件以及子系统,这些元件以及子系统共同工作来实现整个系统。有许多人设法将描述系统架构的语言形式化,这些语言称为架构描述语言(ADL)[2][3]。
许多组织用不同的方式在定义系统架构,以下是一些例子:
系统架构可以视为是一组已有系统(或是未来系统)呈现方式的组合。其呈现一开始会说明一般性,高阶的机能组织,渐渐会到更细节,更具体的叙述。
系统架构承载了组成系统元素的资讯、元素之间的关系、主导这些关系的原则。系统架构可能包括硬体、软体、文件、设备、人工程序或是由组织或是人员所扮演的角色。
系统架构一般会专注在系统组件或是子系统的介面,以及系统和外部环境(特别是用户)之间的介面。系统和使用者之间的界面会称为用户界面或人机交互。
系统架构可以和系统架构工程(system architecture engineering、SAE)对比,系统架构工程是有效实现系统架构的方法以及原则[11]:
系统架构和许多领域中长时间发展的技术和实务紧密相关,其中最重要的领域应该是土木架构。
在数位电脑发明之前,在电子学以及其他领域都已使用“系统”一词,其意义也和现代的意义相近。不过随著数位电脑的出现,软体工程也发展成独立的学科,因此开始需要区分工程制作的硬体工件、软体工件,以及合并硬体和软体的工件。可程式化的硬体工件(电脑的硬体)若没是没有软体,无法发挥其作用,而软体工件若是没有可以执行其程序的硬体,也无法发挥作用。而硬体和软体配合,就可以进行非常多的工作。因此,在电脑及软体领域(也包括其他工程领域,例如通讯)中,常会用“系统”来表示有所有基本元件(一般来说,会包括硬体和软体),可以执行特定工作的工件。
在上述的领域中,系统多半是指可程式的硬体以及其中的软体,系统工程师会关注整体的设备(包括硬体和软体),特别关注其中各单元之间的介面,也包括软体和硬体的介面,以及设备和人之间的界面(人机介面)。硬体工程师会负责硬体元件的开发,软体工程师会负责软体的开发,而系统工程师的工作是确认软体可以在硬体上正常执行,以及使用者是否可以正常使用此一设备,执行预期的功能。
系统架构会用到硬体元件和软体元件,用这些元件来设计整体的系统。好的系统架构可以视为是分割方案,将系统现有(或是预期会有)的功能分割到一组可以清楚划分的有界子系统中,没有任何遗漏。分割的主要目的是安排各个子系统中的元件,使元件之间的相互相依性降到最低。不论是软体或是硬体,好的子系统多半本身就是一个有意义的“物件”。而且,好的系统可以将使用者的需求以及对应的测试相对应。理想上,每一个元件也都会有对应的需求以及测试。
此章节需要扩充。 (2022年1月) |
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.