软件工程安徽大学08-09试题(含答案)
2008-2009试卷A参考答案

Anhui University OF ArchitectureSemester 2 ,2008-2009 Final Examination(A)Subject Title: Object-Oriented ProgrammingPart One Fill in the blanks (3 ⨯10=30 marks)1.If int b[][3]={{1},{3,2},{6,5,4},{0}};then b[2][2]= 42.If int b []={1,2,3,4,5};then * b= 13.The main characteristics of OOP are encapsulation, inheritance and polymorphism4.Constructor\destructor\ \copy constructor, which one is not method in classfriend function5.Virtual base class can prevent data redundance(冗余) in derived class.6.Not all function have return type, for example: constructor7.Not all Operator can be changed through overloading. for example:.*、. 、-> 、:: .8.How many identifiers(标识符) are legal: 2 (idea\7person\s-d\private\Only123)9.Part Two Error Correction. Maybe there are several mistakes, please modify them (6⨯3=18 marks)1.#include <iostream.h>class A{A ( ){cout<<”hello” ;} // {A ( ){ public:cout<<”hello” ;}} // };int main(){A a;return 0;}2.#include <iostream>#include <string.h>Using name space;class Animal{private:int age;public: // public: Animal(){}Animal(int n){ age = n;}~Animal(){}};class Dog : public Animal{public:Dog(int m,string newname){ age = m;name= newname;}// Dog(int m,string newname): Animal(m){ name= newname;} ~Dog(){}private:string name;};void main(){ Dog a;Dog b(2,”huahua”);}3.#include <iostream > //#include <iostream > using namespace std;class point{public:virtual void m()=0; // virtual void m(){};point(){}}void main(){point A;}Part Three What is the output ( 10*3=30 )int * p1,a=5,b=20;p1=&a;cout<<a<<“ ”<<*p1<<endl;a=10;cout<<a<<“ ”<<*p1<<endl;*p1=15;cout<<a<<“ ”<<*p1<<endl;p1=&b;cout<<a<<“ ”<<*p1<<endl;2.class A {int a,b;public :A() { a=b=0; cout<<”use”<<endl;}A(int aa,int bb) {a=aa; b=bb;cout <<a<<“ ” <<b<<endl;}~ A(){cout<<a+b<<”end”;}};void main(){A x,y(2,3),z(4,5);}3.class BaseClass{public:BaseClass() { cout << "构造基类对象~BaseClass() { cout << "析构基类对象};class DerivedClass : public BaseClass{public:DerivedClass() {cout << "构造派生类对象!" << endl;}~DerivedClass() {cout << "析构派生类对象!" << endl;}};void main(){DerivedClass d;}Part Four Answer the following question (9 marks) When is the copy constructor called automatically?Solution:⏹When a class object is defined and initialized by an object of the same class⏹When a function returns a value of the class type⏹When an argument of the class type is plugged in for a call-by-value parameter Part Five programming ( 14 marks)Circle is a base class and Cylinder is inherited from it.They all have function getArea().Besides Cylinder have function getV olume to figure out Cylinder’s volume(体积) and print it, try to compile the programSolution:#include <iostream >using namespace std;const double pi =3.14;class Circle{public:Circle(int r) { r0=r;}float getr(){return r0;}double getArea(){return pi*r0*r0;}~Circle() { }private:int r0;};class Cylinder : public Circle{public:Cylinder(int r,int h): Circle(r){h1=h;}double getArea(){return 2*pi*getr()*h1;}double getV olume(){return Circle::getArea()*h1;}void V olumedisplay(){cout<<getV olume()<<endl;}~Cylinder(){}private:int h1;};void main(){Cylinder d(5,2);d.V olumedisplay();}。
2009软件工程试卷答案

