搜档网
当前位置:搜档网 › 软件工程导论第五版习题答案(清华大学出版社)张海藩著

软件工程导论第五版习题答案(清华大学出版社)张海藩著

软件工程导论第五版习题答案(清华大学出版社)张海藩著
软件工程导论第五版习题答案(清华大学出版社)张海藩著

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

1-5 根据历史数据可以做出如下的假设: 对计算机存储容量的需求大致按下面公式描述的趋势逐年增加:M=4080e0.28(Y-1960) 存储器的价格按下面公式描述的趋势逐年下降:P1=0.3×0.72Y-1974(美分/位) 如果计算机字长为16位,则存储器价格下降的趋势为:P2=0.048×0.72Y-1974(美元/字) 在上列公式中Y代表年份,M是存储容量(字数),P1和P2代表价格。 基于上述假设可以比较计算机硬件和软件成本的变化趋势。要求计算: (1) 在1985年对计算机存储容量的需求估计是多少?如果字长为16位,这个存储器的价格是多少? (2) 假设在1985年一名程序员每天可开发出10条指令,程序员的平均工资是每月4000美元。如果一条指令为一个字长,计算使存储器装满程序所需用的成本。 (3) 假设在1995年存储器字长为32位,一名程序员每天可开发出30条指令,程序员的月平均工资为6000美元,重复(1)、(2)题。 ●(1)在1985年对计算机存储容量的需求,估计是 M=4080e0.28(1985-1960)=4474263(字) ●如果字长为16位,则这个存储器的价格是 ●P=0.048*0.72 1985-1974*4474263=$5789 ●(2)如果一条指令的长度为一个字,则使存储器装满程序共需4474263条指令。 ●在1985年一名程序员每天可开发出10条指令,如果每月有20个工作日,则每人 每月可开发出10×20条指令。 ●为了开发出4474263条指令以装满存储器,需要的工作量是: 4474263/200=22371(人月) ●程序员的月平均工资是4000美元,开发出4474263条指令的成本是 22371*4000=¥89484000 ●(3)在1995年对存储容量的需求估计为: M=4080E0。28(1995-1960)=73577679(字)=4080E9.8 ●如果字长为32位,则这个存储器的价格是: P=0.003*32*0.72(1995-1974)*73577679=$7127 ●如果一条指令为一个字长,则为使存储器装满程序共需73,577,679条指令。 ●在1995年一名程序员每天可开发出30条指令,每月可开发出600条指令,为了开 发出可装满整个存储器的程序,需要的工作量为 73577679/600=122629(人月) ●开发上述程序的成本为: 122629*6000=$735776790 1-6 什么是软件过程?它与软件工程方法学有何关系?

(完整版)软件工程导论(第六版)张海藩课后习题部分答案

第一章 1-1 什么是软件危机? 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 1-3 什么是软件工程? 是指导计算机软件开发和维护的一门工程学科。 1-4 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。 目前使用得最广泛的软件工程方法学(2 种): 1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。 1-6 什么是软件过程?它与软件工程方法学有何关系? z 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤z 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型 1-7 什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型的优缺点,说明每种模型的适用范围。 软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。 瀑布模型的优点:1.可强迫开发人员采用规范的方法;2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 瀑布模型的缺点:1.在软件开发初期,指明用户全部需求是困难的;2.需求确定后,经过一段时间才得到软件最初版本;3.完全依赖规格说明,导致不能满足用户需求。适用中小型项目。 快速原型模型的优点:1满足用户需求程度高;2用户的参与面广;3返工现象少快速原型模型的优点:不适用大型软件的开发适用于小型项目。 增量模型的优点:1短期内可以交付满足部分用户需求的功能产品;2逐步增加功能可以让用户去适应新产品;3开放式的软件可维护性比较好;4开始第一构件前,已经完成需求说明。 增量模型的缺点:1对现有产品功能造成破坏;2意义上的矛盾适用于中型软件的开发 螺旋模型的优点:1集成了瀑布模型、快速原型模型、增量模型的优点;2支持用户需求动态变化;3需求分析与软件实现紧密联系相互依赖;4原型作为刑式的可执行的需求规格说明,即利用用户和开发人员共同理解,又可作为后续开发的基础;5为用户参与决策提供方便;6提高目标软件的适应能力;7降低风险;8在大型软件开发过程中充分发挥优势。螺旋模型的缺点:1迭代次数影响开发成本,延迟提价时间;2找不到关键改进点,人才、物力、财力时间引起无谓消耗;3成于风险分析,败于风险分析。适用于内部开发的大规模软件项目。 1-8:为什么说喷泉模型叫好的体现了面向对象软件开发过程无缝和迭代的特性?

