软件工程概论期末大作业
软件工程概论期末复习题

软件工程概论期末复习题Document number【980KGB-6898YT-769T8CB-246UT-18GG08】期末总复习1.选择、判断、简答2.判定树和判定表3.用例图、类图、对象模型、顺序图等4.McCabe环路复杂性度量;5.黑盒测试和白盒测试6.数据流图7.成本效益分析习题一、判定树和判定表1.请用判定表画出以下问题的行为逻辑。
人们往往根据天气情况决定出门时的行装;天气可能下雨,也可能不下雨;天气可能变冷,也可能不变冷。
如果天气要下雨,出门时带上雨伞;如果天气变冷,出门时要穿上大衣。
2. 某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工。
20岁至40岁之间,中学文化程度,男性当钳工,女性当车工,大学文化程度都当技术员。
年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。
请用结构化语言﹑判定表或判定树描述上述问题的加工逻辑。
二、McCabe环路复杂性度量某程序的描述如下:if (( a > b && i > 10)|| (a < b && i <= 5) ) k = a;else k = b;1)画出单个条件的嵌套的分支结构;(5分)2)计算该结构的McCabe环路复杂性度量;(5分)3)为完成基本路径测试,求它的一组独立的路径。
(5分)三、测试:变量的命名规则一般规定如下:变量名的长度不多于30个字符,第一个字符必须为英文字母,其他字母可以是英文字母、数字以及下划线的任意组合。
请用等价分类法设计测试用例。
四、数据流图某教务系统具备以下功能,输入用户ID号及口令后,经验证进入教务管理系统,根据请求进行分类处理,可进行如下功能的处理:1)查询成绩:查询成绩以及从名次表中得到名次信息。
2)学籍管理:根据学生总成绩确定名次信息。
3)成绩处理:处理单科成绩并输入成绩表中。
软件工程导论《软件工程》期末考试题及答案

软件工程导论《软件工程》期末考试题及答案一、选择题(每题2分,共20分)1. 下列哪项不是软件工程的基本目标?A. 提高软件的生产率B. 提高软件的可维护性C. 提高软件的性能D. 降低软件的开发成本答案:C2. 下列哪种方法不属于软件需求分析的方法?A. 数据流图(DFD)B. 实体-关系图(ER图)C. 状态转换图D. Petri网答案:D3. 软件设计中,模块的内聚性越高,表明模块的:A. 功能越单一B. 独立性越强C. 复用性越低D. 可维护性越低答案:A4. 在软件测试阶段,下列哪种测试方法不属于黑盒测试?A. 等价类划分B. 边界值分析C. 代码覆盖率分析D. 逻辑覆盖分析答案:D5. 软件项目管理中,项目经理的主要职责不包括以下哪项?A. 制定项目计划B. 管理项目进度C. 组织项目团队D. 编写代码答案:D二、填空题(每题2分,共20分)6. 软件生命周期可以分为______、需求分析、设计、编码、测试、维护等阶段。
答案:需求调研7. 软件工程的三要素是______、过程、方法。
答案:工具8. 在软件设计中,模块的独立性包括______和耦合性两个方面。
答案:内聚性9. 软件测试的目的不包括______。
答案:发现并修复所有错误10. 软件项目管理的主要目标是实现项目的______、质量和成本控制。
答案:进度三、简答题(每题10分,共30分)11. 简述软件工程的基本原则。
答案:软件工程的基本原则包括:(1)抽象:将复杂问题分解为更简单的子问题;(2)分解:将问题分解为多个部分,分别解决;(3)模块化:将软件划分为独立的模块,提高可维护性和复用性;(4)信息隐藏:隐藏模块内部的信息,只暴露必要的接口;(5)一致性:保持软件各部分的一致性,提高可读性;(6)可维护性:使软件易于修改和维护。
12. 简述软件需求分析的目的和任务。
答案:软件需求分析的目的在于明确用户对软件系统的功能、性能等方面的需求。
2023软件工程导论期末考试题库及参考答案

