文档库 最新最全的文档下载
当前位置:文档库 › 软件工程学第一次作业答案

软件工程学第一次作业答案

软件工程学第一次作业答案
软件工程学第一次作业答案

、简答题

1、需求分析的任务答:需求分析的任务主要包括以下几项:确定目标系统的综合要求,其中包括(目标

系统的功能、性能、运行的环境及扩展性要求);

分析目标系统的数据要求,其中包括(系统平台需要哪些数据?数据间有什么关系?数据及数据结构?对数据的处理逻辑关系等);导出目标系统的逻辑模型;修正系统流程图;修正系统开发计划、开发原型系统

2、软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,具体表现在哪些方面?

答:

1、无法开发复杂程度高的软件

2、成本和进度估计不准

3、无统一科学的规范,软件不可维护

4、无质量保证,可靠性差

5、软件常不能满足用户的需求

6、无适当的文档资料

7、软件生产率太低

二、选择题

1 、从下列关于结构化程序设计的叙述中选出5 条正确的叙述。

①程序设计比较方便,但比较难以维护。

②便于由多个人分工编制大型程序。

③软件的功能便于扩充。

④程序易于理解,也便于排错。

⑤在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。

⑥模块之间的接口叫做数据文件。

⑦只要模块之间的接口关系不变,各模块内部实现细节的修改将不会影响别的模块。

⑧模块间的单向调用关系叫做模块的层次结构。

⑨模块越小,模块化的优点越明显。一般来说,模块的大小都在10 行以下。

答:正确的叙述有②、③、④、⑦、⑧。

如果程序结构的模块化满足评价的标准(高内聚、低耦合),这样的结构是容易维护的,程序的功能也容易测试,容易理解、容易修改、容易维护的,程序的功能也容易扩充。特别适合

于大型程序编制时,多人分工全中作,协同完成任务的情形。因为是采用自顶向下、逐层分

解来划分解模块结构的,所以模块之间的调用关系是分层次的模块结构,就叫做模块的层次结

构。模块之间的信息传递叫做模块的接口,模块之间传递信息可以通过参数表、全局变量或全

局数据结构、数据文件、专门模块太大,控制路径数目多、涉及的范围广、变量的数目多、总

体复杂性高,可理解性、可修改性、可靠性就会变差。模块太小,模块个数增多,调用的系统开

销就会增大。所以要有一个权衡

2、供选择的答案中选出正确的答案填入下列叙述中的()内。

模块内聚性用于衡量模块内部各成分之间彼此结合的紧密程度。

(1)一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模块的内聚性是(A)的。

(2)将几个逻辑上相似的成分放在同一个模块中,通过模块入口处的一个判断决定执

行哪一个功能,该模块的内聚性是(B)的。

(3)模块中所有成分引用共同的数据,该模块的内聚性是(C)。

(4)模块内的某成分的输出是另一些成分的输入,该模块的内聚性是(D)的。

(5)模块中所有成分结合起来完成一项任务,该模块的内聚性是(E)的。它具有简明的外部界面,由它构成的软件易于理解、测试和维护。

供选择的答案:

A?E :①功能内聚②信息内聚③通信内聚

④过程内聚⑤偶然内聚⑥时间内聚⑦逻辑内聚

答:A.⑤偶然内聚;B.⑦逻辑内聚;C.③通信内聚;D.④过程内聚;E.①功能内聚;

3、从下列叙述中选出5条符合程序设计风格指导原则的叙述。

①嵌套的重数应加以限制。

②尽量多使用临时变量。

③不滥用语言特色。

④不用可以省略的括号。

⑤使用有意义的变量名。

⑥应尽可能把程序编得短些。

⑦把常见的局部优化工作留给编译程序去做。

⑧注解越少越好。

⑨程序的格式应有助于读者理解程序。

⑩应尽可能多用GOT(语句。

答:①、③、⑤、⑦、⑨是正确的。

①条件语句和循环语句嵌套得过多会增加程序的复杂性,从而增加程序的出错率。

③虽然国际上以至国内已经发表了编程语言的标准,但各个计算机厂商在推出自己的计

算机系统的同时,也推出了针对自己机器特色的程序设计语言的非标准版本,如果利用这些语言的非标准特性编写程序,就会给将来程序的移植带来困难。为了提高程序的可移植性,应当只使用语言的标准版本,不要滥用语言的非标准特色。

⑤给在程序中使用的变量赋予与实际含义相符的名字,可以提高程序的可读性,从而提高程序的可维

护性。

⑦程序优化的工作最好交给编译程序来做,程序员应把主要注意力放在提高程序的可读

性、清晰性、简洁性、正确性、一致性等方面,从而保证软件的可靠性和可维护性。

⑨程序的可读性是至关重要的,所以程序的格式应有助于读者理解程序

4、由Rumbaugh等人提出的一种面向对象方法叫做对象模型化技术(OMT ),即三视点技术,它要求把分析时收集的信息建立在下述3个模型中:

第一个模型是(A)----它的作用是描述系统的静态结构,包括构成系统的对象和类、

它们的属性和操作,以及它们这间的联系。

第二个模型是(B)----它描述系统的控制逻辑,主要涉及系统中各个对象和类的时序及变化状况。

(B)包括两种图,即(0和(D )。(C)描述每一类对象的行为,

(D)描述发生于系统执行过程中的某一特定场景。

第三个模型是(巳----它着重于描述系统内部的数据的传送与处理,它由多个数据流组成。

供你选择的答案如下:

A, B, E:①数据模型②功能模型③行为模型

④信息模型⑤原型⑥动态模型

⑦对象模型⑧逻辑模型⑨控制模型

⑩仿真模型

C, D :①对象图②概念模型图③状态迁移图

④数据流程图⑤时序图⑥事件追踪图

⑦控制流程图⑧逻辑模拟图⑨仿真图

⑩行为图

答:

A.⑦,

B.⑥,

C.③,

D.⑥,

E.②。

在OMT中,把分析时收集的信息建立在3个模型中。第一个模型是对象模型, 它的作用是描述系统的静态结构,包括构成系统的对象和类、它们的属性和操作,以及它们之间

的联系。第二个模型是动态模型,它描述系统的控制逻辑,主要涉及系统中各个对象和类的时序及变化状况。动态模型包括两种图,即状态迁移图和事件追踪图。状态迁移图描述每一类对象的行为,事件追踪图描述发生于系统执行过程中的某一特定场景。第三个模型是功能模型,它着重于描述系统内部数据的传送与处理,它由多个数据流图组成。

5、从下列叙述中选出5条与提高软件的可移植性有关的叙述。

①把程序中与计算机硬件特性有关的部分集成在一起。

②选择时间效率和空间效率高的算法。

③使用结构化的程序设计方法。

④尽量用高级语言编写程序中对效率要求不高的部分。

⑤尽可能减少注释。

⑥采用表格控制方式。

⑦文档资料详尽、正确。

⑧在有虚拟存储器的计算机系统上开发软件。

⑨减少程序中对文件的读写次数。

⑩充分利用宿主计算机的硬件特性。

答:正确的叙述有①、③、④、⑥、⑦。

为了提高软件的可移植性,应当尽可能用高级语言编写源程序代码。对于与硬件或操作

系统有关的部分,或对效率要求很高的部分,

应当为它们建立专门的模块,将用汇编语言写的程序封装在这些模块中,与程序中其他部分以事先约定的标准方式接口。这样,一旦硬件环境或操作系统环境发生变化,只需修改这个别模块即可。

采用表格控制方式,将所有的外部设备接口或与其他系统的接口,包括信息传补递、驱动程序入口等都用表格控制,即使将来硬件、相关软件发生的变化,只需修改表格中的登

记项,原来的程序一律可以不改。

为了将来修改方便,不致于引入新的错误,相关文档一定要齐全、正确,程序必须有必要的注释,并使用如结构化程序设计方法这样的良好程序设计方法来编写程序。至于算法选择,与效率有关,与可移植性无关。其他叙述,如⑧、⑨、⑩,都不利于可移植性。

三、论述题

1.论述瀑布模型软件开发方法的基本过程。

答:

瀑布模型软件开发方法将软件开发分成四个时期八个阶段:分析时期:

1)问题定义---问题性质、工程目标及规模

2)可行性研究---技术上、经济上、社会上是否有可行解?

3)需求分析---确定目标系统必须具备的功能?设计时期:

