博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《软件体系结构》 第四章 软件体系结构描述
阅读量:4075 次
发布时间:2019-05-25

本文共 1362 字,大约阅读时间需要 4 分钟。

一、软件体系结构的描述方法

    1、图形表达工具:采用矩形框和有向线段组合,矩形框代表抽象构件、有向线段代表连接件。

    2、模块内连接语言:module interconnection language MIL

    3、基于软构件的系统描述语言:有许多特定形式相互作用的特殊软构件实体构造组成的组织或系统。

    4、软件体系结构描述语言:architecture description language ADL

二、软件体系结构的描述框架

       1.IEEEP1471:适用于软件密集的系统,其目标在于:便于体系结构的表达与交流,并通过体系结构要素及其实践标准化,奠定质量与成本的基础。详细介绍了一套体系结构描述的概念框架,并给出建立框架的思路。但如何描述以及具体的描述技术等方面缺乏更进一步的指导。

       2.Rational建议标准:与IEEE P1471相比,Rational建议标准的体系结构描述方案涉及面比较窄,所注重的层次比较低,因而更具体。由于将体系结构的描述限于UML和RUP,具有一定的局限性,但该建议标准结合了业界已经广泛采用的建模语言和开发过程,因而易于推广,可以有效实现在跨组织之间重用体系结构描述结果

三、体系结构的描述语言ADL

        主要的体系结构描述语言有Aesop、MetaH、C2、Rapide、SADL、Unicon和Wright等,尽管它们都描述软件体系结构,却有不同的特点。

1.常见的软件体系结构元素(构件和连接件都包括哪些)

2.C2语言

(1)C2和其提供的设计环境(Argo)支持采用基于时间的风格来描述用户界面系统,并支持使用可替换、可重用的构件开发GUI的体系结构。其工作的重点在于对构件的重用,以及对运行时体系结构的动态改变以使得系统满足某些GUI体系结构方面的特性。

(2)连接件负责构件之间消息的传递,而构件维持状态、执行操作并通过两个名字分别为“top”和“bottom”的端口和其它的构件交换信息。每个接口包含一种可发送的消息和一组可接收的消息。

(3)构件之间的消息交换不能直接进行,而只能通过连接件来完成。每个构件接口最多只能和一个连接件相连,而连接件可以和任意数目的连接件或构件相连。请求消息只能向上层传递,而通知消息只能向下层传送。

(4)会议安排系统(细化各部分的功能)

       系统包含了三种功能构件:Meeting Initiator 、Attendee、Important Attendee;三种连接件:MainConn、Attcon、ImportantAttConn,用来在构件之间传递消息。

       Meeting Initiator构件通过发送会议请求信息给Attendee、Important Attendee来进行信息初始化。Attendee、Important Attendee构件可以发送消息给Meeting Initiator,告诉它自己喜欢的会议日期、地点等信息。但不能向它递交请求。

四、软件体系结构与UML

1.统一建模语言,unified modeling language,UML,是一个通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统的文档。适用于各种软件开发方法、软件生命周期各个阶段、各种应用领域以及各种开发工具。

2.UML主要内容

 

你可能感兴趣的文章
JSX使用总结
查看>>
React Native(四):布局(使用Flexbox)
查看>>
React Native(七):Android双击Back键退出应用
查看>>
Android自定义apk名称、版本号自增
查看>>
【剑指offer】q50:树中结点的最近祖先
查看>>
二叉树的非递归遍历
查看>>
【leetcode】Reorder List (python)
查看>>
【leetcode】Linked List Cycle (python)
查看>>
【leetcode】Candy(python)
查看>>
【leetcode】Sum Root to leaf Numbers
查看>>
【leetcode】Pascal's Triangle II (python)
查看>>
如何成为编程高手
查看>>
本科生的编程水平到底有多高
查看>>
Solr及Spring-Data-Solr入门学习
查看>>
python_time模块
查看>>
python_configparser(解析ini)
查看>>
selenium学习资料
查看>>
从mysql中 导出/导入表及数据
查看>>
HQL语句大全(转)
查看>>
几个常用的Javascript字符串处理函数 spilt(),join(),substring()和indexof()
查看>>