2023软件工程导论期末考试题库及参考答案一、选择题(每题2分,共20分)1. 以下哪个不是软件工程的三个基本目标?A. 可维护性B. 可用性C. 可靠性D. 高效性参考答案:D2. 软件生命周期中,以下哪个阶段是软件开发过程的核心阶段?A. 需求分析B. 设计C. 编码D. 测试参考答案:C3. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程参考答案:A4. 在软件工程中,以下哪个方法用于估算软件项目的成本和进度?A. COCOMOB. WBSC. SDLCD. CASE参考答案:A5. 以下哪个是软件工程中的一个重要原则?A. 分而治之B. 一次性编写C. 重用D. 模块化参考答案:D6. 以下哪个不是软件工程的基本活动?A. 软件规格B. 软件开发C. 软件验证D. 软件测试参考答案:C7. 以下哪个是软件工程中用于提高软件质量的技术?A. 设计模式B. 重构C. 代码审查D. 单元测试参考答案:C8. 以下哪个不是软件工程的五大基本过程?A. 软件规格B. 软件开发C. 软件维护D. 软件项目管理参考答案:D9. 以下哪个是软件工程中的一个重要概念,用于描述软件系统中的各个组件之间的关系?A. 耦合B. 内聚C. 模块化D. 重用参考答案:A10. 以下哪个是软件工程中的一个重要原则,用于指导软件开发过程?A. 迭代B. 增量C.螺旋D. 模型驱动参考答案:A二、填空题(每题2分,共20分)11. 软件工程的三要素是:方法、工具和______。
参考答案:过程12. 软件生命周期包括:需求分析、设计、编码、______和软件维护。
参考答案:测试13. 软件工程中的面向对象方法包括:封装、继承和______。
参考答案:多态14. 软件工程中的 CASE 工具主要用于支持______。
参考答案:软件设计和开发15. 软件工程中的敏捷开发方法强调______、可维护性和可扩展性。
软件工程大作业简洁范本

软件工程大作业软件工程大作业一、引言二、目标软件工程大作业的目标是让学生们通过一个实际的项目,了解软件开发的整个过程,并培养其解决问题的能力和团队协作能力。
为了达到这个目标,大作业需要具备以下几个方面的要求:1. 实践性:大作业应该是一个实践性的项目,能够让学生们真正动手去做,并通过实际操作来巩固所学的知识。
2. 复杂性:大作业应该具备一定的复杂性,要求学生们能够面对实际的问题,并通过分析和解决来完成任务。
3. 团队协作:大作业可以以团队为单位来完成,这样可以培养学生们的团队协作能力和沟通能力。
4. 实际应用:大作业应该具备一定的实际应用价值,可以解决某个具体领域的问题。
三、需求分析在开始进行大作业的设计和实施之前,需要先进行需求分析。
需求分析是整个软件开发过程中的第一步,它的目的是明确用户对于软件的需求和期望。
在需求分析阶段,可以进行以下几个步骤:1. 问题定义:明确大作业所要解决的问题,并对问题进行描述和分析。
2. 用户调研:与潜在用户进行沟通,了解他们的需求和期望,进一步明确问题的范围和目标。
3. 功能需求:根据问题定义和用户需求,确定大作业所需要实现的功能,并进行详细的功能描述。
4. 非功能需求:除了功能需求外,还需考虑大作业的性能要求、安全性要求等非功能需求。
四、设计与实施在完成需求分析后,接下来是设计与实施阶段。
这个阶段可以分为以下几个步骤:1. 总体设计:在总体设计阶段,需要对大作业进行整体的设计,包括系统的架构设计、模块的划分和数据的设计等。
2. 详细设计:在详细设计阶段,需要对每个模块进行具体的设计,包括接口的定义、算法的选择和数据结构的设计等。
3. 编码实现:在编码实现阶段,可以根据设计文档进行编码,并通过测试来验证代码的正确性。
4. 系统测试:在系统测试阶段,可以对整个大作业进行综合性的测试,以确保系统的功能和性能达到要求。
五、软件工程大作业是一次实践性的项目,通过这个项目可以让学生们在实际的开发过程中学习和应用所学的软件工程知识。
软件工程概论_北京联合大学中国大学mooc课后章节答案期末考试题库2023年

软件工程概论_北京联合大学中国大学mooc课后章节答案期末考试题库2023年1.下面不属于软件的组成的是()。
答案:记录2.瀑布模型的存在问题是()。
答案:缺乏灵活性3.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )。
答案:软件危机4.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是()。
答案:数据、标记、控制、公共5.在软件设计方法中全面指导模块划分的最重要的原则是()。
答案:模块独立性6.软件测试的目的是()。
答案:发现软件的错误7.需求分析最终结果是产生()。
答案:需求规格说明书8.软件详细设计的主要任务是确定每个模块的()。
答案:算法和使用的数据结构9.软件结构图中,模块框之间若有直线连接,表示它们之间存在()。
答案:调用关系10.在详细设计阶段,采用的描述工具有()。
答案:程序流程图11.因计算机硬件和软件环境的变化而作出的修改软件的过程称为()。
答案:完善性维护12.下面不属于软件维护的策略的是()。
答案:定期检测维护13.对于螺旋模型,下列()不是利用笛卡尔坐标表达的活动。
答案:程序编码14.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高( )。
答案:原型化方法15.软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为( )。
答案:瀑布模型16.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( )。
答案:测试阶段17.软件项目计划一般不包括以下哪项内容()。
答案:软件开发标准的选择和制定18.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是( )。
答案:边界值分析法19.耦合的强弱取决于()。
答案:模块间接口的复杂程度20.面向数据流的设计方法根据()映射软件结构。
软件工程-期末大作业要求10-29

