搜档网
当前位置:搜档网 › 《软件工程》试题及参考答案(第10套)

《软件工程》试题及参考答案(第10套)

《软件工程》试题及参考答案(第10套)
《软件工程》试题及参考答案(第10套)

《软件工程》试题

第一部分选择题

一、单项选择题(本大题共20小题,每小题1分,共20分)

在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

1、软件可行性研究一般不考虑 ( )

A、是否有足够的人员和相关的技术来支持系统开发

B、是否有足够的工具和相关的技术来支持系统开发

C、待开发软件是否有市场、经济上是否合算

D、待开发的软件是否会有质量问题

2、软件详细设计的主要任务是确定每个模块的 ( )

A、算法和使用的数据结构

B、外部接口

C、功能

D、编程

3、为了提高软件的可维护性,在编码阶段应注意( )

A.保存测试用例和数据

B.提高模块的独立性

C.文档的副作用

D.养成好的程序设计风格

4、快速原型模型的主要特点之一是( )

A.开发完毕才见到产品

B.及早提供全部完整的软件产品

C.开发完毕后才见到工作软件

D.及早提供工作软件

5、软件需求分析的主要任务是准确地定义出要开发的软件系统是( )

A.如何做

B.怎么做

C.做什么

D.对谁做

6、软件维护产生的副作用,是指( )

A、开发时的错误

B、隐含的错误

C、因修改软件而造成的错误

D、运行时误操作

7、软件生命周期中所花费用最多的阶段是(D)

A、详细设计

B、软件编码

C、软件测试

D、软件维护

8、因计算机硬件和软件环境的变化而作出的修改软件的过程称为 ( )

A.校正性维护

B.适应性维护

C.完善性维护

D.预防性维护

9、一个模块内部各程序都在同一数据结构上操作,这个模块的内聚性称为( ) 。

A、时间内聚

B、功能内聚

C、信息内聚

D、过程内聚

10、结构化设计又称为( )

A、概要设计

B、面向数据流设计

C、面向对象设计C、详细设计

11. 协作图反映收发消息的对象的结构组织,它与()是同构的。

A 用例图

B 类图

C 活动图

D 时序图

12.黑盒测试在设计测试用例时,主要需要研究( )

A.需求规格说明与概要设计说明

B.详细设计说明

C.项目开发计划

D.概要设计说明与详细设计说明

13. CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每个等级都包含了实现该成熟度等级目标的若干()。

A 关键实践

B 关键过程域

C 软件过程能力

D 软件过程

14.结构化程序之所以具有易于阅读,并且有可能验证其正确性,这是由于( )

A.它强调编程风格 B.选择良好的数据结构和算法

C.有限制地使用GOTO语句 D.只有三种基本结构

15.()意味着一个操作在不同的类中可以有不同的实现方式。

A 多态性

B 多继承

C 类的复用

D 封装

16.对象是OO方法的核心,对象的类型有多种,通常把例如飞行、事故、演出、开会等等,称之为( )

有形实体 B.作用 C.事件 D.性能说明

17. COCOMO模型可用来()

A 度量程序复杂程度

B 计算软件开发成本

C 估计程序的故障总数

D 估计软件开发所需时间

18.为高质量地开发软件项目,在软件结构设计时,必须遵循_________原则。()

A.信息隐蔽B.质量控制

C.程序优化D.数据共享

19. DFD中的每个加工至少需要( )

A. 一个输入流

B. 一个输出流

C. 一个输入或输出流

D. 一个输入流和一个输出流

20.下面关于面向对象方法中消息的叙述,不正确的是( )。

A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息

B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息C. 应用程序之间可以相互发送消息

D.发送与接收消息的通信机制与传统的子程序调用机制不同

二、填空题(本大题共10小题,每小题2分,共20分)

1. Putnam模型是一个模型,适用于软件开发的各个阶段,该估算模型以大型软件项目的为基础,

2. 对用例的完整描述包括用例名称、、前置条件、、0到多个辅事件流、后置条件。

3.问题分析阶段的核心技术是、问题分解及。

4.单元测试的依据是描述,单元测试应对模块内所有重要的设计测试用例,以便发现模块内部的错误。

5.一个典型的重用组织机构应该由重用管理组、、和软部件开发组构成

6.软件产品的基本属性是可维护性、、有效性、

7. 测试策略应包含、、测试实施和测试结果收集评估等。

8. 影响编码质量的因素包括编程语言、和,它们对程序的可靠性、可读性、可测试性和可维护性都将产生深远的影响。

9.设计模型则包含以包图表示的,以交互图表示的用例实现图,完整、精确的类图,以及针对复杂对象的状态图、用以描述流程化处理过程的等。

10. UML的类包含三个部分:类的名称、、。

三、名词解释题(本大题共5小题,每小题3分,共15分)

1、水平原型

2、CASE工具

3、部署图(deployment diagram)

4、垂直原型

5、数据抽象

四、简答题(本大题共5小题,每小题5分,共25分)

1.简述设计模型精化时需要考虑的任务

2.简述人机界面的风格大致经历了那四代的演变。

3.简述螺旋模型的基本开发过程。

4.简述启发式设计策略最常用的几条。

5.简述采用信息隐藏原理指导模块设计优点。

五、综合应用题(第1小题10分,第2小题10分,共20分)

高考录取统分子系统有如下功能:

(1)计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;

(2)计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。

试根据要求画出该系统的数据流程图,并将其转换为软件结构图。

《软件工程》试题参考答案

第一部分选择题

一、单项选择题(本大题共20小题,每小题1分,共20分)

