软件工程 第五章(总结和课后习题)

合集下载

软件工程第五章课后题

软件工程第五章课后题

一、选择题
1.软件管理中,需要对软件进行配置,各阶段文档的管理属于()。

D
A.组织管理
B资源管理
C.计划管理
D.版本管理
2.软件开发的结构化方法中,常用数据字典技术,其中数据加工是
其组成内容之一,下述方法()是常采用编写加工说明的方法。

Ⅰ结构化语言Ⅱ判定树Ⅲ判定表
A.Ⅰ
B.Ⅱ
C.Ⅱ、Ⅲ
D.都是
3.在软件工程实施中,产生软件生命周期的概念是由()。

A.方法论所决定的
B.开发技术划分
C.软件开发规律
D.软件工程管理
二、填空题
1.软件计划包括和两个阶段。

2.软件概要设计的成果是。

3.软件的详细设计,也称模块设计。

它要求设计人员为每一个程序模块确定所使用的,,、输出数据等。

4.结构化分析方法是进行分析的方法。

三、解答题
1.什么是软件的可维护性?可维护性的度量的特性是什么?
2.提高可维护性的方法有哪些?
答案:
一、1.D 2.D 3.A
二、
1.总体设计(或概要设计)详细设计
2.软件设计说明书
3.算法数据结构接口细节和输入
4. 面向数据流
三、
1.软件的可维护性:软件能够被理解、校正、适应及增强功能的容易程度。

可维护性的度量的特性是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。

2.(1)建立明确的软件质量目标。

(2)利用先进的软件开发技术和工具。

(3)建立明确的质量保证工作。

(4)选择可维护的程序设计语言。

(5)改进程序文档。

软工题第五章

软工题第五章

第五章习题一、选择题1.对于软件产品来说,有4个方面影响着产品的质量,即( A )、( B )、( C )及成本、时间和进度等条件。

重视软件过程的质量是近年来质量管理理论和实践的新发展。

重视软件过程质量的控制,其部分原因可能是:相对于产品质量的控制来说,过程质量的控制是( D )、( E )、( F ),而产品质量的控制是( G )、( H )、( I )。

供选择的答案:A ~ C. ①开发时间②开发技术③过程质量④风险控制⑤质量控制⑥人员素质⑦项目管理⑧配置管理D ~ I. ①主动的②被动的③整体的④系统的⑤先期的⑥事后的⑦个别的⑧部分的2. 在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:(A )、(B )、(C )。

( A )是决定维护成败和质量好坏的关键。

( C )包括(D )确认、计算机确认和维护后的(E )。

供选择的答案:A ~ C. ①修改程序②建立目标程序③分析和理解程序④重新验证程序⑤验收程序D. ①动态②静态③人工④自动E. ①验证②验收③检验④存档2. A. ③, B. ①, C. ④, D. ②, E. ②在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:分析和理解程序、修改程序和重新验证程序。

经过分析,全面、准确、迅速地理解程序是决定维护成败和质量好坏的关键。

有如下几种方法:分析程序结构图、数据跟踪、控制跟踪及其它方法。

在将修改后的程序提交用户之前,需要通过静态确认、计算机确认和维护后的验收,保证修改后的程序的正确性。

3. 从供选择的答案中选出同下列各叙述关系最密切的字句。

A. 软件从一个计算机系统或环境转移到另一个计算系统或环境的容易程度。

B. 软件在需要它投入使用时能实现其指定的功能的概率。

C. 软件使不同的系统约束条件和用户需求得到满足的容易程度。

D. 在规定的条件下和规定的一段期间内,实现所指定的功能的概率。

E. 尽管有不合法的输入,软件仍能继续正常工作的能力。

软件工程 第五章(总结和课后习题)

软件工程 第五章(总结和课后习题)
第五章 RUP
出:分析类[完成];4、对包进行分析: 输入:系统体系结构描述[分析]、分析 包[概述]输出:分析类[完成]。 � (18)创建系统的分析模型,一般应进 行体系结构分析、用况分析、类的分析 以及包的分析 4 项活动。 � (19)用况分析[分析]的目标:1、标识 那些在用况事件流执行中所需要的分析 类和对象;2、将用况的行为,分布到参 与交互的各个分析对象;3、捕获用况细 化上的特定需求。 � (20)用况分析[分析]开展的活动包括: 1、标识分析类,标识在细化一个用况中 所需要的实体类、控制类和边界类,给 出它们的名字、责任、属性和关系;2、 描述分析(类)对象之间的交互,通常 使用交互图来描述。 � (21)类的分析[分析]的目标:1、标识 并维护分析类的责任;2、基于它们在用 况细化中的角色,标识并维护分析类的 属性和关系;3、捕获分析类细化中的特 定需求。 � (22)类的分析[分析] 开展的活动包 括:1、标识责任;2、标识属性;3 标识 关联与聚合; � (23)需求分析模型对以后开发工作的 影响?1、对设计中子系统的影响。分析 包一般将影响设计子系统的结构;2、对 设计类的影响。分析包可以作为类设计 时的规格说明;3、对用况细化[设计]的 影响。用况细分[分析]对用况细化[设计] 有两方面影响,一个是它们有乃至于为 用况创建更精确的规格说明,另一个是 当对用况进行设计时,用况细化[分析] 可作为其输入。 (24)需求获取模型与需求分析模型之
第五章 RUP
[概述];输出:子系统[完成]、接口[完 成]。 � (29)用况的设计包括以下任务:1、标 识参与用况细化的设计类;2、标识参与 用况细化的子系统的接口。 � (30)类的设计包括以下任务:1、概括 描述设计类;2、标识操作;3、标识属 性;4、标识关联、聚合;5、标识泛化; 6、描述方法; � � � (31)RUP 设计的突出优点:P165 页 (32)RUP 的设计系统生成构件;对构件进行测试,进行 集成测试和连接;把可执行的构件映射 到部署模型。 � (34)RUP 实现包括以下活动:1、实现 模型;2、实现子系统;3、实现模型视 角下的体系结构描述;4、实现类; � � (35)RUP 测试包括内部测试、中间测试 和最终测试。 (36)RUP 测试的主要活动:1、计划测 试;2、设计测试;3、实现测试;4、执 行集成测试;5、执行系统测试;6、评 价测试。

课件:软件工程--05指令系统

课件:软件工程--05指令系统

5. 输入输出