诚信应考 考出水平 考出风格 浙江大学城市学院 2008 — 2009 学年第 一 学期期末考试答卷 《 软件工程 》 开课单位: 计算分院 ;考试形式:闭、开卷;考试时间:__2009_年__1__月__11_日; 所需时间: 120 分钟
一._单项选择题_____(本大题共__15__题,每题___1___分,共___15___分。
)
二._组合选择题______(本大题共______题,每空___1___分,共___30_____分。
)
四.简答题(本大题共__2__题,每题___5___分,共___10_____分。
)
1、
等价划分是一种黑盒测试技术,这种技术把程序的输入域划分成若干个等价类(2分)
等价类分为有效等价类和无效等价类(1分)
设计一个新的测试方案以尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步骤直到所有有效等价类都被覆盖为止(2分)
2、
初始级(又称为1级)
可重复级(又称为2级)
已定义级(又称为3级)
已管理级(又称为4级)
优化级(又称为5级)
每小点1分
1、
顶层数据流图略(2分)
画出基本的数据流图(2分)
顶层和0层数据流图平衡(2分)
每个数据流都有名称(1分)
基本的数据字典描述(3分)
N-S图完全正确4分
基本正确2-3分
不正确0-1分
测试用例设计完全正确并且简洁6分测试用例设计正确但不简洁4-5分
测试用例设计概念不够清晰,2-3分不正确0-1分
答案不唯一
基本正确,9-10分
能有对象模型的大致概念:5-8分一般情况:1-4分。
,用例图参考:
简要类图参考:。
2024年软件工程开发等专业技能知识考试题库附含答案

2024年软件工程开发等专业技能知识考试题库(附含答案)一、单选题1.数据流图是进行软件需求分析的常用图形工具,其基本图形符号是( )。
A.输入、输出、外部实体和加工B.变换、加工、数据流和存储C.加工、数据流、数据存储和外部实体D.变换、数据存储、加工和数据流参考答案:C2.集成测试的主要方法有两个,一个是()一个是()。
A.白盒测试方法、黑盒测试方法B.等价类划分方法、边缘值分析方法C.渐增式测试方法、非渐增式测试方法D.因果图方法、错误推测方法参考答案:C3.软件文档是软件工程实施的重要成分,它不仅是软件开发各阶段的重要依据,而且也影响软件的( )。
A.可用性B.可维护性C.可扩展性D.可移植性参考答案:B4.面向对象设计阶段的主要任务是系统设计和( )。
A.结构化设计B.数据设计C.面向对象程序设计D.对象设计参考答案:D5.包含风险分析的软件工程模型是( )。
A.喷泉模型B.瀑布模型C.增量模型D.螺旋模型参考答案:D6.Jackson方法根据()来导出程序结构。
A.数据流图B.数据间的控制结构C.数据结构D.IPO图参考答案:C7.需求工程的主要目的是( )。
A.系统开发的具体方案B.进一步确定用户的需求C.解决系统是“做什么的问题”D.解决系统是“如何做的问题”参考答案:C8.只有类的共有界面的成员才能成为使用类的操作,这是软件设计的( )原则。
A.过程抽象B.信息隐藏C.功能抽象D.共享性参考答案:B9.下列哪项不是风险管理的过程?( )。
A.风险规划B.风险识别C.风险评估D.风险收集参考答案:D10.在分层体系结构中,( )实现与实体对象相关的业务逻辑。
A.表示层B.持久层C.实体层D.控制层参考答案:D11.下列选项中不属于CI管道的是()。
A.构建B.模拟C.单元测试D.集成测试参考答案:B12.应该在( ),确定对象类中应有的服务。
A.建立对象模型之时B.建立动态模型和功能模型之后C.建立功能模型之后D.建立动态模型之后参考答案:B13.需求分析的主要方法有( )。
安徽大学软件工程导论期末复习考点试卷汇总