1、A

2、D

3、D

4、D

5、C

6、C

7、D

8、B

9、C 10、B 11、D12、A13、B14、D15、A16、C 17、B18、A19、D20、B

第二部分非选择题

二、填空题(本大题共10小题,每小题2分,共20分)

1.动态多变量、实测数据,

2.参与执行者、一个主事件流

3.问题抽象、需求建模

4.详细设计、控制路径

5.重用支持组、系统开发组

6.可依赖性、可用性

7.测试规划、测试用例设计

8.编程准则、编程风格

9软件体系结构图、活动图

10 属性列表、方法列表

三、名词解释题(本大题共5小题,每小题3分,共15分)

1、水平原型是指仅仅模拟目标软件系统某一层面(通常是用户界面层)的原型。

2、CASE工具是一些软件系统,支持软件过程的常规活动,如编辑设计图表、检查图表的连贯性、跟踪已经运行的程序测试等。

3、部署图(deployment diagram) 描述软件系统运行环境的硬件及网络的物理体系结构。

4、 垂直原型是指模拟目标软件系统某一部分的多个层面的原型。当目标系统的内部功能和用户界面都需要借助原型来确定时,这类原型特别有用。一般的进化性原型都属于垂直原型。

5、数据抽象把一个数据对象的定义(或描述 )抽象为一个数据类型名,用此类型名可定义多个具有相同性质的数据对象。

四、简答题(本大题共5小题,每小题5分,共25分)

1.设计模型精化时需要考虑的任务:

以顶层架构图为基础,精化目标软件系统的体系结构;精化类之间的关系;

精化类的属性和操作;针对具有明显状态转换特征的类,设计状态图;

针对比较复杂的类方法,设计活动图。

2、人机界面的风格大致经历了那四代的演变:

最早,即在图形显示、鼠标、高速工作站等技术出现之前,现实可行的界面方式只能是命令和询问方式,通信完全以正文形式并通过用户命令和用户对系统询问的响应来完成。

第二代界面是简单的菜单式。

第三代界面是面向窗口的点选界面,亦称为WIMP界面。

最新一代HCI把第三代HCI技术与超文本、多任务概念结合起来,使用户可同时执行多个任务(以用户的观点)。

3.螺旋模型的基本开发过程可描述如下:

需求定义2)风险分析3)工程实现4)评审。

上述过程将不断迭代,直至给出用户满意的目标软件产品。

4.启发式设计策略最常用的几条有:

改造程序结构,减小耦合度,提高内聚度。

改造程序结构,减少高扇出,在增加程序深度的前提下追求高扇入。

改造程序结构,使任一模块的作用域在其控制域之内。

改造程序结构,减少界面的复杂性和冗余程度,提高协调性。

模块功能应该可预言,避免对模块施加过多限制。

改造程序结构,追求单入口单出口的模块。

为满足设计或可移植性的要求,把某些软件用包(Package)封装起来。

5. 采用信息隐藏原理指导模块设计优点:

支持模块的并行开发;减少软件测试和软件维护的工作量。

五、综合应用题(第1小题10分,第2小题10分,共20分)

答:(1)数据流图:

(2)软件结构图

输入三个正整数作为边长,判断该三条边构成的三角形是等边、等腰还是一般三角形,“判定三角形类别”程序算法用等价类划分和边界值分析法设计测试用例。

先划分等价类并编号

为合理等价类设计测试用例,对于表中对应的四个合理等价类,用三个测试用例

覆盖。

为每一个不合理等价类设计一个测试用例:

用边界值法设计测试用例:

软件工程师职业分析

软件工程师职业分析 首先什么是软件工程师?软件工程师主要进行软件前期的项目需求的分析,然后对项目进行风险评估并试图解决这些风险,然后开始进行软件的开发,后期对软件的进度做相关的评估。软件工程师是从事软件开发相关工作的人员的统称。它是一个广义的概念,包括软件设计人员、软件架构人员、软件工程管理人员、程序员等一系列岗位。这些岗位的分工不同,职位和/或级别不同,但工作内容都是与软件开发生产相关的。 软件工程师是IT行业需求量最大的职位,稳居IT行业职位需求TOP10的第一位(第二位是高级软件工程师)。软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言/C++/JAVA等)、数据库技术(SQL/ORACLE/DB2等)、.NET平台技术、C#、C/S B/S程序开发,还有诸多如JAVA SCRIPT、AJAX、HIBERNATE、SPRING、J2EE、WEB SERVICE、STRUTS等前沿技术。 除此之外,关于网络工程和软件测试的其他技术也要有所涉猎,以利于操控全局。软件工程师可谓是软件项目开发的掌舵者。一名优秀的软件工程师应当具有较强的逻辑思维能力,对于技术的发展有敏锐的嗅觉。虽然要求技术全面,但无须偏执于门门技术都精通,任何软件工程师都有自己的技术特长和偏向,对于自己手中的技术,可有精通-掌握-熟悉-了解之分,根据工作需要和职业发展的具体情况来划分。 从最新的数据看出目前软件行业成为目前最热的行业之一,3G工程师、嵌入式工程师、Java软件工程师、. net软件工程师的开发前景怎么样,成为我们即将毕业的大学生们最关心的问题,下面笔者就从这四个方面分析软件开发工程师的就业前景,参考来源《2013-NIIT软件行业分析》; 3G工程师就业前景分析:中国被世界公认为全球最大的3G移动市场,但是,3G相关的人才却严重失调。专业从事3G应用软件开发从业人员不足千人,据工信部预测,仅2010年,中国3G人才市场缺口就在100万以上,其中3G软件工程师缺口就在50万左右。 3G人才短缺现状,使得3G行业已经成为新的高薪行业,基于3G软件开发人员变得格外抢手。人力资源专家表示,3G软件开发是未来几年最热门和最受

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

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