《软件工程》大作业内容与要求任课教师:马楠一、软件工程导论考核目的:使学生更好地理解该课程介绍的概念和主要原理等内容。
加深对软件开发过程中所涉及的各种建模工具的认识和理解。
初步感受软件系统分析设计的过程、如何利用现有的计算机辅助工具(VISIO 2003)进行阶段成果的描述以及功能模块的开发。
二、具体完成内容及要求作业一:进行系统需求分析,提交需求说明书。
要求用数据流程图描述系统的基本逻辑功能。
(至少画到第2层。
)(包括DFD、数据字典等内容)作业二:用面向数据流的方法设计,提交系统结构化设计与实现说明书(概要设计和详细设计放在一个文件中,但分开说明)。
要求用结构图描述系统的物理功能。
作业三:用面向对象的观点和UML的方法进行系统分析与设计,提交面向对象设计说明书,分析系统中包含的类-&-对象,建立系统的对象模型构建对象模型、用例图、状态图。
(可行性报告是否放入不做要求,自愿原则)三、使用工具使用Visio软件绘制相关图形,包括:数据流图、系统结构图、对象模型图、用例图、状态图等。
使用WORD文档撰写各报告内容。
四、提交内容1、以上作业以WORD文档形式提交,两人或者三人为一组,建立一个文件夹,名字为“姓名学号姓名学号_课题名称”,三个文档分别题目为“姓名姓名_课题名称_作业1”、“姓名姓名_课题名称_作业2”、“姓名姓名_课题名称_作业3”。
2、提交报告时间为第9周周五中午12:30。
五、成绩分配:1.系统需求分析:30分2.系统设计说明书: 25分3.面向对象设计说明书:25分4.增加一个学习总结,要手写版,20分,对主要知识点进行总结,六、课题参考内容注意:可以在此基础之上进行功能扩展,要在可行性报告中进行说明。
题目一学校教材订购系统1.系统简介本系统可细化为二个子系统:销售系统和采购系统销售系统的主要工作过程为:首先由教师或学生提交购书单,经教材发行人员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师和学生即可去书库领书。
软件工程大作业(2)(答案)

软件工程大作业(2)(答案)软件工程作业第二部分一、填空1.结构化分析方法的分析策略是___自顶向下逐步求精_______。
2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。
3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。
4.继承性是子类自动共享其父类的__数据结构和方法____________机制。
5.在面向对象方法中,人们常用状态图描述类中对象的___动态行为________。
6.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为____容错_____软件。
7.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。
8.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。
9.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。
10.对象之间进行通信叫做__消息_____。
11.计算机辅助软件工程这一术语的英文缩写为_CASE_______。
12.McCall提出的软件质量模型包括______11________个软件质量特性。
13.为了便于对照检查,测试用例应由输入数据和预期的___输出结果____两部分组成。
14.软件结构是以____模块__________为基础而组成的一种控制层次结构。
15.结构化语言(PDL)是介于自然语言和____形式语言____之间的一种半形式语言。
16.软件概要设计的主要任务就是__软件结构的设计______。
17.结构化程序设计方法是使用___三种基本控制结构____构造程序。
18.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自底向上或相反顺序 _____集成的过程。
19.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_____。
二、选择1.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法2.面向对象的开发方法中,(B)将是面向对象技术领域内占主导地位的标准建模语言。
软件工程概论期末测试试卷含答案

《软件工程概论》期末测试试卷(A卷)一.单项选择题(每题1分,共22分)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.单元测试旳测试用例重要根据()旳成果来设计。
A.需求分析B.源程序C.概要设计D.详细设计8.伴随软硬件环境变化而修改软件旳过程是()。
A.校正性维护B.适应性维护C.完善性维护D.防止性维护9.在白盒测试技术测试用例旳设计中,()是最弱旳覆盖原则。
A.语句覆盖B.途径覆盖C.条件组合覆盖D.鉴定覆盖10.构造化程序设计旳一种基本措施是()。
A.筛选法B.迭代法C.逐渐求精法D.递归法11.不适合作为科学工程计算旳程序设计语言是()。
A.Pascal B.CC.Fortran D.Prolog12.只有单重继承旳类层次构造是()层次构造。
A.网状型B.星型C.树型D.环型13.面向对象旳开发措施中,()将是面向对象技术领域内占主导地位旳原则建模语言。
A.Booch措施B.Coad措施C.UML语言D.OMT措施14.瀑布模型本质上是一种()。
A.线性次序模型B.次序迭代模型C.线性迭代模型D.和早见产品模型15.软件维护产生旳副作用,是指()。
A.开发时旳错误B.隐含旳错误C.因修改软件而导致旳错误D.运行时误操作16.软件详细设计旳重要任务是确定每个模块旳()。
软件工程大作业(答案)