可行性研究与计划制 决定该问题是否存在一个可行的解决办法,指定完成开发任务的实施计划 定 需求分析 对待开发软件提出需求进行分析并给出详细定义。编写软件规格说明书及初步的用户手册,提交 评审 软件设计 通常又分为概要设计和详细设计两个阶段,给出软件的结构、模块的划分、功能的分配以及处理 流程。这阶段提交评审的文档有概要设计说明书、详细设计说明书和测试计划初稿 软件实现 在软件设计的基础上编写程序。这阶段完成的文档有用户手册、操作手册等面向用户的文档,以 及为下一步作准备而编写的单元测试计划 软件测试 运行维护 在设计测试用例的基础上,检验软件的各个组成部分。编写测试分析报告 将已交付的软件投入运行,同时不断的维护,进行必要而且可行的扩充和删改
第 5 章 总体设计
1、什么是总体设计? 将软件需求转化为软件的数据结构和系统结构,确定各组成成分(子系统或模块)之间的相互关系 2、模块化设计的原理包括什么?为了提高软件的可维护性,其中,模块独立性最重要的,是评价软件结构质量 的首要标准。 模块化设计的原理包括:模块化、抽象、逐步求精、信息隐藏和局部化、模块独立。为了提高软件的可维护性, 其中,模块独立性最重要的,是评价软件结构质量的首要标准。 3、模块独立性度量(描述)的两个指标:内聚、耦合;什么是内聚,什么是耦合;耦合和内聚的具体分类及使用原 则;在面向数据流的方法中,内聚、耦合各分为哪几级,每级的具体含义分别是什么?强度从弱到强如何排列? 耦合和内聚两者关系? (1)耦合定义:它是对一个软件结构内不同模块之间互连程度的度量;
代或同一阶段内各个工作步骤之间的迭代,比在结构化范型中更常见。 喷泉模型, 是典型的面向对象生命周期模型, 它充分体现了面向对象软件开发过程迭代和平滑过渡的特性。
5、1.
软件生命周期概念
软件工程试卷(附答案)

软件工程试卷(附答案)1.软件生命周期模型有多种,其中不属于软件生命周期模型的是(C)功能模型。
2.下列说法错误的是(C)瀑布模型和增量模型都属于整体开发模型。
3.可行性分析中,系统流程图用于描述(A)当前运行系统。
4.研究软硬件资源的有效性是进行(A)技术可行性研究的一方面。
5.数据字典中,一般不包括下列选项中的(D)源点与终点条目。
6.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A)获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型。
7.通过(B)功能分解可以完成数据流图的细化。
8.对软件进行分解,是为了(C)降低模块的复杂程度,并降低模块间接口的复杂程度。
9.为了提高模块的独立性,模块内部最好是(C)功能内聚。
10.在软件结构设计完成后,对于下列说法,正确的是(C)一个模块的扇出太多,说明该模块过分复杂,缺少中间层。
11.在软件开发过程中,以下说法正确的是(B)N-S图不可能任意转移控制,符合结构化原则。
A.软件开发过程是线性的B.软件开发过程是迭代的C.软件开发过程是风险驱动的D.软件开发过程是需求驱动的3、软件需求分析的主要任务是(ABC)。
A.确定用户需求B.建立系统模型C.规定系统功能D.编写程序代码4、以下属于软件设计阶段的活动是(BCD)。
A.编写用户手册B.确定模块划分C.设计系统结构D.选择数据结构和算法5、软件测试的主要目的是(ABD)。
A.发现软件缺陷B.提高软件质量C.证明软件正确性D.评估软件可靠性6、软件维护的主要种类有(ABC)。
A.纠错性维护B.适应性维护C.完善性维护D.重构性维护7、以下属于软件过程改进的方法是(ACD)。
A.引入新的开发方法B.增加人员数量C.培训人员D.引入新的工具和技术8、以下属于软件质量特性的是(ABCD)。
A.可靠性B.可维护性C.可用性D.可重用性9、软件工程的基本原则包括(ABCD)。
A.逐步求精B.分阶段进行C.严格控制D.重视质量10、以下属于软件开发生命周期模型的是(ABCD)。
2022年安徽大学软件工程专业《操作系统》科目期末试卷B(有答案)

