软件体系结构复习题

2020

论述题

软件体系结构复习题_第1张图片
软件体系结构复习题_第2张图片
在这里插入图片描述
统一软件过程RUP:用例驱动、以架构为中心的迭代增量开发
软件体系结构复习题_第3张图片
在这里插入图片描述
在这里插入图片描述
一个用例可能需要多个功能来实现,一个功能也可能被用于多个用例
在这里插入图片描述
边界类、控制类、实体类
在这里插入图片描述
软件体系结构复习题_第4张图片

顺序图、通信图、定时图、交互概述图
软件体系结构复习题_第5张图片
在这里插入图片描述
在这里插入图片描述
扩展关系《extend》、包含关系《include》、泛化关系
软件体系结构复习题_第6张图片
软件体系结构复习题_第7张图片

2022

1、简答题

软件体系结构复习题_第8张图片
部署的包要和部署环境相匹配、将包分割成若干子包、把子包部署到不同的节点上,完成各自工作
软件体系结构复习题_第9张图片

边界类:参与者与用例之间(箭头)
控制类:用例
实体类:根据业务逻辑进行定义
软件体系结构复习题_第10张图片
:代表0个或多个(可以使用n表示)
0…
:代表0个或多个
0…1:代表0或1
1…
:代表1个或多个
软件体系结构复习题_第11张图片
注意还有类Student和类Account之间的聚合关系。不能回答Account类

2、综合分析题

软件体系结构复习题_第12张图片
类Master继承类ClassA:

public class Master extends ClassA{
	private int M_No;
	public Course Select;
	public Study()
	{
	}
}
public ClassA{
	private int AID;
}

public class Course{
	private String No;
}

软件体系结构复习题_第13张图片
包和包的嵌套。一个大包包含3个子包
软件体系结构复习题_第14张图片
这里用的是聚合关系,这里聚合关系的图像没有箭头
软件体系结构复习题_第15张图片
软件体系结构复习题_第16张图片
安全性则增加一个登录用例。所有参与者都要连向登录用例
浏览商品上扩展一个比较性价比用例(语句中说了“可与”,这里使用扩展–《extends》)
三种支付方式,任何一种都可以:使用扩展–《extends》
注意还有一个时间参与者(系统定期)
软件体系结构复习题_第17张图片
注意系统构件图的画法、接口的画法
实现要使用实现、依赖要使用虚线加箭头
软件体系结构复习题_第18张图片
订票时必须“填写预定信息”,这里“必须”要使用包含关系–《include》
必须“填写预定信息”,这里“必须”使用包含关系–《include》
其中“收款”工作可以采用“微信支付”、“现金支付”和“支付宝支付”,这里“可以采用”使用扩展关系–《extend》
**注意:**要注意《include》和《extend》的指向,它们是不一样的。其中《include》是向外指向;《extend》是向内指向
软件体系结构复习题_第19张图片
软件体系结构复习题_第20张图片
这里包括用例“通知发货单位”、参与者“发货单位”

软件体系结构复习题_第21张图片
在这里插入图片描述
注意活动图的画法,其中的开始、结束、状态节点(活动节点)、控制节点(菱形)、块节点
注意中间的这根实线也要画
软件体系结构复习题_第22张图片
多对多:外键建立中间表
1对多:外键放在多的
1对1:外键放哪都可以
这里中间表示“库存”

软件体系结构复习题_第23张图片
这里是用泛化关系(三角形加横线)
软件体系结构复习题_第24张图片
软件体系结构复习题_第25张图片
在这里插入图片描述
激活条或控制焦点符号不能画成长条形状

3、论述题

在这里插入图片描述
建筑工业的“模块化、标准化、工厂化、流水组装”是一种高效、规范的生产模式,也是软件产业值得学习借鉴的地方。软件产业可以将常用的功能模块进行模块化和标准化,以提高软件产品的开发效率和质量,同时可以采用工厂化的生产管理方式,形成成熟的软件工程和流水化的开发流程,提高软件产品的生产效率和可靠性。
软件体系结构复习题_第26张图片
对模型进行建模的目的是为了更好的理解和管理复杂性
软件体系结构复习题_第27张图片
软件体系结构复习题_第28张图片
用例不只是捕获需求的工具,还能驱动整个开发过程。
储户对象的用例有:存款、取款、转账、查询余额、打印账单、修改密码