软件需求工程大作业

课 程 设 计 2011——2012学年 第1学期 课程名称 《软件需求工程》 论文题目 《某公司人事管理系统》需求分析报告 学 院 计算机科学与技术学院 专 业 软件工程专业 班 级 0904班 姓 名 朱 鹏 指导教师 岑 丽

目录 1 论文要求............................................................................................................... - 2 - 2 可行性研究报告 .................................................................................................. - 3 - 2.1引言 (3) 2.2可行性研究的前提 (3) 2.3对现有系统的分析 (5) 2.4对所建议系统的分析 (5) 2.5可选择的其他系统方案 (7) 2.6技术可行性分析 (7) 2.7投资及效益分析 (7) 2.8社会可行性 (7) 2.9可行性分析结论意见 (8) 3 项目开发计划....................................................................................................... - 9 - 3.1引言 (9) 3.2项目概述 (9) 3.3实施计划 (10) 3.4支持条件 (12) 3.5专题计划要点 (12) 3.6交付期限 (12) 4 需求规格说明书 ................................................................................................ - 13 - 4.1引言. (13) 4.2综合描述 (14) 4.3外部接口需求 (15) 4.4功能需求 (15) 4.5其他非功能要求 (19) 4.6其他需求 (21) 5 附录..................................................................................................................... - 22 - 6 体会与感想......................................................................................................... - 23 - 本科课程论文评分标准..............................................................错误!未定义书签。

软件工程导论》期末考试试题与答案

《软件工程导论》期末考试-试题与答案 一、填空题 1.软件工程中的结构化分析 SA 是一种面向________的分析方法。 2.软件模块独立性的两个定性度量标准是_________________。 3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个________的过程。 4. ________和数据字典共同构成了系统的逻辑模型 5. ___________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。二、单选 题 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. Jackson 方法是在软件开发过程中常用的方法,使用 Jackson 方法时可以实现______。A.从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构 7.软件测试时为了________而执行程序的过程。A.纠正 错误B.发现错误 C.避免错误 D.证明错误 8.在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。A.总体 设计B.需求分析C.详细设计D.程序设计 9.面向对象分析是对系统进行_________的一种方法。A.需求 分析B.程序设计C.设计评审D.测试验收 10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而 且影响软件的_______。A.可理解 性B.可维护性C.可扩展性D.可 移植

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

