当前位置:文档之家› 第二次_体系结构概述与调用返回体系结构

第二次_体系结构概述与调用返回体系结构


2.3.1 自顶向下的设计方法
主程序-子程序软件体系结构通常采用自顶向
下的设计方法,即从系统的功能角度出发,从 高层开始,将整个功能逐步细化为子功能
Main Sub1 Sub11 Sub111 Sub2 Sub3 Sub22 Sub31
Sub12
Sub121
Sub21 Sub211
下午2时54分
Sub1
Sub2
Sub4
Global Data
Sub5
下午2时54分
2.2.4 调用-返回风格体系的层次组织
调用-返回风格体系结构可以被组织成任何形
式。但层次结构的组织形式更清晰
层次结构的设计被称为共享数据的主程序-子
程序软件体系结构
Main Sub1 Sub4 Sub9
下午2时54分
Sub2 Sub5 Data Sub6 Sub10 Sub7 Data
下午2时54分
1.1 背景
Edsger.Dijstra指出“软件的规模越大,
其整体构架就越重要”
20世纪90年代,软件体系结构逐渐被工
业界和学术界广泛接受,并且业内普遍 认为:对于大规模复杂软件系统而言, 构架的设计比数据结构以及算法的设计 更为重要
下午2时54分
1.2 软件体系结构的概念
Sub3 Sub8 Sub11
2.3 主程序-子程序软件体系结构
主程序-子程序软件体系结构在设计上使
用层次化的划分方法,该体系结构中使 用由编程语言直接支持的单一控制线程
相比于非结构化编程,主程序-子程序软
件体系结构能够较好地支持系统的可改 变性和可伸缩性等性能,其采用分而治 之的策略
下午2时54分
IEEE 1471-2000中的定义:软件体系结
构是系统的基本组织结构,包括系统构 成要素,这些要素相互之间以及与运行 环境之间的关系,还包括系统设计及演 化时应遵循的原则 软件体系结构包括三个基本要素:构件、 连接件和约束
下午2时54分
1.3 软件体系结构的意义
软件体系结构是软件相关人员之间进行
下午2时54分
2 调用-返回风格提纲
非结构化的编程简介
调用-返回风格软件体系结构的概念 主程序-子程序软件体系结构
面向对象软件体系结构
主程序-子程序与面向对象体系结构举

பைடு நூலகம்
下午2时54分
2.1非结构化的编程简介
非结构化的编程技术是历史上最早的编
程范型
非结构化语言(比如汇编语言)编写的
下午2时54分
1.5 软件体系结构的风格
软件体系结构风格是对软件体系结构的
分类,每一种软件体系结构风格都代表 一类软件的结构组织模式
软件体系结构风格是在实践中被重复使
用的构件设计的总结
下午2时54分
1.5.1 软件体系结构的风格(续)
软件体系结构风格包括:数据流风格,
顺序批处理风格,管道-过滤器风格,调 用-返回风格,主程序-子程序风格,面向 对象风格,分层的风格,独立构件风格, 进程通讯,事件系统,虚拟机风格,解 释器,基于规则的系统,以数据为中心 的风格,数据库,超文本以及黑板风格 等。另外还有分布式的风格,比如云计 算,P2P风格等
程序通常包内含一系列有序的命令,每 行有一个行号标记,便于程序跳转
下午2时54分
2.1.1 非结构化编程的特点
非结构化编程已经引入了循环,分支及
子程序的概念
非结构化编程中的子程序允许有多个入
口和多个出口
程序的执行顺序可以被任意变换
下午2时54分
2.1.2 非结构化编程的举例
01 02 03 04 05 06 07 08
Mary Shaw和David Garlan的定义:软
件体系结构用于描述系统的构成要素、 构成要素之间的交互和组合模式以及在 进行组合时的约束条件
Len Bass的定义:软件体系结构是指程
序或者系统的组成关系,这种组成关系 包括软件、软件的外部可见属性以及这 些软件之间的关系
下午2时54分
1.2.1 软件体系结构的概念(续)
2.3.2 自顶向下的设计举例
一个药品成本计算系统(Medicine Cost
Computation) 要计算一种药品的单位成本,要求输入 药品的名称(Medicine Name),然后系 统输出该药品的单位成本(Medicine Cost per Unit)
第二次 调用返回体系结构 Call back Software Architecture style
任课老师:黄武
下午2时54分
提纲
软件体系结构概述
调用返回体系结构
下午2时54分
软件体系结构概述提纲
背景
软件体系结构的概念 软件体系结构的意义
软件体系结构和软件质量属性
软件体系结构风格
下午2时54分
main mov AX, 045; mov BX, 012; add AX, BX; jnz 17; … jump 012; …
2.2 调用-返回风格软件体系结构
调用-返回风格体系结构(Call and
Return Architecture)采用分而治之的策 略,其主要思想是将一个复杂的大系统 分解为一些子系统,以便降低复杂度, 并且增加可修改性 这种系统的程序执行顺序通常只由一个 单线程控制
交流的手段
软件体系结构是一种高层次的设计复用
手段
软件体系结构是早期设计决策的体现,
决定了最终软件的质量
下午2时54分
1.4 软件体系结构与软件质量属性
软件体系结构的优劣依赖于各种因素,
这些因素通常被称为软件质量属性 (qualities)
质量属性包括:性能,可伸缩性,可用
性,可维护性,安全性,易用性,可重 复性,可测试性以及可移植性等
从一个构件到另一个构件的控制传递被
称为程序调用(call)
下午2时54分
2.2.3 调用-返回风格体系的组织
拥有整个软件入口的构件叫做主程序(Main
Program),它控制子程序的执行顺序 可以被所有构件访问的共享数据被称为全局变 量(Global varible)
Main Sub3
下午2时54分
2.2.1 调用-返回风格体系结构示意
Main
1 3 8 9 10
2
A
4 5
B
7 6
E
C
D
程序运行的控制流示意
下午2时54分
2.2.2 调用-返回风格体系的概念
每个软件都设计为有一个唯一的程序执
行入口和一个唯一的程序执行出口; 程序执行结束后,则控制被返回给程序 的调用构件;这些程序的构件被称为子 程序(Subroutine)
相关主题