端口地址
CPU 的寄存器
如 IN AL, n IN AX, n IN AL, DX IN AX, DX
出 CPU 的寄存器
端口地址
如 OUT n, AL OUT n, AX OUT DX, AL OUT DX, AX
五、操作码编码
操作码的编码有两种方式 - Fixed Length Opcodes (定长操作码法) - Expanding Opcodes (扩展操作码编法)
ADD D + ( N -1 ) DIV # N STA ANS 共 N + 2 条指令
LDA # 0 LDX # 0 M ADD X, D INX CPX # N BNE M DIV # N STA ANS 共 8 条指令
X 为变址寄存器 D 为形式地址 (X) +1 X (X) 和 #N 比较 结果不为零则转
10. 堆栈寻址
(1) 堆栈的特点 硬堆栈
堆栈 软堆栈
多个寄存器 指定的存储空间
先进后出(一个入出口) 栈顶地址 由 SP 指出
进栈 (SP)– 1 SP 出栈 (SP)+ 1 SP
SP
1FFFH 2000 H
12F0F0F0 H
–1
进栈
栈顶 栈顶
SP
1FFFH 2000 H
12F0F00F HH
无条件转移;……
二、操作数类型
地址
无符号整数
数字 定点数、浮点数、十进制数 位、位串、字符和字符串 ASCII 逻辑数 逻辑运算
三、寻址方式
确定 本条指令 的 操作数地址
数据寻址
下一条 欲执行 指令 的 指令地址 指令寻址 • 指令的寻址——简单

(完整版)软件工程 第五章 面向对象的需求分析

(完整版)软件工程 第五章 面向对象的需求分析

第五章面向对象的需求分析面向对象的需求分析方法的核心是利用面向对象的概念和方法为软件需求建造模型。

它包含面向对象风格的图形语言机制和用于指导需求分析的面向对象方法学。

面向对象的思想最初起源于 20世纪 60年代中期的仿真程序设计语言Simula67。

20世纪80年代初出现的Smalltalk 语言及其程序设计环境对面向对象技术的推广应用起到了显著的促进作用。

20世纪90年代中后期诞生并迅速成熟的UML(Unified Modeling Language,统一建模语言)是面向对象技术发展的一个重要里程碑。

UML 统一了面向对象建模的基本概念、术语和表示方法,不仅为面向对象的软件开发过程提供了丰富的表达手段,而且也为软件开发人员提供了互相交流、分享经验的共用语言。

本章首先介绍面向对象的主要概念和思想。

在概述了UML的全貌之后,以“家庭保安系统”为实例,介绍与需求分析相关的部分 UML语言机制以及基于UML的面向对象的需求分析方法和过程。

第一节面向对象的概念与思想一、面向对象的概念关于“面向对象”,有许多不同的看法。

Coad和 Yourdon给出了一个定义:“面向对象 = 对象 + 类 + 继承 + 消息通信”。

如果一个软件系统是使用这样4个概念设计和实现的,则认为这个软件系统是面向对象的。

一个面向对象的程序的每一成分应是对象,计算是通过新的对象的建立和对象之间的消息通信来执行的。

1.对象(object)一般意义来讲,对象是现实世界中存在的一个事物。

可以是物理的,如一个家具或桌子,如图 5-1-1所示,可以是概念上的,如一个开发项目。

对象是构成现实世界的一个独立的单位,具有自己的静态特征(用数据描述)和动态特征(行为或具有的功能)。

例如:人的特征:姓名、性别、年龄等,行为:衣、食、住、行等。

图 5-1-1 对象的定义(1)对象、属性、操作、消息定义对象可以定义为系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,由一组属性和一组对属性进行操作的服务组成。

软件工程第五章结构化设计

软件工程第五章结构化设计

服务注册中心
发现
注册
服务消费者 调用
服务提供者
并发系统的集中式控制模型
传感器进程 用户界面Fra bibliotek传动装置进程 系统控制器
计算进程 故障处理器
系统控制模型
事件驱动系统
广播模型:发生的事件广播到所有子系统,任何能处理 该事件的子系统都会响应。该模型适用于基于网络的分 布式系统。
广播模型中的子系统注册其感兴趣的特别事件 广播模型的优点是进化比较简单
软件模块化设计
模块是一个独立命名的,拥有明确定义的输入、输出 和特性的程序实体。
软件的模块化设计(Modular Design)。系统是有 一个个模块组装而成。
软件模块化设计优点
可以简化软件的设计和实现 提高软件的可理解性和可测试性 软件更容易得到维护。
软件模块化设计缺点
结构化设计阶段 数据流设计方法 面向数据的设计 结构化程序设计 案例分析
结构化设计概述
结构化设计方法(Structured Design, SD)是基于模 块化、自顶向下细化、结构化程序设计等程序设计技 术基础上发展起来的。
结构化设计方法用模块结构图来表达程序模块之间的 关系。
缺点是子系统都知道是否和什么时候处理事件,这可能会引 起冲突。
中断驱动模型:由中断处理器对来自外部的中断进行检 测,然后在其他组件中处理这些中断。该模型适用于对 定时有严格要求的实时系统。
只用在硬件实时系统中,要求对一些事件能做出及时响应
总线架构
像水管一样随意接入 像PCI总线一样即插即用
第三部分软件设计与建模
结构化软件设计
阳王东
回答问题
什么是软件设计?有哪些阶段和任务? 什么是模块化设计?有哪些原理? 什么是软件结构和体系结构?二者有什么区别? 数据流有哪些类型?如何区分? 数据流映射的步骤是什么? 什么是结构化程序设计?有哪些工具? 什么是JSD方法?具体步骤是什么?

软件工程 编译原理 第五章 自顶向下的语法分析方法