《软件工程导论》课后习题答案 第一章软件工程概论 1-1 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面: (1)用户对开发出的软件很难满意。 (2)软件产品的质量往往靠不住。 (3)一般软件很难维护。 (4)软件生产效率很低。 (5)软件开发成本越来越大。 (6)软件成本与开发进度难以估计。 (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 2.软件危机有那些典型表现? (1)对软件开发成本和进度的估计常常很不准确。 (2) 用户对“已完成的”软件系统不满意的现象经常发生。 (3)软件产品的质量往往靠不住。 (4)软件常常是不可维护的。 (5)软件通常没有适当的文档资料。 (6) 软件成本在计算机系统总成本中所占的比例逐年上升。 (7) 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。 3.为什么会产生软件危机? (1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。 (3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 4.怎样克服软件危机? (1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 1-3、

《软件工程导论》课程大作业-题目及要求

《软件工程专业导论与职业生涯规划》具体要求 一、大作业题目(注:每个小组完成一个题目) 1、计算机系统软件是什么?具体的系统软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的系统软件进行较为详细的阐述。 2、计算机应用软件是什么?具体的应用软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的应用软件进行较为详细的阐述。 3、阐述计算机软件的发展历程,对比分析各阶段的特征、理论体系、优势与不足。 4、软件危机是什么?列举2~3个具体的软件危机案例。导致软件危机爆发的原因有哪些?简单阐述现阶段软件危机的具体表现。 5、陈述“软件工程”概念提出的历史背景,包括发生的时间、地点、人物、事件等。“软件工程”的定义自提出以来,有多种说法。请尽可能罗列各种说法,并对其中的2~3个说法进行评述。软件工程的七条基本原理是哪些?分别对每条原理进行较为详细的阐述。 6、软件工程的目标是什么?十个性能是哪些?分别对每个性能进行较为详细的阐述。 7、软件工程研究的主要内容包括哪两个方面?分别对每个方面进行较为详细的阐述。 8、软件开发过程必须遵循的软件工程原则有哪些?分别对每个原则进行较为详细的阐述。 9、软件工程的过程包括哪些?分别对每个过程进行较为详细的阐述。 10、软件生命周期的概念是什么?软件生命周期的划分有哪些阶段?分别对每个阶段进行较为详细的阐述。 11、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的瀑布模型和原型模型进行较为详细的阐述及对比分析,并各举例说明。 12、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的演化模型和喷泉进行较为详细的阐述及对比分析,并各举例说明。 13、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的基于知识的模型和基于构件的模型进行较为详细的阐述及对比分析,并各举例说明。 14、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的变换模型和双赢螺旋模型进行较为详细的阐述及对比分析,并各举例说明。 15、软件工程的四要素是哪些?分别对每个要素进行较为详细的阐述。中国制定

软件工程导论复习试题库完整

a(1)在软件工程中,白盒测试法可用于测试程序的内部结构。此方法将程序看作是 A) 路径的集合 B)循环的集合C)目标的集合D)地址的集合 c(2)在下述哪一种测试中,测试程序的设计者必须接触到源程序 I.功能测试Ⅱ. 结构测试 A)均不须B)只有ⅠC)只有ⅡD)Ⅰ和Ⅱ a(3)检查软件产品是否符合需求定义的过程称为 A)确认测试B)集成测试C)验证测试D)验收测试 c(4)下述陈述中,哪一个不是软件健壮性的度量指标? A)失败后重新启动所需的时间B)引起失败的时间所占的百分比 D)失败前的平均工作时间D)在一次失败中数据恶化的概率 b(5)对软件是否能达到用户所期望的要求的测试称为 A) 集成测试B) 有效性测试C) 系统测试D) 验收测试 a(6)在面向数据流的软件设计方法中,一般将信息流分为 A)变换流和事务流B)变换流和控制流 C)事务流和控制流D)数据流和控制流 d(7)软件需求说明书是软件需求分析阶段的重要文件,下述哪个(些)是其应包含的内容 I.数据描述Ⅲ. 模块描述 II.功能描述Ⅳ. 性能描述 A)ⅡB)Ⅲ和ⅣC)Ⅰ、Ⅱ和ⅢD)Ⅰ、Ⅱ和Ⅳ (8)软件测试一般分为三类,即 I.静态测试Ⅱ. 动态测试Ⅲ. 正确性测试 设计测试用例对程序进行测试,应属于 A)ⅠB)ⅡC)Ⅰ和ⅡD)Ⅲ (9)模块独立性是由内聚性和耦合性来度量的,其中内聚性是度量____,耦合性是度量____。 A)模块间联系程度B)模块的功能强度 C)信息隐蔽程度D)模块的复杂程度 (10)软件设计中一般将用到图形工具,下述哪种(些)工具可用作设计的图形工具 I.结构图Ⅱ. 实体关系图Ⅲ. IPO图 II.Ⅳ. 流程图Ⅴ. N-S图 A)Ⅰ和ⅡB)Ⅲ和ⅣC)Ⅰ、Ⅲ、Ⅳ和ⅤD)全部 A (2)C (3)A (4)C (5) B (6)A (7)D (8)B (10)C (11)试判断下列论述中哪个(些)是正确的 I.软件系统中所有的信息流都可以认为是变换流 II.软件系统中所有的信息流都可以认为是事务流 III.事务分析和变换分析的设计步骤基本类似 A)ⅠB)ⅡC)ⅢD)Ⅰ和Ⅲ (12)软件的有效性测试是验证软件的运行是否达到用户的期望,用户的期望应体现于A)详细设计报告B)软件需求说明书 C)总体设计报告D)有效性测试要求 (13)软件设计中的软件过程其主要描述的是 A)模块间关系B)模块操作细节 C)模块控制方法D)模块类型 (14)软件测试是软件件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?