4)总体设计---1).几种求解方案;2).设计软件的结构

5)祥细设计---设计出程序的祥细规格说明编码与测试时期:

6)编码与单元测试---程序编码实现与模块测试

7)综合测试---集成测试和验收测试运行与维护时期:

8)维护---改正性维护、适应性维护、完善性维护、预防性维护特点:下导式开发、追溯式确认、适合能事先确切定义需求的软件开发

2.为什么软件需要维护?维护有哪几种类型?简述它们的维护过程。

答:

在软件开发成这交付用户使用后,为了保证软件在一个相当长的是时期有够正常运行,不需要对软件进行维护。

软件维护的为类型有4种:

改正性维护、适应性维护、完善性维护和预防性维护。其中,改正性维护是要改正正在特定的使用条件下暴露出来的一些潜在程序错误或设计缺陷;适应性维护是要在软

件使用过程中数据环境发生变化或处理环境发生变化时修改软件以适应这种变化;完善性维护是用户和数据处理人员使用软件过程中提出改进现有功能、增加新的功能,以及

改善总体性能的要求后,修改软件以把这些要求纳入到软件之中。

由这些原因引起折维护活动可以归为以下几类: 预防性维护是为了提高软件的可维

护性、可靠性等,事先采用先进的软件工程方法对面要维护的软件或软件中的某一部分 (重新)进行设计、编制和测试,为以后进一步改进软件打下良好的基础。

软件维护的过程如图 7.19所示。第一步是先确认维护要求。这需要维护人员与用 户反复协商,弄清错误概况及对业务的影响大小,

以及用户希望做什么样的修改,

并把

这些情况存入故障数据库。然后,由维护组织管理员确认维护类型。

fflLW 牧件錐护的过程

对于改正维护申请,从评价错误的严重性开始工作。 如果存在严重的错误,则必须

安排人员,在系统监督员的指导下,进行问题 分析,寻找错误发生的原因,进行“救

火”性的紧急维护;对于不严重的错误,可根据任务、 机时情况,视轻重缓急,进行 排队,统一安排时间。对于适应性维护和完善性维护申请, 需要先确定每项申请的优先

次序。若某项早请的优先级非常高,

就可立即开始维工作,否则,

维护申请和其他的开

发工作一样,进行排队, 统一安排时间。并不能所有的完善性维护申请都必须承担,因 为进行完善性维护等于是做二次开发,

工作量大,所以需要根据商业需要、 可利用资源

的情况、目前和将来软件的发展向以及其他考虑,决定是否承担。

尽管维护申请的类型不同, 但都要进行同样的技术工作。

这此工作有修改软件的需

求说明,修改软件设计、设计评审、对源程做必要的修改、单元测试、集成测试(回归 测试)、确认测试、软件配置评审等。在每次软件维护任务完成后,最好进行一次情况 评审,对以下问题做一总结:

(1) 在目前情况下,设计、编码、测试中的哪一方面可以改进?

K\

A

员丿

安丨

耀解穫序

? 借析廉设计

9

MW

?

?安

适 应 性

开妬 分析

忧先 战序

祀错谋改1E 列人计划

通过井査荷、 使用的戟杵

把安帶好肘幵发 工作*列入计划

攜试程序

修改