软件工程 编译原理 第五章 自顶向下的语法分析方法
PROCEDURE T; BEGIN F;T END PROCEDURE T; IF SYM=‘*’ THEN BEGIN ADVANCE; F;T END;
例:文法G(E):
E→TE E→+TE | T→FT PROCEDURE F; T→*FT | IF SYM=‘i’ THEN ADVANCE F→(E) | i ELSE 对应的递归下降子程序为: IF SYM=‘(’ THEN
其中不以P开头。
可以把P的规则等价地改写为如下的非直接左递归 形式: 左递归变 P→P 右递归 P→P|
一般而言,假定P关于的全部产生式是 P→P1 | P2 | … | Pm | 1 | 2|…|n 其中,每个都不等于,每个都不以P开头 那么,消除P的直接左递归性就是把这些规则改写 成:
第5章 自顶向下的语法分析方法
语法分析的作用是识别由词法分析给出 的单词符号序列是否是给定文法的正确句 子(程序)。 目前语法分析常用的方法有: 1、自顶向下(自上而下)分析 2、自底向上(自下而上)分析
5.3非LL(1)文法到LL(1)文法的等价转换
确定的自顶向下分析要求给定语言的文法必
须是 LL(1)形式。然而,不一定每个语言都是 LL(1)文法,对一个语言的非LL(1)文法是否能变
换为等价的LL(1)形式以及如何变换是我们讨论
的主要问题。由LL(1)文法的定义可知若文法中 含有左递归或含有左公共因子,则该文法肯定不 是LL(1)文法,因而,我们设法消除文法中的左 递归,提取左公共因子对文法进行等价变换。
1、提取公共左因子
若文法中含有形如:A→αβ|αγ的产生式,这导 致了对相同左部的产生式其右部的FIRST集相交, 也就是 SELECT(A→αβ)∩SELECT(A→αγ) ≠ φ ,不满足 LL(1)文法的充分必要条件。

软件工程第五版课后习题答案第五章

软件工程第五版课后习题答案第五章

习题5
3(1)数据流图如下:
对数据流图划分边界,如下所示:
按照以上数据流图设计软件结构,如下所示:
4(1)数据流图如下:
(2)需求说明:
功能需求:系统需要能查出教师的原有工资,计算出教师的现有工资,并打印相关信息。

数据需求:教师的原有工资信息,教师赡养的人数,教师的工龄
行为需求:系统要能判断原有工资是否符合涨工资要求,要精确计算现有工资,要提供给用户调查信息的借口与界面。

(3)用a 算法的HIPO 图:
教师档案
办公室磁带 打印原有工资和新工资信息 提取原工资
信息
计算新工资 办公室磁带
年工资大于等于$26000 年工资小于$26000
用b算法的HIPO图:
对于算法(a):优点:这样设置符合常规思路,容易让人理解
缺点:计算的次数较多。

检索效率低。

对于算法(b):优点:计算的次数较少,效率高
缺点:该算法不易于理解。

涉及到排序算法的设计。

(4)所画的数据流图更符合a算法。

5.答:需求分析:要实现三大功能,发牌;确定获胜方和牌型;模拟多次游戏,计算牌型的获胜和平局的概率。

分析后,设计的HIPO图如下:流程图在下页:
控制流程图如下:。

软件工程导论第五章课后答案

软件工程导论第五章课后答案

软件工程导论第五章课后答案本页仅作为文档页封面,使用时可以删除This document is for reference only-rar21year.March第五章习题答案1、为每种类型的模块耦合举一个具体例子。

答:耦合是对一个软件结构内不同模块之间互连程度的度量。

耦合强弱取决于模块间接口的复杂程度,进入或访问某一模块的点,以及通过接口的数据,一般模块之间可能的连接方式有7种,构成耦合的7种类型,它们之间的关系为:下面举例说明以上各种耦合:a.非直接耦合(Nondirect Coupling)在这种情况下,两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。

例如在实数的运算中,有两个模块分别完成几个实数的求和,求乘积功能,这两个模块之间没有直接联系,只有在主模块调用中有执行的前后顺序而已,这个例子即属于非直接耦合。

b.数据耦合(DataCoupling)即一个模块访问另一个模块时,彼此之间是通过数据参数来交换输入,输出信息的,这种耦合为数据输入,输出信息的这种耦合为数据耦合。

如有两个模块,其中A完成两个烽的比较,求出其中最大的并返回该值,模块B是完成了个数的比较,求出其中最大的并返回该最大值,为完成四个数的比较,模块B调用模块A即可完成,在这种调用关系中,模块A的运算结果作为一个参烽参加B的运算,这两个模块之间即发生数据耦合。

数据耦合是松散的耦合,模块间的独立性比较强。

c.标记耦合(Stamp Coupling),即一组模块通过参数传递记录信息,这就是标记耦合。

事实上,这组模块共享了这个记录,它是某一数据结构的子结构,而不是简单变量。

d.控制耦合(Control Coupling)即一个模块通过开关标志,名字等控制住处明显的控制,选择另一模块的功能,这就是控制耦合,如下图所示,这一种耦合实质是在单一接口上实现选择多功能模块中的某项功能,如程序设计中用到多路选择结构即是最好的例子。

软件工程导论(第五版)课后习题答案

软件工程导论(第五版)课后习题答案

《软件工程导论》课后习题答案第一章软件工程概论1-11.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。

(2)软件产品的质量往往靠不住。

(3)一般软件很难维护。

(4)软件生产效率很低。

(5)软件开发成本越来越大。

(6)软件成本与开发进度难以估计。

(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。

2.软件危机有那些典型表现?(1) 对软件开发成本和进度的估计常常很不准确。

(2) 用户对“已完成的”软件系统不满意的现象经常发生。

(3) 软件产品的质量往往靠不住。

(4) 软件常常是不可维护的。

(5) 软件通常没有适当的文档资料。

(6) 软件成本在计算机系统总成本中所占的比例逐年上升。

(7) 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。

3.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。

造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。

(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。

(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。

4.怎样克服软件危机?(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。

《软件工程》第5章 软件构造

《软件工程》第5章 软件构造

5.5 软件代码审查
为保证代码开发的质量,在编码完成后,进行 代码审查或称Review。
审查内容: 1. 程序的版式 2. 文件结构 3. 命名规则 4. 表达式与基本语句
5.6 软件复用
软件复用就是将已有的软件成分用于构造新的 软件系统,以达到提高软件系统的开发质量与效率, 降低开发成本的目的。
在面向对象语言中,类功能支持这种层次机制。 除了根结点外,每个类都有它的基类(base class)。 除 了 叶结 点 外 , 每 个类 都 有它 的 派生 类 (derived class)。一个派生类可以从它的基类那里继承所有 的数据和操作,并扩充自己的特殊数据和操作。
3. 多态性
所谓多态,是指一个名字(或符号)具有 多种含义。即相同的操作的消息发送给不同的 对象时,每个对象将根据自己所属类中定义的 操作去执行,产生不同的结果。
5
第五章
软件构造
软件的详细设计,完成了软件的过程性的描述, 接下来进入程序编码阶段。
软件构造(Software Construction)指通过 编码、验证、单元测试、集成测试和排错的组合, 创建一个可以工作的、有意义的软件。在本章中, 我们将聚焦在该领域当中的程序设计语言、设计、 编码和复用这几个话题,其余的将在后续章节中讨 论。
类型的能力选取 。 6. 软件开发人员的知识水平以及心理因素。要特别注
意选择语言时,尽量避免受外界的影响,盲目追求 高、新的语言。
5.2 程序设计方法
5.2.1 结构化程序设计 结构程序设计的概念最早是由E.W.Dijkstra提出来的。
结构化程序设计方法 (Structured Program), 即SP法是结构化开发方法的重要组成部分。
5.3.1 源程序文件 符号的命名。尽量用与实际意义相同或接近的标识 符命名。 源程序中的注释 注释可分为序言性注释和解释性注释。错误的注释 宁可不要。 源程序的书写格式

《软件工程》(第五版)习题参考答案

《软件工程》(第五版)习题参考答案
把整个软件生命周期划分为若干个较小的阶段每个阶段都有相对独立的任务和完成任务的步骤和方法然后逐步完成各个阶段的任务这有利于软件开发过程的组织和管理从而降低了整个软件开发过程的困难程度从而使规模庞大结构复杂和管理复杂的软件开发变得容易控制和管理
《软件工程》(第五版)习题参考答案
第1章 一、判断题 1、(×)软件的维护与硬件维护本质上是相同的。 2、(√)软件在运行和使用中也存在退化问题。 3、(×)软件危机的产生主要是因为程序设计人员使用了不适 当的程序设计语言。 4、(√)软件同其他事物一样,有孕育、诞生、成长、成熟和 衰亡的生存过程。 5、(×)文字处理软件 Word 属于系统软件。应用软件 6、(√)原型是软件的一个早期可运行的版本,它反映最终系 统的部分重要特性。 7、(√)软件开发过程中,一个错误发现得越晚,为改正它所 付出的代价就越大。 8、(×)快速原型模型对软件开发人员的水平要求不高。 9、(√)喷泉模型适合于面向对象的软件开发。 10、(×)面向对象开发方法的主要缺点是在适应需求变化方面 不够灵活。 二、选择题 1、软件是一种(C)。 A、程序 B、数据
D、合同文档 14、结构化分析方法是以数据流图、(D)和加工说明等描述工 具,即用直观的图和简洁的语言来描述软件系统模型。 A、DFD 图 B、PAD 图 C、IPO 图 D、DD 15、软件需求分析阶段的工作,可以分为四个方面:需求获取、 需求分析、编写需求规格说明书以及(B)。 A、阶段性报告 B、需求评估 C、总结 D、都不正确 16、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一 些特定的图符构成。下面图符名称标识的图符不属于数据流图合 法图符的是(A)。 A、控制流 B、加工 C、数据存储 D、源点和终点 17、DFD 用于描述系统的(D)。 A、数据结构

面向对象软件工程 第五章 答案

面向对象软件工程 第五章 答案

Object-Oriented Software Engineering: Using UML, Patterns, and Java: Solutions to Exercises5. Analysis: Solutions5-1Consider a file system with a graphical user interface, such as Macintosh’s Finder, Microsoft’s Windows Explorer, or Linux’s KDE. The following objects were identified from a use case describing how to copy a file from a floppy disk to a hard disk: File, Icon, TrashCan, Folder, Disk, Pointer. Specify which are entity objects, which are boundary objects, and which are control objects.Entity objects: File, Folder, DiskBoundary objects: Icon, Pointer, TrashCanControl objects: none in this example.5–2Assuming the same file system as before, consider a scenario consisting of selecting a file on a floppy, dragging it to Folder and releasing the mouse. Identify and define at least one control object associated with this scenario.The purpose of a control object is to encapsulate the behavior associated with a user level transaction. In this example, we identify a CopyFile control object, which is responsible for remembering the path of the original file, the path of the destination folder, checking if the file can be copied (access control and disk space), and to initiate the file copying.5–3Arrange the objects listed in Exercises 5-1 and 5–2 horizontally on a sequence diagram, the boundary objects to the left, then the control object you identified, and finally, the entity objects. Draw the sequence of interactions resulting from dropping the file into a folder. For now, ignore the exceptional cases.Figure 5-1 depicts a possible solution to this exercise. The names and parameters of the operations may vary. The diagram, however, should at least contain the following elements:•Two boundary objects, one for the file being copied, and one of the destination folder.•At least one control object remembering the source and destination of the copy, and possibly checking for access rights.•Two entity objects, one for the file being copied, and one of the destination folder.In this specific solution, we did not focus on the Disk, Pointer, and TrashCan objects. The Disk object would be added to the sequence when checking if there is available space. The TrashCan object is needed for scenarios in which Files or Folders are deleted.Note that the interaction among boundary objects can be complex, depending on the user interface components that are used. This sequence diagram, however, only describes user level behavior and should not go into such details. As a result, the sequence diagram depicts a high level view of the interactions between these object, not the actual sequence of message sends that occurs in the delivered system.Object-Oriented Software Engineering: Using UML, Patterns, and Java: Solutions to ExercisesFigure 5-2Sample solution for Exercise 5–45–5Identify the attributes of each object that are relevant to this scenario (copying a file from a floppy disk to a hard disk). Also consider the exception cases “There is already a file with that name in the folder” and “There is no more space on disk.”Object-Oriented Software Engineering: Using UML, Patterns, and Java: Solutions to ExercisesThe scenario implies that icons have positions (since they can be moved) and that they can be selected. Each Item, Folder or File, has a size attribute that is checked against the available space in the Disk. The exception “There is already a file with that name in the folder” implies that Item names are unique within a Folder. We represent this by adding a qualifier on the relationship between Item and Folder. Finally, when copying a file, we need to copy its contents, hence we add a contents attribute on the File object.Figure 5-4 A naive model of the Gregorian calendar (UML class diagram).5–7Consider the object model of Figure 5-32 in the book. Using association multiplicity only, can you modify the model such that a developer unfamiliar with the Gregorian calendar could deduce the number of days in each month? Identify additional classes if necessary.The purpose of this exercise is to show the limitation of association multiplicities. There is no complete solution tothis problem. A partial solution indicating the number of days in each month is depicted in Figure 5-5. We createdfour abstract classes for each of the possible month lengths, 11 classes for each of the nonvariable months and twoclasses for the month of February. The part that cannot be resolved with association multiplicities is the definition ofa leap year and that the number of days in February depends on whether the year is leap or not. In practice, thisObject-Oriented Software Engineering: Using UML, Patterns, and Java: Solutions to Exercisesproblem can solved by using informal or OCL constraints, described in more detail in Chapter 9, Object Design: Specifying Interfaces.Figure 5-5Revised class diagram indicating how many days each month includes.5–8Consider a traffic light system at a four-way crossroads (e.g., two roads intersecting at right angles). Assume the simplest algorithm for cycling through the lights (e.g., all traffic on one road is allowed to go through the crossroad while the other traffic is stopped). Identify the states of this system and draw a statechart describing them. Remember that each individual traffic light has three states (i.e. green, yellow, and red).Object-Oriented Software Engineering: Using UML, Patterns, and Java: Solutions to ExercisesWe model this system as two groups of lights, one for each road. Opposing lights have always the same value. Lights from at least one group must always be red for safety reasons. We assume there are no separate lights for left and right turns and that cycles are fixed. Figure 5-6 depicts the startchart diagram for this solution.5–10Consider the addition of a nonfunctional requirement stipulating that the effort needed by Advertisers toobtain exclusive sponsorships should be minimized. Change the AnnounceTournament and the ManageAdvertisement use cases (solution of Exercise 4-12) so that the Advertiser can specify preferences in her pro file so that exclusive sponsorships can be decided automatically by the system.Figure 5-7Sample solution for Exercise 5–5Object-Oriented Software Engineering: Using UML, Patterns, and Java: Solutions to ExercisesA new use case, ManageSponsorships , should be written and included in the ManageAdvertisement use case and de fine the preferences that the Advertiser can specify for automatically accepting an exclusive sponsorship. Figure 5-8 depicts a possible solution for this use case.In the AnnounceTournament use case, steps 6 & 7 are the modi fied as follows:6.The system noti fies the selected sponsors about the upcoming tournament and the flat fee for exclusive sponsorships. For advertisers who selected an automatic sponsorship preferences, the system automatically generates a positive answer if the fee falls within the bounds speci fied by the Advertiser.7.The system communicates their answers to the LeagueOwner .5–11Identify and write de finitions for any additional entity, boundary, and control objects participating in theAnnounceTournament use case that were introduced by realizing the change speci fied in Exercise 5-10.As speci fied above, this exercise should result in the identi fication of two new entity objects:•SponsorshipPreferences stores the time frame during which a tournament can be considered for an automatic sponsor ship and the maximum fee the Advertiser is willing to pay without being noti fied. This object also has associations to the leagues that should be considered during the automatic sponsorship decision.• ExclusiveSponsorship represents an exclusive sponsorship that was awarded to an Advertiser . It is associatedwith the tournament and Advertiser objects involved in the sponsorship. It stores a boolean indicating whether or not the sponsorship was decided automatically.However, the instructor may choose to extend the exercise so that the students also consider the objects participating in the ManageSponsorships use case. In this case, the student should identify a control object for the new use case and two boundary objects for displaying the exclusive sponsorships and the preferences, respectively.5–12Update the class diagrams of Figure 5-29 and Figure 5-31 to include the new objects you identi fied in Exercise5-11.Use case nameManageSponsorships Participating actorsInitiated by Advertiser Flow of events 1.The Advertiser requests the sponsorships area..2. ARENA displays the list of tournaments for which the Advertiserhas exclusive sponsorships and indicates for each tournamentwhether the exclusive sponsorship was decided by the system orthe Advertiser .3.The Advertiser may change the conditions under which atournament becomes a candidate for her exclusive sponsorship,including specifying a set of leagues, a time frame, or a maximumfee that she is willing to pay for an exclusive sponsorship. TheAdvertiser may also select not to use the automatic sponsorshipfeature and be noti fied about such opportunities directly.4.ARENA records the changes of preferences for the automatic sponsorships. Entry condition•The Advertiseris logged into ARENA .Exit conditions •ARENA checks the advertisers automatic sponsorship pro file for any new tournaments created after thecompletion of this use case.Figure 5-8ManageSponsorships use case.Figure 5-9 depicts the objects discussed in Exercise 5-11 and their associations.5–13The Figure 5-1 A UML startchart diagram for AnnounceTournamentControl .Create TournamentWait For Sponsor RepliesDecide on SponsorshipWait for Player Applicationsnotify sponsorship deadline expired notify players Decide on Interest Groupssponsors notify sponsors。

精品文档-软件工程经济学(赵玮)-第5章

精品文档-软件工程经济学(赵玮)-第5章

因此对于一个特定的企业(或行业部门),求解其对应的弹性系 数α与β就成为必要。
注意到(5.2)式中实际上Y、K、L、A均为时间t的函数,
不妨设为yt,kt件生产过程经济分析
对上式两端分别求对数有 lnyt=lna(t)+α lnlt+β lnkt
第5章 软件生产过程经济分析 所谓生产函数(Production Function),是指反映生产过 程中投入要素与其可能生产的最大产量之间依存关系的数学表 达式。早期的生产函数有如下数学形式:
Y=F(K,L,N,O,t) 式中,Y为产出量,如宏观经济系统中的GDP、工业总产值, 微观经济系统中的企业产品的产量、产值、销售收入等;K、L、 N、O分别表示生产过程投入的资本、劳动、土地和组织管理要 素投入量;t表示时间或工期等。鉴于土地投入量的变化很小, 而且在非农业部门中,一般已将土地的价值计入资本之中,而 组织管理又难以定量,因此为了简化分析,以后研究的生产函 数常记为
第5章 软件生产过程经济分析
5.2.1 软件生产系统动力学方程 软件作为一个特殊产品或系统,其生产过程是由一系列相
互关联、相互制约的工程经济要素综合作用的结果。因此,采 用系统工程的理论和方法来研究软件的生产过程是十分有益的。 根据系统工程的理论,要探索一个目标系统的内在要素关联及 其动态发展规律,建立该目标系统对应的系统动力学方程 (System Dynamical Equation,SDE),并以此系统动力学方 程为基础来展开研究是一种有效的思路与方法。以下介绍英国 软件工程专家诺顿(P.V.Noder)所提供的诺顿—瑞利模型 (Noder-Rayleigh Model)及系统动力学方程的求解。N-R模型 的有关变量及其经济内涵如表5.1所示。其模型假设如下:

软件工程 第五章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学

软件工程 第五章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学

第五章测验一、单选题(共40.00分)1. 源代码的逻辑简明清晰、易读易懂()。

A. 往往意味着运行效率低B. 是好程序的一个重要标准C. 往往难以测试D. 往往难以扩展正确答案:D2. 通常把测试数据和预期的输出结果称为()。

A. 测试计划B. 测试用例C. 测试路径D. 测试结果正确答案:B3. 集成测试主要目标是发现()。

A. 算法错误B. 遗漏了功能C. 与接口有关的问题D. 数据结构设计错误正确答案:C4. 每当新模块集成进来时,需要进行()。

A. 单元测试B. 验收测试C. 回归测试正确答案:C二、多选题(共33.00分)1. 黑盒测试()。

A. 又称“结构测试”B. 又称“功能测试”C. 在程序接口进行测试D. 检验程序中的每条通路是否都能按预定要求正确工作正确答案:B C2. 下面哪些测试方法属于白盒测试?()A. 等价类划分B. 边界值分析C. 错误推测D. 逻辑覆盖测试正确答案:D答案解析:ABC是黑盒测试3. 确认测试工作包括()。

A. 软件配置复查B. α测试C. β测试D. 回归测试正确答案:A B C三、判断题(共27.00分)1. 合理、完备的测试可以证明程序是正确的。

()A. 正确正确答案:B2. 软件的实现包括编码和测试两个阶段。

()A. 正确B. 错误正确答案:A3. 测试不可能证明软件没有错误,因此没必要重视测试工作。

()A. 正确B. 错误正确答案:B。

软件工程(第五版)--习题及答案--第五章

软件工程(第五版)--习题及答案--第五章

软件⼯程(第五版)--习题及答案--第五章⼀、判断题1、(√)详细设计也称模块设计。

2、(×)在数据代码设计时,应尽量让⼀条代码代表多个信息。

3、(×)在数据代码设计时,应可能设计字母和数字混合代码。

4、(×)在输出界⾯设计时,要尽可能使⽤代码或缩写,以求简洁。

5、(×)详细设计评审应尽可能和概要设计评审⼀同进⾏。

⼆、选择题1、软件详细设计的主要任务是确定每个模块的(A)。

A、算法和使⽤的数据结构B、外部接⼝C、功能D、程序2、借助于软件⼯具,可将(C)容易地转换为⾼级语⾔源程序。

A、程序流程图B、N-S图C、PAD图D、判定表3、不属于详细设计⼯具的是(A)。

A、DFD图B、PAD图C、PDlD、N-S图4、程序的三种基本结构是(C)。

A、过程、⼦过程和⼦程序B、递归、堆栈和队列C、顺序、选择和重复D、调⽤、返回和转移5、下⾯描述中,符合结构化程序设计风格的是(A)。

A、使⽤顺序、选择和重复(循环)三种基本控制结构表⽰程序的控制逻辑B、模块只有⼀个⼊⼝,可以有多个出⼝C、注重提⾼程序的执⾏效率D、不使⽤goto语句三、简答题1、软件的详细设计阶段完成的主要任务是什么?答:(1)算法设计;(2)数据结构设计;(3)模块接⼝细节设计;(4)测试⽤例设计;(5)数据库物理设计;(6)数据代码设计;(7)其他设计;(8)编写详细设计说明书并进⾏评审。

2、数据输⼊界⾯设计的主要原则有哪些?答:在设计数据输⼊界⾯时应做到:尽量简化⽤户的⼯作、减少输⼊的出错率;减轻⽤户的记忆负担、尽可能减少输⼊量并实现⾃动输⼊;对共同的输⼊设置默认值;使⽤代码或缩写;⾃动填⼊已输⼊过的内容;列表式输⼊; 数据分组输⼊。

3、代码设计的原则有哪些?答:代码设计的原则是标准化、唯⼀性、可扩充性、简单性、规范性和适应性。

四、应⽤题1、请分别使⽤程序流程图、PAD图和N-S图描述下列程序的算法。

张海藩《软件工程导论》(第6版)(章节题库 第5章 总体设计)【圣才出品】

张海藩《软件工程导论》(第6版)(章节题库 第5章 总体设计)【圣才出品】

第5章总体设计一、选择题1.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的()。

A.抽象和信息隐蔽B.局部化和封装化C.内聚性和耦合性D.激活机制和控制方法【答案】C【解析】模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。

耦合衡量不同模块彼此间互相依赖(连接)的紧密程度;内聚衡量一个模块内部各个元素彼此结合的紧密程度。

2.在面向数据流的软件设计方法中,一般将信息流分为()。

A.变换流和事务流B.变换流和控制流C.事务流和控制流D.数据流和控制流【答案】A【解析】面向数据流的软件设计方法是以结构化分析阶段所产生的文档(包括数据流图、数据字典和软件需求说明书)为基础,自顶向下,逐步求精和模块化的过程。

它一般将信息流分为变换流和事务流。

①变换流:信息沿着输入通道进入系统,然后通过变换中心(也称主加工)处理,再沿着输出通道离开系统。

②事务流:信息沿着输入通道到达一个事务中心,事务中心根据输入信息(即事务)的类型在若干个动作序列(称为活动流)中选择一个来执行。

3.软件设计一般分为总体设计和详细设计,它们之间的关系是()。

A.全局和局部B.抽象和具体C.总体和层次D.功能和结构【答案】A【解析】软件设计分为总体设计和详细设计,其中总体设计属于全局性的设计,详细设计属于局部性的设计,是概要设计的完善。

4.将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是()的。

A.逻辑性B.瞬时性C.功能性D.通信性【答案】A【解析】逻辑内聚:模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。

5.模块中所有成分引用共同的数据,该模块的内聚度是()的。

A.逻辑性B.瞬时性C.功能性D.通信性【答案】D【解析】通信内聚指模块内所有处理元素都在同一个数据结构上操作(有时称之为信息内聚),或者指各处理使用相同的输入数据或者产生相同的输出数据。

6.好的软件结构应该是()。

A.高耦合、高内聚B.低耦合、高内聚C.高耦合、低内聚D.低耦合、低内聚【答案】B【解析】耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。

软件工程导论课后解答第五章

软件工程导论课后解答第五章

第五章总体设计低耦合(5 种类型)1. 数据耦合:数据传递2.控制耦合:控制信息传递3.特征耦合:传过多的信息给被调用模块4.公共环境耦合:因全局变量,共享通信区5.内容耦合:诸如一个模块访问另一个模块内部z高内聚(7 种类型)功能内聚10 分顺序内聚9分通信内聚7分过程内聚 5 分时间内聚3分逻辑内聚 1 分偶然内聚0 分z面向数据流的设计方法划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等设计软件的结构。

也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。

总体设计过程两个阶段1.系统设计阶段,确定系统的具体实现方案;2.结构设计阶段,确定软件结构。

总体设计过程9个步骤1 设想供选择的方案2 选取合理的方案3 推荐最佳方案4 功能分解5 设计软件结构 6 设计数据库7 制定测试计划 8 书写文档 9 审查和审核划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等设计软件的结构。

也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。

总体设计过程两个阶段1.系统设计阶段,确定系统的具体实现方案;2.结构设计阶段,确定软件结构。

总体设计过程9个步骤1 设想供选择的方案2 选取合理的方案3 推荐最佳方案4 功能分解5 设计软件结构 6 设计数据库7 制定测试计划 8 书写文档 9 审查和审核1.欲开发一个银行的活期存取款业务的处理系统:储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理;(1)业务分类处理:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理;(2)存款处理:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户;(3)取款处理:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。

绘制该系统的数据流图和软件结构图。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程(02333)自考章节总结
桂电职院计算机系 易烽
一、章节要点
� (1)RUP:是基于 UML 的一种过程框架, 为软件开发,即为进行不同抽象层之间 “映射”安排其开发活动的次序,指定 任务和需要开发的制品,提供了指导; 并为对项目中的制品和活动进行监控与 度量,提供了相应的准则。 � � � (2)RUP 的特点:以用况驱动;以体系 结构为中心;迭代、增量式开发。 (3)RUP 规定的 4 个开发阶段:初始阶 段;精化阶段;构造阶段;移交阶段。 (4)简述 RUP 的 4 个开发阶段的基本目 标:初始阶段:获得与特定腹部和平台 无关的系统体系结构轮廓,以此建立产 品功能范围;编制实例业务实例,从业务 角度指出该项目的价值,减少项目主要 的错误风险;精化阶段:通过捕获并描 述系统的大部分需求,建立系统体系结 构基线的第一个版本,主要包括用况模 型和分析模型,减少次要的错误风险, 到该阶段未,就能够估算成本、进步, 并能详细地规划构造阶段;构造阶段: 通过演化,形成最终的系统体系结构基 线,开发完整的系统,确保产品可以开 始向客户交付,即具有初始操作能力; 移交阶段:确保有一个实在的产品发布 给用户群。期间培训用户如何使用该软 件。 � (5)RUP 与 UML 之间关系:RUP 与 UML 是一对“姐妹” ,它们构成了一种特定的 软件开发方法学。其中,UML 作为一种可 视化建模语言,给出了表达事物和事物 之间关系的基本术语,给出了多种模型 的表达工具;而 RUP 利用这些术语定义了 需求获取层、系统分析层、设计层、实 � � � � � � � � �
现层,并给出了实现各层模型之间映射 的基本活动以及相关指导。 (6)核心工作流:需求获取;分析;设 计;实现;测试。 (7)需求获取目标:使用 UML 中 的用 况、参与者以及依赖等 术语来抽象客观 实际问题,形成系统的需求获取模型。 (8)需求获取开展的工作包括:1、列 出候选的需求;2、理解系统语境;3、 捕获功能需求;4、捕获非功能需求。 (9)系统语境:包括领域模型(一般用 类图表示)或业务模型(业务用况模型 和业务对象模型) 。 (10)建造一个系统需求获取模型的活 动和任务,以及各活动的输入和输出? 1、发现描述参与者和用况,输入:业务 模型或领域模型,补充需求,特征表;输 出:用况模型[概述],术语表;2、赋予 用况优先级:输入:用况模型[概述], 补充需求,术语表;输出:体系结构描述 [用况模型视角];3、精化用况:输入: 用况模型[概述],补充需求,术语表;输 出:用况[精化];4、构造人机接口原型: 输入:用况[精华],用况模型[概述], 补充需求, 术语表;输出: 人机接口原理; 5、用况模型结构化:输入:用况[精华], 用况模型[概述],补充需求,术语表;输 出:用况模型[精化]。 (11)如何描述系统的参与者和用况? 参与者:发现参与者与描述参与者:1) 之前已经存在业务用况模型,可依据业 务模型直接发现一些候选参与者,2)没 有业务用况模型,即使存在领域模型, 也需要系统分析人员与客户一起来标识 系统参与者 用况是系统向它的参与者提供结果(值)
二、课后练习
� � RUP 的定义及只要特点。 RUP 是一种软件开发过程框架, 基于面向 对象符号体系给出了有关软件开发过程 组织及实施的指导。该框架体现了 3 个 突出特征,即以用况驱动,体系结构为 中心以及迭代、增量式开发 � 演化模型与“RUP 模型、迭代开发”之间 的关系。
软件工程(02333)自考章节总结
桂电职院模型的一个 变体,即规定了“大的”迭代数量—4 个 阶段,并规定了每次迭代的目标 � � �
及对其他特征的影响等 特征可作为需求,并转化为其他制品 需求获取层及相关概念 需求获取层目标:使用 MUL 中的用况、 参与者以及依赖等术语来抽象客观实际 问题,形成系统的需求获取模型;基本 术语:用况、参与者、用于表达用况参 于者之间关系的关联、用于表达用况之 间的包含和扩展、用于表达参与者之间 关系的泛化。 ,术语确定了系统用况模型 的各种形态 � � 需求获取模型的基本组成 使用 UML 中的用况、参与者以及依赖等 术语来抽象客观实际问题,形成系统的 需求获取模型 � � 构造一个系统需求获取模型活动和任 务,以及各活动的输入和输出 发现描述参与者和用况,输入:业务模 型或领域模型,补充需求,特征表;输 出:用况模型【概述】 ,术语表 � 赋予用况优先级:输入:用况模型【概 述】 ,补充需求,术语表;输出:体系结 构描述【 用况模型视角】 � � 精华用况:输入:用况模型【概述】 ,补 充需求,术语表;输出:用况【精华】 构造人机接口原型:输入:用况【精华】 , 用况模型【概述】 ,补充需求,术语表; 输出:人机接口原理 � 用况模型结构化:输入:用况【精华】 , 用况模型【概述】 ,补充需求,术语表; 输出:用况模型【精华】 � � 如何描述系统的参与者和用况?并举例 说明。 参与者:发现参与者与描述参与者:1) 之间已近存在业务用况模型,可依据业 务模型直接发现一些候选参与者;2)没
第五章 RUP
软件工程(02333)自考章节总结
桂电职院计算机系 易烽
的功能块,表达参与者使用系统的方式, 因此一个用况可用于规约系统可执行 的、与参与者进行交互的一个动作序列, 包括其中一些可选动作序列,并且用况 还有自己 的属性。 � (12)需求分析的目标:在系统用况模 型的基础上,创建系统分析模型以及在 该分析模型视角下的体系结构描述,系 统分析模型是系统的一种概念模型,解 决系统用况模型中存在的二义性和不一 致性问题,并以一种系统化的形式准确 地表达用户的需求。 � � (13)需求分析阶段的 3 个术语:分析 包、分析类和用况细化。 (14)分析类:是类的一种衍型,很少 有操作和特征标记,而用责任来定义其 行为,并且其属性和关系也是概念性的, 包括:边界类、实体类、控制类 � (15)用况细化:是一个针对一个用况, 其行为可用多个分析类之间的相互作用 来细化,并记为用况细化[分析] � (16)分析包:分析包是一种控制信息 组织复杂性的机制,提供了分析制品的 一种组织手段,形成了一些可管理的部 分。 � � (17)建造一个系统需求分析模型的活 动和任务,以及各活动的输入和输出? 1、体系结构分析:输入:用况模型、补 充需求、业务模型或领域模型、体系结 构描述[用况模型];输出:分析包[概 述]、分析类[概述]、体系结构描述[分 析];2、细化用况:输入:用况模型、 补充需求、业务模型或领域模型、体系 结构描述[分析];输出:用况细化[分 析]、分析类[概述];3、对类分析:输 入:用况细化[分析]、分析类[概述] 输 �
软件工程(02333)自考章节总结
桂电职院计算机系 易烽
间比较? � 1、 语言描述不同: 客户语言与开发语言; 2、视图:系统外与系统内;3、结构: 使用用况予以结构化,给出外部视角系 统结构与使用衍型类结构化,给了部视 角系统结构;4、作用:标注“系统应该 做什么,不应该做什么”与可以做出开 发者理解系统如何勾画、如何设计和如 何实现基础;5、问题:捕获系统功能, 包括体系结构方面具有意义的功能,可 能存在冗余、不一致和冲突等问题与给 出细化系统功能,包括在体系结构方面 具有意义的功能;6、定义一些进一步需 要在分析模型中予以分析用况与定义每 一个用况细化。 � � � � � (25)RUP 设计目标:定义满足系统/产 品分析模型所规约需求的软件结构。 (26) RUP 设计的基本术语: 设计子系统、 设计类、用况细化[设计]、接口。 (27)RUP 设计的软件模型包括:1、部 署模型;2、设计模型。 (28)建造一个系统设计模型的活动和 任务,以及各活动的输入与输出? 1、体系结构设计:输入:用况模型、补 充需求、分析模型、体系结构描述[分析 模型角度];输出: � 子系统[概述]、接口[概述]、设计类[概 述]、 部署模型[概述]、 体系结构描述[设 计];2、设计用况:输入:用况模型、 补充需求、分析模型、部署模型;输出: 用况[设计-实现]、设计类[概述]、子系 统[概述]、接口[概述];3、类的设计: 输入: 用况[设计-实现]、设计类[概 述]、 接口[概述] 、 分析类[完成];输出: 设计类[完成] ;4、设计子系统:体系 结构描述[设计]、子系统[概述]、接口
第五章 RUP
[概述];输出:子系统[完成]、接口[完 成]。 � (29)用况的设计包括以下任务:1、标 识参与用况细化的设计类;2、标识参与 用况细化的子系统的接口。 � (30)类的设计包括以下任务:1、概括 描述设计类;2、标识操作;3、标识属 性;4、标识关联、聚合;5、标识泛化; 6、描述方法; � � � (31)RUP 设计的突出优点:P165 页 (32)RUP 的设计模型包括以下元素: P165 页 (33)RUP 实现的目标:基于设计类和子 系统生成构件;对构件进行测试,进行 集成测试和连接;把可执行的构件映射 到部署模型。 � (34)RUP 实现包括以下活动:1、实现 模型;2、实现子系统;3、实现模型视 角下的体系结构描述;4、实现类; � � (35)RUP 测试包括内部测试、中间测试 和最终测试。 (36)RUP 测试的主要活动:1、计划测 试;2、设计测试;3、实现测试;4、执 行集成测试;5、执行系统测试;6、评 价测试。
第五章 RUP
出:分析类[完成];4、对包进行分析: 输入:系统体系结构描述[分析]、分析 包[概述]输出:分析类[完成]。 � (18)创建系统的分析模型,一般应进 行体系结构分析、用况分析、类的分析 以及包的分析 4 项活动。 � (19)用况分析[分析]的目标:1、标识 那些在用况事件流执行中所需要的分析 类和对象;2、将用况的行为,分布到参 与交互的各个分析对象;3、捕获用况细 化上的特定需求。 � (20)用况分析[分析]开展的活动包括: 1、标识分析类,标识在细化一个用况中 所需要的实体类、控制类和边界类,给 出它们的名字、责任、属性和关系;2、 描述分析(类)对象之间的交互,通常 使用交互图来描述。 � (21)类的分析[分析]的目标:1、标识 并维护分析类的责任;2、基于它们在用 况细化中的角色,标识并维护分析类的 属性和关系;3、捕获分析类细化中的特 定需求。 � (22)类的分析[分析] 开展的活动包 括:1、标识责任;2、标识属性;3 标识 关联与聚合; � (23)需求分析模型对以后开发工作的 影响?1、对设计中子系统的影响。分析 包一般将影响设计子系统的结构;2、对 设计类的影响。分析包可以作为类设计 时的规格说明;3、对用况细化[设计]的 影响。用况细分[分析]对用况细化[设计] 有两方面影响,一个是它们有乃至于为 用况创建更精确的规格说明,另一个是 当对用况进行设计时,用况细化[分析] 可作为其输入。 (24)需求获取模型与需求分析模型之
相关文档
最新文档