系统工程师使用各种材料设计系统:金属、液压、电子和软件。在使用软件以外的材料时,他们会使用特定于手头任务的工具和组件。这些工件是许多其他工程学科的综合专业知识。另一方面,系统中的软件是由软件工程师手工制作的,专门用于正在构建的系统,但每个系统都使用相同的低级通用构建块。DSSA 计划在特定领域的软件开发中所做的工作旨在将系统工程师和软件工程师的关系转变为软件工程师创建构建块和构建工具,系统工程师使用它们创建软件子系统。
系统工程师使用各种材料设计系统:金属、液压、电子和软件。在使用软件以外的材料时,他们会使用特定于手头任务的工具和组件。这些工件是许多其他工程学科的打包专业知识。另一方面,系统中的软件是由软件工程师手工制作的,专为正在构建的系统而设计,但每个系统都使用相同的低级通用构建块。DSSA 计划在特定领域软件开发中所做的工作旨在将系统工程师和软件工程师的关系转变为软件工程师创建构建块和构建工具,系统工程师使用它们创建软件子系统的关系。
系统工程师使用各种材料设计系统:金属、液压、电子和软件。在使用软件以外的材料时,他们会使用特定于手头任务的工具和组件。这些工件是许多其他工程学科的打包专业知识。另一方面,系统中的软件是由软件工程师手工制作的,专为正在构建的系统而设计,但每个系统都使用相同的低级通用构建块。DSSA 计划在特定领域软件开发中所做的工作旨在将系统工程师和软件工程师的关系转变为软件工程师创建构建块和构建工具,系统工程师使用它们创建软件子系统的关系。
简介 我们都见过许多书籍和文章,其中的一张图试图捕捉系统架构的要点。但仔细查看这些图上显示的一组框和箭头,就会发现它们的作者已经努力在一个蓝图上表示比它实际能够表达的更多内容。这些框代表正在运行的程序吗?还是源代码块?还是物理计算机?还是仅仅是功能的逻辑分组?这些箭头代表编译依赖关系吗?还是控制流?还是数据流?通常它包含所有内容。架构是否需要单一的架构风格?有时,软件架构会因为系统设计过早地对软件进行分区,或者过分强调软件开发的某个方面而受到损害:数据工程、运行时效率、开发策略和团队组织。通常,架构也无法解决所有“客户”(或南加州大学称之为“利益相关者”)的顾虑。这个问题已被多位作者指出:Garlan & Shaw 1 、CMU 的 Abowd & Allen、SEI 的 Clements。作为一种补救措施,我们建议使用多个并发视图来组织软件架构的描述,每个视图解决一组特定的顾虑。