3
A、数据流 B、数据流图 C、数据库 D、数据结构
105.数据流图中,当数据流向或流自文件时(B )。
A、数据流要命名,文件不必命名
B、数据不必命名,有文件名就足够了
C、数据流和文件均要命名,因为流出和流进的数据流是不同的
D、数据流和文件均不要命名,通过加工可自然反映出。
106.结构化程序设计主要强调程序的(C )。
聚称为偶然内聚。 77. 一个模块直接调用的模块数目称为模块的扇出,一个模块被多少上级模块直接调用称为模块的扇
入。 78. 详细设计的工具有图形工具、表格工具和语言工具。 79. 为使用流程图描述结构化程序,限制流程图有五种基本的控制结构顺序型、选择型、while型循
环、until循环、多情况型选择。 80. IPO图由输入、处理和输出三个框组成。这个图的特点是能够直观的显示三者之间的关系。 81. 面向对象方法是一种运用对象、类、封装、聚合、消息传送、多态性等概念来构造系统的软件开
并估算每个不同之处对成本的影响,得出开发项目的总成本。这种成本估算方法称为差别估算法 ____。 三、 选择题 102.程序设计属于软件开发过程(C )阶段。 A、设计 B、编程 C、实现 D、编码 103.在软件的分析阶段,常用(C )来描述业务处理系统的信息来源、存储、处理和去向。 A、E-R 图 B、框图 C、DFD D、时序网络 104.结构设计是一种应用最广泛的系统设计方法,是以(A )为基础、自顶向下、逐步求精和模块化 的过程。
完整word版软件工程概论期末大作业

软件工程概论期末大作业火车票订票管理信息系统专业年级:学号:名:姓成绩:1目录一、项目概述 (3)二、可行性研究 (3)三、需求分析 (4)3.1系统IPO图 (8)3.2系统的数据流图 (9)四、概要设计 (10)五、详细设计 (10)5.1系统主要功能模块界面图 (11)5.2画出系统某一模块的程序流程图 (15)六、UML模型 (16)6.1 画出系统的用例图 (17)6.2系统客户(功能)的时序图 (18)七、总结 (20)八、附录 (21)2一、项目概述1.1项目简介火车票售票系统是一款针对全国各大乘客集散地,方便工作人员和乘客顺利抵达目的地的便捷操作软件,乘客集散地只需安装本系统,配备专业的操作人员,即可安全、有序地完成人员输送任务。
1.2项目功能火车票售票系统可登记全国各地的客运专线、包括发车时间、到达时间、经过各中转站时间、在各中转站等待时间及发车时间、各站点间距离、票价、各列车车厢容量、座位分布、列车类型、列车车号、车票信息、预定信息、乘客身份信息、乘客携带物品限定信息、车票代售点信息、网络购票、货运信息、网络购票常见问题解决方式、铁路常识等。
1.3功能模块介绍车票票面信息:包含乘车区间(始发站、终点站)、发车时间、发车日期、乘客身份信息(身份证号、姓名)、乘客所乘列车座位信息(列车车厢号、座位号)、乘客乘车须知、票价、座位类型(硬座、硬卧、软座、软卧)。
网络购票信息:查询列车信息(列车时刻表、列车车次)、余票信息、票价信息、退票信息、列车正晚点信息、车票代售点信息、预订信息、货运运费、货运业务咨询。
列车信息:列车车次、列车所属类型(普快、动车、空调特快等)、列车始发站、终点站、中转站、始发时间、到达时间、各站点停靠时间、乘车区间及价格、列车运行时长、已运行时长。
候车室信息:列车车次、列车运行时间(发车时间、到达时间)、对应车次所在候车区域、对应区域所要发车车次。
二、可行性研究2.1可行性研究过程本系统是针对全国各地的旅客,因此这一问题的解决,这一项目的实现,将更简化整个操作流程,减少人工操作以及由人工操作所引起的人为失误,大大降低了对数据的操作量。
软件工程导论 期末复习题及答案