全国软件工程专业大学排名(10篇).doc

全国软件工程专业大学排名(10篇) 全国软件工程专业大学排名(10篇) 全国软件工程专业大学排名(10篇) 想要报考软件工程专业的考生肯定非常关注软件工程专业开设的大学排名,本文带你一起了解关于全国软件工程大学排名的相关知识,希望通过本文读者可以了解软件工程全国大学排名情况。 一、软件工程专业具体介绍 软件工程专业是2002年国家教育部新增专业,随着计算机应用领域的不断扩大及中国经济建设的不断发展,软件工程专业将成为一个新的热门专业。软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事软件需求分析、软件设计、软件测试、软件维护和软件项目管理等工作所必需的基础知识、基本方法和基本技能,突出对学生专业知识和专业技能的培养,培养能够从事软件开发、测试、维护和软件项目管理的高级专门人才。 二、软件工程专业大学排名榜前十 1、清华大学 清华大学诞生于1911年,简称“清华”,由中华人民共和国教育部直属,中央直管副部级建制,位列“211工程”、“985工程”、””,

入选“珠峰计划”、“2011计划”、“卓越工程师教育培养计划”、“卓越法律人才教育培养计划”、“卓越医生教育培养计划”,为九校联盟、东亚研究型大学协会、环太平洋大学联盟、亚洲大学联盟、清华大学—剑桥大学—麻省理工学院低碳能源大学联盟成员。2、东北大学 东北大学,简称东大,中华人民共和国教育部直属的理工类研究型大学,坐落于东北中心城市沈阳,是国家“211工程”和“985工程”重点建设高校,由教育部、辽宁省、沈阳市三方重点共建,先后入选“2011计划”、“111计划”、”卓越工程师教育培养计划”、“国家大学生创新性实验计划”等,为“21世纪学术联盟”成员高校,是中共中央1960年、1978年确定的全国重点大学,国务院在1981年批准的具有博士学位授予权的高校。 3、南京大学 南京大学,简称“南大”,是教育部直属、中央直管副部级建制的全国重点大学,国家首批“211工程”、“985工程”高校,首批“珠峰计划”、“111计划”、“2011计划”、“卓越计划”实施高校,也是九校联盟、中国大学校长联谊会、环太平洋大学联盟、21世纪学术联盟和东亚研究型大学协会成员。 4、北京航空航天大学 北京航空航天大学简称北航,成立于1952年,由中华人民共和国工业和信息化部直属,中央直管副部级建制,位列“211工程”、“985工程”,入选“珠峰计划”、“2011计划”、“111计划”、“卓越工程师教育培养计划”,为国际宇航联合会、“中欧精英大学联

软件工程作业3

软件工程第六章作业 9、某公司为本科以上学历的人重新分配工作,分配原则如下:如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作;如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士,不分男女,任课题组组长;如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员,学历是硕士,不分男女,任课题组组长。要求:画出分析过程,得出判定表,并进行化简。 条件分析表: 条件名称取值符号取值数性别男M M1=2 女 F 年龄不满18岁T M2=3 满18岁小于50岁Y 超过50岁O 文化程度硕士S M3=2 本科 B 判定表: 1 2 3 4 5 6 7 8 9 10 11 12 性别M M M M M M F F F F F F 文化程度S S S B B B S S S B B B 年龄O Y T O Y T O Y T O Y T 组长√√√√√√ 领导√√ 科研√ 行政√资料员√ 考研√ 简化表: 1,2,3,7,8,9 4 5,11 6 10 12 性别------ M ----- M F F 文化程度S B B B B B 年龄------ O Y T O T 组长√ 领导√ 科研√ 行政√ 资料员√ 考研√

10、研究下面的伪码程序,画出对应的程序流程图。 开始 Input X,N Dim A(N),F(N) I=1 Input F(i) I>N I++ K=0 否是 A(K)=0;J=1 A(K)=A(K)+F(J)*F(J+K)/(N-K+1) J++ K>N-K 否 Print K*X,A(K) K++ K

最新版2016软件工程基础离线作业满分答案

浙江大学远程教育学院 《软件工程基础》课程作业 ————————————————————————————— 第一章概述 1.什么是软件危机,它有哪些典型表现? 答:所谓“软件危机”就是,在计算机软件的开发和维护过程中所遇到的一系列严重的问题,概括起来归纳为:如何开发软件,以满足日益增长、日趋复杂的需要;如何维护数量不断膨胀的已有软件。 软件危机的典型表现主要有: 1. 开发成本和进度不能准确估计 2. 开发出来的软件不能满足用户的要求 3. 软件的可维护性差 4. 软件质量不可靠 5. 软件成本在系统中的比重逐年上升 6. 软件开发生产率的提高速度不够 2.简述产生软件危机的原因和解决的思路。 答:软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。 解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。