2022年安徽大学软件工程专业《操作系统》科目期末试卷B(有答案)一、选择题1、 I/O中断是CPU与通道协调I作的种于段,所以在()时,便要产生中断。
A.CPU执行“启动I/O”指令而被通道拒绝接收B.通道接受了CPU的启动请求C.通道完成了通道程序的执行D.通道在执行通道程序的过程中2、若I/O所花费的时间比CPU的处理时间短很多,则缓冲区()A.最有效B.几乎无效C.均衡D.以上都不是3、要保证一个程序在主存中被改变了存放位置后仍能正确地执行,则对主存空间应采用()技术。
A.静态重定位B.动态重定位C.动态分配D.静态分配4、系统为某进程分配了4个页框,该进程已访问的页号序列为2,0,2,9,3,4,2,8,2,4,8,4,5,若进程要访问的下页的页号为7,依据LRU算法,应淘汰页的页号是()A.2B.3C.4D.85、产生内存抖动的主要原因是()A.内存空间太小B.CPU运行速度太慢C.CPU调度算法不合理D.页面置换算法不合理6、设计实时操作系统时,首先应该考虑系统的()。
A.可靠性和灵活性B.实时性和可靠性C.分配性和可靠性D.灵活性和实时性7、下列选项中,会导致用户进程从用户态切换到内核态的操作是()I.整数除以零 II.sin函数调用 III.read系统调用A.仅I、IIB.仅I、IIIC.仅II、IIID. I、II和II8、下列文件物理结构中,适合随机访问且易于文件扩展的是()。
A.连续结构B.索引结构C.链式结构且磁盘块定长D.链式结构且磁盘块变长9、某文件系统的簇和磁盘扇区大小分别为1KB和512B。
若一个文件的大小为1026B,则系统分配给该文件的磁盘空间大小是()。
A.1026BB.1536BC.1538BD.2048B10、一个进程被唤醒意味着()。
A.该进程可以重新占用CPUB.优先级变为最大C.PCB移到就绪队列之首D.进程变为运行态11、进程P1和P2均包含并发执行的线程,部分伪代码描述如下所//进程P1 //进程P2int x=0; int x=0;Thread1() Thread3(){int a; {int a:a=1; a=x;x+=1; x+=3;Thread2() Thread4(){ {int a: int b, aa=2; b=x;x+=2; x1=4;} }下列选项中,需要互斥执行的操作是()。
安徽大学期末试卷08软件A卷-实考卷.doc

安徽大学20 10—20 11 学年第 2 学期 《网络原理》期末考试试卷(A 卷)(闭卷 时间120分钟)院/系 年级 专业 姓名 学号一、选择题(每小题1分,共15分)1.在对千兆以太网和快速以太网的共同特点的描述中,以下哪种说法是错误的( )。
A )相同的数据帧格式B )相同的物理层实现技术C )相同的组网方法D )相同的介质访问控制方法 2.下列哪种协议的目的是从已知IP 地址获得相应的MAC 地址( )。
A )TELNETB )HTTPC )ARPD )RARP3.允许数据在两个方向上传输,但某一时候只允许数据在一个方向上传输,称这种通信方式为( )。
A )并行B )半双工C )单工D )全双工 4.以下关于IP 地址的描述,错误的是( )。
A )一主机同时连到两个网络时,必须有两个IP 地址,其net-id 必须不同。
B )路由器只根据目标IP 地址的网络号转发分组。
C )Internet 上的每个IP 地址都由因特网名字与号码指派公司ICANN 进行分配。
D )用中继器或网桥连的LAN 具有同样的net-id 。
5.IEEE 802.3的 MAC 层协议( )。
A) 只要发送前信道空闲,就不可能发生碰撞。
B) 是一种无连接有确认的协议。
C) 边发送、边检测是否有碰撞发生。
D) 需要解决可靠传输问题。
6.主机发送一封电子邮件,在发送前必须进行数据封装,在生成一个分组后,接着( )。
A )分组沿着传输介质进行传输。
B )分组被转换成二进制格式。
C )分组被封装成帧。
D )分组被封装成段。
7.TCP 连接三次握手机制用于解决的问题是( ) 。
A )决定每次能接收多少数据。
B) 为用户提供有效的可用带宽。
C )同步双方的初始序号。
D) 减少传输时延。
8.TCP 和UDP 使用( )对同一时间网络的不同会话进行跟踪。
A )IP 地址。
B )MAC 地址。
C )端口号。
D )网络号。
2008级荅案