2023

答案来源:

软件体系结构复习题_第29张图片

1、简答题、综合分析与设计题

软件体系结构复习题_第30张图片
软件体系结构复习题_第31张图片
软件体系结构复习题_第32张图片
在这里插入图片描述
软件体系结构复习题_第33张图片
软件体系结构复习题_第34张图片
软件体系结构复习题_第35张图片
软件体系结构复习题_第36张图片

T1

在这里插入图片描述
软件体系结构复习题_第37张图片
软件体系结构复习题_第38张图片
不可分割表明是组合关系
部分和整体具有相同的生命周期,即整体消失则部分也消失
省、市、自治区、直辖市离开中国对象则不能独立存在

T2

软件体系结构复习题_第39张图片
在这里插入图片描述
软件体系结构复习题_第40张图片
软件体系结构复习题_第41张图片
系统维护者的功能包括了系统操作者里面的功能,这里使用泛化关系

T3

软件体系结构复习题_第42张图片
软件体系结构复习题_第43张图片
派生出的具体类:表示的是泛化关系
这两个具体类又是另一个类Driver的一部分:表示的是聚合关系
软件体系结构复习题_第44张图片

T4

在这里插入图片描述
软件体系结构复习题_第45张图片
软件体系结构复习题_第46张图片

T5

在这里插入图片描述
软件体系结构复习题_第47张图片
软件体系结构复习题_第48张图片
在这里插入图片描述

T6

在这里插入图片描述

public class Master extends ClassA{
	private int M_No;
	public Course Select;
	public void Study()
	{
	}
}
public class ClassA{
	private int AID;
}

public class Course{
	private String No;
}

T7

在这里插入图片描述
软件体系结构复习题_第49张图片
软件体系结构复习题_第50张图片

T8

软件体系结构复习题_第51张图片
软件体系结构复习题_第52张图片
多对多:外键建立中间表
1对多:外键放在多的
1对1:外键放哪都可以
外键放在多的那个,而且外键始终指向主键
软件体系结构复习题_第53张图片

T9

在这里插入图片描述
软件体系结构复习题_第54张图片
软件体系结构复习题_第55张图片
软件体系结构复习题_第56张图片

T10

软件体系结构复习题_第57张图片
软件体系结构复习题_第58张图片
软件体系结构复习题_第59张图片

T11

软件体系结构复习题_第60张图片
软件体系结构复习题_第61张图片
软件体系结构复习题_第62张图片

T12

软件体系结构复习题_第63张图片
(1)顾客、管理员、工作人员、发货单位(或网站仓库、或其他供应商)
软件体系结构复习题_第64张图片
这块管理购物车有两个扩展:取消订单、编辑订单
浏览书籍信息有两个扩展:按作者进行搜索、按书名进行搜索
软件体系结构复习题_第65张图片

软件体系结构复习题_第66张图片
软件体系结构复习题_第67张图片
软件体系结构复习题_第68张图片

T13

在这里插入图片描述
软件体系结构复习题_第69张图片
在这里插入图片描述
软件体系结构复习题_第70张图片

T14

软件体系结构复习题_第71张图片
边界类:预定界面边界类、取消预定界面类(2个)
控制类:预定控制类、取消预定控制类(2个)
实体类:顾客、房间、预定信息、支付信息(4个)

在这里插入图片描述
软件体系结构复习题_第72张图片
软件体系结构复习题_第73张图片

T15

软件体系结构复习题_第74张图片
类“ToolBooks”从类“Books”中继承了Name属性、Price属性和getname()操作,以及类Catalog和类Books之间的的聚合关系

T16

软件体系结构复习题_第75张图片
软件体系结构复习题_第76张图片
注意区分这两题不同
软件体系结构复习题_第77张图片
软件体系结构复习题_第78张图片

T17

在这里插入图片描述
在这里插入图片描述

T18(注意)