3.什么是软件工程?它有哪些本质特性? 答:软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法进行软件开发和维护的学科。 其实质就是用工程的概念、原理、技术和方法,结合有效的管理方法和先进的开发技术,开发与维护软件,以解决软件危机。 4.软件工程是如何用来消除软件危机的? 答:软件工程是从技术和管理两个方面来研究如何更好地开发和维护计算机软件,从源头上消除软件危机。 5.假设你是某软件开发企业的CEO,当你把教材P.4的图1.1给手下的软件工程师们看,同时告诉他们应及早发现并改正错误的重要性时,有人不以为然,认为要求在错误进入软件前就发现并清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么又如何能够在设计阶段就发现并清除呢?”那你应该如何说服? 答:首先要对错误造成工作的延误或一些问题表示歉意。错误是难免,关键是要虚心接受,在以后工作中要更加认真,避免错误机率降到最低。在编码过程中要,首先要在头脑清醒,要保持工作前有足够的睡眠。这样错误机会也会降小。在编程结束后,首先要验证,是否能正常运行或工作。再以后的工作更要虚心,认真,保证这种机会降到最低。

软件工程专业介绍范文

软件工程专业介绍范文 软件工程学的定义 软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义: Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。IEEE:软件工程是开发、运行、维护和修复软件的系统方法。FritzBauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 编辑本段软件工程学的内容 软件工程学的主要内容是软件开发技术和软件工程管理。软件开发技术包含软件工程方法学、软件工具和软件开发环境;软件工程管理学包含软件工程经济学和软件管理学。 专业简介 是计算机领域发展最快的学科分支之一,国家非常重视软件行业的发展,对软件人才的培养给予了非常优惠的政策。本专业培养掌握计算机软件基本理论知识,熟悉软件开发和管理技术、能够在计算机软件领域中从事软件设计、开发和管理的高级人才。

主修课程 该专业除了学习公共基础课外,还将系统学习离散数学、数据结构、算法分析、面向对象程序设计、现代操作系统、数据库原理与实现技术、编译原理、软件工程、软件项目管理、计算机安全等课程,根据学生的兴趣还可以选修一些其它选修课。 毕业去向 除考取国内外名牌大学研究生外,主要毕业去向是计算机软件专业公司﹑信息咨询公司﹑以及金融等其它独资、合资企业。 培养目标 本专业培养适应社会发展需求,德、智、体、美全面发展,具有扎实的计算机应用理论和知识基础,掌握软件工程领域的前沿技术和软件开发方法,具有较强的实践能力和创新精神,具备较强的软件项目的系统分析、设计、开发和测试能力,能够按照工程化的原则和方法从事软件项目开发和管理的应用型人才。 就业方向

软件工程作业第一章

1-1什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机:在计算机软件的开发和维护过程中所遇到的一系列严重问题。 典型表现:软件总是超出预算、落后于进度表,而且产品质量不可靠、维护困难等。 危机原因: 1、软件受其自身特点的影响,生产过程不象硬件那样规范,受人的因素和外界影响很大,在软件生产的各阶段都会引入不同程度的错误,造成不能预期完成任务,致使成本上升,甚至导致软件失败。 2、主客观不相适应。 ●客观上:软件规模增大、功能要求越来越复杂,需求不断变化等; ●主观上:传统的个体化开发观念和方法的影响,无开发过程指导,无开发过程管理;由于主客观矛盾,必然产生软件质量差、开发超期、超预算、维护困难等现象。 1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机? ?基本思想:是强调在软件开发过程中应用工程化原则,解决软件的整体质量较低、最后期限和费用没有保证等问题。 ?软件工程定义:是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它. ?软件工程的根本在于提高软件的质量与生产率,最终实现软件的工业化生产。 本质特性:P6 消除软件危机:软件工程基本原理7条。 1-6 什么是软件过程?它与软件工程方法学有何关系? ?软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。 ?过程定义了运用方法的顺序、应该交付的文档资料、为保证软件质量和协调变化所需要采取的管理措施,以及标志软件开发各个阶段任务完成的里程碑。 关系:是软件工程方法学包含3个要素(方法、工具和过程)之一。 1-7 什么是软件生命周期模型?试比较瀑布模型、(快速)原型模型、增量模型和螺旋模型、喷泉模型的优缺点,说明每种模型的适用范围。 生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。 瀑布模型:它将软件生命周期划分为需求分析、软件设计、程序编写、软件测试和运行维护等基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。优点:文档驱动。 强迫开发人员采用规范的方法;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。遵守瀑布模型的文档约束,将使软件维护变得比较容易一些。 缺点:系统可能不满足需求,用户仅仅通过写在纸上的静态的规格说明,很难全面正确地认识动态的软件产品 适用范围:软件需求明确。 原型模型:在初步调查了解的基础上,提供快速的软件建造工具,开发出一个功能并不十分完善的可实际运行的系统,即原型。需求分析入手快速、表达直观、容易交流。重点解决瀑

软件工程在线作业及答案

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

软件工程就业前景

软件工程就业前景

我国软件出口规模达到215亿元软件从业人员达到72万人在中国十大it职场人气职位中软件工程师位列第一位,软件工程人才的就业前景十分乐观. 软件工程是计算机领域发展最快的学科分支之一,国家非常重视软件行业的发展,对软件工程师人才的培养给予了非常优惠的政策.在中国十大IT职场人气职位中,软件工程师位列第一位,软件工程人员的就业前景十分乐观.以下就是软件工程就业前景介绍;软件工程就业前景时间:2011-6-30 来源:中国药业人才网点击量:2919 编辑:末末我国软件出口规模达到215亿元,软件从业人员达到72万人,在中国十大it职场人气职位中,软件工程师位列第一位,软件工程人才的就业前景十分乐观. 软件工程是计算机领域发展最快的学科分支之一,国家非常重视软件行业的发展,对软件工程师人才的培养给予了非常优惠的政策.在中国十大IT职场人气职位中,软件工程师位列第一位,软件工程人员的就业前景十分乐观.以下就是软件工程就业前景介绍. 一、软件工程专业就业前景之可视化编程 掌握程序设计方法及可视化技术,精通一种可视