[过的 \软件

安排

改正性

?

7爆护

维护 实薦

安擅计划

修改建序

用户 謹护人團

ttH

幵同廿

明护型

定改求

(2)哪些维护资源应该有但没有?

(3)工作中主要的或次要的障碍是什么?

(4)从维护申请的类型来看是否应当有预防性维护?

情况评审对将来的维护工作如何进行会产生重要的影响,并可为软件机构的效管理提供

重要的反馈信息。

3.软件复杂性有哪几类?软件复杂性度量模型应遵循哪些则?

答:

K.Magel从6个方面描述软件的复杂性:

(1)理解程序的难度。

(2)改错及维护程序的难度。

(3)向他人解释程序的难度。

(4)按指定方法修改程序的难度。

(5)根据设计文档编写程序的工作量。

(6)执行程序时需要资源的程度。

软件复杂性度量模型应遵循的基本原则:

(1)软件复杂性与程序大小的关系不是线性的。

(2)控制结构复杂的程序较复杂。

(3)数据结构复杂的程序较复杂。

(4)转向语句使用不当的程序较复杂。

(5)循环结构比选择结构复杂,选择结构又比顺序结构复杂。

(6)语句、数据、子程序和模块在程序中的次序对软件复杂性都有影响。

(7)全程变量、非局部变量较多时程序较复杂。

(8)参数按地址传递比按值传递更复杂。

(9)函数副作用比显式参数传递更难以琢磨。

(10)具有不同作用的变量共用一个名字时较难理解。

(11)模块间或过程联系密切的程序较复杂。

(12)嵌套深度越深程序越复杂。

最典型的两种程序复杂性度量的方法中,McCabe环路复杂性度量就是针对基本原则

(2)

制定的度量模型。Halstead软件科学则是针对程序中操作符和操作数的出现频度而制定的度量模型。

4.简述面向对象OMT方法的分析模型,描述面向对象分析的大体过程。

答:

OMT是一种软件工程方法学,支持整个软件生存周期。它覆盖了问题构成、分析、设计和实现等阶段。统分析阶段涉及对应用领域的理解及问题域建模。分析阶段的输入是问

题陈述说明要解决的问题并提供了对假想系统的概念总览同用户不断对话以及对客

观世界背景知识的了解作为分析的附加输入分析的结果是一个形式化模型该模型概括了系统的3个本质因素:对象及对象之间的关系、动态的控制流以及带有约束的功能数据变换。

系统设计阶段确定整个系统的体系结构。系统可由多个子系统组成,把对

象组织成聚集并发任务而反映并发性对动态模型中处理的相互通信、数据存储及实现要制定全面的策略。在权衡设计方案时要建立优先顺序。对象设计阶段要精心考虑和细化

分析模型然后优化地生成一个实际设计。对象设计的重点从应用域概念转到计算机概念上来应选择基本算法来实现系统中各主要功能。OMT方法学是组织开发的一种过程。

这种过程是建立在一些协调技术之上的OM■方法的基础是开发系统的3个模型再细化

这3种模型并优化以构成设计。对象模型由系统中的对象及其关系组成动态模型描述系统中对象对事件的响应及对象间的相互作用功能模型则确定对象值上的各种变换及变换上的约束。

5.软件配置管理的任务是什么?描述作为基线的软件配置项(SCI)的修改过程模型。

答:

软件配置管理的任务:标识、版本控制、变化控制、配置审计及报告。作为基线的软件配置项(SCI)的修改过程模型:

四、设被测试的程序段为:

begin

S1;

if (x=0) and ( y>2 ) the n S2;

else

If ( x < 1 ) or ( y=1 ) the n S3;

S4;

end

可供选择的测试数据组为:

X y

I03

n12

出-12

IV31

找出实现(1)条件覆盖(2)路径覆盖要至少采用的数据组。

答:1、条件覆盖:每个语句至少执行一次,并且使判定表达式中的每个条件都取到各种可能的结果。

第一个判定表达式可能的结果:x=0, x<>0,y>2,y<=2

第二个判定表达式可能的结果:x<1,x>=1,y=1,y<>1;

测试数据组:1x=0, y>2

II III IV x<>0,y<=2,x>=1,y<>1 x<>0,y<=2,x<1,y<>1 x<>0,y<=2,x>=1,y=1

2、路径覆盖:程序中的每条可能路径都至少执行一次。测试数据组:I ,11,III

五、图4.9是两个程序流程图,试分别用N—S图和PAD表示,并计算它们的McCabe复杂性度量。

Q START Q START

图4月两个秤序潦程图

答:

对应的N-S图如下所示

殉亍起序NTRA

对应PAD 图如下所示:

McCabe 复杂性度量都为3

分别表示为 L1 (

c f e )、L2 (a f b f

d )、L3 (a ^ b ^

e )和 L4 (a ^ c ^ d ),或简写成 ace 、

abd 、abe 、及acd 。由于覆盖测试的目标不同,

逻辑覆盖方法可以分为语句覆盖、

判定覆盖、

条件覆盖、判定一条件覆盖、条件组合覆盖和路径覆盖。从备选的答案中选择适当的测试用 例与之匹配: (A ) 属于语句覆盖;(B )、(C )属于判定覆盖;(D )、( E )属于条件覆盖;(F )、(G 属于

判定一条件覆盖;(H )属于条件组合覆盖;(I )属于路径覆盖。

供选择的答案:

A ?1 :① 【(2, 0, 4), (2, 0, 3)】覆盖 ace

【(1,

1, 1), (1, 1, 1)】覆盖 abd ;

② 【(1,

0,

3) ,(1 , 0, 4)】覆盖 abe

【(2, 1, 1) ,(2 , 1, 2)】覆盖 abe

③ 【(2,

0,

4) ,(2 , 0, 3)】覆盖 ace

④ 【(2,

1,

1), (2, 1, 2)】覆盖 abe

; 【(3, 0, 3), (3, 1,

1)】覆盖 acd ;

⑤ 【(2,

0,

4), (2, 0, 3)】覆盖 ace

【(1,

0,

1), (1,

0, 1)】覆盖 abd

【(2, 1, 1), (2, 1, 2)】 覆盖 abe ;

【(2, 0, 4), (2, 0, 3)】 覆盖 ace ;

【(1

,

1,

1),( 1, 1, 1)】 覆盖 abd ;

【(3,

0, 3), (3, 0, 1) 覆盖 acd ;

⑦ 【(2, 0, 4), (2, 0, 3)】 覆盖 ace

【(1

,

1,

1),( 1, 1, 1) 覆盖 abd ;

【(1

,

0,

3),(1 , 0, 4)】 覆盖 abe ;

【(2, 1,

1),(2 , 1, 2)】 覆盖 abe ;

答: A.③,

B.

(

①,C.④ ), D.②,E .⑤,F.①,G.⑤,H.⑦, I.⑥。 B 、C 的

答案可互换。D E 的答案可互换。F 、G 的答案可互换。

七、写出本学期你完成的实习题目,并用面向对象方法,建立该系统的对象模型 (可简略定

义服务)和功能模型。 答:订票系统

对象模型:

心1丨(

铀?|丨

()

软件工程作业及参考答案(版)

软件危机与软件工程 3. 软件工程方法学的研究内容包含软件开发技术和软件工程管理两部分, 其期望达到的最终目标是 ()。 A ?消除软件危机 B ?软件开发工程化 C ?程序设计自动化 D ?实现软件重用 4?软件工程学中除重视软件开发技术的研究外,另一重要组成内容是软件的( )。 A .工程管理 B .成本核算 C .人员培训 D .工具开发 5?软件计划是软件开发的早期和重要阶段,此阶段要求交互和配合的是( )。 A ?设计人员和用户 B ?分析人员和用户 C .分析人员和设计人员 D .编码人员和用户 6 .软件工程的结构化生命周期方法是将软件开发的全过程划分为相互独立而又相互依存的阶段,软件的 逻辑模型形成 于( )。 A .开发阶段 B .计划阶段 C .分析阶段 D .设计阶段 7 .在软件工程中,软件生存期可分为计划、开发以及维护三个阶段,每个时期又分为若干更小的阶段。 通常,计划时期包括问题定义、可行性研究和 ①,开发时期包括 ②、详细设计、编码以及 ③。 ① A . 需求分析 B . 可行性研究 C . 经费预算 D . 质量保证 ② A . 需求分析 B . 可行性研究 C 总体设计 D 模块化设计 ③ A . 文档编制 B . 运行维护 C . 测试 D . 验收 &软件开发中常采用的生命周期方法,由于其特征而一般称其为() A .层次模型 B .瀑布模型 C .螺旋模型 D .对象模型 9.描述软件生存周期的瀑布模型包括计划、 (A ) 、设计、编码、测试、维护等阶段。其中,设计阶段又可 以分成(B )和(C )两个步骤。 A :①需求分析 ②可行性研究 ③需求调查 ④问题定义 B, C :①方案设计 ②代码设计 ③概要(总体)设计 ④数据设计 ⑤详细设计 10.什么是软件危机?软件危机产生的原因? ".生命周期阶段的划分?每个阶段的任务? 可行性研究 软件工程 1软件危机是指在开发和( A .运行 B .设计 2 ?造成软件危机的原因是: A. 用户使用不当 C .硬件不可靠 )过程中所遇到的一系列严重问题。 B .对软件的错误认识 D ?缺乏好的开发方法和手段

《金融工程学》习题及参考答案

《金融工程学》习题及参考答案

无套利定价和风险中性定价 练习 1、假定外汇市场美元兑换马克的即期汇率是1美元换1.8马克,美元利率是8%,马克利 率是4%,试问一年后远期无套利的均衡利率是多少? 2、银行希望在6个月后对客户提供一笔6个月的远期贷款。银行发现金融市场上即期利 率水平是:6个月利率为9.5%,12个月利率为9.875%,按照无套利定价思想,银行为这笔远期贷款索要的利率是多少? 3、假如英镑与美元的即期汇率是1英镑=1.6650美元,远期汇率是1英镑=1.6600美元,6 个月期美远与英镑的无风险年利率分别是6%和8%,问是否存在无风险套利机会?如存在,如何套利? 4、一只股票现在价格是40元,该股票一个月后价格将是42元或者38元。假如无风险利 率是8%,用无风险套利原则说明,执行价格为39元的一个月期欧式看涨期权的价值是多少? 5、条件同题4,试用风险中性定价法计算题4中看涨期权的价值,并比较两种计算结果。 6、一只股票现在的价格是50元,预计6个月后涨到55元或是下降到45元。运用无套利 定价原理,求执行价格为50元的欧式看跌期权的价值。 7、一只股票现在价格是100元。有连续两个时间步,每个步长6个月,每个单步二叉树 预期上涨10%,或下跌10%,无风险利率8%(连续复利),运用无套利原则求执行价格为100元的看涨期权的价值。 8、假设市场上股票价格S=20元,执行价格X=18元,r=10%,T=1年。如果市场报价欧式 看涨期权的价格是3元,试问存在无风险的套利机会吗?如果有,如何套利? 9、股票当前的价格是100元,以该价格作为执行价格的看涨期权和看跌期权的价格分别 是3元和7元。如果买入看涨期权、卖出看跌期权,再购入到期日价值为100 的无风险债券,则我们就复制了该股票的价值特征(可以叫做合成股票)。试问无风险债券的投资成本是多少?如果偏离了这个价格,市场会发生怎样的套利行为? 参考答案 1、按照式子:(1+8%)美元=1.8×(1+4%)马克,得到1美元=1.7333马克。 2、设远期利率为i,根据(1+9.5%)×(1+i)=1+9.875%, i=9.785%. 3、存在套利机会,其步骤为: (1) 以6%的利率借入1655万美元,期限6个月; (2) 按市场汇率将1655万美元换成1000万英镑; (3) 将1000万英镑以8%的利率贷出,期限6个月; (4) 按1.6600美元/英镑的远期汇率卖出1037.5万英镑; (5) 6个月后收到英镑贷款本息1040.8万英镑(1000e0.08×0.5),剩余3.3万英镑; (6) 用1037.5万元英镑换回1722.3万美元(1037.5×1.66); (7) 用1715.7美元(1665 e0.06×0.5)归还贷款本息,剩余6.6万美元; (8) 套利盈余=6.6万美元+3.3万英镑。 4、考虑这样的证券组合:购买一个看涨期权并卖出Δ股股票。如果股票价格上涨到42元, 组合价值是42Δ-3;如果股票价格下降到38元,组合价值是38Δ。若两者相等,则42Δ-3=38Δ,Δ=075。可以算出一个月后无论股票价格是多少,组合 的价值都是28.5,今天的价值一定是28.5的现值,即28.31=28.5 e-0.08×0.08333。即-f+40Δ=28.31,f是看涨期权价格。f=1.69。

软件工程作业(答案参考)

软件工程第一次作业 1)软件工程适用范围? 答:软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量。 2)软件工程如何控制系统开发的复杂性的? 答:可理解性(understandability)。系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。 3)以你的经验,举例说明一个成熟的软件通常采用什么方法来适应现实世界的变化的?答:以猎豹游览器为例,开始软件投入市场公测,软件自带收集错误报告的程式,当遇到问题软件错误,会将相关信息反馈到接受错误信息的服务器,已方便程序员及时发现问题加以修复,修复完成后提供程序更新,循环此法提供软件运行稳定性,另外还有用户反馈的相关功能,对软件的建议也会收集到服务器,按实用性需求程序员可在原有程序上开发调整更适合用户使用的程序。 4)假设某软件公司,能为同一个用户开发两个不同层次的软件:一个层次的软件功能非常强大,在满足用户所有需求的基础上,还能提供大大超过用户需求的其他更多更强的功能;另一个层次的软件仅仅能满足用户需求,但没有提供其他额外的功能。请问如果你是项目负责人,你会选择为客户开发那个层次的软件? 答:我会选择仅仅满足用户需求的软件。因为太多的功能,相对于非专业的人员,在用户体验上可能会造成困扰,太多的功能会导致难以操作。而且功能强大的软件还会给用户费用上带来不必要的投入,软件是以人为本,方便用户工作,达到提高工作效率的目的。若然日后此用户需要更多功能的时候,我们还是可以向其软件公司提供升级功能解决用户需求。