软件体系结构复习题_第79张图片
潜在会员、会员、货管员、经理、系统管理员、**时间、**供应商系统、财务系统
在这里插入图片描述
软件体系结构复习题_第80张图片

T19(画线)

在这里插入图片描述
软件体系结构复习题_第81张图片
注意两个参与者之间要画线(2个泳道)

T20

软件体系结构复习题_第82张图片
普通聚集:部分和整体具有相同的生命周期–整体消失则部分也消失
共享聚集:整体拥有部分。整体消失则部分未消失
在这里插入图片描述

T21

软件体系结构复习题_第83张图片

接口和构建之间的关系:

实现关系:接口和构件之间用实线连接
依赖关系:接口和构建之间用虚线表示
软件体系结构复习题_第84张图片
注意和29题的区别

T22

软件体系结构复习题_第85张图片
构件:结账系统,商品资料库,购物车,商品导览系统
有依赖关系和实现关系,
结账系统和商品导览系统
软件体系结构复习题_第86张图片

T23

软件体系结构复习题_第87张图片
IncomeOrder与OrderItem之间不该为继承关系,应改为聚合关系
软件体系结构复习题_第88张图片
软件体系结构复习题_第89张图片

T24

在这里插入图片描述
软件体系结构复习题_第90张图片
注意:返回的是虚线
软件体系结构复习题_第91张图片

T25

软件体系结构复习题_第92张图片
软件体系结构复习题_第93张图片
:代表0个或多个
0…
:代表0个或多个
软件体系结构复习题_第94张图片

T26

软件体系结构复习题_第95张图片
软件体系结构复习题_第96张图片
注意:顺序图的标准画法

T27

软件体系结构复习题_第97张图片
软件体系结构复习题_第98张图片
Java构造函数

T28

在这里插入图片描述
软件体系结构复习题_第99张图片
软件体系结构复习题_第100张图片
书全是聚合关系
后面的茶叶和论文是泛化关系

T29

在这里插入图片描述
注意与21题进行比较
软件体系结构复习题_第101张图片
子系统的写法《subsystem》
注:
软件体系结构复习题_第102张图片
软件体系结构复习题_第103张图片
软件体系结构复习题_第104张图片
软件体系结构复习题_第105张图片

T30

软件体系结构复习题_第106张图片
软件体系结构复习题_第107张图片
软件体系结构复习题_第108张图片
软件体系结构复习题_第109张图片

T31

在这里插入图片描述
软件体系结构复习题_第110张图片

T32

软件体系结构复习题_第111张图片
软件体系结构复习题_第112张图片
软件体系结构复习题_第113张图片

T33

软件体系结构复习题_第114张图片
软件体系结构复习题_第115张图片
软件体系结构复习题_第116张图片
软件体系结构复习题_第117张图片
软件体系结构复习题_第118张图片

T34

软件体系结构复习题_第119张图片
在这里插入图片描述
双向关联关系,用例可以把内部消息通知给参与者,参与者可以把外部消息变更通知给用例
单向关联关系,箭头指向被拥有者,参与者可以把外部消息变更通知给用例
单向关联关系,系统可以把内部消息通知给参与者

T35

软件体系结构复习题_第120张图片
软件体系结构复习题_第121张图片

T36

软件体系结构复习题_第122张图片
软件体系结构复习题_第123张图片

T37

在这里插入图片描述
软件体系结构复习题_第124张图片
在这里插入图片描述

public class ClassA{
	public ClassB theClassB;
	public ClassA(){
	}
}
public class ClassB{
	public ClassB(){
	}
}

T38

在这里插入图片描述
软件体系结构复习题_第125张图片
软件体系结构复习题_第126张图片
软件体系结构复习题_第127张图片
软件体系结构复习题_第128张图片

T39

软件体系结构复习题_第129张图片
在这里插入图片描述

T40(未写)

软件体系结构复习题_第130张图片
在这里插入图片描述
软件体系结构复习题_第131张图片

软件体系结构复习题_第132张图片

T41

软件体系结构复习题_第133张图片
软件体系结构复习题_第134张图片
软件体系结构复习题_第135张图片

T42