软件工程导论试题集46172(1)

第一章:软件工程学概述 一.填空题 1. 计算机科学中的研究成果均可用于软件工程,但计算机科学更侧重于(原理和理论)、而 软件工程侧重于(如何建造一个软件系统) 2. 计算机程序及其说明程序的各种文档称为(文件)。计算任务的处理图像对象和处 理规则的描述称为(程序)。有关计算机程序功能、设计、编制、使用的文字或图形资 料称为(文档)。 3. 软件开发环境是相关一组(软件工具)的集合,它支持一定的软件开发方法或按照一定 的软件开发模型组织而成的。 4. CASE这一术语的英文是(Computer Aided Software Engineering)。 5. (平台集成)是指工具运行在相同的硬件/操作系统平台上。(数据集成)是指工具使 用共享数据模型来操作。(表示集成)是指工具提供相同的用户界面。 6. 根据支持的范围,CASE工具可分为(窄支持)、(较宽支持)和(一般支持)工具。 7. 软件危机的主要原因有(软件本身的特点)和(缺乏好的开发方法和手段)。 8. (增量)模型是一种非整体开发的模型。软件在该模型中是“逐渐”开发处理的, 开发出一部分,向用户展示一部分,可让用户及早看到部分软件,及早发现问题。或者先开发一个“原型”软件,完成部分主要功能,展示给用户并征求意见,然后逐步完善,最终获得满意的软件产品。 9.结构化方法总得指导思想是(自顶而下逐步求精)。它的基本原则是功能的(分解)与(抽象)。它是软件工程中最早出现的开发方法,特别适用于数据处理领域的问题。 10. 面向对象开发方法包括(面向对象分析)、(面向对象设计)、(面向对象实现)、三部分。 11. 瀑布模型是将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型。它包括(可行性分析)、项目开发计划、(需求分析)、(概要设计) 、(详细设计)、_ (编码)、(测试)、(维护),它规定了由前至后、相互衔接的固定次序 ,如同瀑布流水,逐级下落。 12. 瀑布模型本质上是一种(线性)顺序模型。 13. 构造原型时,必须注意(功能性能)取舍,忽略一切暂时不关心的部分。 14. 属性指的是类中对象所具有的(性质(数据值))。不同对象的同一属性可以具有相同或不同的(属性值)。 15. 结构化方法和原型化方法是软件开发中常使用的两种方法,在实际的应用中,它们之间的关系表现为(相互补充)。 二.判断题 1. 瀑布模型的存在问题是缺乏灵活性。(√) 2. 软件是一种逻辑产品。(√) 3. 软件工程学科出现的主要原因是程序设计方法学的影响。(× ) 4. 有关计算机程序功能、设计、编制、使用的文字或图形资料称为文档。(√) 5. CASE开放式工作台或者提供控制集成机制,或者可剪裁,其数据集成或协议是独立的。(× ) 6. 在软件的开发与维护过程中,用来存储、更新、恢复和管理一个软件的多版本,它是版本控制工具。(√) 7. 平台集成是指工具运行在相同的硬件/操作系统平台上。(√) 8. 软件生存周期模型有多种,功能模型是软件生存周期模型。(× ) 9. 从结构化的瀑布模型看,在软件生命周期中得8个阶段中,详细设计阶段出错,对软件

