软件工程部分习题讲解
实用软件工程(第二版)作者:陆惠恩、张成姝 部分习题解答
输入处理输出
图附录图.2房产经营管理系统IPO图
3、火车卧铺票订票系统
(1)数据字典
列车类型=[普快/特快/快速]+[空调/非空调]
停靠站=站名+(到达时间,发车时间)
车次=车次号+列车类型+{停靠站}
列车运行情况={车次}
软卧=[上铺/下铺]
硬卧=[上铺/中铺/下铺]
铺位类型=[软卧/硬卧]
车票号=车厢号+{铺位号}。如,5车8号上。
售票情况=1{日期+{车次+{车票号+[已售/未售]}}} 5
票价=起始站+{到达站+{列车类型+{铺位类型+价格+[全/半]}}}
火车票=日期+车次+起始站+到达站+列车类型+铺位类型+价格+车票号+[全/半]
(2)数据流图
本系统的数据库可设计两张数据表:列车运行情况表和售票情况表。旅客根据列车运行情况,提出购票要求。售票系统根据旅客要求,查询售票情况表,有票则输出火车票,并更改售票情况;无票则告诉旅客。数据流图如图附录图3所示。
图附录图6银行储蓄管理系统实体-关系图
5.飞机票订票系统的实体-关系图,如图附录图7所示。
图附录图7飞机票订票系统实体-关系图
软件工程(第四版)习题及解答1-7
班级=”01”...”99”注:班级代号2位数字
学分=0..99
2.数据流图如下:
3.
顶层图:
顶层图
0层图:
0层图
4.
判定表如下:
设:性别:男:M女:F
学历:初中:A高中B大专:C
年龄:小于25: C25至40:Y40以上:L
1
2
3
4
5
6
7
8
9
10
11
M
M
M
M
F
F
F
F
F
F
F
学历
A
A
A
B
B
B
C
A
A
A
B
B
B
C
年龄
C
Y
L
C
Y
L
--
C
Y
L
C
Y
L
--
脱产学习
X
X
电工
X
X
技术员
X
X
修理工
X
X
钳工
X
X
车工
X
X
清洁工
X
X
判定树:
结构化语言:
IF年龄>40 THEN
SWITCH(学历)
软件工程习题及解答
软件工程
第一章习题
一、选择题
1、软件是计算机系统中与硬件相互依存的另一部分,它是包括( A )、( B )及( C )的完整集合。其中,( A )是按事先设计的功能和性能要求执行的指令序列。( B )是使程序能够正确操纵信息的数据结构。( C )是与程序开发、维护和使用有关的图文材料。
供选择的答案:
A~C. ①软件②程序③代码④硬件
⑤文档⑥外设⑦数据⑧图表
2、开发软件时对提高软件开发人员工作效率至关重要的是( A )。软件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C )和( D )两步。
供选择的答案:
A.①程序开发环境②操作系统的资源管理功能
③程序人员数量④计算机的并行处理能力
B.①需求分析②需求调查③可行性分析④问题定义
C、D.①方案设计②代码设计③概要设计④数据设计
⑤运行设计⑥详细设计⑦故障处理设计⑧软件体系结构设计
3、从供选择的答案中选出适当字句填入下列关于软件发展过程的叙述中的( )内。
有人将软件的发展过程划分为4个阶段:
第一阶段(1950~1950年代末)称为“程序设计的原始时期”,这时既没有( A ),也没有( B ),程序员只能用机器指令编写程序。
第二阶段(1950年代末~1960年代末)称为“基本软件期”。出现了( A ),并逐渐普及。随着( B )的发展,编译技术也有较大的发展。
第三阶段(1960年代末~1970年代中期)称为“程序设计方法时代”。这一时期,与硬件费用下降相反,软件开发费急剧上升。人们提出了( C )和( D )等程序设计方法,设法降低软件的开发费用。
软件工程导论(第六版)部分课后习题-答案
第一章
1-1 什么是软件危机?
是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
1-3 什么是软件工程?
是指导计算机软件开发和维护的一门工程学科。
1-4 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。
目前使用得最广泛的软件工程方法学(2
种):
1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。
2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。
1-6 什么是软件过程?它与软件工程方法学有何关系?
z 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤z 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型
1-7 什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型的优缺点,说明每种模型的适用范围。
软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。
瀑布模型的优点:1.可强迫开发人员采用规范的方法;2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
软件工程课后习题(含答案)
第一章练习题
一、填空题
1、软件工程三要素是:方法、工具、过程。
2、软件开发方法是指软件开发过程中所应遵循的方法和步骤。
二、名词(术语)解释:
1、可靠性---是指在给定的时间间隔内,程序成功运行的概率。可靠性是衡量软件质量的一个重要目标。
2、可理解性---指系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植和重用。
三、问答题
1、面向对象方法的优点是什么?
答:(1)将现实世界问题向面向对象解空间直接映射,实现对现实世界的直接模拟。
(2)以数据为中心,而不是基于对功能的分解,使得软件结构相对稳定,软件的重用性、可靠性、可维护等特性都较好。
2、可视化开发方法的优点有哪些?
答:(1)简化了图形用户界面的设计和编码工作,将开发的注意力主要集中在程序的执行逻辑和工作流程上。
(2)软件开发简单,易学、易上手。
(3)专业或非专业人员都能参与软件开发活动。
第二章练习题
一、填空题:
1、软件工程过程是:为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工
程活动。
2、一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的生存过程经历的生存过程称为软件生存期或叫生命期。
3、软件生命周期的阶段划分为3个时期是:定义时期、开发时期、维护时期。
4、软件工程标准的5个层次是:国际标准、国家标准、行业标准、企业规范、项目规范。
二、简答题:
1、瀑布模型的优点有哪些?
答:1、强迫开发人员采用规范的技术方法;
2、严格地规定了每个阶段必须提交的文档;
3、每个阶段结束前必须正式进行严格的技术审查和管理复审。
(完整版)软件工程课后习题答案
第一章
1.1什么是计算机软件?软件的特点是什么?
计算机软件是指计算机系统中的程序及其文档
软件的特点:
●软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算。
●软件是被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可,
但其维护的工作量大。
●软件的使用没有硬件那样的机械磨损和老化问题。
1.2简述软件的分类,并举例说明
1.系统软件
系统软件居于计算机系统中最接近硬件的一层,其他软件一般都通过系统软件发挥作用。例如:编译软件、操作系统。
2.支撑软件
支撑软件是支撑软件的开发和维护的软件。例如:数据库管理系统、网络软件、软件工具、软件开发环境。
3.应用软件
应用软件是特定应用领域专用的软件。例如:工程/科学计算机软件、嵌入式软件、产品线软件、Web应用软件、人工智能软件。
1.3简述软件语言的分类,并举例说明。
1.需求定义语言
是用于书写软件需求定义的语言。例如:PSL/PSA。
2.功能性语言
是用于书写软件功能规约的语言,通常又称为功能规约语言。例如:广谱语言、Z 语言。
3.设计性语言
是用于书写软件设计规约的语言。例如:PDL。
4.实现性语言
也称为程序设计语言,是用于书写计算机程序的语言。例如:C、java、PROLOG、FORTRAN、COBOL、Modula。
5.文档语言
是用于书写软件文档的语言。通常用自然语言或半形式化语言书写。
1.4什么是软件工程?
软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的。
软件工程导论(第六版)部分课后习题答案
第一章
1-1 什么是软件危机?
是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
1-3 什么是软件工程?
是指导计算机软件开发和维护的一门工程学科。
1-4 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。
目前使用得最广泛的软件工程方法学(2
种):
1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。
2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。
1-6 什么是软件过程?它与软件工程方法学有何关系?
z 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤z 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型
1-7 什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型的优缺点,说明每种模型的适用范围。
软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。
瀑布模型的优点:1.可强迫开发人员采用规范的方法;2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
软件工程习题及答案解析
软件工程习题及答案
一、选择题:
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、1/6
B、1/5
C、1/4
D、1/3
7. 变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于。
A、变换型
B、事务型
8. PAD(Problem Analysis Diagram)图是一种工具。
A、系统描述
B、详细设计
C、测试
D、编程辅助
9. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的。
A、总貌
B、细节
C、抽象
D、软件的作者
10. 数据流图中,当数据流向或流自文件时,。
A、数据流要命名,文件不必命名
B、数据流不必命名,有文件名就足够了
C、数据流和文件均要命名,因为流出和流进数据流是不同的
、数据流和文件均不要命名,通过加工可自然反映出D.
软件工程课后习题及其答案
软件工程习题
CH1一、填空题
1、软件工程需要解决的问题包括:费用、可靠性、可维护性、生产率和重用。
2、到目前为止,软件生产的发展经历了三个阶段,即程序设计、程序系统和软件工程。
3、计算机科学中的研究曾国均可用于软件工程,但计算机科学侧重于原理和理论,而软件工程侧重于软件系统构造。
4、软件工程有用管理科学的方法和原理进行软件生产的管理。
5、软件工程是用科学知识和技术原理来定义、开发、维护软件的一门科学。
6、软件工程研究的主要内容包括软件开发技术和软件开发管理技术两个方面。在软件开发技术方面,主要研究开发方法、开发过程、开发工具。在软件开发管理技术方面主要研究管理学、经济学、心理学。
7、作为一门交叉学科,软件工程具有很强的综合性,它涉及计算机科学、工程科学、管理科学、数学等领域。
8、软件生产周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。通常包括问题定义、可行性研究、需求分析、总体设计、详细设计、编码、测试、维护等活动,可以将这些活动以适当方式分配到不同阶段去完成。
9、开发软件工具的主要目的是为了提高软件生产效率和改善软件的质量。
10、描述软件开发过程中各种活动如何执行的模型称为周期模型。
11、从软件工程诞生以来,已经提出了多种软件开发方法,如结构化方法、面向数据的方法、面向对象的方法,它们对软件工程及软件产业的发展起到了不可估量的作用。
12、结构化方法由结构化分析、结构化设计和结构化程序设计构成。它是一种面向数据流的开发方法。
13、增量模型是一种非整体开发方法的模型。软件在该模型中是“逐渐”开发出来的,开发一部分向用户展示一部分,可让用户及早看到部分软件,及早发现问题。或者先开发一个“原型”软件,完成部分主要功能,展示给用户并征求意见,然后逐步完善,最终获得满意的软件产品。
软件工程导论(第六版)部分课后习题答案
1-1 什么是软件危机?
是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
1-3 什么是软件工程?
是指导计算机软件开发和维护的一门工程学科。
1-4 简述结构化型和面向对象型的要点,并分析它们的优缺点。
目前使用得最广泛的软件工程方法学( 2
种):
1. 传统方法学:也称为生命周期方法学或结构化型。优点:把软件生命周期划分成基干
个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会
承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。
2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了
软件的开发和维护工作;促进了软件重用。
1-6 什么是软件过程?它与软件工程方法学有何关系?
z 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项
任务的工作步骤z 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术
方法的集合称为方法学,也称型
1-7 什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型
的优缺点,说明每种模型的适用围。
软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若
干个阶段。生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,
也称为过程模型。
瀑布模型的优点:1.可强迫开发人员采用规的方法; 2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
软件工程部分习题讲解张海藩清华大学出版社第五版
系统对病人生理信号的处理功能主要是“接收信号”、“ 分析信号”和“产生警告信息”。
此外,系统还应该具有“定时取样生理信号”、“更新日 志”和“产生病情报告”的功能。
为了分析病人生理信号是否超出了医生规定的安全范围, 应该存储“患者安全范围”信息。此外,定时记录病人生 理信号所形成的“患者日志”,显然也是一个数据存储。
请用状态转换图描绘复印机的行为。
17
作业及解答(第3章)
从问题陈述可知,复印机的状态主要有“闲置”、“复印 ”、“缺纸”和“卡纸”。引起状态转换的事件主要是“ 复印命令”、“完成复印命令”、“发现缺纸”、“装满 纸”、“发生卡纸故障”和“排除了卡纸故障”。
18
作业及解答(第4章)
4-3 一个浮点二进制数的构成是:一个可选的符号(+或-), 后跟一个或多个二进制位,再跟上一个字符E,再加上另一 个可选符号(+或-)及一个或多个二进制位。例如,下列的字 符串都是浮点二进制数:
24
25
作业及解答(第5章)
补充2:某火车售票系统的数据流程图如下所示
日期
3 查询结果
按日期 查询
查询
信息
录入员
1
接受查 询
查询 信息 2 班次
分析查 询
查询 4 结果
软件工程部分课后练习题答案
第一章
1.计算机系统是由计算机硬件系统和软件系统这两个密不可分的部分组成的。
2.计算机软件系统通过运行程序来实现各种不同应用,包括用户为自己的特定目的编写的程序、检查和诊断机器系统的程序、支持用户应用程序运行的系统程序、管理和控制机器系统资源的程序等。
3.在软件工程学中,软件开发技术包括软件开发方法学、软件工具和软件工程环境。
4.在软件工程层次结构中,包括工具层、方法层、过程、技术层和质量保证层。
5.在面向对象概念中,消息传递是其与外部世界相互关联的唯一途径。
第三章
1.软件需求分析,可以把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础.
2.软件需求工作基本上包括收集用户、市场等方面对项目的需要,经过分析建立解题模型,细化模型,抽取需求。
3.结构化分析方法的基本步骤是采用由顶向下对系统进行功能分解,画出分层数据流图;由后向前定义系统的数据和加工,绘制数据词典和加工说明;最终写出软件需求和规格说明书.
4.面向对象分析方法总是从理解系统的“使用实例”开始,基本步骤是:定义系统的用例,在领域分析的基础上建立问题域的类(对象模型),然后开始建立对象—-关系和对象——行为模型。
5.需求分析评审过程由以下5个步骤组成:规划、准备、召开审查大会、修改缺陷、重审。
第四章
1.与软件需求分析一样,软件设计也有两种主要设计方法:以结构化设计为基础的结构化软件设计和面向对象方法指导的面向对象软件设计.
2.传统的软件设计任务通常分两个阶段完成。第一个阶段是概要设计,包括体系结构设计和接口设计,并编写概要设计文档;第二阶段是详细设计,其任务是确定各个软件的数据结构和操作,产生描述各软件组件的详细设计文档.
《软件工程》-经典考试例题复习题,重点知识点(含答案)
1.某旅馆的电话服务如下:可以拨分机号和外线号码。分机号是从7201至7299。外线号
码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。
要求:写出在数据字典中,电话号码的数据流条目的定义即组成。
电话号码=[分机号|外线号码]
分机号=7201 (7299)
外线号码=9+[市话号码|长话号码]
长话号码=区号+市话号码
区号=100 (300)
市话号码=局号+分局号
局号=[455|466|888|552]
分局号=4{数字}4
数字=[0|1|2|3|4|5|6|7|8|9]
2.为以下程序流程图分别设计语句覆盖和判定覆盖测试用例,并标明程序执行路径。
(1)语句覆盖测试用例
令x=2,y=0,z=4作为测试数据,程序执行路径为abcde。
(2)判定覆盖
可以设计如下两组数据以满足判定覆盖:
x=3,y=0,z=1(1分)(通过路径abce);
x=2,y=1,z=2(1分)(通过路径acde)。
或者
x=2,y=1,z=1;覆盖路径acde
x=1,y=1,z=1;覆盖路径ace
x=3,y=0,z=1;覆盖路径abce
(注意:本题也还可以有其他答案)
3.请用判定表画出以下问题的行为逻辑。
人们往往根据天气情况决定出门时的行装。天气可能下雨,也可能不下雨;下雨或不下雨天气可能变冷,也可能不变冷。如果天气要下雨,出门时带上雨伞;如果天气变冷,
4.对下列子程序进行调试:
《软件工程与软件测试技术》习题讲解
第一章 软件工程和软件测试概述
• 优点:1)对可选方案和约束条件的强调有利于已有
软件的重用,也有助于把软件质量作为软件开发的一 个重要目标;2)减少了过多测试(浪费资金)或测 试不足(产品故障多)所带来的风险;3)在螺旋模 型中维护只是模型的另一个周期,在维护和开发之间 并没有本质区别。
• 缺点:1)比较复杂,需要相当的风险评估技术, 且成功依赖于这种技术。2)需要软件开发人员具 有丰富的风险评估经验和这方面的专门知识
• 适用场合:1)客户接受分阶段交付。2)对应用 领域不熟悉,难以一步到位。3)用户可参与到整 个软件开发过程中。4)有较好的类库和构件库。
第一章 软件工程和软件测试概述
7. 简述螺旋模型的特点、优点、缺点、适用场合
答:螺旋将瀑布模型和快速原型模型结合起来,强调了其他 模型所忽视的风险分析,把软件开发过程组成为一个逐 步细化的定义周期(螺旋周期)序列,每经历一个周期, 系统就得到进一步的细化和完善;本质上,具有上述特 征的螺旋是一直运转的,直到软件退役。有时这个过程处 于睡眠状态,但任何时候出现了改变,过程都会从合适 的入口点开始;紧密围绕开发中的风险问题,用风险分 析推动软件设计向深一层扩展、求精;强调持续地判断、 确定和修改用户任务目标,并按成本、效益来分析候选 的软件产品性质对任务目标的贡献;可结合采用多种软 件开发方法,但究竟结合哪一种方法仍由风险分析来决 定。
软件工程习题及答案分析
软件工程习题及答案
一、选择题:
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、1/6
B、1/5
C、1/4
D、1/3
7. 变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于。
A、变换型
B、事务型
8. PAD(Problem Analysis Diagram)图是一种工具。
A、系统描述
B、详细设计
C、测试
D、编程辅助
9. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的。
A、总貌
B、细节
C、抽象
D、软件的作者
10. 数据流图中,当数据流向或流自文件时,。
A、数据流要命名,文件不必命名
B、数据流不必命名,有文件名就足够了
C、数据流和文件均要命名,因为流出和流进数据流是不同的
D、数据流和文件均不要命名,通过加工可自然反映出
【工程】软件工程课后答案大全详细
【关键字】工程
软件工程习题解答
第一章概述
3.什么是软件危机?其产生的原因是什么?
软件危机:软件发展第二阶段的末期,由于计算机硬件技术的进步。一些复杂的、大型的软件开发项目提出来了,但,软件开发技术的进步一直未能满足发展的要求。
在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。主要表现在以下几个方面:
a.经费预算经常突破,完成时间一再拖延。
b.开发的软件不通满足用户要求。
c.开发的软件可维护性差。
d. 开发的软件可靠性差。
软件危机产生的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的:
a.软件的规模越来越大,结构越来越复杂。
b.软件开发管理困难而复杂。
c.软件开发费用不断增加。
d.软件开发技术落后。
e.生产方式落后。
f.开发工具落后,生产率提高缓慢。
4.什么是软件工程?它的目标和内容是什么?
软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。
软件工程的目标是成功的建造一个大型软件系统,所谓成功是要达到以下几个目标:
a.付出较低的开发成本;
b.面到要求的软件功能;
c.取得较好的软件性能;
d.开发的软件易于移植;
e.需要较低的维护费用;
f.能按时完成开发任务,及时交付使用;
g.开发的软件可靠性高;
软件工程的内容:
1)软件开发技术:软件开发方法、软件开发过程、软件开发工具和环境。
2)软件开发管理:软件管理学、软件经济学、软件心理学。
6.什么是软件生存周期?它有哪几个活动?
软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5
E2 病人
P2 分析信号
F2生理信号 F5安全范围
危及病人信息 D2患者安全范围
P3 产生警告信息
F2生理信号
D3生理信息
F4警告信息
F2生理信号
P1 接收信号
定时的生理信号
P5 更新日志
F2生理信号 定时的 生理信号
E1 护士
E3 时钟
F3日前、时间
P4 定时取样 生理信号
F6日志
F6日志
D1患者日志
数字零=0
3位数字=3{数字}3
//3至3个数字
8位数字=非零数字+7位数字
7位数字=7{数字}7
数字=[0|1|2|3|4|5|6|7|8|9]
10
作业及解答(第3章)
3-3 银行计算机储蓄系统的工作过程大致如下:储户填写 的存款单或取款单由业务员键入系统,如果是存款则系统 记录存款人姓名、住址(或电话号码)、身份证号码、存款 类型、存款日期、到期日期、利率及密码(可选)等信息, 并印出存单给储户;如果是取款而且存款时留有密码,则 系统首先核对储户密码,若密码正确或存款时未留密码, 则系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并用实体-联系图描绘 系统中的数据对象。
作业及解答(第1-2章)
1-6 什么是软件过程?它与软件工程方法学有何关系?
✓软件过程是为了开发出高质量的软件产品所需完成的一系 列任务的框架,它规定了完成各项任务的工作步骤。
✓软件过程定义了运用技术方法的顺序、应该交付的文档资 料、为保证软件质量和协调软件变化必须采取的管理措施 ,以及标志完成了相应开发活动的里程碑。
4
E2 病人
F2生理信号
F5安全范围 D2患者安全范围
P2 分析信号
危及病人信息
P3 产生警告信息
F2生理信号
F4警告信息
P1 接收信号
F2生理信号
E1 护士
E3 时钟
F3日前、时间
P4 定时取样 生理信号
定时的生理信号 F6日志
P5 更新日志
D1患者日志
E1 护士
F6日志 F1要求报告
P6 产生病情报告
请用定义数据字典的方法,定义上述的电话号码。
8
作业及解答(第3章)
数据结构的描述
符号
含义 举
例
=
被定义为
+
与
x = a+b
[...,...] 或 [...|...] = [a | b]
Baidu Nhomakorabea
或 x = [a , b],x
{ ... }或 m{...}n 3{a}8
重复 x = {a}, x =
(...) (a)
P3 核算密码
F6取款信息
P4 计算利息
F4利息 P5 打印利息清单
F8储蓄利率
E2 业务员
F8储蓄利率
P6 设置利率
F8储蓄利率
D2存款利率
13
作业及解答(第3章)
E1 储户
F7密码
F2取款单
P3.1 输入取款信息
无效取款信息
F5存款信息 D1存款信息
P3.2 密码校验
F7密码
14
作业及解答(第3章)
E1
护士
F1要求报告
P6
产生病情报告
6
E2 病人
P2
分析信号
危及病人信息
F2生理信号
F5安全范围
D2患者安全范围
F2生理信号
D3生理信息
P7制定安 全范围
F2生理信号
P1 接收信号
定时的生理信号
P5 更新日志
F2生理信号 定时的 生理信号
P3 产生警告信息
F4警告信息
E1 护士
E3 时钟
F3日前、时间
✓软件过程是软件工程方法学的3个重要组成部分之一。
1
作业及解答(第3章)
2-4 目前住院病人主要由护士护理,这样做不仅需要大量 护士,而且由于不能随时观察危重病人的病情变化,还会 延误抢救时机。某医院打算开发一个以计算机为中心的患 者监护系统,请分层次地画出描述本系统功能的数据流图 。 医院对患者2监护系统的基本要求是随时接收每个病人的 生理信号(脉搏、体温、血压、心电图等),定时记录病人 情况以形成患者日志,当某个病人的生理信号超出医生规 定的安全范围时向值班护士发出警告信息,此外,护士在 需要时还可以要求系统印出某个指定病人的病情报告。
ER模型
✓本问题中共有两类实体,分别是“储户”和“储蓄所”, 在它们之间存在“存取款”关系。因为一位储户可以在多 家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取 款”是多对多(M:N)关系。
2
作业及解答(第3章)
E1 护士
F4警告信息、病情报告 F1要求报告
E1 护士
E2 病人
F2生理信号
P0 患者监护系统
F6日志
D1患者日志
F5安全范围
D2患者安全范围
E3 时钟
F3日前、时间
3
作业及解答(第3章)
从问题陈述可知,本系统数据源点是“病人”和“护士” ,他们分别提供生理信号和要求病情报告的信息。进一步 分析问题陈述,从系统应该“定时记录病人情况以形成患 者日志”这项要求可以想到,还应该有一个提供日期和时 间信息的“时钟”作为数据源点。
可选
x=
“...”
基本数据元素 x = “a”
..
连结符
x = 1..9
9
作业及解答(第3章)
电话号码=[校内电话号码|校外电话号码]
校内电话号码=非零数字+ 3 位数字 //后面继续定义
校外电话号码=[本市号码|外地号码]
本市号码=数字零+8位数字
外地号码=数字零+3位数字+8位数字
非零数字=[1|2|3|4|5|6|7|8|9]
P4 定时取样 生理信号
F6日志
F6日志
D1患者日志
E1
护士
F1要求报告
P6
产生病情报告
7
作业及解答(第3章)
2-5 北京某高校可用的电话号码有以下几类:校内电话号 码由4位数字组成,第1位数字不是0;校外电话又分为本 市电话和外地电话两类,拨校外电话需先拨0,若是本市 电话则再接着拨8位数字(第1位不是0),若是外地电话则 拨3位区码再拨8位电话号码(第1位不是0)。
11
作业及解答(第3章)
E1 储户
F1存款单 F2取款单
P0储蓄系统
F3存单 F4利息清单
F5存款信息 F5存款信息
D1存款信息
E1 储户
12
E1 储户
F1存款单 F7密码
P1 记录存款信息
F5存款信息
D1存款信息
P2 打印存单
F5存款信息 F3存单
E1 储户
F7密码 F2取款单
F5存款信息
F4利息 F4利息
从问题陈述容易看出,本系统的数据终点是接收警告信息 和病情报告的护士。
系统对病人生理信号的处理功能主要是“接收信号”、“ 分析信号”和“产生警告信息”。
此外,系统还应该具有“定时取样生理信号”、“更新日 志”和“产生病情报告”的功能。
为了分析病人生理信号是否超出了医生规定的安全范围, 应该存储“患者安全范围”信息。此外,定时记录病人生 理信号所形成的“患者日志”,显然也是一个数据存储。