大工《软件工程》大作业参考题目及要求【内容仅供参考】787

网络教育学院 《软件工程》课程大作业 题目:企业货物管理系统 第一大题:谈谈你对本课程学习过程中的心得体会。 在学习软件工程过程中,或许有诸多不解,我们要从整体概念上较好地理解和把握、学好软件工程,学习时要注意多看多练要注意结合实际,更要多思考,面对错误不要一范就问,要尝试自己去解决。但是还要注意什么都学,肯定是什么都学不透的,要集中精力打攻坚战,学习软件工程首先要明白自己的学习目标究竟是什么,根据自己的实际工作出发,有针对性的在相应的学习方向上进行提高,制定出详细的学习规划。还要注意与其他科目的相辅相成,就像我们在学习面向对象分析的时候要结合大一学习的面向对象及其方法学这一在写软件的时候,我们首先要有整体的结构和思路,这样才能照着一定的思想一定思路去写下去,有人说其实写软件并不难,只要给你一个思路你就可以不断地往下写。我觉得确是如此,其实我们平时写软件我觉得并不是很难的事,平时即使遇到处理不了的技术问题,哪里编译出现错误等等其实都可以在网上提问。技术问题一般我们都可以在网上得到答案,但软件的思想不是我们看了一下就能真正理解的。 第二大题:完成下面一项课程设计。

2020秋《软件工程》课程大作业 注意:从以下4个题目中任选其一作答。 题目二:企业货物管理系统 总则:不限制编程语言,可以选用VB/C#等,不限数据库,可选用SQL/MYSQL/ACCESS等设计一个企业货物管理系统。(具 体工具平台及语言可以自己根据自己的习惯选用,不必完 全按照上述技术要求) 要求:(1)撰写一份word文档,里面包括(需求分析规格书、详细设计说明书、测试报告书)章节。 (2)需求分析规格书,包含功能需求分析、数据需求分析。 功能需求分析介绍该系统具体包含何种功能。 (3)详细设计说明书包含数据表,核心程序,模块相关截 图。数据表为数据库所建立的数据表,至少包含管理人员 信息表、货物信息表、调价记录表等。核心程序需列出系 统的核心程序。 (4)测试报告书要求简单介绍测试的方法与测试的示例, 举出一组示例即可。 (5)整个word文件名为 [作业提交: 大作业上交时文件名写法为:[以附件形式上交离线作业(附件的大小限制在

软件工程复习题及答案

一、画出实际的瀑布模型p16 三、画出增量模型p18 五、可行性研究的工作过程及内容p36 答:1).复查系统规模和目标; 2).研究目前正在使用的系统; 3).导出新系统的高层逻辑模型; 4).进一步定义问题; 5).导出和评价供选择的解法; 6).推荐行动方针;7).草拟开发计划;8.书写文档提交审查。 六、可行性研究的目的是什么?要如何进行?p35 答:目的:用最小的代价在尽可能短的时间内确定问题是否能够解决。 首先,需要进一步分析和澄清问题定义。之后,分析员应该导出系统的逻辑模型。从系统逻辑模型出发,探索若干可供选择的主要解决方法(即系统实现方案)。对每种解法都应该仔细研究它的可行性,一般来说,至少应该从下述三方面研究每种解法的可行性:(1)技术可行性;(2)经济可行性;(3)操作可行性。必要时还应该从法律、社会效益等更广泛的方面研究每种解法的可行性。 二、画出快速原型模型p17 四、画出简化的螺旋模型p20 软件工程考试复习题

七、需求分析的任务是什么?进行需求分析时要重点考虑哪些方面的问题?p56 答:1、确定对系统的综合要求:1).功能需求——指定系统必须提供的服务。通过需求分析应该划分出系统必须完成的所有功能。2).性能需求——性能需求指定系统必须满足的定时约束或容量约束,如速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等。3).可靠性和可用性需求——可靠性是指确保各应用及其相关的所有交易的完整性和一致性的能力;可用性是指一个系统应确保一项服务或者资源永远都可以被访问到。4).出错处理需求——说明系统对环境错误应该怎样响应。5).接口需求——描述应用系统与它的环境通信格式。6).约束——在设计或实现应用系统时应遵守的限制条件。常见的约束有:精度;工具和语言约束;设计约束;应该使用的标准;应该使用的硬件平台。7).逆向需求——说明软件系统不应该做什么。8).将来可能提出的要求——应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求。 2、分析系统的数据要求。 3、导出系统的逻辑模型。 4、修正系统开发计划。 八、典型的总体设计过程包括哪些步骤?p92 答:典型的总体设计过程包括九个步骤: 1)、设想供选择的方案;2)、选取合理的方案;3)、推荐最佳方案;4)、功能分解;5)、设计软件结构;6)、设计数据库;7)、制定测试计划;8)、书写文档;9)审查和复查。 九、总体设计的主要任务是什么?总体设计的主要过程有哪些?p91 答:主要任务: 总体设计又称为概要设计或初步设计。通过这个阶段的工作将划分出组成系统的物理元素—程序、文件、数据库、人工过程和文档等等,但是每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容将在以后仔细设计。总体设计的另一项重要的任务是设计软件的结构,也就是要确定系统中每个程序是由哪个模块组成,以及这些模块相互间的关系。 主要过程: ①寻找实现目标系统的各种不同的方案。②从这些供选择的方案中选取若干个合理的方案,为每个合理的方案都准备一份系统流程图,列出组成系统的所有物理元素。③进行成本/效益分析,并且制定实现这个方案的进度计划。从中选出一个最佳方案。④进一步为这个最佳方案设计软件结构。⑤进行必要的数据库设计,确定测试要求并且制定测试计划。 十、何谓耦合?有哪些类型?软件设计应该取哪种类型?p97 答:耦合是对一个软件结构内不同模块之间互连程度的度量。 类型:数据藕合、控制藕合、公共环境藕合、内容耦合 设计原则:尽量使用数据耦合,少用控制耦合,限制公共环境耦合的范围,完全不用内容耦合。 十一、何谓内聚?有哪些类型?软件设计应该取哪种类型?p98 答:内聚标志一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。 低内聚有如下几类:偶然内聚、逻辑内聚、时间内聚。中内聚主要有两类:过程内聚、通信内聚。高内聚也有两类:顺序内聚、功能内聚。 设计时应该力求做到高内聚,通常中等程度的内聚也是可以采用的,而且效果和高内聚相差不多;但是,低内聚很坏,不要使用。

