《软件工程》大题作业
2023修正版大工春《软件工程》大作业
大工春《软件工程》大作业大工春《软件工程》大作业1. 引言本文档是大工春《软件工程》大作业的技术文档,旨在介绍该大作业的相关要求、设计和实现。
本大作业的任务是设计和实现一个简单的软件工程管理系统,该系统能够帮助团队进行项目管理、任务分配和进度跟踪。
2. 需求分析本大作业的需求主要包括以下几个方面:1. 用户管理:系统需要支持用户的注册、登录和权限管理,以便团队成员能够使用系统进行项目管理操作。
2. 项目管理:系统需要支持项目的创建、编辑和删除,以及项目的基本信息的设置,例如项目名称、描述等。
3. 任务管理:系统需要支持任务的创建、分配和跟踪,以便团队成员能够明确任务的执行情况和进度。
4. 进度报告:系统需要支持项目进度报告,以便团队成员和项目负责人能够及时了解项目的整体进展和问题。
5. 团队协作:系统需要支持团队成员之间的协作,例如通过系统内部发送消息或讨论来进行沟通。
3. 设计与实现为了满足以上需求,我们采用了以下的设计和实现方案:3.1 技术栈选择为了快速地实现一个简单可用的软件工程管理系统,我们选择了以下技术栈:- 前端技术:使用React框架进行前端页面的开发,使用Ant Design作为UI组件库。
- 后端技术:使用Node.js作为后端的开发语言,使用Express框架进行Web应用程序的开发。
- 数据库:使用MySQL作为数据存储的数据库。
3.2 系统架构设计本系统采用前后端分离的架构设计,前端与后端通过API进行通信。
前端负责展示页面给用户,并将用户的操作请求发送给后端。
后端负责接收请求,并进行相应的操作后返回数据给前端。
在后端,我们采用了MVC的设计模式,将业务逻辑、数据库操作和路由处理分离。
3.3 数据库设计系统的数据库采用MySQL进行存储,包括以下几张表:- 用户表:用于存储用户的基本信息,例如用户名、密码、邮箱等。
- 项目表:用于存储项目的基本信息,例如项目名称、描述、创建者等。
软件工程大作业(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)将是面向对象技术领域内占主导地位的标准建模语言。
软件工程大作业(答案)
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 )为基础、自顶向下、逐步求精和模块化 的过程。
《软件工程》大题作业
精品资料附加题:1、对下列子程序进行调试: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.2 、某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。
系统日期规定由年、月的 6 位数字字符组成,前四位代表年,后两位代表月。
现要求用黑盒测试法中的边界值法写出测试用例。
答:输入条件测试用例说明测试数据报表日期的 1 个数字字符5类型及长度 5 个数字字符200357 个数字字符2003005有 1 个非数字字符2003.5全部是非数字字符MAY---6 个数字字符200305日期范围在有效范围200301边界上选取200812数据200300精品资料200813月份范围月份为 1月200301月份为 12 月200312月份 <1200300月份 >122003133、对以下程序进行测试: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先画出程序流程图。
再按不同逻辑覆盖法设计一种(写出名称)测试数据。
《软件工程》11套考试复习练习题、作业题(含答案)
作业1: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 )等程序设计方法,设法降低软件的开发费用。
第四阶段(1970年代中期~现在)称为“软件工程时期”。
软件开发技术不再仅仅是程序设计技术,而是包括了与软件开发的各个阶段,如( E )、( F )、编码、单元测试、综合测试、(G )及其整体有关的各种管理技术。
供选择的答案:A ~ D:①汇编语言②操作系统③虚拟存储器概念④高级语言⑤结构式程序设计⑥数据库概念⑦固件⑧模块化程序设计E ~ G:①使用和维护②兼容性的确认③完整性的确认④设计⑤需求定义⑥图象处理4. 软件工程过程有哪几个基本过程活动?试说明之。
软件工程作业题(含答案)
软件工程作业题简答题1、什么叫软件?软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因是什么?软件危机是指在计算机软件开发与维护过程中所遇到的一系列严重问题。
包括两点:(1)如何开发软件,以满足对软件日益增长的需求;(2)如何维护数量不断膨胀的已有软件。
软件开发和维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。
具体表现如下:(1)软件是逻辑部件而不是物理部件。
(2)软件的规模越来越大,复杂性越来越大。
(3)轻视需求分析的重要性,轻视软件维护的错误观点和方法。
3、什么叫软件工程?1968年在第一届NATO会议上的早期定义:“建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。
1993年IEEE的定义:“①软件工程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②进而研究①实现的途径”。
我们国家最近定义:软件工程是指导计算机软件开发和维护的工程学科。
它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
4、两种软件工程方法学开发软件时要建立哪些模型?软件工程方法学包括:传统方法学和面向对象方法学。
常用的开发模型有:瀑布模型(需求稳定,而且可以预先指定)原型模型(需求模糊或者随时间变化)增量模型(分析员先作出需求分析和概要设计,用户参与逐步完善)螺旋模型(将瀑布模型与原型化模型结合起来,并加入了风险分析)喷泉模型(使开发过程具有迭代性和无间隙性)5、软件过程模型有哪些?简述它们的特点。
过程模型分为五大类:1.管理过程模型。
2.瀑布模型(又称为生命周期模型)。
3.增量过程模型:包括增量模型,,RAD模型。
4.烟花过程模型:包括原型开发模型,螺旋模型,协同开发模型。
《软件工程导论》课程大作业-题目及要求
《软件工程专业导论与职业生涯规划》具体要求一、大作业题目(注:每个小组完成一个题目)1、计算机系统软件是什么?具体的系统软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的系统软件进行较为详细的阐述。
2、计算机应用软件是什么?具体的应用软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的应用软件进行较为详细的阐述。
3、阐述计算机软件的发展历程,对比分析各阶段的特征、理论体系、优势与不足。
4、软件危机是什么?列举2~3个具体的软件危机案例。
导致软件危机爆发的原因有哪些?简单阐述现阶段软件危机的具体表现。
5、陈述“软件工程”概念提出的历史背景,包括发生的时间、地点、人物、事件等。
“软件工程”的定义自提出以来,有多种说法。
请尽可能罗列各种说法,并对其中的2~3个说法进行评述。
软件工程的七条基本原理是哪些?分别对每条原理进行较为详细的阐述。
6、软件工程的目标是什么?十个性能是哪些?分别对每个性能进行较为详细的阐述。
7、软件工程研究的主要内容包括哪两个方面?分别对每个方面进行较为详细的阐述。
8、软件开发过程必须遵循的软件工程原则有哪些?分别对每个原则进行较为详细的阐述。
9、软件工程的过程包括哪些?分别对每个过程进行较为详细的阐述。
10、软件生命周期的概念是什么?软件生命周期的划分有哪些阶段?分别对每个阶段进行较为详细的阐述。
11、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的瀑布模型和原型模型进行较为详细的阐述及对比分析,并各举例说明。
12、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的演化模型和喷泉进行较为详细的阐述及对比分析,并各举例说明。
13、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的基于知识的模型和基于构件的模型进行较为详细的阐述及对比分析,并各举例说明。
14、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的变换模型和双赢螺旋模型进行较为详细的阐述及对比分析,并各举例说明。
《软件工程》试题与参考答案(第5套)
第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.Putnam成本估算模型是一个()模型。
A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量2.在McCall软件质量度量模型中,()属于面向软件产品修改。
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.有限制地使用GOTO语句 D.只有三种基本结构11. 在结构化分析方法中,()表达系统内部数据运动的图形化技术。
A 数据字典B 实体关系图C 数据流图D 状态转换图12、()意味着一个操作在不同的类中可以有不同的实现方式。
A 多态性B 多继承C 类的复用D 封装13.对象是OO方法的核心,对象的类型有多种,通常把例如飞行、事故、演出、开会等等,称之为( )A.有形实体 B.作用 C.事件 D.性能说明14.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )A.软件工程B.软件周期C.软件危机D.软件产生15. COCOMO模型可用来()A 度量程序复杂程度B 计算软件开发成本C 估计程序的故障总数D 估计软件开发所需时间16.软件结构使用的图形工具,一般采用()图。
《软件工程》试题及参考答案(第1套)
《软件工程》试题(第1套)第一部分选择题一、单项选择题(本大题共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.确认测试主要涉及的文档是()。
A、需求规格说明书B、概要设计说明书C、详细设计说明书D、源程序8.模块的内聚性最高的是( )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚9.软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( ) A.生存期 B.面向对象设计C.面向对象程序设计 D.面向对象分析10.原型化方法是用户和设计者之间执行的一种交互构成,适用于( )系统。
A.需求不确定性高的 B.需求确定的C.管理信息D.实时11、 CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干()。
A 关键实践B 关键过程域C 软件过程能力D 软件过程12、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
A 软件过程B 软件工具C 质量保证D 软件工程13.下列关于瀑布模型的描述正确的是( )。
《软件工程》试题及参考答案(第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个成熟度等级。
软件工程大作业(二)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、馆员管理维护馆员信息,有查询、添加、修改、删除功能。
馆员身份不同,分别对应不同的操作权限。
超级管理员拥有系统维护、数据库维护的权限;一般管理员负责不同的日常工作模块;馆长拥有一切权限。
馆员类别划分加强了系统安全性。
2、修改密码输入当前馆员旧密码、新密码,检查输入完整性,如果旧密码输入不正确,则不能修改。
密码录入时以符号(*)显示,密码加密后保存到数据库,以保证数据安全性。
3、编目管理图书编目管理是系统最主要的组成部分之一,主要是维护书目基本信息和部分流通信息。
提供图书编目信息的添加、修改功能。
由于图书编目的复杂性,这里只要求自行设计图书代码,根据图书代码作为图书的唯一标识。
有关图书编目的概念可到网上查询。
4、借还管理借还管理功能模块也是系统最主要的功能模块之一。
应包括功能有:借书、还书、预约、续借、催还。
这些子功能保证图书的有效流通。
5、图书查询通过输入部分书目信息,以快速定位。
查询借阅情况(如已借阅的数量,读者名称,馆藏的数量等)6、图书挂失读者发现图书丢失后,可进行挂失。
由于图书已丢失,要求读者提供输入图书证号。
挂失时根据图书原价与"流通设定"里设定的图书丢失赔偿倍数计算罚款。
7、书证管理书证管理模块管理读者图书证,也是读者管理的一部分。
包括办理图书证、图书证挂失、图书证解挂、补办图书证、退还图书证五个子功能模块。
8、图书信息输入图书信息后,提供该书目的作者,出版社,出版日期,主要内容等信息。
9、系统统计系统统计通可包括以下统计功能:统计读者借书情况:某部门的某读者借书历史记录清单、违规记录清单。
统计图书情况:统计图书流通次数、频率等;统计各类图书的总册数等。
统计罚款情况:各项记录清单,按部门统计、按时间统计。
二、仓库管理系统系统功能的基本要求:产品入库管理,可以填写入库单,确认产品入库;产品出库管理,可以填写出库单,确认出库;借出管理,凭借条借出,然后能够还库;初始库存设置,设置库存的初始值,库存的上下警戒限;可以进行盘库,反映每月、年的库存情况;可以查询产品入库情况、出库情况、当前库存情况,可以按出库单、入库单,产品、时间进行查询;四、宾馆客房管理系统考察现有的中小型宾馆,设计客房管理系统,要求:(1)具有方便的登记、结帐功能,以及预订客房的功能。
软件工程大作业题目
软件工程大作业题目1.英汉小词典基本要求:实现类似“金山词霸”的英汉双向词典。
输入英文,显示词性、解释、音标和衍生词等。
输入中文,显示拼音和英文。
同时显示单词的索引,无需输入,只需点击就可查询。
高级要求:屏幕拾词2.围棋围棋是一种古老的运动,现在计算机大面积普及,围棋电子化也是一种大势所趋。
“围棋对弈”就是希望开发一个模拟现实中围棋对弈的软件平台,供人使用。
基本要求:实现围棋下子、提子、胜负判定功能,规则参照围棋界通用规则。
3.人机对弈(五子棋)基本要求:开发五子棋对弈的软件平台,进行人机对弈,实现下子和胜负判定功能,规则参照实际五子棋的通用规则。
4.游戏(挖地雷)Windows系统提供一个“挖地雷”的游戏,并具有高、中、低三个级别供用户选择。
用户按“开始”,系统进行计时,用户开始“挖”地雷,当把全部地雷都挖出,则获胜;只要碰到一个地雷就失败,只能从头开始。
地雷数目、分布位置随机产生,本游戏保存所有获胜盘的日期、开始和结束时间、地雷数。
游戏规则遵循Windows系统所提供的“挖地雷”游戏的规则。
5.计算器基本要求:Windows操作系统提供一个计算器,现要求开发一个能够完成Windows系统提供的计算器的所有功能。
高级要求:增强输入框的功能:用户可以在输入功能框中输入任何合法、非法的运算四则运算表达式,如果是合法表达式,计算器自动计算并显示结果,如果非法显示出错信息。
说明:1 合法的表达式:36.789*((23+68*45)-27/3747);2 非法的表达式:36.789*((23+68*45)-27/3747));67#67(3-2);6.源代码行数计数器基本要求:用户选择多个C或C++的程序文件,本软件能计算这些文件的源代码行数、空行行数和注解行数,计算结果显示并可保存在文件中。
高级要求:对C或C++程序进行美化,即按规则缩进,输出美化后的源程序文件。
7.画图板基本要求:实现MS Windows中“画图”软件的简单功能,包括用彩笔画直线、画矩形、画圆、用颜色填充一个区域、橡皮擦、颜色盒。
软件工程大作业题目
2xxxxxx班1、小区物业管理系统小区物业管理系统完成对小区公共财产等信息的管理。
功能需求可大致分为以下模块:①小区信息及财产管理②小区公告管理③小区收费管理2、超市管理系统超市管理系统主要完成对超市产品,库存等信息管理。
功能需求可大致分为以下模块:①超市员工信息管理②超市物品管理③超市库存管理④超市物品销售统计3、软件客户服务系统客户服务系统为软件购买客户及游客提供一个了解本公司信息的网络平台,客户可了解公司的开发团队及开发软件相关信息。
功能需求可大致分为以下模块:①软件及团队信息介绍②软件新闻及公告管理③软件常见疑难问题解答④软件开发工具及升级包下载4、学生学籍管理系统学生管理系统是对学生信息进行有效的管理功能需求可大致分为以下模块:①学生基本信息管理②学生成绩管理③学生奖罚管理5、教学设备管理系统教学设备管理主要完成对教学设备信息,设备采购库存信息管理。
功能需求可大致分为以下模块:①教学设备信息管理②教学设备库存管理③教学设备采购管理④教学设备报修及报废管理6、食堂管理系统食堂管理系统主要完成对食堂员工,菜类采购及相关事宜的管理。
功能需求可大致分为以下模块:①食堂员工及财产信息管理②食堂食物采购及库存管理③食堂每日菜价公告管理④食堂菜类统计7、飞机定票系统飞机定票系统主要完成对飞机航班信息及定票信息的管理。
功能需求可大致分为以下模块:①飞机航班信息管理②飞机订票管理③飞机退票管理8、班级网站班级网站主要是向外界充分展示班级风貌,向外界提供一个了解班级,参与班级活动的途径,本网站为班级成员提供了一个学习、交流、互动的一个平台。
功能需求可大致分为以下模块:①班级成员管理②论坛功能③聊天室④学习资料上传,下载管理9、网上购物系统顾客可以在网上选择他要购买的物品类型,顾客可通过汇款和邮寄方式进行商品交易。
功能需求可大致分为以下模块:①顾客信息管理②物品信息管理③顾客订购商品管理10、学生公寓管理系统学生公寓管理系统是院校的学生宿舍进行统一管理。
软件工程期末大作业《软件工程》(二)2024
软件工程期末大作业《软件工程》(二)引言概述:为了完成软件工程期末大作业《软件工程》(二),本文将围绕软件工程的相关内容展开讨论。
软件工程是一门关于软件开发和维护的学科,涉及到多方面的知识和技术。
本文将从需求分析、系统设计、编码、测试和软件维护这五个方面分阐述软件工程的主要内容。
需求分析:1. 确定用户需求: 通过与用户沟通和调研,明确用户对软件的需求和使用场景。
2. 分析需求: 将用户需求进行逐一分解,理解每个需求的重要性和优先级。
3. 编写需求文档: 将需求转化为文档,明确需求的功能、性能和界面要求。
4. 确定需求变更处理方法: 需求变更是常见的情况,需要制定相应的变更管理流程。
系统设计:1. 架构设计: 根据需求分析的结果,设计系统的整体结构和模块间的关系。
2. 数据库设计: 设计系统需要使用的数据库结构和数据流程。
3. 界面设计: 设计系统的用户界面,保证用户友好性和易用性。
4. 安全设计: 考虑系统的安全性和防护措施,保护用户数据和系统的完整性。
5. 性能设计: 针对系统的性能要求,进行合理的资源和算法设计。
编码:1. 选择编程语言和开发平台: 根据系统需求和团队的技术经验,选择适合的编程语言和开发平台。
2. 划分模块: 将系统功能划分为多个模块,分别进行编码和测试。
3. 编码规范: 遵循编码规范,保证代码的可读性和可维护性。
4. 使用工具和框架: 利用现有的工具和框架,提高开发效率和质量。
5. 版本控制: 使用版本控制工具,管理和追踪代码的变更和版本发布。
测试:1. 单元测试: 针对每个独立的模块进行单元测试,确保其功能的正确性。
2. 集成测试: 将各个模块整合在一起进行测试,验证模块间的协同工作。
3. 系统测试: 对整个系统进行全面的测试,验证系统的功能和性能。
4. Bug修复: 在测试过程中发现的问题需要及时修复,并进行相应的再测试。
5. 用户验收测试: 邀请用户进行最终的测试,反馈系统的问题和建议。
软件工程大题
• 1.单项选择题(20分)• 2.填空题(15分)• 3.名词解释(20分)• 4.简答题(25分)• 5.应用题(20分)1.为了提高软件产品的质量和可靠性,对某些无法避开的差错,使其影响减至最小程度所采用的技术是(A)A.容错技术B.避开错误技术C.检测技术D.排错技术2.构造原型时,主要考虑(B)A.全部功能B.原型要体现的特征C.全部细节D.全部要求3.在白盒技术测试用例的设计中,以下覆盖标准中发现错误能力最强的是(C)A.语句覆盖B.判定/条件覆盖C.条件组合覆盖D.判定覆盖4.以下软件生存周期的活动中,要进行软件结构设计的是(B)A.测试用例设计B.概要设计C.程序设计D.详细设计5.能够清楚地表示复杂的条件组合与应做的动作之间的对应关系的工具是(B)A.结构化语言B.PAD图C.判定表D.程序流程图6.需求分析方法必须能够表达和理解问题的数据域和( C )A.数据流B.用户类型C.功能域D.应用领域以用户需求为动力,以对象作为驱动的模型是(C)A.瀑布模型B.基于知识的模型C.喷泉模型D.增量模型8.在软件生存期的各个阶段中跨越时间最长的阶段是(D)A.需求分析阶段B.设计阶段C.测试阶段D.维护阶段二. 填空题1.软件复杂性主要表现在程序的复杂性。
程序的复杂性主要指__模块内_程序的复杂性。
2. 白盒法中,_基本路径测试___首先以详细设计或源程序为基础,导出控制流程图的拓扑结构(程序图)。
3.一个模块通过传递开关、标志对某一模块的多种功能进行选择,则这两个模块之间的耦合方式是__控制耦合___4.结构化分析是面向_数据流___进行需求分析的方法三.名词解释黑盒测试法:把被测对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行工作测试,依据需求规格说明书,检查程序是否满足功能要求.瀑布模型:将软件生存周期各个活动规定为依线性顺序连接的若干阶段的一种软件开发模型。
软件工程实验大作业题目参考
《软件工程课程实践》一、实习目的软件工程是计算机科学与技术以及相近专业的一门主要课程,通过软件工程课程实践,进行软件工程的实际综合演练,完成一个实际软件项目的分析、设计、开发、测试全过程,贯穿领会软件工程的基本思想,明晰软件工程阶段划分与各个阶段的主要任务,以MicroSoft Visio、Project、Rose、VSS、Power Designer 为例学习计算机辅助软件工程工具的基本使用方法,力图初步具备采用规范化的软件工程方法进行软件项目研发的能力。
二、课程实践任务1.掌握应用软件分析、设计和实现的基本过程2.掌握应用软件工程的分析、设计、实现的方法3.学习使用CASE工具三、课程实践的要求课程实践以实际应用中的小型题目为主,要求设计小组独立完成。
要求学生能把软件工程学的基本原理和方法应用到软件的实际开发和设计中。
根据不同的题目类型选择一种或两种开发模式,完成从需求分析,系统设计,详细设计,编码/测试,直至运行/维护的软件生存期的全过程。
具体要求如下:1.班级按项目小组进行分组,每组不得超过3人;2.每个项目小组在选出项目负责人(项目经理),由项目经理召集项目组成员讨论、选定开发项目,并在班级讨论会进行主题汇报本小组本阶段所做的工作;3.项目中的每项任务要落实到人且规定该任务的起止日期和时间;4.题目自定或采用附录中的题目。
四、提交实验报告文挡及要求一软件工程课程设计管理系统。
教师和学生可以应用该系统实现如下功能:1、学生使用自己的姓名和学号(密码)登陆后,可以从题库中选择一个题目,并且填写同组的其他同学的姓名,学号,班级,小组长等。
且选题一旦保存就不能再更改。
2、学生可以修改自己的密码。
可以查询自己的选题情况。
学生可以查询自己的课程设计成绩。
3、学生在课程设计的各个阶段的工作报告上传至该系统。
4、教师使用姓名和工资号(密码)登陆后,可以查看学生的选题情况;可以查看学生的设计报告,填写学生的项目进度情况,并且给出最后的分数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
根据下面程序代码,画出程序流程图,然后设计满足条件组合覆盖的测试用例。
BEGINT:=0IF ( X>=80 AND Y>=80 )THENT:=1ELSE IF ( X>=90 AND Y>=75 ) THENT:=2ENDIFEND.答案:经化简后的测试用例:x=95 y=95;x=95,y=70;x=70,y=95;x=70,y=70;一、应用题2一个城市的公共事业部决定开发一个“计算机化的”坑洼跟踪和修理系统。
市民通过本系统报告有坑洼时,要说明街道地址、大小、影响程度,还要记录报告者的姓名和电话,存储在坑洼报告信息中,被送到公共事业部,工作人员根据坑洼的地点和大小,修理队标识号,修理队的人数,被分配的装备,制定一份工单,送到维修队。
维修队修理后,将坑洼修理信息上报公共事业部的工作人员,包括:修理坑洼状况,使用填料的数量和修理的开销(时间、人数、使用的材料、装备)。
请画出数据流程图,并写出工单的数据字典。
工单数据字典数据项类型长度初始值备注工单号字符8 自动生成主键坑洼编号字符8 DS01的主键维修单位编号字符8 DS02的主键制单日期日期8 当前日期制单人字符8工单描述字符500工单级别数字 1 0计划工时数字 2 0计划用填料量数字 5 0 单位(吨)附加题:1、对下列子程序进行调试: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.3、对以下程序进行测试: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=04、程序功能说明书指出,某程序的输入条件为:每个学生可以选修1至3门课程,试用黑盒法设计测试用例。
(1)按等价分类法设计测试用例(要求列出设计过程)(2)按边缘值分析法设计测试用例。
答:1)合理等价类选修1门选修2门选修3门不合理等价类没选课选3门以上测试用例选修=2选修=0选修>32) 边缘值法0,1,3,45、设被测试的程序段为:begins1 ;if (x=0) and (y>2)then s2;if (x<1) or (y=1)then s3 ;s4 ;end可供选择的测试数据组为:x yⅠ 0 3Ⅱ 1 2Ⅲ -1 2 Ⅳ 3 1找出实现(1)语句覆盖;(2)条件覆盖;(3)判定覆盖至少要选择的数据组。
答:(1)Ⅰ (2) Ⅰ,Ⅳ (3) Ⅰ,Ⅱ3、已知有一抽象的DFD 图如下所示,请用SD 方法画出相应的结构图。
答:4、高考录取统分子系统有如下功能:(1) 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;(2) 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
答:(1) 数据流图: (2) 软件结构图:5、图书馆的预定图书子系统有如下功能: (1) 由供书部门提供书目给订购组。
(2) 订书组从各单位取得要订的书目。
(3) 根据供书目录和订书书目产生订书文档留底。
(4) 将订书信息(包括数目,数量等)反馈给供书单位。
(5) 将未订书目通知订书者。
(6) 对于重复订购的书目由系统自动检查,并把结果反馈给订书者。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
答:(1) 数据流图: (2) 软件结构图: 6、在结构化设计过程中,要将数据流图(DFD)映射成系统结构图(SC),分别画出变换型数据流和事物型数据流的映射方式。
答:变换型 事务型附加题:1、自学考试报名过程中有个“记录报名单”的加工。
该加工主要是根据报名表(姓名、 性别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证给报名① 原始分 ② 标准分 ③ 招生计划 ④ 录取线者,同时记录到考生名册中(准考证号、姓名、课程)。
请绘制该加工的DFD 图,并写出数据词典中的数据流条目。
答:2、“决定比赛名单”这个加工,根据“运动员名单”和“比赛项目”产生 “项目参加者”,如下图所示,运动员名单要包括所在队名,运动员编号号,运动员姓名,及参加的所有项目。
请写出这三个数据流条目。
答:运动员名单=队名+运动员号+姓名+{项目} 项目=项目名项目参加者=项目名+{运动员号} 3、某旅馆的电话服务如下:可以拨分机号和外线号码。
分机号是从7201至7299。
外线号码先拨9,然后是市话号码或长话号码。
长话号码是以区号和市话号码组成。
区号是从100到300中任意的数字串。
市话号码是以局号和分局号组成。
局号可以是455,466,888,552中任意一个号码。
分局号是任意长度为4的数字串。
要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。
答:电话号码=分机号|外线号码 分机号=7201 (7299)外线号码=9+[市话号码|长话号码] 长话号码=区号+市话号码 区号=100 (300)市话号码=局号+分局号局号=[455|466|888|552] 分局号=4{数字}41、下图是某项目的PERT 图:1-2是建立计划,2-4是编程,4-8是测试代码,8-10是测试系统,1-3是购买硬件,3-5是安装,5-7是撰写手册,5-6是转化,7-9是培训, 9-10是用户测试。
(1) 画出完整的PERT 图(标出EET ,LET ,和每个作业的机动时间); (2) 找出关键路径及完成该项目的最短时间;答:(1)(2)关键路径如上图粗黑线,该项目最短完成时间为70数据流词典 数据流条目:报名单 = 姓名 + 性别 + 身份证号 + 课程名 开考课程 = 课程名 + 开考时间 考生名册 = 准考证号 + 姓名 + 课程《软件工程》应用题四、应用题(每小题10分*3=30)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=1?a=-5???????? b=-1??????????????????????????????????? a=0?????? ?? b=-1 (5) a=5????????? b=-1? ?????????????????????????????(6)?a=5?????? ?? b=1?? a=-5?????? ? b=1????????????????????????????????????a=0????????? b=0??a=-5???????? b=-1???????????????????????????????????a=-5?????? b=-1? (7) a=5????????? b=1????????????????????????????? ? (8)?a=5????????? b=1??a=0????????? b=1???????????????????????????????????? ?a=0????????? b=-1? ?a=0????????? b=-1?????????????????????????????????????a=-5????? ?? b=1?a=-5???????? b=1??????????????????????????????????????a=-5???????? b=-1 流程图如下:?解答:达到判定覆盖为(4);达到条件覆盖为(3);达到判定/条件覆盖为(6);达到条件组合覆盖为(8);达到路径覆盖为(7)。
7.某银行计算机储蓄系统的工作流程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人的姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。