软件工程导论期末复习题及答案正确答案:C.研究软件系统的开发过程和方法软件工程的主要目标是提高软件的质量,包括可靠性、可用性、可维护性和可重用性等。
同时,软件工程也致力于降低软件开发和维护的成本,提高软件的生产率。
因此,以上选项都是正确的。
A.人员B.方法C.工具D.程序正确答案:D.程序软件工程的三个基本要素是人员、方法和工具。
其中,人员是指参与软件开发和维护的人员,包括项目经理、系统分析师、程序员、测试人员等;方法是开发软件所采用的方法,包括面向对象方法、面向过程方法等;工具是指支持软件开发和维护的工具,包括编译器、调试器、测试工具等。
程序是软件开发的结果之一,不属于软件工程的三个基本要素。
D.软件从测试到发布的整个过程正确答案:A.软件从开发到维护的整个过程软件生命周期是指软件从开发到维护的整个过程,包括需求分析、设计、编码、测试、发布、维护和退役等阶段。
因此,选项A是正确的答案。
选项B、C、D都只描述了软件生命周期的部分阶段,不完整。
A.需求分析B.编码C.测试D.维护正确答案:D.维护软件开发过程中的活动包括需求分析、设计、编码、测试等阶段,而维护是软件使用过程中的一个阶段,不属于软件开发过程中的活动。
因此,选项D是正确的答案。
在软件工程中,以下哪个选项最接近于“用户故事”的定义?答案:A.一种用于描述用户需求的文档。
用户故事是软件开发中的一种重要工具,它用于收集、整理和描述用户需求,以便更好地理解和满足用户的需求。
以下哪个选项是面向对象编程(OOP)中的基本概念?答案:B.类。
在面向对象编程中,类是一种抽象数据类型,它定义了一个对象的结构,包括属性(状态)和方法(行为)。
在软件开发中,以下哪个阶段最可能涉及到代码重构?答案:C.编码阶段。
代码重构是在编码阶段进行的一项活动,它通常涉及到修改和优化代码的结构和实现方式,以提高代码的可读性、可维护性和效率。
答案:A. Git。
版本控制是软件开发中的一项重要工具,用于跟踪和管理代码的变更。
软件工程导论期末试题