化平台及其软件开发技术.获取delphi程序员系列、java初级或vb开发能手认证. 二、软件工程专业就业前景数据库管理 能应用关系范式进行数据库设计,精通sql语言,胜任数据库服务器管理与应用工作.获取oracle数据库管理或sql server数据库应用或windows 三、 软件工程专业就业前景计算机办公应用精通办公自动化应用与管理,熟悉服务器的安装、管理和维护,基于应用服务器的相关服务和软件系统,具备对服务器的网络安全设置、邮件、网页发布、ftp、oa、bbs等系统的应用和维护能力. 就业方向:企业、政府、社区、各类学校等系统管理 三、软件工程专业就业前景之软件工程专业大学排名 1、南京大学 2、清华大学 3、复旦大学 4、武汉大学 5、浙江大学 6、上海交通大学7 、中国科学技术大学8、中山大学9、华中科技大学10、哈尔滨工业大学11、陕西师范大学12、吉林大学13、东北师范大学14、北京师范大学

大学软件工程专业排名

大学软件工程专业排名 权威排名: 2006年高校软件工程排名(开设学校:139所) 1、南京大学 2、清华大学 3、复旦大学 4、武汉大学 5、浙江大学 6、上海交通大学 7、中国科学技术大学 8、中山大学 9、华中科技大学 10、哈尔滨工业大学 11、陕西师范大学 12、吉林大学 13、东北师范大学 14、北京师范大学 其他院校该专业较强的有: 北京交通大学 北京理工大学 华东师范大学 华南理工大学 南开大学 四川大学

天津大学 西安交通大学 西北工业大学 厦门大学 中国地质大学 同济大学 苏州大学 重庆大学 中国石油大学 南京理工大学 宁夏大学 教高[2001]6号文:教育部、国家计委关于批准有关高等学校试 办示范性软件学院的通知 教育部、国家计委关于批准有关高等学校试办示范性软件学院的通知 (2001年12月3日) 教高〔2001〕6号 为适应我国经济结构战略性调整的要求和软件产业发展对人才的迫切需要,实现我国软件人才培养的跨越式发展,教育部和国家发展计划委员会共同研究决定选择部分高等学校,

采取多项扶持政策,支持其试办示范性软件学院。这是新时期推进高等教育改革与发展的一项重要举措。经统一部署、有关高校申报和专家评审,现决定首批批准35所高等学校试办示范性软件学院。为做好示范性软件学院的建设工作,现将有关意见通知如下: 一、要将建设示范性软件学院作为进入新世纪跨越式培养软件人才的重大举措落实好。《国务院关于印发鼓励软件产业和集成电路产业发展若干政策的通知》(国发[2000]18号)中明确提出通过政策引导,鼓励资金、人才等资源投向软件产业,进一步促进我国信息产业快速发展,力争到2010年使我国软件产业研究开发和生产能力达到或接近国际先进水平。实现这一政策目标,加快软件人才培养是重要保证。建设示范性软件学院是我国软件产业人才培养方面实现跨越式发展的一次重大改革尝试,旨在为我国软件产业的发展带来新的推动力。各示范性软件学院要抓住机遇,加快建设步伐,努力成为我国有重要影响的多层次实用 型软件人才培养基地。 二、要将建设示范性软件学院作为加大高等教育人才培养结构调整力度,推进用信息技术改造传统产业的重要举措抓好。《国民经济和社会发展第十个五年计划纲要》提出,要以信息化带动工业化,发挥后发优势,实现社会生产力的跨越式发展。各示范性软件学院要在加大软件专门人才培养力度的同时,把培养大批各类复合型软件人才作为重要任务,为用信息技术改造传统产业准备坚实的人才基础。示范性软件学院可以从所在学校二年级后在校本科生中招生;可以开展软件方向第二学士学位办学;可以招收软件方向工程硕士研究生;可直接从应届本科毕业生中招收工程硕士研究生;招生方式和规模由所在学校自主确定,国 家不安排招生计划数。 三、建设示范性软件学院要以进一步推进办学机制改革,主动推进国内合作办学与中外合作办学,推动产学研紧密结合为基本办学模式。可以多途径探索合作办学的管理体制与运行机制,由高等学校与国内外企业合作,拉动社会资金投入,按运作企业化、办学专业化、后勤社会化的模式兴办。示范性软件学院应把开展切实有效的产学研合作作为推进办学模式

软件工程作业答案