金融工程学复习题答案

《金融工程学》复习题答案 名词解释 1、金融工程:金融工程是以金融产品和解决方案的设计、金融产品的定价与风险管理为主要内容,运用现代金融学、工程方法与信息技术的理论与技术,对基础证券与金融衍生产品进行组合与分解,以达到创造性地解决金融问题的根本目的的学科与技术。 2、绝对定价法:绝对定价法就是根据证券未来现金流的特征,运用恰当的贴现率将这些现金流贴现加总为现值,该现值就是此证券的合理价格。 3、相对定价法:相对定价法的基本思想就是利用标的资产价格与衍生证券价格之间的内在关系,直接根据标的资产价格求出衍生证券价格。 4、套利:套利是指利用一个或多个市场存在的价格差异,在没有任何损失风险且无须投资者自有资金的情况下获取利润的行为。套利是市场定价不合理的产物。在有效的金融市场上,金融资产不合理定价引发的套利行为最终会使得市场回到不存在套利机会的均衡状态,此时确定的价格就是无套利均衡价格。 5、无风险套利组合:在没有限制卖空的情况下,套利者可以通过卖空被高估资产,买进被低估的资产,构成净投资为零的套利组合。 6、状态价格:状态价格是指在特定的状态发生时回报为1,否则回报为0的资产在当前的价格。如果未来时刻有N种状态,而这N种状态的价格都知道,那么只要知道某种资产在未来各种状态下的回报状况,就可以对该资产进行定价。这就是状态价格定价技术。 7、金融远期合约:金融远期合约是指双方约定在未来的某一确定时间,按确定的价格买卖一定数量的某种金融资产的合约。 8、远期价格:远期价格是交易时的即期价格加上持有成本。 9、远期利率协议(FRA):远期利率协议是买卖双方同意从未来某一商定的时刻开始,在某一特定时期内按协议利率借贷一笔数额确定、以特定货币表示的名义本金的协议。 10、远期利率:协议利率,即现在时刻的将来一定期限的利率。 11、金融期货合约:金融期货合约是指在交易所交易的、协议双方约定在将来某个日期按事先确定的条件(包括交割价格、交割地点和交割方式等)买入或卖出一定标准数量的特定金融工具的标准化协议。 12、盯市:在每天期货交易结束后,交易所与清算机构都要进行结算和清算,按照每日确定的结算价格计算每个交易者的浮动盈亏并相应调整该交易者的保证金账户头寸。这就是所谓的每日盯市结算。 13、无收益资产:无收益资产是在到期日前不产生现金流收入的资产。 14、远期价格的期限结构:远期价格的期限结构描述的是同一标的资产不同期限远期价格之间的关系。 15、支付已知收益率的资产:支付已知收益率的标的资产,是指在远期合约到期前将产生与该资产现货价格成一定比率的收益的资产。 16、持有成本:持有成本=保存成本+无风险利息成本-标的资产在合约期限内提供的收益 17、金融互换:金融互换是指两个或两个以上参与者之间,直接或通过中介机构签订协议,互相或交叉支付一系列本金或利息的交易行为。 18、利率互换:利率互换是指双方同意在未来的一定期限内根据同种货币的相同名义本金交换现金流,其中一方的现金流根据事先选定的某一浮动利率计算,而另一方的现金流则根据固定利率计算。 19、货币互换:货币互换是在未来约定期限内将一种货币的本金和固定利息与另一货币的等价本金和固定利息进行交换。 20、金融期权:金融期权是指赋予其买者在规定期限内按双方约定的价格购买或出售一定数

软件工程大作业.

《软件工程》大作业 学期:2015秋季学期 班号: 学号: 姓名: 成绩: 子与信息工程学院 2015年10月

目录 第1章系统概述 (2) 1.1系统介绍 (2) 1.2开发的目的与意义 (2) 第2章可行性分析 (3) 2.1经济可行性 (3) 2.2 技术可行性 (3) 2.3 系统业务分析 (3) 第3章需求分析 (5) 3.1 结构化需求分析 (5) 3.2 系统需求说明 (5) 3.3 系统数据流图和数据字典 (6) 第4章系统设计 (9) 4.1 系统ER图 (9) 4.2 系统功能结构图 (11) 第5章系统实现 (12) 5.1用户模块 (12) 5.2用户注册功能 (13) 第6章系统测试 (14)

第1章系统概述 随着计算机网络技术和信息技术的不断发展,人类信息资源实现高度共享,从根本上改变了人类生活的方式,网上购物作为一种新型的购物方式,以其快捷方便的特点成为了人们购物的主要选择。网上支付的不断完善,加上物流业的配套建设,使得用户能够足不出户就能挑选商品,节省了时间和金钱,这种网上购物方式越来越受到人们的青睐。 1.1系统介绍 网上商城系统是一个可以方便各类人群所需,省时省力全方位的大型购物网上商城,可以让所需人群足不出户不分地域时间的购买所需用品。网上商城系统共分为两个部分:前台用户部分和后台管理部分。在前台系统中有用户注册登陆,浏览商品,选购商品,订购商品。后台系统中有系统管理,会员管理,订单管理,商品管理。在用户注册模块中,分别加强了用户注册信息验证的严格性;在商品或商家信息浏览和查询模块中,用户可以对商品进行浏览检索,查看商品的详细信息;非注册会员可以选定商品加入购物车,但只有注册成会员的用户才能对商品进行购买。在后台系统中,系统管理员可以对已注册的用户进行审查,可以对现有的商品进行管理;并对提交的订单进行处理与邮寄。 1.2开发的目的与意义 在线购物系统,从结构上讲,可以划分为前台和后台两个部分,主要涉及到前、后台的网页设计,以及与数据库相关的操作。在网络应用中,数据库的应用是一个很关键的环节。特别地,随着Internet的普及和人们对于互联网的依赖性,许多基于互联网的应用也不断的涌现出来。基于B/S(浏览器、服务器)构架开发网站和系统已成为一种主流趋势,人们对其的需求也越来越大。 现在已经进入网络时代,很多电子产品的生产企业也开始意识到了网络的重要性,开始在电子产品中加入对网络服务的支持。比如在智能手机中增加了对移动互联网应用的支持,这在提升了电子产品的竞争力的同时,也扩展了电子商务的应用范围。 总体上看,电子商务的发展,具有十分良好的发展前景。

软件工程在线作业及答案

1.第1题 在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的成本/效益分析的是()。 A.经济可性性 B.技术可行性 C.操作可行性 D.法律可行性 您的答案:A 题目分数:2.5 此题得分:2.5 2.第2题 为了提高模块的独立性,模块内部最好是()。 A.逻辑内聚 B.时间内聚 C.功能内聚 D.通信内聚 您的答案:C 题目分数:2.5 此题得分:2.5 3.第3题 Jackson方法是一种面向()的方法。 A.对象 B.数据结构 C.数据流 D.控制流 您的答案:B 题目分数:2.5 此题得分:2.5 4.第4题 需求分析阶段研究的对象是软件项目的()。 A.用户需求 B.合理要求 C.模糊要求 D.工程要求 您的答案:A 题目分数:2.5 此题得分:2.5