软件工程导论期末试题第一篇:软件工程导论期末试题软件工程导论期末考试试题一.选择(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.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的(信息流动)情况。
完整word版软件工程导论期末考试试题和答案

1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。
3.可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。
4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。
5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。
6.__数据流图________和__数据字典___共同构成系统的逻辑模型。
7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。
8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。
9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
1.下列哪个阶段不属于软件生存周期的三大阶段( C )。
A、计划阶段B、开发阶段C、编码阶段D、维护阶段2.需求分析是(A )。
A、软件开发工作的基础B、软件生存周期的开始C、由系统分析员单独完成的D、由用户自己单独完成的3.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。
A、明确的需求定义B、完整的生命周期C、较长的开发时间D、熟练的开发人员4.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为( A )。
A、改正性维护B、适应性维护C、完善性维护D、预防性维护)。
A 一般说来,投入运行的软件系统中有错误(5.A、不是不可以理解的B、是不能容忍的C、是要求退货的理由D、是必然的1.在进行总体设计时应加强模块间的联系。
软件工程大作业(二)2024

软件工程大作业(二)引言:软件工程大作业是一项重要的任务,要求学生根据所学知识和技能,设计和实现一个完整的软件系统。
该文档旨在概述软件工程大作业的内容,介绍其中的关键步骤和要点。
正文:一、需求分析1.1 了解用户需求和背景信息- 进行用户访谈,明确需求和期望- 调研类似系统,了解行业标准和最佳实践1.2 确定功能需求- 根据用户需求和背景信息,列出功能清单- 在团队中讨论和确认功能的优先级和可行性1.3 定义非功能需求- 确定性能要求,如响应时间和数据处理能力- 定义系统的安全和可靠性要求1.4 编写需求规格说明书- 将所有的需求整理、归纳和文档化- 确保规格说明书准确、清晰和可理解二、系统设计2.1 制定系统结构- 确定整体的系统结构,如分层架构或模块化设计- 确定系统的模块划分和模块间的接口2.2 设计数据库- 根据系统需求,设计适当的数据库结构- 定义数据表、字段和关系2.3 界面设计- 设计用户界面,确保用户友好和易用性- 使用工具创建原型和模拟界面,进行用户测试2.4 算法设计- 确定系统所需的算法和数据结构- 优化算法以提高系统的性能和效率2.5 编写详细设计文档- 将系统设计完整地记录下来,包括各个模块的详细设计三、编码和测试3.1 选择合适的编程语言和开发环境- 根据系统需求和团队成员的技能,选择最适合的工具 - 确保使用的编程语言和开发环境能够支持系统的需求 3.2 编写代码- 根据详细设计文档,逐个模块地编写代码- 遵循编码规范和最佳实践,确保代码质量3.3 进行单元测试- 针对每个模块编写相应的测试用例- 通过单元测试确保每个模块的功能正确和稳定3.4 进行集成测试- 将各个模块整合为一个完整的系统- 测试整个系统的功能和性能3.5 进行系统测试- 利用各种测试方法和技术对整个系统进行综合测试四、部署和维护4.1 部署系统- 准备服务器和网络环境,并安装所需的软件和配置- 将系统上线,确保可用性和稳定性4.2 系统的持续维护- 监控系统运行情况,及时解决问题和修复漏洞- 升级和扩展系统,以满足日益增长的需求五、总结通过软件工程大作业的设计和实现,我们加深了对软件开发全过程的理解。
《软件工程导论》期末考试-试题与答案

《软件工程导论》期末考试-试题与答案一、填空题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.面向对象分析是对系统进行_________的一种方法。
软件工程期末大作业《软件工程》(二)2024

软件工程期末大作业《软件工程》(二)引言概述:为了完成软件工程期末大作业《软件工程》(二),本文将围绕软件工程的相关内容展开讨论。
软件工程是一门关于软件开发和维护的学科,涉及到多方面的知识和技术。
本文将从需求分析、系统设计、编码、测试和软件维护这五个方面分阐述软件工程的主要内容。
需求分析:1. 确定用户需求: 通过与用户沟通和调研,明确用户对软件的需求和使用场景。
2. 分析需求: 将用户需求进行逐一分解,理解每个需求的重要性和优先级。
3. 编写需求文档: 将需求转化为文档,明确需求的功能、性能和界面要求。
4. 确定需求变更处理方法: 需求变更是常见的情况,需要制定相应的变更管理流程。
系统设计:1. 架构设计: 根据需求分析的结果,设计系统的整体结构和模块间的关系。
2. 数据库设计: 设计系统需要使用的数据库结构和数据流程。
3. 界面设计: 设计系统的用户界面,保证用户友好性和易用性。
4. 安全设计: 考虑系统的安全性和防护措施,保护用户数据和系统的完整性。
5. 性能设计: 针对系统的性能要求,进行合理的资源和算法设计。
编码:1. 选择编程语言和开发平台: 根据系统需求和团队的技术经验,选择适合的编程语言和开发平台。
2. 划分模块: 将系统功能划分为多个模块,分别进行编码和测试。
3. 编码规范: 遵循编码规范,保证代码的可读性和可维护性。
4. 使用工具和框架: 利用现有的工具和框架,提高开发效率和质量。
5. 版本控制: 使用版本控制工具,管理和追踪代码的变更和版本发布。
测试:1. 单元测试: 针对每个独立的模块进行单元测试,确保其功能的正确性。
2. 集成测试: 将各个模块整合在一起进行测试,验证模块间的协同工作。
3. 系统测试: 对整个系统进行全面的测试,验证系统的功能和性能。
4. Bug修复: 在测试过程中发现的问题需要及时修复,并进行相应的再测试。
5. 用户验收测试: 邀请用户进行最终的测试,反馈系统的问题和建议。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程概论期末大作业火车票订票管理信息系统专业年级:学号:姓名:成绩:目录一、项目概述 (3)二、可行性研究 (3)三、需求分析 (4)3.1系统IPO图 (8)3.2系统的数据流图 (9)四、概要设计 (10)五、详细设计 (10)5.1系统主要功能模块界面图 (11)5.2画出系统某一模块的程序流程图 (15)六、UML模型 (16)6.1 画出系统的用例图 (17)6.2系统客户(功能)的时序图 (18)七、总结 (20)八、附录 (21)一、项目概述1.1项目简介火车票售票系统是一款针对全国各大乘客集散地,方便工作人员和乘客顺利抵达目的地的便捷操作软件,乘客集散地只需安装本系统,配备专业的操作人员,即可安全、有序地完成人员输送任务。
1.2项目功能火车票售票系统可登记全国各地的客运专线、包括发车时间、到达时间、经过各中转站时间、在各中转站等待时间及发车时间、各站点间距离、票价、各列车车厢容量、座位分布、列车类型、列车车号、车票信息、预定信息、乘客身份信息、乘客携带物品限定信息、车票代售点信息、网络购票、货运信息、网络购票常见问题解决方式、铁路常识等。
1.3功能模块介绍车票票面信息:包含乘车区间(始发站、终点站)、发车时间、发车日期、乘客身份信息(身份证号、姓名)、乘客所乘列车座位信息(列车车厢号、座位号)、乘客乘车须知、票价、座位类型(硬座、硬卧、软座、软卧)。
网络购票信息:查询列车信息(列车时刻表、列车车次)、余票信息、票价信息、退票信息、列车正晚点信息、车票代售点信息、预订信息、货运运费、货运业务咨询。
列车信息:列车车次、列车所属类型(普快、动车、空调特快等)、列车始发站、终点站、中转站、始发时间、到达时间、各站点停靠时间、乘车区间及价格、列车运行时长、已运行时长。
候车室信息:列车车次、列车运行时间(发车时间、到达时间)、对应车次所在候车区域、对应区域所要发车车次。
二、可行性研究2.1可行性研究过程本系统是针对全国各地的旅客,因此这一问题的解决,这一项目的实现,将更简化整个操作流程,减少人工操作以及由人工操作所引起的人为失误,大大降低了对数据的操作量。
本系统所需的是项目人员的研究及整个操作过程所需的步骤及对所出现的问题的正确操作。
2.2可行性研究要解决的问题项目研究人员:对于项目研究人员所需的操作即为界面功能实现的后台代码,这不仅仅是最需要解决的问题,项目人员最需要的是对整个系统所要实现的功能的整合,针对某一问题所需要的操作,所对应的模块,所调用的数据,这些都需要借助于日常出现问题的总结,因此项目开发人员是要对列车整个运行过程十分了解,并熟知所面对问题的解决方法。
系统操作人员:对于系统操作人员,需要了解整个系统所能实现的功能以及对应的处理,如何操作,怎么操作这是需要解决的问题。
2.3对于项目的技术支撑面对当今社会技术的飞速发展、计算机科学技术已经发展的相当成熟。
C语言、C++、C#、JA V A、.NET等高级语言完全可以驾驭各项功能。
Access、SQLServer、Oracle等数据库可以完成对数据的存储,只需将后台程序与数据库连接即可实现对数据的操作。
2.4项目在经济上的可行性任何一个软件公司对于所要开发的项目,都需要对整个功能实现的解决有深入了解,因此调查是必不可少的。
当然由此产生费用视该系统所要解决问题的范围而定,针对本系统,一个面对大众,一劳永逸的工程,所需花费与收益相比,可谓九牛一毛。
对于相关人员的培训费用和从程序入手到系统实现的费用也不值一提。
因此,相对于系统所带来的经济价值和社会效益而言,在经济可行性上是完全可行的。
2.5项目在法律允许的可行性本项目是在大范围内需求而产生的,针对的是大众群体,使用对象是国家,而并非个人,所以不会存在侵权行为。
因此,在法律范围之内,无侵权行为。
2.6方案的具体实现对于程序实现者来说,一个大的程序可以分解为若干个子程序,进而一步步实现。
对于售票系统,我们可以将其拆分为票面信息版块、网络售票信息版块、列车信息版块、候车信息版块等小的分支,我们可以在解决以上各个版块之后,实现系统的综合,进而实现各方面功能。
三、需求分析3.1功能需求为旅客提供火车票购买与预订服务,方便火车站的售票工作,提高火车站的服务质量和服务效率,我们开发了火车票售票系统。
本售票系统应该具备以下功能:1.查询分为对车次信息的查询和客户对已订车票信息的查询。
要求:1)对车次的查询,可以按照发车车次进行查询。
2)也可以按照区间查询。
3)车次信息包括:车号、出发地、目的地、发车日期、开出时刻、到站时刻、票价、座位类型设定。
4)车次信息只允许用户查询,不能修改。
5)在查询到的结果中要有对发车时刻,到站时刻的排序功能。
2.添加车票通过查询系统,客户根据自己的需求找到满意的车次,再输入个人信息后直接通过网上售票确定已预订选中的车票。
要求:售票记录应包括:会员名、车号、发车日期、订购票数、总价。
3.退票可退票,通过查询系统,客户可以根据自己的名字找到自己的订票信息,通过退票模块退去已购车票。
4.售票售票员根据旅客要求,查询到合适的车票并标记该车票已出售,打印出车票给旅客。
5.改签旅客或售票员根据客户信息查询到该票的信息,根据客户需要改签日期的剩余票情况决定是否允许改签。
该系统分为售票员、列车管理员、旅客三个模块。
1.售票员功能售票员管理包括添加售票员信息、删除售票员信息以及售票员修改自己的密码、电话号码、家庭地址的信息三部分。
添加售票员信息是系统管理员的操作权限,系统管理员可以向系统的数据库中输入某个新的车站售票员的信息,信息被输入到系统中后,该车站的售票员将在案系统中具有一个车站售票员所具有的所有权限的操作。
删除售票员信息也是系统管理员的操作权限,系统管理员从系统的数据库中将某个车站售票员的全部信息从系统的数据库中删除。
一旦该车站售票员的全部信息被删除后,该车站售票员将不再能够登录到系统中车站售票员的工作平台,他不再具有一个车站售票员的权限。
售票员修改自己的登录密码是指系统中具有售票权限的售票员能够修改自己登录系统时的密码。
即系统管理员在向系统中添加一个新的售票员时得到了一个密码,在此之后,售票员仍然可以修改自己的密码。
系统初始设置包括设置票价、设置车票类别的折扣等部分。
它是管理员可以根据某些原则在数据库中输入各种类型的票价,以及规定退票时的扣除手续费的折扣。
2.列车管理员功能车次管理包括添加运行车次、删除车次、修改车次、增加列车。
比如车站将要加车,系统管理员将一列新的列车的全部信息输入到系统的数据库中,一列新的列车的全部信息一经被输入到数据库中,售票员便可以通过系统来查询它的所有信息,并且可以出售该列车的车票。
删除列车,比如车站将暂时或永远停运某一列列车,系统管理员将一列新的列车的全部信息从系统的数据库中删除,一列新的列车的全部信息一经被从数据库中删除,售票员将无法通过系统来查询它的所有信息,并且不能够再出售该列车的车票。
修改车次,比如车站把该列车的运行时间进行了修改,系统管理员将新的时间输入到系统的数据库中替换了原来的运行时间,售票员只能在已经修改成功的新的时间段售出该列车的车票。
车次路线管理包括车次的临时调度和由于自然灾害等客观因素造成的临时路线更改。
比如由于春运来临,广州火车站的客运量急剧增加,铁路管理员临时调度很多列车经过广州,则这些列出就会临时改变路线。
车厢管理包括增加车厢、减少车厢、更换车厢等部分。
增加车厢,系统管理员将增加了车厢的列车信息输入到系统的数据库中,售票员可以查询到该增加的车厢的信息,并出售因此增加的车票。
减少车厢,系统管理员在数据库中删除某些列车中已不存在的车厢的信息。
更换车厢,系统管理员在系统数据库中更新已更换车厢的列车的车厢信息。
3.旅客功能旅客的功能包括售票、订票、退票、改签四个子模块。
该四个模块都是针对于售票员的权限内的操作。
售票部分的功能是在售票窗口售票员根据旅客需求选择用户需要的车次,或是根据旅客指定的车次查询是否有可用座位、或是根据旅客提供的车站查询经过此站的所有车次,然后再按照旅客要求的发车日期、发车时间、车厢类型、车票类别(全票、半票)、车次类型等要求选择合适的车次,然后结算并打印出车票给旅客。
订票部分的功能是完成由售票点授权或是有一定信誉的售票代理商替代旅客进行预订车票,售票代理商通过电话或是亲自到售票点预订的方式进行预订车票。
退票部分的功能是处理用户由于某种情况需要退回车票的情况,旅客要在列车开出之前到退票窗口进行退票,售票员将会扣除一定的手续费,并且将该票的信息退回到数据库中,退出的车票还能继续出售。
车次查询提供了所有车次浏览、按车次查询和站点查询。
车次查询,售票员可根据旅客想要乘坐的列车的车次查询该车次的列车的具体售票情况。
站站查询,售票员根据旅客提供的出发站和目的站查询从出发站出发经过目的站的所有的列车的信息。
售票查询,售票员可以根据自己或旅客的需求来查询所有车次的售票情况。
剩余车票查询可以查询到所有车次的剩余车票的情况。
3.2 性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。
1、准确性和及时性系统处理的准确性和及时性是系统的必要性能。
系统应能及时而且准确的根据用户权限及所输入的信息做出响应。
由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。
作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。
在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。
2、易用性本系统是直接面对用户的,而用户往往对计算机并不是很熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交互界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。
3、系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。
所有这些都要符合国家标准,各铁道部统一。
如规范的数据库操作界面、作为业界标准的TCP/IP 网络协议及ISO9002标准所要求的质量规范等;同时,在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。
4、系统的响应速度车票预订系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。
在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效率。
3.3 运行要求火车票管理系统中的各个子系统的硬件和软件的配置如下:1、服务器端子系统的运行要求系统软件:WIN7数据库管理系统:SQL Server硬件要求:内存2G以上,主频2MHZ以上2、客户端子系统的运行要求系统软件:数据库管理系统:SQL Server硬件要求:目前流行的计算机均能运行3.4 未来可能出现的情况1、除了在售票窗口购买,你还可以像买地铁票一样在自助售票机上完成,付现金或者刷银行卡都随你自己选择。