软件体系结构复习题_第136张图片
软件体系结构复习题_第137张图片

T43

软件体系结构复习题_第138张图片
软件体系结构复习题_第139张图片
这里去掉3种支付方式

T44

软件体系结构复习题_第140张图片
软件体系结构复习题_第141张图片
软件体系结构复习题_第142张图片

T45

软件体系结构复习题_第143张图片
软件体系结构复习题_第144张图片

T46

软件体系结构复习题_第145张图片
软件体系结构复习题_第146张图片
软件体系结构复习题_第147张图片
茶叶是泛化关系

T47

软件体系结构复习题_第148张图片
软件体系结构复习题_第149张图片
论文是泛化关系

T48

软件体系结构复习题_第150张图片
软件体系结构复习题_第151张图片
软件体系结构复习题_第152张图片

T49

软件体系结构复习题_第153张图片
软件体系结构复习题_第154张图片
答案待确认

T50(未写)

软件体系结构复习题_第155张图片

答案还未写

软件体系结构复习题_第156张图片
这个题是上面T50的第(3)问

T51

软件体系结构复习题_第157张图片
软件体系结构复习题_第158张图片
决策节点

T52

软件体系结构复习题_第159张图片

软件体系结构复习题_第160张图片
软件体系结构复习题_第161张图片
注意:这个T52题和T7题不一样,老师把题给改了

T53(未写)

软件体系结构复习题_第162张图片
答案未写
软件体系结构复习题_第163张图片
软件体系结构复习题_第164张图片

T54(未写)

软件体系结构复习题_第165张图片

T55(未写)

软件体系结构复习题_第166张图片
答案未写

T56(未写)

软件体系结构复习题_第167张图片
答案未写

T57

软件体系结构复习题_第168张图片
求职者和招聘者都是“用户”参与者,这里存在泛化关系
软件体系结构复习题_第169张图片

T58(未写)

软件体系结构复习题_第170张图片
答案未写

T59(未写)

软件体系结构复习题_第171张图片
答案未写

T60(未写)

软件体系结构复习题_第172张图片
答案未写

T61(未写)

软件体系结构复习题_第173张图片
答案未写

2、论述题

T1

在这里插入图片描述
软件体系结构复习题_第174张图片
**
先构建部分再构建整体
多次开发
软件规模庞大、软件的需求是模糊的、随时间而变化
后期的维护工作量巨大、维护代价也非常高
简化了软件的开发和维护
提高了软件的可重用性
**

T2

软件体系结构复习题_第175张图片
在这里插入图片描述
**
在后期引入变动比在早期引入所需要的代价高2~3个数量级
维护要花费大量的代价
目的是要尽早发现错误
**

T3

在这里插入图片描述
软件体系结构复习题_第176张图片
**
软件是程序、数据及其相关文档的完整集合
软件文档使无形的脑力劳动显示化,规范不同人员的表达方式,减少不必要的信息沟通,提高交流的效率
软件文档分为研发规范文档和项目文档
**

T4

在这里插入图片描述
在这里插入图片描述
**
高质量的设计将是软件系统长期稳定运行的根本保障,是软件走向成功的关键。
为了获得高质量软件,必须遵循开发规范,采用恰当的设计方法,正确的开发方法。
**

T5

在这里插入图片描述
在这里插入图片描述
提高分析、设计、开发效率

T6

在这里插入图片描述
软件体系结构复习题_第177张图片
认识问题:以用户的身份站在用户的角度认识问题获取需求,采用用例建模技术。客户提出其可接受的、系统必须满足的条件或具备的能力
分析问题:以开发者的身份站在用户的角度分析问题分析需求,采用用例分析技术。满足客户定义的需求
解决问题:以开发者的身份站在开发团队的角度分析问题解决需求,采用面向对象设计。面向对象的设计原则是构造高质量软件的出发点

T7

在这里插入图片描述
在这里插入图片描述
顺序图:表示交互作用中的时间顺序,但没有表示对象间的关系。用于表示方案。
通信图:表示对象间的关系,但时间顺序必须从顺序图获得。用于过程的详细设计

T8