5.第5题 面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。 A.系统设计 B.详细设计 C.软件设计 D.编码 您的答案:B 题目分数:2.5 此题得分:2.5 6.第6题 程序控制的三种基本结构中,()结构可提供多条路径选择。 A.反序 B.顺序 C.循环 D.分支 您的答案:D 题目分数:2.5 此题得分:2.5 7.第7题 下列属于黑盒测试的是()。 A.基本路径测试 B.条件测试 C.循环测试 D.等价划分 您的答案:D 题目分数:2.5 此题得分:2.5 8.第8题 软件设计一般分为总体设计和详细设计,它们之间的关系是()。 A.全局和局部 B.抽象和具体 C.总体和层次 D.功能和结构 您的答案:A 题目分数:2.5 此题得分:2.5

9.第9题 好的软件结构应该是()。 A.高耦合,高内聚 B.低耦合,高内聚 C.高耦合,低内聚 D.低耦合,低内聚 您的答案:B 题目分数:2.5 此题得分:2.5 10.第15题 面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以有父类,下层可以有子类,这种层次结构系统的一个重要性质是(),一个类获得其父类的全部描述(数据和操作)。 A.传递性 B.继承性 C.复用性 D.并行性 您的答案:B 题目分数:2.5 此题得分:2.5 11.第16题 软件项目管理是()一切活动的管理。 A.需求分析 B.软件设计过程 C.模块控制 D.软件生命周期 您的答案:D 题目分数:2.5 此题得分:2.5 12.第17题 一个模块把开关量作为参数传递给另一模型,这两个模块之间的耦合是()。 A.外部耦合 B.数据耦合 C.控制耦合 D.内容耦合 您的答案:C

金融工程学课后习题精简版

二、简答题(每题10 分,共20 分) 1、解释保证金制度如何保护投资者规避其面临的违约风险。 保证金是投资者向其经纪人建立保证金账户而存入的一笔资金。当投资者在期货交易面临损失时,保证金就作为该投资者可承担一定损失的保证。保证金采取每日盯市结算,如果保证金账户的余额低于交易所规定的维持保证金,经纪公司就会通知交易者限期内把保证金水平补足到初始保证金水平,否则就会被强制平仓。这一制度大大减少了投资者的违约可能性。另外,同样的保证金制度建立在经纪人与清算所、以及清算会员与清算所之间,这同样减少了经纪人与清算会员的违约可能。 2、试述多头套期保值和空头套期保值。 运用远期(期货)进行套期保值就是指投资者由于在现货市场已有一定头寸和风险暴露,因此运用远期(期货)的相反头寸对冲已有风险的风险管理行为。 运用远期(期货)进行套期保值主要有两种类型:多头套期保值和空头套期保值。(一)多头套期保值。 多头套期保值也称买入套期保值,即通过进入远期或期货市场的多头对现货市场进行套期保值。担心价格上涨的投资者会运用多头套期保值的策略,其主要目的是锁定未来买入价格。 (二)空头套期保值。空头套期保值也称卖出套期保值,即通过进入远期或期货市场的空头对现货市场进行套期保值。担心价格下跌的投资者会运用空头套期保值的策略,其主要目的是锁定未来卖出价格。 3、解释为何美式期权价格至少不低于同等条件下欧式期权价格由于美式期权可以在到期日前的任何时间行权,比欧式期权更灵活,赋于买方更多的选择,而卖方则时刻面临着履约的风险。因此,美式期权的权利金相对较高,价格也不会低于同等条件下欧式期权价格。 4、简述股票期权和权证的差别。股票期权与股本权证的区别主要在于: (1)有无发行环节。期权无需经过发行环节,只要买卖双方同意就可直接成交。权证进入交易市场之前,必须由发行股票的公司向市场发行。 (2)数量是否有限。权证先发行后交易,其流通数量相对固定。期权无发行环节,有人愿买,有人愿卖,就可成交,其数量在理论上是无限的。 (3)是否影响总股本。期权不影响,权证影响。 5、请解释保证金制度如何保护投资者规避其面临的违约风险略。同第一题。 6、请解释完美套期保值的含义。完美套期保值一定比不完美的套期保值好吗完美的套期保值是指能够完全消除价格风险的套期保值。完美的套期保值能比不完美的套期保值得到更为确定的套期保值收益,但其结果不一定会比不完美的套期保值好。例如,一家公司对其持有的一项资产进行套期保值,假设资产的价格呈现上升趋势。此时,完美的套期保值完全抵消了现货市场上资产价格上升所带来的收益;而不完美的套期保值有可能仅仅部分抵消了现货市场上的收益,所以不完美的套期保值有可能产生更好的结果。 7、互换的主要种类互换的主要种类有:利率互换,指双方同意在未来的一定期限内根据同种货币的同样名义本金交换现金流,其中一方的现金流根据事先选定的某一浮动利率计算,而另一方的现金流则根据固定利率计算。货币互换,在未来约定期限内将一种货币的本金和固定利息与另一货币的等价本金和固定利息进行交换。同时还有交叉货币利率互换、基点互换、零息互换、后期确定互换、差额互换、远期互换、股票互换等等。 8、说明与互换有关的主要风险与互换相联系的风险主要包括: (1)信用风险。由于互换是交易对手之间私下达成的场外协议,因此包含着信用风险,也就是交易对手违约的风险。当利率或汇率等市场价格的变动使得互换对交易者而言价值为正时,互换实际上是该交易者的一项资产,同时是协议另一方的负债,该交易者就面临着协议另一方不履行互换协议的信用风险。对利率互换的交易双方来说,由于交换的仅是利息差额,其真正面临的信用风险暴露远比互换的名义本金要少得多;而货币互换由于进行本金的交换,其交易双方面临的信用风险显然比利率互换要大一些。 (2)市场风险。对于利率互换来说,主要的市场风险是利率风险;而对于货币互换而言,市场风险包括利率风险和汇率风险。值得注意的是,当利率和汇率的变动对于交易者是有利的时候,交易者往往面临着信用风险。市场风险可以用对冲交易来规避,信用风险则通常通过信用增强的方法来加以规避。 三、计算题(共6 题,共50 分) 5% 4 82 1、如果连续复利年利率为5%, 10000元现值在年后的终值是多少解:10000 e 0 .12725.21元 2、2007年4月16日,某中国公司签订了一份跨国订单,预计半年后将支付 1 000 000美元。为了规避汇率风险,该公司于当天向中国工商银行买入了半年期的 1 000 000美元远期,起息日为2007年10月18日,工商银 行的远期外汇牌价如下表所示。半年后(2007年10月18日),中国工商银行的实际美元现汇买入价与卖出价 分别为和.请问该公司在远期合约上的盈亏如何 中国工商银行人民币远期外汇牌价 单位:人民币/100外币

软件工程大作业

《软件工程》大作业 学期: 2015秋季学期 班号: 学号: 姓名: 成绩: 子与信息工程学院 2015年10月

电子与信息工程学院大作业 目录 第1章系统概述 (2) 1.1系统介绍 (2) 1.2开发的目的与意义 (2) 第2章可行性分析 (3) 2.1经济可行性 (3) 2.2 技术可行性 (3) 2.3 系统业务分析 (3) 第3章需求分析 (5) 3.1 结构化需求分析 (5) 3.2 系统需求说明 (5) 3.3 系统数据流图和数据字典 (6) 第4章系统设计 (9) 4.1 系统ER图 (9) 4.2 系统功能结构图 (11) 第5章系统实现 (11) 5.1用户模块 (11) 5.2用户注册功能 (12) 第6章系统测试 (13) 1

