软件工程应用题
软件工程应用题型(EK-绝密版)
方法画出下列问题的顶层和0层数据流图。
某图书管理系统有以下功能:
(1)借书:输入读者借书证。
系统首先检查借书证是否有效,若有效,对于第一次借书的读者,在借书文件上
】设计边界测试用例
[例]根据下列条件使用边界值分析法设计测试用例:某一8位微机,其十进制整数定义为:进制整数,其值的范围是-128~127,如123,-45,0。
②设计测试用例
测试数据测试范围期望结果
有效
(1)s_name12等价类
(1),(3),(4)
有效
(2)a1b2c3d4e5f6g7h8i9j1k2l3m4n5o6p7q8r9s_tr等价类
(2),(3),(4)
(3)a1b2c3d4e5f6g7h8i9j1k2l3m4n5o6p7q8r9s_trff等价类(5)无效
(4)234name等价类(6)无效
(5)ab gh等价类(7)无效
(6)ab!2f等价类(8)无效
(7)fg+ghh等价类(9)无效
(8)H@gh等价类(10)无效。
软件工程综合应用例题(题)
综合应用例题第一部分传统软件开发方法1、某一8位计算机,其十六进制常数的定义为:以0x或0X开头的数是十六进制整数,其值的围是-7f至7f(大小写字母不加区别),如0x13,0X6A,-0x3c 。
请用等价类划分法设计测试用例。
2、下面是一段求最大值的程序,其中datalist是数据表,n是datalist的长度。
int GetMax(int n, int datalist[ ]){int k=0;for ( int j=1; j<n; j++ )if ( datalist[j] > datalist[k] ) k=j;return k;}画出该程序的程序流程图,并计算其McCabe复杂度。
3、有下列伪码程序:STARTINPUT (M,N)IF M>=10THEN X:=10ELSE X:=lENDIFIF N>=20THEN Y:=20ELSE Y:=2ENDIFPRINT(X,Y)STOP设计该程序的语句覆盖和路径覆盖测试用例。
4、根据伪码程序画出程序流程图,盒图(N-S图)。
STARTaIF x1 THENREPEAT UNTIL x2bEND REPEATELSEBLOCKcdEND BLOCKEND IFSTOP5、根据下列描述,画出教材征订系统的第一层数据流图。
学生入学后到教材科订书,教材科根据教材库存情况分析是否需要买书,如需购买,则向书店购买。
各种资金往来通过学校的会计科办理。
6、画出下列伪码程序的程序流程图,盒图(N-S图)。
STARTIF p THENWHILE q DOFEND DOELSEBLOCKgnEND BLOCKEND IFSTOP7、画出下面PDL伪码程序的程序流程图、N-S图、PAD图和程序流图,并计算其McCabe复杂度。
WHILE P DOIF A>O THEN A1 ELSE A2 ENDIF;IF B>0 THEN B1;IF C>0 THEN C1 ELSE C2 ENDIFELSE B2ENDIF;B3ENDWHILE;8、根据下面伪码程序,设计语句覆盖、路径覆盖、边覆盖、判定覆盖、条件覆盖、点覆盖的测试用例。
软件工程测试试卷应用题
软件工程考试试卷——应用题题库四、应用题(每小题10分)1.某培训中心要研制一个计算机管理系统。
它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。
(1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
(2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
(3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:(1)对以上问题画出数据流程图。
(2)画出该培训管理的软件结构图。
解答:(1)数据流图(2)软件体系结构2.建立窗口系统的对象模型,问题陈述如下:“窗口分为对话窗、图形窗、滚动窗三种。
对话窗中有若干对话项,由唯一的项名字来确定;对话项分为按钮、选择项和正文项三种,选择项中有若干选择项入口。
图形窗中有若干形状元素,形状元素分为一维形状和二维形状。
一维形状又分为直线、圆弧、折线;二维形状分为圆、椭圆、矩形、多边形,其中折线与多边形由若干有序顶点组成。
正文窗是滚动窗的一种,而图形滚动窗既是图形窗又是滚动窗。
”解答:3.假设某航空公司规定,乘客可以免费托运行李的重量不超过30公斤。
当行李的重量超出30公斤时,对一般舱的国内乘客超重部分每公斤收费4元,对头等舱的国内乘客超重部分每公斤收费6元。
对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。
试画出相应判定表。
注意:免费那个行去掉右面的√4.下图描述了某个子程序的处理流程,根据判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应标准的最小的测试数据组。
(1)a=5 b=1(2) a=5 b=-1(3)a=5 b=1(4) a=5 b=1a=-5 b=-1a=0 b=-1(5)a=5 b=-1(6) a=5 b=1a=-5 b=1a=0 b=0a=-5 b=-1a=-5 b=-1(7)a=5 b=1(8) a=5 b=1a=0 b=1a=0 b=-1a=0 b=-1a=-5 b=1a=-5 b=1a=-5 b=-1流程图如下:解答:达到判定覆盖为(4);达到条件覆盖为(3);达到判定/条件覆盖为(6);达到条件组合覆盖为(8);达到路径覆盖为(7)。
应用题_实用软件工程_[共2页]
64二、判断题1.用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、完整性、现实性和有效性。
( )2.需求分析是开发方的工作,用户的参与度不大。
( )3.需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性研究的依据。
( )4.需求分析的主要目的是解决软件开发的具体方案。
( )5.需求规格说明书描述了系统每个功能的具体实现。
( )6.非功能需求是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。
( )7.分层的DFD图可以用于可行性研究阶段,描述系统的物理结构。
( )8.需求分析阶段的成果主要是需求规格说明书,但该成果与软件设计、编码、测试直至维护关系不大。
( )三、简答题1.请简述可行性研究的内容。
2.如何理解需求分析的作用和重要性。
3.如何进行结构化需求分析,其建模方法都有哪些?4.需求分析的难点在哪里?5.为什么说需求过程是一个迭代过程?6.需求管理过程的目标和内容是什么?7.请简述数据流图的作用。
8.请简述数据字典的作用。
四、应用题1.学生档案管理系统的主要功能如下。
a.对学生档案信息的增加、删除、修改。
b.对学生信息的查询和打印。
c.对学生信息的统计和分析。
d.此外,本系统还应该能与其他系统共享部分数据。
请画出此系统的顶层数据流图。
2.某培训机构入学管理系统有报名、交费、就读等多项功能,并有课程表(课程号,课程名,收费标准)、学员登记表(学员号,姓名,电话)、学员选课表(学员号,课程号,班级号)、账目表(学员号,收费金额)等诸多数据表。
下面是对其各项功能的说明。
(1)报名:由报名处负责,需要在学员登记表上进行报名登记,需要查询课程表让学员选报课程,学员所报课程将记录到学员选课表。
(2)交费:由收费处负责,需要根据学员所报课程的收费标准进行收费,然后在账目表上记账,并打印收款收据给办理交费的学员。
(3)就读:由培训处负责,其在验证学员收款收据后,根据学员所报课程将学员安排到合适班级就读。
软件工程综合应用例题
软件工程综合应用例题本文档是软件工程综合应用的一个例题,旨在展示一个完整的项目开发过程。
本例题是一个简单的任务管理应用。
本文档将详细描述项目的需求分析、设计、实现和测试阶段,以及相关附件、法律名词及注释。
1.需求分析阶段1.1 需求概述在这个任务管理应用中,用户可以创建、编辑和删除任务,设置任务的截止日期和优先级,以及将任务分配给不同的用户。
应用还应该提供用户登录和注册功能。
1.2 功能需求1.2.1 用户管理- 注册:用户可以通过提供用户名和密码进行注册。
- 登录:已注册的用户可以使用用户名和密码进行登录。
1.2.2 任务管理- 创建任务:用户可以创建新的任务,并为其设置标题、描述、截止日期和优先级。
- 编辑任务:用户可以编辑已存在的任务的信息。
- 删除任务:用户可以删除任务。
- 分配任务:用户可以将任务分配给其他用户。
1.2.3 任务列表- 显示任务列表:用户可以查看当前所有的任务,包括任务的标题、截止日期和优先级。
2.设计阶段2.1 系统架构设计本应用将采用MVC(Model-View-Controller)架构,以实现逻辑层和数据层的分离。
- 模型(Model):负责处理数据部分,包括任务的增删改查操作。
- 视图(View):负责界面的展示和用户交互。
- 控制器(Controller):负责处理用户输入和调用模型进行相关操作。
2.2 数据库设计应该设计一个数据库来存储用户信息和任务信息。
用户表包括用户名和密码字段,任务表包括任务的标题、描述、截止日期和优先级字段,并包含一个用户ID字段(用于关联任务与用户)。
3.实现阶段3.1 开发环境和技术选择本应用将使用以下技术:- 后端开发语言:Java- 前端开发语言:、CSS、JavaScript- 数据库:MySQL- 开发框架:Spring MVC3.2 开发过程3.2.1 用户管理模块- 注册功能的实现:根据用户输入的用户名和密码,将其存储到数据库中。
软件工程考试题及答案
软件工程考试题及答案一、选择题1. 下列哪个不是软件工程的基本原则?A. 持续集成B. 形式化表示C. 高内聚低耦合D. 可重用性答案:B. 形式化表示2. 软件的可靠性是指什么?A. 软件的正确性B. 软件的可维护性C. 软件的效率D. 软件的稳定性答案:D. 软件的稳定性3. 下列哪个不是软件测试的目标?A. 发现软件中的错误和缺陷B. 验证软件是否满足用户需求C. 评估软件的质量D. 在短时间内完成软件开发答案:D. 在短时间内完成软件开发二、判断题1. 软件工程是一门工程学科,其目标是通过系统化的、规范化的方法对软件进行开发、运行和维护。
答案:正确2. “高内聚低耦合”是软件工程中的重要原则,指的是模块之间的独立性和模块之间的依赖程度。
答案:正确3. 软件需求分析是软件开发过程中的最后一步,最终确定软件系统的功能和性能。
答案:错误三、简答题1. 什么是软件工程?答:软件工程是一门工程学科,通过系统化的、规范化的方法对软件进行开发、运行和维护。
它涉及软件开发的各个阶段,包括需求分析、设计、编码、测试和维护等,并注重管理和团队合作,以提高软件质量、降低开发成本和加快开发进度。
2. 软件测试的目的是什么?答:软件测试的目的是发现软件中的错误和缺陷,验证软件是否满足用户需求,并评估软件的质量。
通过测试,可以提高软件的可靠性和稳定性,减少软件在使用过程中的风险。
3. 请简述软件开发生命周期中的各个阶段。
答:软件开发生命周期包括需求分析、设计、编码、测试和维护等阶段。
- 需求分析阶段:确定软件系统的功能、性能和约束条件,明确用户需求。
- 设计阶段:根据需求分析结果设计软件系统的结构和模块,确定软件的整体框架。
- 编码阶段:根据设计阶段的文档编写程序代码,实现软件系统的各个功能。
- 测试阶段:对软件进行各种测试,包括单元测试、集成测试和系统测试,以发现错误和缺陷。
- 维护阶段:根据用户反馈和需求变化,对软件进行修复和更新,确保其持续稳定运行。
软件工程综合应用例题(题)
软件工程综合应用例题(题)软件工程综合应用例题1、引言本文档旨在介绍软件工程综合应用的例题,包括需求分析、设计、编码、测试和项目管理等方面的内容。
通过这些例题,读者将能够深入理解软件工程的基本原理和综合应用。
2、需求分析2.1 用户需求在这一章节中,我们将对用户需求进行详细的分析和描述。
这包括用户的功能需求、非功能需求、用户界面和数据流等方面的要求。
2.2 系统需求在这一章节中,我们将从整体角度对系统需求进行分析和描述。
这包括系统的功能需求、性能需求、安全需求等方面的要求。
3、设计3.1 系统架构设计在这一章节中,我们将对系统的整体架构进行设计,包括系统的模块划分、模块之间的接口设计等。
3.2 详细设计在这一章节中,我们将对系统的各个模块进行详细设计,包括模块的功能描述、数据结构设计、算法设计等。
4、编码与测试4.1 编码实现在这一章节中,我们将对系统进行编码实现,包括编程语言的选择、代码规范的定义等。
4.2 单元测试在这一章节中,我们将对系统的各个模块进行单元测试,以确保各个模块的功能正确实现。
4.3 集成测试在这一章节中,我们将对系统的整体功能进行集成测试,以确保各个模块的协同工作正常。
4.4 系统测试在这一章节中,我们将对整个系统进行系统测试,以确保系统达到用户的需求。
5、项目管理5.1 时间计划在这一章节中,我们将制定整个项目的时间计划,包括各个阶段的工作内容、工作时间和工作人员的分配等。
5.2 资源管理在这一章节中,我们将对项目的资源进行管理,包括人力资源、硬件资源、软件资源等的分配和管理。
5.3 风险管理在这一章节中,我们将对项目的风险进行管理,包括风险的识别、评估和应对措施的制定等。
6、附件本文档涉及的附件包括原始需求文档、系统架构图、详细设计文档、测试用例和测试报告等。
7、法律名词及注释7.1 法律名词在本文档中,涉及到的法律名词包括但不限于:合同法、知识产权法、劳动法等。
7.2 注释在本文档中,涉及到的法律名词将在相应的位置进行注释说明,以便读者理解和运用。
软件工程综合应用例题(题)
综合应用例题第一部分传统软件开发方法1、某一8位计算机,其十六进制常数的定义为:以0x或0X开头的数是十六进制整数,其值的范围是-7f至7f(大小写字母不加区别),如0x13,0X6A,-0x3c 。
请用等价类划分法设计测试用例。
2、下面是一段求最大值的程序,其中datalist是数据表,n是datalist的长度。
int GetMax(int n, int datalist[ ]){int k=0;for ( int j=1; j<n; j++ )if ( datalist[j] > datalist[k] ) k=j;return k;}画出该程序的程序流程图,并计算其McCabe复杂度。
3、有下列伪码程序:STARTINPUT (M,N)IF M>=10THEN X:=10ELSE X:=lENDIFIF N>=20THEN Y:=20ELSE Y:=2ENDIFPRINT(X,Y)STOP设计该程序的语句覆盖和路径覆盖测试用例。
4、根据伪码程序画出程序流程图,盒图(N-S图)。
STARTaIF x1 THENREPEAT UNTIL x2bEND REPEATELSEBLOCKcdEND BLOCKEND IFSTOP5、根据下列描述,画出教材征订系统的第一层数据流图。
学生入学后到教材科订书,教材科根据教材库存情况分析是否需要买书,如需购买,则向书店购买。
各种资金往来通过学校的会计科办理。
6、画出下列伪码程序的程序流程图,盒图(N-S图)。
STARTIF p THENWHILE q DOFEND DOELSEBLOCKgnEND BLOCKEND IFSTOP7、画出下面PDL伪码程序的程序流程图、N-S图、PAD图和程序流图,并计算其McCabe复杂度。
WHILE P DOIF A>O THEN A1 ELSE A2 ENDIF;IF B>0 THEN B1;IF C>0 THEN C1 ELSE C2 ENDIFELSE B2ENDIF;B3ENDWHILE;8、根据下面伪码程序,设计语句覆盖、路径覆盖、边覆盖、判定覆盖、条件覆盖、点覆盖的测试用例。
软件工程综合应用题型举例
1、数据流图、软件结构图假设一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次订货的零件。
对于每个需要再次订货的零件应该列出下述数据:零件编号,零件名称,订货数量,目前价格,主要供应者,次要供应者。
零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给订货系统。
当某零件的库存数量少于库存量临界值时就应该再次订货。
试根据要求画出该系统的功能级数据流图,并设计出软件结构图。
解答:(1)数据流图如下:或者(2)软件结构图如下:2、数据字典北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。
请用数据字典中定义数据的方法,定义上述的电话号码。
解答:电话号码=[校内号码|校外号码]校内号码=非0数字+3{数字}3校外号码=0+[本市号码|外地号码]本市号码=非0数字+7{数字}7外地号码=3{数字}3+非0数字+7{数字}7非0数字=[1|2|3|4|5|6|7|8|9]数字=[0|1|2|3|4|5|6|7|8|9]3、状态转化图复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。
请用状态转换图描绘复印机的行为。
解答:4、程序流程图、盒图、PAD 图画出下列伪码程序的程序流程图,盒图(N-S 图)。
STARTIF pTHENWHILE qDO FEND DOELSEBLOCK g nEND BLOCKEND IF STOP解答:gnFp q START STOPnono yesyes g pqT FnF5、判定表、判定树某航空行李托运费的算法规定:重量不超过30公斤的行李可免费托运。
软件工程习题及答案
软件工程习题及答案软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。
以下是一些软件工程相关的习题及答案,希望能帮助您更好地理解这门学科。
一、选择题1、软件生存周期中,解决软件“做什么”的阶段是()A 需求分析B 软件设计C 软件实现D 软件测试答案:A解释:需求分析阶段的主要任务是确定软件系统的功能和性能要求,解决软件“做什么”的问题。
2、下面不属于软件设计阶段任务的是()A 软件总体结构设计B 算法设计C 制定测试计划D 数据库设计答案:C解释:制定测试计划属于软件测试阶段的任务,软件设计阶段主要包括总体结构设计、详细设计(如算法设计、数据库设计等)。
3、软件工程中,白盒测试法可用于测试程序的内部结构。
此方法将程序看作是()A 循环的集合B 地址的集合C 路径的集合D 目标的集合答案:C解释:白盒测试是把程序看成装在一个透明的白盒子里,也就是清楚了解程序的结构和处理过程,测试用例要覆盖程序中的所有可能路径。
4、软件维护工作中,大部分工作属于()A 改正性维护B 适应性维护C 完善性维护D 预防性维护答案:C解释:在软件维护工作中,完善性维护占了大部分,因为随着用户需求的变化和使用过程中的新发现,需要对软件功能进行扩充和增强。
二、填空题1、软件危机产生的主要原因是软件产品的_________和软件生产的_________之间的矛盾。
答案:复杂性;规模性解释:软件产品的复杂性不断增加,而软件生产的规模性又使得管理和控制变得困难,这两者之间的矛盾导致了软件危机。
2、结构化分析方法使用的主要工具是_________和_________。
答案:数据流图;数据字典解释:数据流图用于描述系统中数据的流动和处理过程,数据字典则对数据流图中的元素进行详细的定义和说明。
3、软件测试的步骤包括单元测试、_________、_________和系统测试。
软件工程-名词解释应用题汇总带答案
三、简答题(每题5分,共25分)1.分析软件危机产生的主要原因有哪些?答:导致软件危机的主要原因有:(1)软件日益复杂和庞大(2)软件开发管理困难和复杂(3)软件开发技术落后(4)生产方式落后(5)开发工具落后(6)软件开发费用不断增加1 个要点1分,只要答上5个要点得5分!2.说明结构化程序设计的主要思想是什么?答:(1)自顶向下、逐步求精的程序设计方法(2分)(2)使用3种基本控制结构、单入口、单出口来构造程序。
(3分)3.软件测试包括哪些步骤?说明这些步骤的测试对象是什么?答:(1)单元测试,测试对象对单元模块(2分)(2)集成测试,测试对象为组装后的程序模块(2分)(3)确认测试,测试对象为可运行的目标软件系统(1分)4.需求分析与软件设计二个阶段任务的主要区别是什么?答:需求分析定义软件的用户需求,即定义待开发软件能做什么(2.5分)软件设计定义软件的实现细节以满足用户需求,即研究如何实现软件。
(2.5分)5、简述文档在软件工程中的作用。
(5分)(1)提高软件开发过程的能见度(1分)(2)提高开发效率、便于用户了解软件功能、性能(1分)(3)作为开发人员阶段工作成果和结束标志(1分)(4)记录开发过程的有关信息便于使用与维护(1分);(5)提供软件运行、维护和培训有关资料;(1分)四、某培训中心要研制一个计算机管理系统。
它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。
1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
1.对以上问题画出数据流程图。
2.画出该培训管理的软件结构图的主图。
软件工程应用题专项训练
应用题专项训练1. 请使用PDL语言描述在数组A(1)~A(10)中找最大数的算法。
解:用PDL语言描述如下: N=1 (1分) WHILE N<=10 DO (2分) IF A(N)<=A(N+1)MAX =A(N+1); (3分) ELSE MAX =A(N)ENDIF; (2分) N=N+1; (1分) ENDWHILE; (1分)2. 某电器集团公司下属的厂包括技术科、生产科等基层单位。
现在想建立一个计算机辅助企业管理系统,其中: 生产科的任务是: (1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。
(2)根据车间实际生产日报表、周报表调整月生产计划 (3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。
(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间 技术科的任务是: (1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。
(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。
试写出以上系统中生产科和技术科处理的软件结构图。
解:生产科图 技术科图画出生产科图的给6分,画出技术科的给4分。
3.试论述软件界面友好设计的重要性。
解:最终用户能够看到的是软件界面,软件界面是用户与计算机交互的接口.如果界面不友好,用户不愿意使用,那么软件的功能再强,也是没有用的.这就要求软件界面应以用户为中心进行设计.设计应遵循以下的原则: (1分)(1)一致性,菜单选择,命令输入,数据显示等功能应使用一致的风格. (1分)(2)提供有意义的反馈. (1分)(3)允许取消大多数操作. (1分)(4)减少在动作间必须记忆的信息量. (1分)(5)在对话,移动和思考中提高效率. (1分)(6)允许错误. (1分)(7)按功能对动作分类,并据此安排屏幕布局(1分).(8)提供上下文相关的帮组机制. (1分)(9)命令用简单的动词或动词短语命名. (1分)只有用户愿意使用的软件才是好的软件,所以软件界面设计的好坏直接影响软件的质量.4.请使用PAD图描述在数组A(1)~A(10)中找最大数的算法。
软件工程综合应用例题(题)
软件工程综合应用例题(题)软件工程综合应用例题1. 引言本文档旨在提供一个综合应用例题的,供参考使用。
该例题涵盖了软件工程的多个方面,包括需求分析、设计、开发、测试等。
通过阐述该例题的具体细节,可以帮助读者更好地理解和应用软件工程的知识和方法。
2. 需求分析2.1 业务背景描述背景信息,包括问题所属的领域、相关企业或组织的背景等。
2.2 需求概述简要描述问题的需求,包括主要功能和限制条件等。
2.3 功能需求详细描述各个功能模块的需求,包括输入输出要求、处理逻辑等。
2.4 非功能需求描述系统的非功能需求,如性能、可维护性、安全性等。
2.5 系统约束描述系统开发或运行过程中的约束条件,如技术限制、资源限制等。
3. 设计3.1 系统结构设计描述系统的整体结构,包括模块划分、依赖关系等。
3.2 模块设计根据需求分析阶段的功能需求,分别设计各个模块的具体结构。
3.3 数据库设计根据需求分析阶段的数据需求,设计合适的数据库结构和数据表。
3.4 界面设计设计用户界面,包括布局、样式、交互等。
4. 开发4.1 技术选型针对需求和设计阶段得出的要求,选择适合的开发技术和工具。
4.2 编码与单元测试根据设计阶段的模块设计和界面设计编写代码,并进行单元测试。
4.3 集成测试将各个模块进行集成,并进行整体的功能测试和性能测试。
5. 测试5.1 功能测试针对需求分析阶段给出的功能需求,进行功能测试和验证。
5.2 性能测试对系统的性能进行测试和评估,包括响应时间、吞吐量等指标。
5.3 安全测试检查系统的安全性,防止潜在的安全风险和漏洞。
6. 部署与运维6.1 系统部署将开发完成的系统部署到生产环境,包括安装、配置等。
6.2 系统维护提供系统运行期间的维护支持,包括故障排除、性能调优等。
7. 附件本文档所涉及的附件包括:- 需求文档- 设计文档- 测试文档- 关键代码片段8. 法律名词及注释- 法律名词1:注释1- 法律名词2:注释2。
软件工程综合应用例题(题)
软件工程综合应用例题(题)软件工程综合应用例题一、题目背景介绍软件工程是指在软件开发的过程中运用工程学的原理、方法和技术,以确保软件在开发、维护和运行过程中具备高质量和高可靠性的一门科学与技术。
为了更好地理解和应用软件工程的知识,以下是一个综合应用例题,以帮助读者加深对软件工程的认识和实践能力。
二、题目描述某公司要开发一个在线购物平台,为此需要设计并实施一个相应的软件系统。
请根据以下需求,从软件工程的角度出发,分析、设计和实施该购物平台的相关功能和模块。
1. 用户注册与登录功能- 注册新用户:用户需要填写必要的个人信息,如用户名、密码、邮箱等。
- 登录系统:用户通过正确的用户名和密码登录系统,以进入购物平台。
- 密码找回:用户可以通过邮箱验证来找回自己的密码。
2. 商品浏览与搜索功能- 用户可以浏览购物平台上的商品信息,包括商品图片、名称、价格等。
- 用户可以通过关键字搜索来寻找自己感兴趣的商品。
3. 购物车与订单管理功能- 用户可以把自己想要购买的商品加入购物车,并且可以对购物车中的商品进行管理(如修改数量、删除等)。
- 用户可以提交订单,包括选择收货地址、配送方式、支付方式等。
4. 用户评价与反馈功能- 用户可以对购物平台上的商品进行评价和打分,以帮助其他用户做出购买决策。
- 用户可以提供对购物平台的反馈和建议,以改进购物体验和系统功能。
5. 后台管理功能- 管理员可以对用户信息进行管理,包括查看用户个人信息、修改用户权限等。
- 管理员可以对商品信息进行管理,包括添加、删除、更新商品信息等。
- 管理员可以处理用户的订单,包括确认订单、发货、退货等。
三、解决方案软件工程的综合应用涉及多个方面,下面将从需求分析、系统设计和系统实施三个方面对这个购物平台进行解决方案的讨论。
1. 需求分析在完成软件系统开发前,首先要进行需求分析,明确用户、系统和功能需求,以便从用户的角度出发设计系统。
在该购物平台中,用户的注册、登录、浏览与搜索、购物车和订单管理、用户评价与反馈等功能均是必备的,系统要能够有效地满足用户的操作需求。
软件工程期末——应用题部分
软件工程应用题一、程序流程图、N-S、PAD图、伪码(PDL语言)之间的转换1.现有程序流程图表示:输入10个数据,输出其中的最小数和最大数。
试根据程序流程图画出N-S 图。
参考答案:2.请使用PAD图和PDL语言描述在数组A(1)~A(10)中找最大数的算法。
参考答案:(1)PDL语言:N=1WHILE N<=10 DOIF A(N)<=A(N+1) MAX =A(N+1);ELSE MAX =A(N) ENDIF;N=N+1;ENDWHILE;解题思路:人工查找时,是从第一个元素开始查找,用当前元素与下一个元素比较,将较大者作为当前元素又与下一元素比较,如此循环,直到数组末尾。
(2)PAD图:6.根据下面的伪代码程序,完成相应要求。
STARTIF C1THENWHILE C2 DOfENDDOELSEBLOCKgpENDBLOCKENDIFREPEAT UNTIL C3qrENDREPSTOP问题:(1)画出程序流程图(2)画出N-S图7.将下面给出的伪码转换为N-S图和PAD图。
void root(float root1,float root2){i=1;j=0;while(i<=10){输入一元二次方程的系数a,b,c;p=b*b–4*a*c;if(p<0)输出“方程i无实数根”;else if(p>0)求出根并输出;if(p==0){求出重根并输出;j=j+1;}i=i+1;}输出重根的方程的个数j;}解:while a doIf x>0then x1;Else x2;If y>0then y1;If z>0then z1;Else z2;Else y2;Y3;End;二、判定树、判定表4.假设某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。
当行李重量超过30公斤时,对头等舱的国内乘客超重部分收费4元/公斤,对其他舱的国内乘客超重部分每公斤收费6元,对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半,用判定表和判定树表示每种条件组合相对应的动作(算法)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《软件工程》应用题四、应用题(每小题10分)1.某培训中心要研制一个计算机管理系统。
它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。
(1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
(2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
(3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:(1)对以上问题画出数据流程图。
(2)画出该培训管理的软件结构图。
解答:(1)数据流图(2)软件体系结构2.建立窗口系统的对象模型,问题陈述如下:“窗口分为对话窗、图形窗、滚动窗三种。
对话窗中有若干对话项,由唯一的项名字来确定;对话项分为按钮、选择项和正文项三种,选择项中有若干选择项入口。
图形窗中有若干形状元素,形状元素分为一维形状和二维形状。
一维形状又分为直线、圆弧、折线;二维形状分为圆、椭圆、矩形、多边形,其中折线与多边形由若干有序顶点组成。
正文窗是滚动窗的一种,而图形滚动窗既是图形窗又是滚动窗。
”解答:3.假设某航空公司规定,乘客可以免费托运行李的重量不超过30公斤。
当行李的重量超出30公斤时,对一般舱的国内乘客超重部分每公斤收费4元,对头等舱的国内乘客超重部分每公斤收费6元。
对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。
试画出相应判定表。
注意:免费那个行去掉右面的√4.下图描述了某个子程序的处理流程,根据判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应标准的最小的测试数据组。
(1) a=5 b=1 (2) a=5 b=-1(3) a=5 b=1 (4) a=5 b=1a=-5 b=-1 a=0 b=-1(5) a=5 b=-1 (6) a=5 b=1a=-5 b=1 a=0 b=0a=-5 b=-1 a=-5 b=-1(7) a=5 b=1 (8) a=5 b=1a=0 b=1 a=0 b=-1a=0 b=-1 a=-5 b=1a=-5 b=1 a=-5 b=-1流程图如下:解答:达到判定覆盖为(4);达到条件覆盖为(3);达到判定/条件覆盖为(6);达到条件组合覆盖为(8);达到路径覆盖为(7)。
5.人们往往根据天气情况决定出门时的行装;天气可能下雨,也可能不下雨;天气可能变冷,也可能不变冷。
如果天气要下雨,出门时带上雨伞;如果天气变冷,出门时要穿上大衣。
解答:6.建立以下有关“微机”的对象模型。
一台微机有一个显示器,一个主机,一个键盘,一个鼠标,汉王笔可有可无。
主机包括一个机箱,一个主板,一个电源及储存器等部件。
储存器又分为固定储存器和活动存储器两种,固定存储器为内存和硬盘,活动存储器为软盘和光盘。
解答:7.某银行计算机储蓄系统的工作流程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人的姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。
请用数据流图描绘本系统的功能,并画出系统的E-R图。
解答:DFD图:ER图:8.请对下列子程序进行测试:procedure example(y,z: real; var x: real)beginif (y>1) and (z=0) then x:=x/y;if (y=2) or (x=l) then x:=x+l;end.该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。
要求:(1)画出程序流程图。
(2)依据条件组合覆盖标准设计测试用例。
(1)程序流程图(2)条件组合覆盖设计测试用例①y=2, z=0, x=4;②y=2, z=1, x=1;③y=1, z=0, x=2;④y=1, z=1, x=1.9.自学考试报名过程中有个“记录报名单”的加工。
该加工主要是根据报名表(姓名、性别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证给报名者,同时记录到考生名册中(准考证号、姓名、课程)。
请绘制该加工的DFD图,并写出数据词典中的数据流条目。
解答:(1)DFD图:(2)数据流词典报名单= 姓名+ 性别+ 身份证号+ 课程名开考课程= 课程名+ 开考时间考生名册= 准考证号+ 姓名+ 课程10.下图描述了某个子程序的处理流程,根据判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应标准的最小的测试数据组。
(1) a=5 b=1 (2) a=5 b=-1(3) a=5 b=1 (4) a=5 b=1a=-5 b=-1 a=0 b=-1(5) a=5 b=-1 (6) a=5 b=1a=-5 b=1 a=0 b=0a=-5 b=-1 a=-5 b=-1(7) a=5 b=1 (8) a=5 b=1a=0 b=1 a=0 b=-1a=0 b=-1 a=-5 b=1a=-5 b=1 a=-5 b=-1流程图如下:解答:达到判定覆盖为(4);达到条件覆盖为(3);达到判定/条件覆盖为(6);达到条件组合覆盖为(8);达到路径覆盖为(7)。
11.某培训中心要研制一个计算机管理系统。
它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。
1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:1)对以上问题画出数据流程图。
2)画出该培训管理的软件结构图的主图。
解答:(1)数据流图:(2)软件结构图:12.某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。
请用等价类划分法设计测试用例。
解答;划分等价类:计测试用例:13.对以下程序进行测试:PROCEDURE EX(A,B:REAL;VAR X:REAL);BEGINIF(A=3)OR(B> 1)THEN X:=A×BIF(A>2)AND(B=0)THEN X:=A-3END要求:先画出程序流程图。
再按语句覆盖法设计测试数据。
语句覆盖A=3 B=014.某报社采用面向对象技术实现报刊征订的计算机管理系统,该系统基本需求如下:(1)报社发行多种刊物,每种刊物通过订单来征订,订单中有代码,名称,订期,单价,份数等项目,订户通过填写订单来订阅报刊。
(2)报社下属多个发行站,每个站负责收集登陆订单、打印收款凭证等事务。
(3)报社负责分类并统计各个发行站送来的报刊订阅信息。
请就此需求建立对象模型。
解答:15.为以下程序流程图分别设计语句覆盖和判定覆盖测试用例并标明程序执行路径。
(x=2) OR (z>1)a(x>1) AND (y=0)语句段1语句段2开始结束TTFFbcde解答:1)语句覆盖测试用例令x=2,y=0,z=4作为测试数据,程序执行路径为abcde。
2)判定覆盖——分支覆盖可以设计如下两组数据以满足判定覆盖:x=3,y=0,z=1(通过路径abce);x=2,y=1,z=2(通过路径acde)。
x=2,y=1,z=1;覆盖路径acdex=1,y=1,z=1;覆盖路径acex=3,y=0,z=1;覆盖路径abce16.高考录取统分子系统有如下功能:(1)计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;(2)计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
解答:1)数据流图:(2)软件结构图:①原始分②标准分③招生计划④录取线17.某校制定了教师的讲课课时津贴标准。
对于各种性质的讲座,无论教师是什么职称,每课时津贴一律是50元;而对于一般的授课,则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。
请用判定表描述上述问题。
解答:判定表:1234518.已知有如下的伪代码程序:STARTI:=1;WHILE i:<=n-1 DOmin:=A[i];j:=i+1;WHILEj<=n DOIF min>A[j]THENBLOCKtemp:=min;min:=A[j];A[j]:=temp;ENDBLOCKENDIF;j:=j+1;ENDDOi:=i+1;ENDDOSTOP请用流程图描述。
解答:19.某旅馆的电话服务如下:可以拨分机号和外线号码。
分机号是从7201至7299。
外线号码先拨9,然后是市话号码或长话号码。
长话号码是以区号和市话号码组成。
区号是从100到300中任意的数字串。
市话号码是以局号和分局号组成。
局号可以是455,466,888,552中任意一个号码。
分局号是任意长度为4的数字串。
要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。
解答:电话号码=分机号|外线号码分机号=7201..7299外线号码=9+[市话号码|长话号码]长话号码=区号+市话号码区号=100 (300)市话号码=局号+分局号局号=[455|466|888|552]分局号=4{数字}420.某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。
系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。
现要求用黑盒测试法中的边界值法写出测试用例。
解答:21..某公司为本科以上学历的人重新分配工作,分配原则如下:(1)如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作;(2)如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士不分男女,任课题组组长;(3)如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员,学历是硕士不分男女,任课题组组长。
要求:画出分析过程,得出判定表,并进行化简。
解答:(1)判定条件可能取值表:(2)计算组合数2*3*2=12;(3)初步判定表行政√资料员√考研√22.根据下列条件使用等价类划分法设计测试用例。