《软件工程导论》第五版-张海藩-编著-总结

《软件工程导论》第五版张海藩编著总结 分类:Computer System2011-01-04 10:14 6417人阅读评论(10) 收藏举报 测试数据结构工具任务文档软件测试 总结重点: ?Unit1 ?软件危机包含两方面の问题:一是如何开发软件,怎样满足人们对软件日益增长の需求?二是如何维护软件,使它们持久地满足人们の要求。 ?软件工程学定义:把软件当作一种工业产品,采用工程学の原理来管理和组织软件の开发和维护,称为软件工程。 ?软件是指程序、数据和文档三者共同构成の配置。 ?包含与数据处理系统操作有关の程序、规程、规则以及相关文档の智力创作称为软件。文档是描述程序开发过程の,是智力创作の真实记录,是创作活动の历史档案和结晶。 ?软件の描述性定义:软件由计算机程序,数据结构和文档组成。 ?软件质量定义为“与软件产品满足规定の和隐含の需求能力有关の特征和特性の全体” 具体来说: 1)软件产品中能满足给定需求の性质和特性の总体; 2)软件具有所期望の各种属性の组合程度。 ?将软件质量属性划分为六个特性(功能性、可靠性、易用性、效率、维护性和可移植性),这六个属性是面向用户の观点——面向管理の观点,且是定性描述の。 ?软件质量度量体系:内部度量可用于开发阶段の非执行软件产品,外部度量只能在生存周期过程中の测试阶段和任何运行阶段使用。 ?软件工程项目の基本目标:(1)低成本;(2)满足功能要求;(3)高性能;(4)易移植;(5)易维护。 ?软件工程方法学就是要从技术和管理上提供如何去设计和维护软件。 ?软件开发方法:面向数据流(约旦)方法、面向数据结构方法、面向对象方法。 ?结构程序设计是进行以模块功能和处理过程设计为主の详细设计の基本原则。它の主要观点是采用自顶向下、逐步求精の程序设计方法;使用三种基本控制结构构造程序,任何程序都可由顺序、选择、循环三种基本控制结构构造。 ?用来辅助软件开发、运行、维护、管理、支持等过程中活动の软件称为软件工具(CASE)。 ?软件生存周期定义:软件产品从形成概念开始,经过开发、使用和维护,直到最后不再使用の整个过程。各阶段の任务彼此间尽可能の相对独立,同一阶段内各项任务の性质尽可能の相同。软件の开发就是“按软件顺时间发展の过程分阶段进行”の。 ?软件生存周期模型: 瀑布模型(阶段间具有顺序型和依赖性,清楚地区分逻辑设计与物理设计、尽可能推迟程序の物理实现,是文档驱动模型,遵循结构化设计);

软件工程大作业