第1章系统概述 随着计算机网络技术和信息技术的不断发展,人类信息资源实现高度共享,从根本上改变了人类生活的方式,网上购物作为一种新型的购物方式,以其快捷方便的特点成为了人们购物的主要选择。网上支付的不断完善,加上物流业的配套建设,使得用户能够足不出户就能挑选商品,节省了时间和金钱,这种网上购物方式越来越受到人们的青睐。 1.1系统介绍 网上商城系统是一个可以方便各类人群所需,省时省力全方位的大型购物网上商城,可以让所需人群足不出户不分地域时间的购买所需用品。网上商城系统共分为两个部分:前台用户部分和后台管理部分。在前台系统中有用户注册登陆,浏览商品,选购商品,订购商品。后台系统中有系统管理,会员管理,订单管理,商品管理。在用户注册模块中,分别加强了用户注册信息验证的严格性;在商品或商家信息浏览和查询模块中,用户可以对商品进行浏览检索,查看商品的详细信息;非注册会员可以选定商品加入购物车,但只有注册成会员的用户才能对商品进行购买。在后台系统中,系统管理员可以对已注册的用户进行审查,可以对现有的商品进行管理;并对提交的订单进行处理与邮寄。 1.2开发的目的与意义 在线购物系统,从结构上讲,可以划分为前台和后台两个部分,主要涉及到前、后台的网页设计,以及与数据库相关的操作。在网络应用中,数据库的应用是一个很关键的环节。特别地,随着Internet的普及和人们对于互联网的依赖性,许多基于互联网的应用也不断的涌现出来。基于B/S(浏览器、服务器)构架开发网站和系统已成为一种主流趋势,人们对其的需求也越来越大。 现在已经进入网络时代,很多电子产品的生产企业也开始意识到了网络的重要性,开始在电子产品中加入对网络服务的支持。比如在智能手机中增加了对移动互联网应用的支持,这在提升了电子产品的竞争力的同时,也扩展了电子商务的应用范围。 总体上看,电子商务的发展,具有十分良好的发展前景。

软件工程课后习题(含答案)

第一章练习题 一、填空题 1、软件工程三要素是:方法、工具、过程。 2、软件开发方法是指软件开发过程中所应遵循的方法和步骤。 二、名词(术语)解释: 1、可靠性---是指在给定的时间间隔内,程序成功运行的概率。可靠性是衡量软件质量的一个重要目标。 2、可理解性---指系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植和重用。 三、问答题 1、面向对象方法的优点是什么? 答:(1)将现实世界问题向面向对象解空间直接映射,实现对现实世界的直接模拟。 (2)以数据为中心,而不是基于对功能的分解,使得软件结构相对稳定,软件的重用性、可靠性、可维护等特性都较好。 2、可视化开发方法的优点有哪些? 答:(1)简化了图形用户界面的设计和编码工作,将开发的注意力主要集中在程序的执行逻辑和工作流程上。 (2)软件开发简单,易学、易上手。 (3)专业或非专业人员都能参与软件开发活动。 第二章练习题 一、填空题: 1、软件工程过程是:为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工 程活动。 2、一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的生存过程经历的生存过程称为软件生存期或叫生命期。 3、软件生命周期的阶段划分为3个时期是:定义时期、开发时期、维护时期。 4、软件工程标准的5个层次是:国际标准、国家标准、行业标准、企业规范、项目规范。 二、简答题: 1、瀑布模型的优点有哪些? 答:1、强迫开发人员采用规范的技术方法; 2、严格地规定了每个阶段必须提交的文档; 3、每个阶段结束前必须正式进行严格的技术审查和管理复审。 2、瀑布模型的缺点是什么? 答:1、在软件开发的初期阶段就要求做出正确、全面、完整的需求分析对许多应用软件来说是极其困难的。 2、在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。 3、作为整体开发的瀑布模型,由于不支持产品的演化,缺乏灵活性,对开发过程中很 难发现的错误,只有在最终产品运行时才能暴露出来,从而使软件产品难以维护。

金融工程课后题习题解答zhoujiaLite

CH 7 7.1 一位投资者购买了一个执行价格为X的看涨期权并出售了一个相同执行价格 的看跌期权。请描述他的头寸情况。 解:投资者头寸状况为:max(S T-X,0)-max(X-S T,0) 此头寸相当于执行价格为X的远期合约。当X与远期合约价格相同时,合约价值为0,此时看涨期权与看跌期权价值相等。 7.2请说明为什么欧式期权总是不如有相同标的物、相同执行价格、相同到期 日的美式期权值钱。 解:美式期权持有者除具有欧式期权持有者所拥有的所有权利外,还有提早执行权。因此,美式期权至少应与相应的欧式期权有相同的价值。 7.3请解释为什么美式期权的价值总是大于等于它的内在价值。 解:美式期权的持有者有立即执行期权,实现期权内在价值的权利,因此,美式期权的价值至少应等于其内在价值。 7.4列举影响期权价格的6个因素。 解:影响期权价格的6个因素有:标的资产价格、期权的执行价格、无风险利率、资产价格的波动率、期限以及持有期间收益。 7.5基于无红利支付股票的看涨期权,期限为4个月,执行价格为$25,股票价格 为$28,无风险利率为8%。该看涨期权价格下限为多少?

解:该看涨期权的价格下限为:28-25×0.08*0.3333 e-=$3.66 7.6基于无红利支付股票的欧式看跌期权,期限为1个月,股票价格为$12,执行价格为$15,无风险年利率6%,该期权的价格下限为多少? 解:该看跌期权价格下限为:15×0.06*0.083333 e--12=$2.93 7.7请给出两个原因说明为什么早执行无红利支付股票的美式看涨期权不是最好的。第一条原因应包括货币时间价值。第二条原因在利率为零时也成立。 解:1)推迟执行可推迟支付期权的执行价格,期权持有者可赚取执行价格更长时间的时间价值; 2)推迟执行可提供保值价值,避免执行日时股价低于执行价格。假设期权购买者有现金X,且利率为0。提早执行会使期权购买者头寸在到期日为T S, 而推迟执行买方头寸在到期日则为max(X,T S) 7.8 “提前执行美式看跌期权是在货币的时间价值与看跌期权的保险价值之间的权衡。”请解释这句话。 解:美式期权能为其标的股票提供保险,它可使股票以执行价格X出售。如果期权提早执行,则保险消失,但期权多头立即获得股票价格,并可获得提早执行日至到期日间资金X的时间价值。 7.9 执行价格为$20,3个月后到期的欧式看涨期权和欧式看跌期权,售价都为$3。 无风险年利率为10%,股票现价为$19,预计1个月后发红利$1。请说明对

-软件工程习题答案参考

软件工程 绪论 1.什么是软件危机?为什么会产生软件危机? 答:软件危机是指在计算机软件的开发和维护过程中遇到的一系列严重问题。(1).软件维护费用急剧上升,直接威胁计算机应用的夸大。 (2).软件生产技术进步缓慢 2.什么是软件生产工程化?工程化生产方法与早期的程序设计方法 主要差别在哪里? 答:结构化程序设计地出现,使许多产业界认识认识到必须把软件生产从个人化方式改变为工程化。采用工程的概念、原理、技术和方法开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程,同时这也是工程化生产方法。 3.分别说明(1)软件开发方法与开发工具;(2)软件技术与软件管 理的相互关系。 答:(1)工具和方法,是软件开发技术的两大支柱,它们密切相关。当一种方法提出来并证明有效后,往往随之研制出相应的工具,来帮助实现和推行这种方法。新方法在推行初期,总有人不愿接受和采用。若将新方法融合于工具之中,使人们通过使用工具来了解新方法,就能更快促进新方法的推广。(2)在工业生产中,即使有先进的技术和设备,管理不善的企业也不能获得良好的效益。软件在生产中不能按质按时完成计划,管理混乱往往是其中的重要原因。所以对于一