新版形考作业答案第一次!! 09软件工程作业1答案 一、选择题: 1. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。 A.软件工程 B.软件周期 C.软件危机 D.软件产生 2. 瀑布模型本质上是一种(A )模型。 A.线性顺序 B.顺序迭代 C.线性迭代 D.早期产品 3. 瀑布模型存在的问题是(B )。 A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求 4. 螺旋模型是一种将瀑布模型和(A)结合起来的软件开发模型。 A.增量模型B.专家系统C.喷泉模型D.变换模型 5. 原型化方法是用户和设计者之间执行的一种交互构成,适用于(A)系统。 A.需求不确定性高的B.需求确定的C.管理信息D.实时 6. 下列有关软件工程的标准,属于国际标准的是(D) A.GB B.DIN C.ISO D.IEEE 7. 结构化方法是一种基于(D)的方法。 A.数据结构 B.程序结构 C.算法 D.数据流 8. 软件可行性研究实质上是要进行一次(A)需求分析、设计过程。 A、简化、压缩的 B、详细的 C、彻底的 D、深入的 9. 可行性研究的目的是(D) A、分析开发系统的必要性 B、确定系统建设的方案 C、分析系统风险 D、确定是否值得开发系统 10. 设年利率为i,现存入p元,不计复利,n年后可得钱数为(C)。 A、P×(1+i*n) B、P×(i+1)*n C、p×(1+i)n D、p×(i+n) 11. 可行性研究是在(A)之前 A、系统开发 B、测试 C、试运行 D、集成测试 12.可行性研究需要的时间长短取决于系统的规模,一般来说,可行性研究的成本只是预期总成本的(C)。 A、1% B、20% C、8% D、50% 13.我国正式颁布实施的(B)对计算机病毒的定义具有法律性、权威性。 A.《计算机软件保护条例》B.《中华人民共和国计算机信息系统安全保护条例》 C.《中华人民共和国著作权法》D.《计算机病毒防治管理办法》 14. 效率是一个性能要求,因此应当在以下(B)阶段规定 A、可行性分析 B、需求分析 C、概要设计 D、详细设计 15. 需求规格说明书的作用不包括(D) A、软件验收的依据 B、用户与开发人员对软件要做什么的共同理解 C、软件可行性研究的依据 D、软件设计的依据 16. 数据字典是用来定义(D)中的各个成份的具体含义的。 A、程序流程图 B、功能结构图 C、系统结构图 D、数据流程图 17. 数据流程图是(A)方法中用于表示系统逻辑模型的一种图形工具。 A、SA B、SD C、SP D、SC 18. DFD中的每个加工至少有(A)。 A、一个输入流或一个输出流

软件工程师详细介绍

软件工程师 软件工程师 从事软件开发相关工作的人员的统称。它是一个广义的概念,包括软件设计人员、软件架构人员、软件工程管理人员、程序员等一系列岗位。这些岗位的分工不同,职位和/或级别不同,但工作内容都是与软件开发生产相关的。 职位定义 负责产品的软件研发,承担软件设计、代码编写、软件测试方案制订、代码调试和测试等。负责产品软件的客制化工作,按照客户需求定制软件用户界面,定制驱动程序,开发安装程序等。 职位分类 根据工作内容,软件工程师可有多种分类,如应用系统工程师、系统架构师分析师、系统集成和测试工程师、嵌入式软件工程师、数据库软件工程师等等。 工作内容 1、指导程序员的工作; 2、参与软件工程系统的设计、开发、测试等过程; 3、协助工程管理人保证项目的质量; 4、负责工程中主要功能的代码实现; 5、解决工程中的关键问题和技术难题; 6、协调各个程序员的工作,并能与其它软件工程师协作工作。 从业要求 1、计算机相关专业大学本科以上学历,具有扎实的计算机基础理论知识; 2、精通C/C++、Java语言,具有丰富的Unix/Linux系统下开发经验;

3、精通Perl、Python、PHP、Shell等其中一种语言; 4、有一定的算法基础,具有较强的独立解决问题能力; 5、两年以上业界工作经验,具有Web应用开发经验者优先; 6、有大容量、高性能、分布式系统的设计开发经验者优先; 7、具有很强的学习能力和对新技术的追求精神; 8、具有良好的中英文沟通能力,具有项目管理经验者优先; 9、认同客户第一、团队合作、拥抱变化、诚信、激情、敬业的企业价值观。 优秀者特质 精通Java SE和Java EE技术,包括Servlet/JSP、Applet、JDBC、EJB、Web Service等。掌握面向对象的分析和设计技术,包括设计模式。能够整合企业管理理念、业务流程、基础数据、人力物力、计算机硬件和软件等众多企业资源,并应用ERP系统针对企业资源进行管理。 职位背景、现状和前景 当今社会不论什么职业的都需要一个不断学习的环节,软件工程师也一样。虽然软件工程师的工作不同于程序员但是一个软件工程师其前身必定是一个优秀的程序员,软件的开发工具、开发技术在不断地发展。在校学生所能学到的东西很难跟得上发展的需要但是也不能说那些东西完全没有用,只有在完全理解了相应的基本技能之后你才能很轻松地掌握新的技能,软件技术都是一个循序渐进的过程。所以学好学校所能提供的专业课程是相当重要的。IT行业的平稳增长必然会带来软件工程师需求的增长,目前随着IT产品出现的技术融合,软件行业需要的也是复合型人才,软件工程师需要掌握更多的编程语言。 “做软件的人必须要随时充电,不然的话肯定会被淘汰。”智联招聘顾问郝健表示。 软件工程师理想的状态是走向软件架构师、项目经理、研发经理等职位。“薪酬水平肯定是

软件工程大学规划