《软件工程》大作业 学期: 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、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和(C)。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C)。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A)。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 4、软件工程的出现主要是由于(C)。 A.程序设计方法学的影响 B.其它工程科学的影响 C.软件危机的出现 D.计算机的发展 5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为(B) A、相互排斥 B、相互补充 C、独立使用 D、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法 8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B) A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B)A、控制流B、数据流C、程序流D、指令流 10、软件开发的结构化生命周期方法将软件生命周期划分成(A) A、计划阶段、开发阶段、运行阶段 B、计划阶段、编程阶段、测试阶段 C、总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计11、软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为(A) A、瀑布模型 B、对象模型 C、螺旋模型 D、层次模型 12、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(C) A、分析阶段 B、设计阶段 C、编码阶段 D、测试阶段 二.填空 21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的(信息流动)情况。 [解析]系统流程图是描述物理系统的传统工具,用图形符号表示系统中的各个元素,如人工处理、数据处理、数据库、文件、设备等,表达了元素之间的信息流动的情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 [解析]成本效益分析首先是估算将要开发的系统的开发成本,然后与可能取得的效益进行比较和权衡,其目的是从经济角度评价开发一个新的软件项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和(宽度优先策略)。 [解析]渐增式测试法有自顶向下结合和自底向上结合两种组装模块的方法,其中自顶向下集成是构造程序结构的一种增量式方式,不需要编写驱动模块,只需要编写桩模块。它从主控模块开始,按照软件的控制层次结构,以深度优先或宽度优先的策略,逐步把各个模块集成在一起。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 [解析]在基本路径测试中,以详细设计或源程序为基础,导出控制流程图的拓扑结构——程序图,在计算了程序图的环路复杂性之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。 25.汇编语言是面向(机器)的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 [解析]汇编语言属于低级语言,是一种面向机器的语言,它与高级语言相比有许多优越性:如操作灵活,可以直接作用到硬件的最下层,完成与外部设备的接口工作等,是能够利用计算机硬件特性直接控制硬件设备的唯一语言。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 [解析]JSP方法是面向数据结构的设计方法。它定义了一组以数据结构为指导的映射过程,根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,在JSP方法中解决结构冲突的具体办法是引入中间数据结构或中间文件,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 [解析]详细设计的基本任务是为每个模块进行详细的算法设计,为模块内的数据结构进行设计,确定每个模块的内部特性,包括模块的算法和使用的数据。对数据库进行物理设计等。 28.所有软件维护申请报告要按规定方式提出,该报告也称(软件问题)报告。 [解析]在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。

软件工程导论试题

1.办公室复印机的工作过程大致如下: 未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令; 如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员排除故障,故障排除后回到闲置状态。 请试画出复印机的状态转换图 答案: 2.录入统计计算某班学生成绩,画出数据流图(DFD)。 学生成绩表数据结构如下: 学号|高数|物理|英语|计算机|法律常识|总分|平均分|不及格门数|升留补| 需求功能如下: (1)录入全班学生各课的考分,生成成绩表; (2)检查各课成绩,修改错误,补充未录入成绩,删除非法成绩; (3)计算总分,平均分;

(4)统计不及格门数,然后再写入升级、补考、留级; (5)打印成绩通知单,交家长。 答案: 3.中国古代在“室”内举办宴会,座位以西为尊,北次之,南再次之,东最次。“按上北下南,左西右东”的方位和长幼尊卑的顺序进行入座。孙坚有四个儿子,分别为孙伯符、 孙叔弼、孙仲谋、孙季佐(长幼顺序已打乱),请根据以上叙述,画出入座顺序的程序流程图以及座位分布图。 答案: 座位分布图 程序流程图: 错误成绩通知

4.简要画出电梯系统用例图 答案: 5. 画出下列伪码程序的程序流程图和盒图:START IF p THEN WHILE q DO f END DO ELSE BLOCK m n END BLOCK

END IF STOP 流程图: 盒图:

软件工程导论第五版复习重点(必考题)