在这里插入图片描述
软件体系结构复习题_第178张图片
都是以图的形式呈现,便于理解

软件结构图:系统中组件之间相互关系和约束的体系结构设计图
用例模型:系统既定功能的模型,它可作为客户和开发人员之间的契约

T9

在这里插入图片描述
软件体系结构复习题_第179张图片
采用大量的接口来解耦子系统和外部的耦合,才可以保证子系统的独立性和可替代性,从而提高系统的稳定性

T10

在这里插入图片描述
软件体系结构复习题_第180张图片
用例图中的用例和参与者,表明了哪个参与者参与了哪个用例的执行。
用例图是被成为参与者的外部用户所能观察到的系统功能的模型图,主要用于需求捕获,能够对系统提供的服务进行描述

T11

在这里插入图片描述
软件体系结构复习题_第181张图片
软件设计是将问题分解并模块化,使得解决问题变得容易。软件设计是后续开发步骤及软件维护工作的基础。

如果没有软件设计,只能建立一个不稳定的软件体系结构。应该尽量在软件设计与开发的早期去修改完善发现的错误,否则随着时间的推移,软件也定型了,想要再改错就要付出不可想象的维护代价。

T12

在这里插入图片描述
在这里插入图片描述
需要制定合理的迭代计划,通过早期的迭代明确用户需求,建立并证明系统核心架构,后期迭代以此架构为基础全面展开。

T13

在这里插入图片描述
在这里插入图片描述
软件构架设计是降低成本、改进质量、按时按需支付产品的关键因素
架构设计能够满足系统的性能、可维护性等品质;能够使得不同的利益相关人达成一致的目标,能够有效地管理复杂性

T14

在这里插入图片描述
软件体系结构复习题_第182张图片
业务模型、用例模型、分析模型、设计模型、进程模型、部署模型、组件模型、测试模型

T15

在这里插入图片描述
软件体系结构复习题_第183张图片
模块化:按模块划分系统,使得各模块间有良好的的接口
标准化:软件开发过程中的统一化,包括文档格式的一致、工作流程的一致
工厂化:用新技术替代传统的技术
流水组装:软件开发过程中,每个程序员负责自己各自模块的开发,最后对模块进行组装得到整个系统

T16

软件体系结构复习题_第184张图片
在这里插入图片描述
软件工程中最重要的两个点为技术设计理论
技术是软件工程师需要掌握的技术,如:数据库、数据结构等计算机方面的知识
设计理论是:开发软件的目标,如:为什么设计此软件、应解决哪些实际问题等等
有了明确的设计理念才能顺利开展后期的编程开发工作

T17

在这里插入图片描述
MDA,即模型驱动架构 (Model-Driven Architecture),是一种基于模型的软件开发方法论
在这里插入图片描述
模型是对系统的一种抽象。
建模的目的是为了更好地理解和管理系统复杂性支持系统需求、分析、设计、验证和确认等活动

T18

在这里插入图片描述
在这里插入图片描述
重用软件架构有助于改善软件质量,还可以提高软件的灵活性和标准化程度

T19

在这里插入图片描述
在这里插入图片描述
部署图包括节点、模式以及连接它们的中间件。
主要帮助安装和部署人员掌握系统的硬件物理拓扑结构。
与其他UML图相比,部署图有助于设计组件系统的硬件拓扑,所以它是系统网络拓扑结构的最终描述

T20

在这里插入图片描述
软件体系结构复习题_第185张图片
抽象:对事物进行简化、抓住事物本质的过程

分类:对事物进行归纳

分解:为了实现项目的目标,把项目要完成的工作,分解成一个个可控的小任务

复用:是将已有的软件成分用于构造新的软件系统。目的是为了缩减软件开发和维护的花费,是提高软件生产力和质量的一种重要技术

T21

软件体系结构复习题_第186张图片
软件体系结构复习题_第187张图片
(1)从用户角度描述执行用例的具体步骤,关注系统“做什么”而不是“怎么做”
(2)需要分析系统如何响应用户请求,可以对用例文档中系统的处理流程进一步细化

你可能感兴趣的:(软件体系结构,软件工程)