2010-2011学年第2学期2008 级《软件工程》期末考试试题( A卷)答案及评分标准考试时间:2011年6月一、选择题,每题1分,共计30分。
每个括号里的数字为该空的题号,从该题号对应的备选三、完成下列各题,在答题纸上写出答案。
共计30分。
1. 说明什么是软件工程,列举软件工程方法学的三个要素。
(3分)软件工程是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。
(2分)软件工程方法学包含三个要素:方法、工具和过程。
(1分)2. 说明什么是软件配置管理,什么是基线,并例举任意三种软件配置项。
(3分)软件配置管理(Software Configuration Management)是一门应用技术、管理和监督相结合的学科,通过标识和文档来记录配置项的功能和物理特性、控制这些特性的变更、记录和报告变更的过程和状态,并验证它们与需求是否一致。
(1分)已经通过了正式复审的规格说明或中间产品,它可以作为进一步开发的基础,并且只有通过正式的变化控制过程才能改变它。
基线就是通过了正式复审的软件配置项。
(1分)就是软件过程输出的全部计算机程序、文档、数据。
(1分)3. 根据如下所示的某项目的工程网络图回答问题。
(6分)1-2是建立计划,2-4是编程,4-8是测试代码,8-10是测试系统,1-3是购买硬件,3-5是安装,5-7是撰写手册,5-6是转化,7-9是培训,9-11是用户测试。
(1)重新画出完整的工程网络图(标出每个事件的EET、LET和每个作业的机动时间);(2)找出关键路径及完成该项目的最短时间。
(3)由于任务1-2延误一天,为保证该工程按时完成,应将哪个任务缩短一天,使成本增加最少。
下面的表格列出了各任务每缩短一天所需增加的成本。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
安徽大学2008 —2009 学年第 1 学期
《软件工程》考试试卷(A卷)
(时间120分钟)
院/系专业姓名学号
一、单选题(每小题2分,共20分)
软件工程的三要素是过程、、工具。
A. 文档
B. 代码
C. 数据
D.方法
2. ( B )
修改一个已有的库存清单系统,使它能在每天送给采购员一份定货报表。
修改已有的库存清单并且编写产生报表的程序,估计共需3000元;系统修改后,能及时定货将消除零件短缺影响生产的问题,估计因此每年可以节省2500元,假设年利率为12%,软件的生存周期是2年,开发该软件的纯收入是多少?
A. 2232.14
B.1225.12
C. 3000
D.2000
3.( C )
一个程序向另一个子程序传递姓名、住址、电话号码、生日和身份证号码等五个变量。
它们之间的耦合属于
A.标记耦合
B.控制耦合
C.数据耦合
D.公共耦合
4.( A )
可行性研究主要从以下几个方面进行研究:
A. 技术可行性,经济可行性,操作可行性。
B. 技术可行性,经济可行性,系统可行性。
C. 经济可行性,系统可行性,操作可行性。
D. 经济可行性,系统可行性,时间可行性。
5.( B )
CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干
A.关键实践
B.关键过程域
C.软件过程能力
D.软件过程
6.( D )
“国家——中国”之间的关系属于
A 继承
B 关联
C 聚合
D 类——实例
7.( A )
面向对象分析是对系统进行的一种方法。
A 需求建模
B 程序设计
C 设计评审
D 测试验收
8.( B )
结构化分析方法中,数据流程图属于
A 对象模型
B 功能模型
C 行为模型
D 数据模型
9.( C )
Jackson图属于阶段使用到的图形工具。
A 需求分析
B 概要设计
C 详细设计
D 软件实现
10.( C )
耦合是对软件不同模块之间互连程度的度量。
各种耦合按从强到弱排列如下:
A.内容耦合,控制耦合,数据耦合,公共环境耦合。
B.内容耦合,控制耦合,公共环境耦合,数据耦合。
C.内容耦合,公共环境耦合,控制耦合,数据耦合。
D. 控制耦合,内容耦合,数据耦合,公共环境耦合。
二、简答题(每小题6分,共30分)
1.什么是软件危机?软件危机包含哪几方面的问题?
指,计算机在开发和维护方面遇到的一系列严峻问题。
1. 对软件开发成本和进度的估计常常很不准确
2. 用户对已完成的软件系统不满意
3. 软件产品质量靠不住
4. 软件常常不可维护的
5. 软件通常没有合适的文档资料
6. 软件成本在计算机系统总成本中比例不断上升
7. 软件开发速度跟不上计算机应用速度
2.面向对象开发方法一般使用哪3种模型?分别描述系统的那些方面?(6分)
1. 功能模型
表示了变化的系统的功能性质,指明了系统一概做什么,因此更直接地反映了用户对目标系统的需求
2. 对象模型
描述了显示世界中的类与对象以及他们之间的关系,表示了目标系统的静态数据结构。
3. 动态模型
动态模型表示瞬时的、行为化的系统的“控制”性质,它规定了对象模型中的对象的合法变化序列3.什么是控制耦合?举一个控制耦合的例子。
(6分)
两个模块之间传递的数据夹杂着控制信息,则称为控制耦合。
public int y;
Public A(string x) {
if (x==”true”) {
y=1;
}
Else { y=0; }
}
Public void B ( )
{
if (y==1) {
F( ); // F( )是系统自定义的函数
}
Else {
G( ); // G( )是系统自定义的函数
}
}
模块A&B之间为控制耦合因为两个模块间传递的y值是用作控制信号的开关量。
改善方法就是把B模块调用的函数直接写入A模块中,然后删除B模块。
4. 白盒测试的路径覆盖法与逻辑覆盖有何不同?(6分)
逻辑覆盖是逐渐进行越来越完整的通路测试
路径覆盖是选取足够多的测试数据,使程序每条可能路径都执行一次。
5. 什么是信息隐蔽?信息隐蔽会带来那些好处?(6分)
应该这样设计和确定模块,使得一个模块内包含的信息(过程和数据),对于不需要这些信息的模块来说是不能访问的。
好处:大多数数据和过程对于软件的其他部分而言是隐藏的,在修改期间由于疏忽而引入的错误就很少可能传播到软件的其他部分。
三、应用题(共20分)
1.(8分)
某校制定了教师的讲课课时津贴标准。
对于各种性质的讲座,无论教师是什么职称,每课时津贴费一律是50元;而对于一般的授课,则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。
绘制判定表。
判定表
2.(12分) 求解二次方程 A x 2
+Bx+C=0 (1) 输入:A,B,C 三个参数 (2) 根的信息:
相等实根; 不等实根;
两个大小相等符号相反的实根; 仅有一个实根; 有两个虚根; (3) 根的值
用黑盒方法写出程序的测试用例。
1. 相等的实根: A=1;C=1;B=4
2. 不等实根; A=1;C=0;B=4;
3. 大小相等符号相反的实根: A=-1;B=0;C=1;
4. 仅有一个实根: A=0;B=1;C=1;
5. 有两个虚跟: A=4;B=4;C=2;
四、设计题(30分)
1.(20分)
某考务处理系统有如下功能:
①对考生送来的报名单进行检查;
②对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站;
③对阅卷站送来的成绩清单进行检查,并根据考试中心制定的合格标准审定合格者;
④制作考生通知单(内含成绩及合格/不合格标志)送给考生;
(5)进行成绩分类统计(按地区、年龄、文化程度、职业、考试级别等分类)和试题难度分析,产生统计分析表。
请绘制数据流程图,给出相应的数据字典,并据此画出系统结构图。
2.(10分)
画出上述系统的对象图,并给出每个对象的属性。
数据字典:
报名单=地区+序号+姓名+性别+年龄+文化程度+职业+考试级别+通信地址正式报名单=报名单牛准考证号
准考证=地区+序号+姓名+准考证号牛考试级别
考生名单={准考证号+考试级别} ( 其中{w}表示w 重复多次)
统计分析表=分类统计表+难度分析表
考生通知单=考试级别十准考证号+姓名+合格标志+通信地址。