个理想的软件工程环境,应该同时具备技术和管理两个方面。 4.试从你的亲身实践,谈谈软件工具在软件开发中的作用。 答:用C++开发一个软件,是校园一卡通的模块。首先,要在编辑程序支持下在计算机中输入源程序。然后编译程序,把源程序翻译成目标程序。如果发现错误,就重新调入编辑程序对源程序进行修改。编译通过后,再调用连接程序吧所有通过了编译目标程序连同与之有关的程序连接起来,构成一个能在计算机上运行的可执行软件。编译程序,编辑程序,连接程序以及支持他们的计算机操作系统,都属于软件工具。离开这些工具,软件开发就是去了支持,变得十分困难和低效,甚至不能运行。 5.什么是软件工程环境?谈谈你对环境重要性的认识。答:方法与工具相结合,再加上配套的软、硬件支持就形成环境。例如在批处理时代,用户开发的程序是分批送入计算机中心的计算机的,有了错误,就得下机修改。程序员对自己写的程序只能继续地跟踪,思路经常被迫中断,效率难于提高。分时系统的使用,使开发人员从此能在自己的终端上跟踪程序的开发,仅此一点,就明显提高了开发的效率。 6. 何谓面向对象软件工程?简述它与传统软件工程在各型软件开发中的作用。 答:以面向对象程序设计为基础。 7. 软件按规模大小可分成哪几类?简述软件工程中各型软件开发中的作用。 答:按规模分为极小、小、中、大、甚大、极大。(1)中小型软件:

中国石油大学 软件工程 第一次在线作业

中国石油大学软件工程第一次在线作业 (2.5分)结构化分析建立功能模型的工具是() ? A、DFD ? B、判定树/判定表 ? C、SC ? D、结构化语言 我的答案:A 此题得分:2.5分 2.(2.5分)检查软件产品是否符合需求定义的过程称为() ? A、确认测试 ? B、集成测试 ? C、系统测试 ? D、单元测试 我的答案:A 此题得分:2.5分 3.(2.5分)软件测试方法中,黑盒测试方法和白盒测试方法是常用的方法,其中黑盒测试方法主要用于测试() ? A、结构合理性 ? B、软件外部功能 ? C、程序正确性 ? D、程序内部逻辑

我的答案:B 此题得分:2.5分 4.(2.5分)软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为() ? A、瀑布模型 ? B、对象模型 ? C、螺旋模型 ? D、层次模型 我的答案:A 此题得分:2.5分 5.(2.5分)建立原型的目的不同,实现原型的途径也有所不同,下列不正确的类型是() ? A、用于验证软件需求的原型 ? B、垂直原型 ? C、用于验证设计方案的原型 ? D、用于演化出目标系统的原型 我的答案:B 此题得分:2.5分 6.(2.5分)面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言。 ? A、Booch方法 ? B、Coad方法 ? C、UML语言

? D、OMT方法 我的答案:C 此题得分:2.5分 7.(2.5分)黑盒技术设计测试用例的方法之一为() ? A、因果图 ? B、逻辑覆盖 ? C、循环覆盖 ? D、基本路径测试 我的答案:A 此题得分:2.5分 8.(2.5分)软件测试方法中的静态测试方法之一为() ? A、计算机辅助静态分析 ? B、黑盒法 ? C、路径覆盖 ? D、边界值分析 我的答案:A 此题得分:2.5分 9.(2.5分)技术可行性是可行性研究的关键,其主要内容一般不包括() ? A、风险分析 ? B、资源分析 ? C、人员分析 ? D、技术分析

软件工程大作业.

软件工程大作业 题目:学生档案管理系统 小组成员:戚盈洁( 王大伟( 王磊( 霍成海( 目录 第一章. 系统调查 (3 1.1系统调查内容 (3 1.2系统调查方法 (3 第二章. 系统分析 (3 2.1 系统分析 (3 2.2 系统调结构图 (4 2.3 子系统功能描述 (4 第三章. 系统设计 (6 3.1 界面设计原则 (6 3.2 数据库设计 (6 3.3 代码设计 (10 第四章. 学生照片管理模块设计 (14

4.1 ImageFunc模块 (14 4.2 设计照片管理窗体 (16 4.3 在学生信息管理窗体中添加照片管理代码 (17 第五章. 系统测试 (18 5.1 系统测试项目 (18 5.2 系统评估 (20 第一章. 系统调查 1.1系统调查内容 学校各院系基本概况:院系名称,专业设置,课程设置,课时安排,学生人数,学生班级数等。 学校资源条件调查,包括计算机配备,网络支持条件等。 各院系专业设置概况:现有开设专业及规划中开设专业设置,专业开设课程,各课程授课教师与成绩处理。 学校各部门(学生处、教务处、档案管理室、各院系对学生基本情况的需求与掌握,对学生基本信息的处理方式与业务流程。 学校各部门、单位、教师、学生对系统的其他要求和希望。 1.2系统调查方法 通过对部分高校学生档案管理人员的访问,了解到目前大部分高校的档案管理工作存在工作效率低,成本高,保密性差,查询困难等问题。大部分工作人员都提出需要一个具有检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本

低等优点的现代化信息管理系统。为解决此问题我们决定开发一个既方便又操作简单,功能较为齐全的学生档案管理系统。 第二章. 系统分析 2.1 系统分析 1 系统开发的总体任务是学生档案管理的系统化和规范化。 2 系统开发的目标是使档案管理工作科学化和规范化,提高安全系数。 3 系统功能树本系统主要功能是实现学生基本情况的管理。 图3.1学生档案管理系统功能模块 2.2 系统调结构图

软件工程复习题及答案(完整)

软件工程复习题及答案(完整)

一、选择 1、文档是软件产品的一部分,没有文档的软件就不称其为软件。对 2、在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。错 3、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。错 4、建立用例模型的步骤包括确定角色、确定用例和绘制用例图。错 5、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。错 6、软件配置管理是一组标识、组织和控制修改源程序的活动。错 7、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。错 8、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。对 9、边界值分析方法是取输入/输出等价类的边界值作为测试用例。对 10、面向对象的分析是面向计算机系统建立软件系统的对象模型。错 11、(D)是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。 A 软件过程 B 软件测试 C 软件生存周期 D 软件工程 12、ISO9000是由ISO/TC176制定的关于(B)和质量保证的国际标准。 A 质量控制 B 质量管理 C 质量策划 D 质量改进 13、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每个等级都包含了实现该成熟度等级目标的若 干(B)。 A 关键实践 B 关键过程域 C 软件过程能力 D 软件过程 14、在软件开发的各种资源中,(D)是最重要的资源。 A 开发工具 B 方法 C 硬件环境 D 人员 15、软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。 A 固有的 B 人为的 C 可消除的 D 不可降低的 16、在各种不同的软件需求中,(D)描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明。 A 业务需求 B 功能需求 C 非功能需求 D 用户需求 17、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。 A 需求不确定的 B 需求确定的 C 管理信息 D 决策支持 18、(A)意味着一个操作在不同的类中可以有不同的实现方式。 A 多态性 B 多继承 C 类的可复用 D 信息隐蔽 19、时序图反映对象之间发送消息的时间顺序,它与(D)是同构的。 A 用例图 B 类图 C 活动图 D 协作图 20、单元测试的测试用例主要根据(D)的结果来设计。 A 需求分析 B 源程序 C 概要设计 D 详细设计 二、填空题 1、在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是关联关系。 2、类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是依赖关系。 3、用例及其协作之间是实现关系。 4、接口及其实现类或构件之间是实现关系。 5、动物与老虎之间是泛化关系。 三、问答题 1、软件复用的范围不仅仅涉及源程序代码,请至少列出5种可能复用的软件元素。 可复用的软件元素包括(选5种):项目计划、成本估计、体系结构、需求模型和规格说明、设计、用户文档和技术文档、用户界面、数据结构、测试用例。 2、传统"瀑布模型"的主要缺陷是什么?试说明造成缺陷的原因。 传统"瀑布模型"的主要缺陷及其原因:在项目的早期,用户常常很难清楚地给出所有需求,瀑布模型却要求如此。由于瀑布模型的特点,早

相关文档
相关文档 最新文档