(最后部分为每年必考题) 第一章 1. .软件工程的定义:软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。它借鉴传统工程的原则、方法,以提高质量,降低成本为目的. 2. 软件危机的概念:软件危机是指计算机软件的开发和维护过程中所遇到的一系列严重的问题。 3. 产生软件危机的原因:(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。 (2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 4. 面向对象方法学的四个要点:1.把对象作为融合了数据及在数据上的操作行为的统一的软件构件 2.把所有对象都划分成类3.按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。4.对象彼此间仅能通过发送消息互相联系。 5. 软件生命周期:软件定义(问题定义,可行性研究,需求分析)、软件开发(总体设计,详细设计,编码,单元测试,总体测试)、运行维护(持久地满足用户的需要) 6. 瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型,概念.方法.优缺点.区别。 7. 微软过程把软件生命周期划分为成5个阶段:规划阶段,设计阶段,开发阶段,稳定阶段,发布阶段。 第二章 1.可行性包括:技术可行性,经济可行性,操作可行性。 2. 系统流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形势描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图。4. 书库流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只描绘数据在软件中流动和被处理的逻辑过程。数据流图是系统逻辑功能的图形表示。 5. 用系统流程图描绘一个系统时,系统的功能和实现每个功能的具体方案是混在一起的。有数据元素组成的数据的方式只有下述3种基本类型:顺序(即以确定次序连接两个或多个分量)。选择即从两个或多个可能的元素中选取一个重复即把指定的分量重复零次或多次

软件工程导论(第六版)张海藩-牟永敏课后习题答案

第一章 一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。 软件危机的典型表现: (1) 对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。 (2) 用户对已完成的软件不满意的现象时有发生。 (3) 软件产品的质量往往是靠不住的。(4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。 (6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提高的速度远跟不上计算机应用普及的需求。 软件危机出现的原因: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。 (3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。 二、假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他?

软件工程导论期末试题

软件工程导论期末考试试题 一.选择(20分) 1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 4、软件工程的出现主要是由于(C )。 A.程序设计方法学的影响 B.其它工程科学的影响 C. 软件危机的出现 D.计算机的发展 5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C ) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B) A、相互排斥 B、相互补充 C、独立使用 D、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法

8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B ) A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B ) A、控制流 B、数据流 C、程序流 D、指令流 10、软件开发的结构化生命周期方法将软件生命周期划分成(A ) A、计划阶段、开发阶段、运行阶段 B、计划阶段、编程阶段、测试阶段 C、总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计 二.填空(20分) 21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素 表达了系统中各种元素之间的(信息流动)情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先 策略和(宽度优先策略) 。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图 来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 25.汇编语言是面向(机器) 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 28.所有软件维护申请报告要按规定方式提出,该报告也称( 软件问题)报告。 29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向 维护的技术;在维护阶段用来提高维护的效率和质量的(维护支援)技术。 30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选 择的语言有:(FORTRAN语言)、PASCAL语言、C语言和PL/1语言。三.判断(10分)

(完整版)软件工程导论(第5版)习题二答案

P53 习题二 4.目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于 不能随时观察病人的病情变化,还可能会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,试写出问题定义,并且分析开发这个系统的可行性。 医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏体温血压心电图等)定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围试向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。 答: 问题定义:某医院打算开发一个以计算机为中心的患者监护系统是为了更好地让医生监护病人的生理信号(脉搏、血压、心电图等)的变化,定时记录病人情况以形成患者日志,防止没能及时发现危重病人的病情恶化而耽误抢救时机的现象出现;当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。 可行性研究: (1)技术可行性:开发系统的计算机硬件已经非常普及,现在的计算机各方面的技术都非常成熟,相对来说开发此系统的技术也要求比较简单,因此在技术方面是可行的;同时医院还必须有一定量的系统管理和维护的专业人员。医院的患者监护系统由三部分构成:监护中心、护士监听部分和 Internet医疗网站。监护中心通过Internet与护士监护部分、Internet连接、把监听到的患者声音、视频信息以及影像资料通过通讯网络实时传送到护士监听部分(便于护士随时掌握患者的生理状况)和Internet医疗中心(有利于实现生理数据的共享)。 因此技术上分析是可行的。 (2)经济可行性:随着经济越来越发达,人们可以支付的治疗疾病的花费也挺高了,因此其开发具有广阔的市场。目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察病人的病情变化,还可能会延误抢救时机。当前的社区医疗保健系统还不够完善,大多数据收集工作主要采取手工方式;并且信息不利于共享,采集的资料存在一台计算机里,社区中心与居民之间不能建立起随时访问和被采访的关系。 (3)操作可行性:计算机的普及使人们对以计算机为中心的患者监护系 统的使用做了铺垫,系统的操作人员需要经过专业的人员指导以及培训。 (4)法律可行性:医院想要使用患者监护系统需要购买正版的软件,机 器设置也需要通过正当途径购买。 5.北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成, 第1位数字不是零;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本地电话再接着拨8位数字(第一位不是0),若是外地电话则拨3位区码再拨8位电话号码(第一位不是0)。 用2.5.2小节讲诉的数据定义的方法,定义上述电话号码。 答:电话号码=[校内电话号码|校外电话号码]

相关主题