软件工程导论作业 1.什么是软件工程,软件工程专业的主干课程有哪些,软件工程的就业方向有哪些? 软件工程 (Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件,嵌入式系统,人机界面,办公套件,操作系统,编译器,数据库,游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业,农业,银行,航空,政府部门等。这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量。 主要课程: 高等数学、大学物理、电路理论与应用系列课程、操作系统原理、编译原理、数据结构、程序设计方法、软件工程学理论、系统设计与分析、计算机组成原理、计算机系统结构、网络原理、软件质量与成熟度模型、面向对象程序设计、Java程序设计、信息科学理论、密码编码学与网络安全、软件工程项目管理等 就业方向:主要在信息产业和国民经济部门从事信息系统研究、分析、设计、开发和测试及软件工程项目的组织和管理工作。 2.软件工程专业大一大二开设哪些专业基础课程,这些课程有什么重要性,该如何学习? 专业基础课程:高等数学(1-2)、微积分、线性代数、概率论与数据统计、复变函数与积分、大学物理、电子技术基础、计算机引论。 学习方法:这些都是为了我们以后能够更好的学习高级专业知识的基础课程,只有学习好了这些知识,我们才能在以后的学习和工作中如鱼得水,不会因为基础不够而放弃学习。不管是什么课程,我都会好好的上,不缺课,不迟到,不早退,每天第一个到教室,每次都坐第一排!而且在晚自习的时候认真的学习,晚自习下课之后再继续学习一个小时,为了充实自己的人生,付出一切的努力,我觉得只要我能够做到这些学习就不用担心了! 3.作为Web应用开发程序员需要掌握哪些Web开发技术,需要选修哪些专业方向课程? Jave语言,面向对象分析设计思想,设计模式和框架结构,XML语言,网页脚本语言,应用服务,集成开发环境,C#(C++或java),基础的HTML,Javascript,csss 动态语言ASP,https://www.sodocs.net/doc/0c4412625.html,,数据库SQL SERVER,ACCESS。 需要选修:java,计算机网络工程,web的应用与开发等。

软件工程第1章作业

软件工程第1章作业 一、填空题(每小题1分,共15分) 1、软件与物质产品有很大的区别,软件是一种_____逻辑_______产品。 2、软件工程是一门综合性交叉学科,计算机科学着重于理论和原理,软件工程着重于建造一个软件系统____________________。 3、最基本、应用广泛、以文档为驱动、适用于开发功能明确的软件项目生存期模型是_瀑布模型。 4、一个软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把这个漫长的时期称为_生存周期。 5、软件工程是指导计算机软件开发和维护的一门工程学科。 6、软件工程包括___软件开发技术_________和____管理________两方面的内容,是技术与管理紧密结合所形成的工程学科。 7、通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为_范型____________。 8、螺旋模型将瀑布模型和快速原型模型结合起来,加入了两种模型均忽略了的__风险分析_________,弥补了这两种模型的不足。 9、____瀑布_____模型不能适应需求可变的软件开发,只有到开发结束时才能见到整个软件系统。 10、将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是__瀑布________模型。 11、喷泉模型是一种以用户需求为动力,以__对象________为驱动的模型。 12、一个软件项目的开发中,要采用一种生存周期模型,要按照某种_开发方法__________,使用相应的工具来进行。 13、软件工程的出现主要是由于_ ____软件危机__________的出现而产生的。 14、软件工程知识体系指南SWEBOK将软件工程知识体系划分为___10____个知识域。 15、Rational统一过程RUP是_用例_______驱动的、以体系结构为核心的、迭代的增量的过程,其迭代过程分为初始、细化、___构建________、移交4个阶段。 二、选择题(每小题2分,共30分) 1、作坊式小团体合作生产方式的时代属于( C )时代。 A.程序设计 B.软件生产自动化 C.程序系统 D.软件工程 2、软件工程与计算机科学性质不同,软件工程着重于( C )。 A.理论研究 B.原理探讨 C.建造软件系统 D.原理的理论 3、个体手工劳动生产方式的时代是( A )时代。 A.程序设计 B.软件生产自动化 C.程序系统 D.软件工程 4、软件是一种( B )产品。 A、有形B、逻辑C、物质D、消耗 5、与计算机科学的理论研究不同,软件工程是一门( C )学科。 A、理论性B、工程性C、原理性D、心理性 6、软件工程学科出现的主要原因是( C )。 A、计算机的发展B、其他工程学科的影响

软件工程师行业

软件工程师综述/行业展望 ——北大青鸟昌平校区提供 引言:软件工程师是一类新兴的职业。与传统的行业相比较,这个行业是随着计算机的发展而逐步发展的,并且,随着信息产业化的飞速发展,软件工程师这个行业不仅让人们越来越熟悉,并且,也吸引着大量人才的涌入,很多人都会通过参加软件工程师培训,或是通过大学专业的选择,加入到这个队伍当中。 当今信息瞬息万变,软件工程师的需求量也逐步加大,从当初单一的编程工作,发展到软件测试工作、宏观管理工作等。人们对于软件工程师这个行业的兴趣越来越大。 软件工程师到底从事什么,软件工程师待遇如何,软件工程师发展前景怎样,人们有许多疑问。本篇文章,通过对软件工程师详细的介绍,让大家真正了解这个行业,并最终指明软件工程师的发展前景,旨在为那些选择的人做一个明确的发展方向。 目录 软件工程师概述 (2) 软件工程师分类 (2) 软件工程师工作内容 (3) 软件工程师待遇 (4) 软件工程师行业展望 (6) 软件工程师要求 (7) 软件工程师认证培训 (8) 软件工程师知识补充 (10)

第一部分:软件工程师概述 定义: 软件工程师主要进行软件前期的项目需求的分析,然后对项目进行风险评估并试图解决这些风险,然后开始进行软件的开发,后期对软件的进度做相关的评估。 现状: 目前国内软件测试工程师的来源主要有三方面:一是以前专业做软件开发的人员后来转行做软件测试,二是从大学招聘的本科或者研究生,三就是通过培训机构招聘的专业学员。 其实,无论通过何种形式,目的在于招聘到优秀的人选,招聘到优秀的工作者,因此,通过参加培训,如北大青鸟培训等,也是不错的选择。 第二部分:软件工程师分类 按级别分类 上面的梯形图明确的表示出软件工程师的四个步骤,如同金字塔

(完整版)《软件工程》作业及答案

t h e i 《软件工程》作业及答案 1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?答: 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。软件危机典型表现:对软件开发成本和进度的估计常常很不准确。用户对“已完成的”软件系统不满意的现象经常发生。软件产品的质量往往靠不住。软件常常是不可维护的。软件通常没有适当的文档资料。软件成本在计算机系统总成本中所占的比例逐年上升。软件开发生产 率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。 产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。软件不同于硬件,它是计算机系 统中的逻辑部件而不是物理部件。管理和控制软件开发过程相当困难。 软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上 升。目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念, 在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。1-2 假设你是一家软件公司的总工程师,当你把图1.1给手下的软件 工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能 在设计阶段清除它呢?”你怎么反驳他? 1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机? 答: 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。 软件工程本质特性:1、软件工程关注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是由具有一种文化背景的人替具 有另一种文化背景的人创造产品。 消除软件危机的途径:为了消除软件危机,首先应该对计算机软件有一个正确的认识。必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。应该推广使用在实践中总结出来的开发软件的成功 的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在 计算机系统早期发展阶段形成的一些错误概念和做法。应该开发和使用更好的软件工具。为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。1-6 什么是软件过程?它与软件工程方法学有何关系? 答: 软件过程是为了获得高质量软件所需要完成的一系列任务的框架, 它规定了完成各项任务的工作步骤。软件工程方法学包含软件过程。1-7 什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增 量模型和螺旋模型的优缺点,说明每种模型的适用范围。 答: 生命周期模型简洁地描述软件过程,规定了把生命周期划分成哪些阶段及各个阶段执行顺序。 瀑布模型历史悠久、广为人知,它的优势在于它是规范的、文档驱动的方法;这种模型的问题是,最终开发出的软件产品可能并不是用户 真正需要的。 快速原型模型正是为了克服瀑布模型的缺点而提出来的。它通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用 户反馈意见的办法,获取用户的真实需求。 增量模型具有可在软件开发的早期阶段使投资获得明显回报和较易维护的优点,但是,要求软件具有开放的结构是使用这种模型时固有的困难。 风险驱动的螺旋模型适用于内部开发的大型软件项目,但是,只有在开发人员具有风 险分析和排除风险的经验及专门知识时,使用这种模型才会获得成功。 快速原型模型:适合小型软件; 螺旋模型:适合内部开发的大规模软件项目。2-1 在软件开发的早期阶段为什么要进行可行性研究?应该从哪些方面 研究目标系统的可行性? 答: 可行性研究的目的,就是用最小的代价在尽可能短的时间内确定 问题是否能够解决。至少应该从下述三方面研究每种解法的可行性:(1)技术可行性;(2)经济可行性;(3)操作可行性。 2-5 北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。请用2.5.2小节讲述的定义数据的方法,定义上述的电话号码。答: 电话号码=[校内电话|本市电话|外地电话] 非零数字字符=[1|2|3|4|5|6|7|8|9] 校内电话=非零数字字符+3{数字}3本市电话=0+非零数字字符+7{数字}7外地电话=0+区码+非零数字字符+7{数字}73-1 为什么要进行需求分析?通常对软件系统有哪些需求?答: 为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件,不论我们把设计和编码工作做得如何出色,不能真正满足用户需求的程序只会令用户失望,给开发者带来烦恼。确定对系统的综合要求:1、功能需求;2、性能需求;3、可靠性和可用性需求;4、出错处理需求;5、接口需求;6、约束;7、逆向需求;8、将来可以提出的要求,分析系统的数据要求。3-2 怎样与用户有效地沟通以获取用户的真实需求? 答: 与用户沟通获取需求的方法:访谈;面向数据流自顶向下求精;简易的应用规格说明技术;快速建立软件原型 4-2 在什么情况下应该使用形式化说明技术?使用形式化说明技术时应 遵守哪些准则? 答: 在开发大型软件系统的过程中应该使用形式化说明技术。应用形式化方法的准则:(1)应该选用适当的表示方法。(2)应该形 式化,但不要过分形式化。 (3)应该估算成本。(4)应该有形式化方法顾问随时提供咨询。 (5)不应该放弃传统的开发方法。(6)应该建立详尽的文档。(7)不应该放弃质量标准。(8)不应该盲目依赖形式化方法。(9)应该测试、测试再测试。(10)应该重用 7-8 对一个包含10000条机器指令的程序进行一个月集成测试后,总 共改正了15个错误,此时MTTF=10h;经过两个月测试后,总共改正了 25个错误(第二个月改正了10个错误),MTTF=15h 。要求:(1) 根据上述数据确定MTTF 与测试时间之间的函数关系,画出 MTTF 与测试时间τ的关系曲线。在画这条曲线时做了什么假设?(2) 为做到MTTF=100h ,必须进行多长时间的集成测试?当集成测试结束时总共改正了多少个错误,还有多少个错误潜伏在程序中? 答: (1)所做假设:1)单位长度里的错误数近似为常数;2)失效率正比于软件中剩余的错误数,而平均无故障时间与剩余的错误数成反比. 3)发现的每一个错误都立即正确地改正了.(2)由Shooman 公式:MTTF=I T /(K*(E T -E C (T))) 其中,I T =104,MTTF 1=10,n 1=15,MTTF 2=15,n 2=25。得:MTTF 1=I T /(K*(E T -E C (T 1)))10=10000/(K*(E T -15))MTTF 2=I T /(K*(E T -E C (T 2)))15=10000/(K*(E T -25)) (1)解得程序中固有的错误总数E T =45,此外K=100/3。(2)设MTTF=100,有 100=10000/((100/3)*(45-x))

相关主题