软件工程练习及课题

更新时间:2024-05-03 11:57:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《软件工程》

练习册

中国矿业大学徐海学院

- 1 -

《软件工程》随堂练习题

目 录

第一部分

第一章 绪论 ..................................................... 3 第二章 软件生存周期与软件过程 ................................... 4 第三章 结构化分析与设计 ......................................... 7 第四章 面向对象与UML ........................................... 23 第五章 需求工程与需求分析 ...................................... 33 第六章 面向对象分析 ............................................ 34 第七章 面向对象设计 ............................................ 35 第八章 编码与测试 .............................................. 37 第九章 软件维护 ................................................ 40 第十章 软件复用 ................................................ 41 第十一章 软件工程管理 ........................................... 42 第十二章 软件质量管理 ........................................... 45 第十三章 软件工程环境 ........................................... 45

第二部分

《软件工程》项目一览表

- 2 -

《软件工程》随堂练习题

第一章 绪论

1、软件 =( )+( )+( )

2、软件与硬件在( )、( )、( )方面有区别。 3、以下哪种不是软件危机出现的原因( )

A、软件维护费用急剧上升,直接威胁计算机应用的扩大 B、软件生产技术进步缓慢

C、软件需求量迅速增加,规模也日益增长,导致复杂度的增加 D、免费和开源软件越来越多 4、软件危机的表征:

5、软件生产的三种范型为: (1) (2) (3)

6、面向过程与面向对象的几个区别:

面向过程 程序= 封装粒度: 更接近 的思维方式

7、三代软件工程分别是

8、软件工程的明显效果:

软件工程的局限:

程序= 封装粒度:

更接近 - 3 -

面向对象

的思维方式 《软件工程》随堂练习题

第二章 软件生存周期与软件过程

1、软件生存周期 包括 ( )、( )、( )、( )、( )、( )等六项活动。

2、各种开发模型 可以分为四类,包括( )、( )、( )、( )。 这四种分类又分别有多种具体的开发模型,请填写下表。

四种分类

开发模型 适用场合 - 4 -

《软件工程》随堂练习题

4、螺旋模型是在结合( )两种基础上演变而成,尤其适用于大型软件的开发。 A、瀑布模型和快速原型 B、瀑布模型和增量模型 C、快速原型和净室模型 D、统一过程和敏捷过程 5、敏捷开发的价值观包括4条: 胜于 胜于 胜于 胜于

6、极限编程的5个价值观为( )、( )、( )、( )、( )。

7、可行性报告的四项内容为( )、( )、( )、( )。

8、徐州市2013年公共自行车系统:累计投放2万辆自行车,500个站点,2.5个锁车器,市民办理自行车卡约40万张,日均借车15万人次。以你为核心程序员的某学院计算机系大三级学生开发小组,计划开发徐州市公共自行车手机管理软件。 1)请问,你准备采用何种软件开发模型?为什么?

- 5 -

《软件工程》随堂练习题 15、下图给出的程序流程图代表一个非结构化的程序,请问: (1)为什么说它是非结构化的? (2)设计一个等价的结构化程序。

开始FTgqTpF停止16、美国某大学有200名教师,校方与教师工会刚刚签订一项协议。按照协议,所有年工资超过$26000(含$26000 )的教师工资将保持不变,年工资少于$26000的教师将增加工资,所增加工资数额按下述方法计算:给每位教师所赡养的人(包括教师本人)每年补助$100,此外,教师有一年工龄每年再多补助¥50,但是,增加后的年工资总额不能多于$26000。

教师工资档案存储在行政办公室的磁带上,档案中有目前的年工资、赡养人数、雇佣日期等信息。需要写一个程序计算并印出每名教师的原工资和调整后的新工资。

要求(1)画出系统的数据流图;(2)写出需求说明;

17、结构化设计的模块设计原则不包括( )。

A、清晰第一的设计风格 B、结构化的控制结构 C、一步到位的模块分割 D、逐步细化的实现方法

- 21 -

《软件工程》随堂练习题

18、选一种排序(从小到大)算法,分别用流程图、N-S图和PDL语言描述其详细过程。

- 22 -

《软件工程》随堂练习题

第四章 面向对象与UML

1、对象包括( )+( )+ ( )。 2、类与对象的关系:

3、面向对象的基本特征为:

4、UML包括静态图和动态图,共九种图。静态图有:

动态图有:

5、现有一医院病房监护系统,病症监视器安置在每个病房,将病人的病症信号实时传送到中央监视系统进行分析处理。

在中心值班室里,值班护士使用中央监视系统对病员的情况进行监控,根据医生的要求随时打印病人的病情报告,定期更新病历,当病症出现异常时,系统会立即自动报警, 并实时打印病人的病情报告,立及更新病历。

要求根据现场情景,对医院病房监护系统进行需求分析, 建立系统的用例模型。

- 23 -

《软件工程》随堂练习题

6、问题描述:建立图书信息管理系统。要求实现以下功能:

1)用户管理功能,包括读者信息的录入、修改、更新,以及登录等。

2)书籍管理功能,如书籍的添加、修改、更新、删除等数据维护功能,还可根据读者借阅书籍的要求随时更新图书馆的书籍数据库。

3)书籍的借阅、归还管理,如借还进行详细登记,更新书籍数据库。同时提供图书预定功能。

4)信息查询功能;图书信息查询、用户借书、还书信息查询、,书籍库存情况查询等。 ⑴ 根据以上描述,确定执行者及用例,建立系统的Use Case 模型。 ⑵ 给出你认为最重要的2 个用例的模板描述。

7、面向对象中的类

? 问题描述为:储户用存折取款,首先填写取款单,根据“帐卡”中的信息检验取款单与存折,如有问题,将问题反馈给储户,否则,登录“储户存款数据库”,修改相应数据,并更新“帐卡”,同时发出付款通知,出纳向储户付款。 ? 请确定系统的类,并给出你认为最重要的2-3个类的描述模板。

- 24 -

《软件工程》随堂练习题

8、UML中类的关系包括:

9、用一句话来描述下面的设计原则: 单一职责原则 开闭原则

Liskov代换原则

依赖倒转原则

接口隔离原则

合成/聚合原则

10、阅读下列说明和UML图,回答问题1至问题4,将解答填入答题纸的对应栏内。 【说明】

某企业为了方便员工用餐,为餐厅开发了一个订餐系统(COS:Cafeteria Ordering System),企业员工可通过企业内联网使用该系统。 企业的任何员工都可以查看菜单和今日特价。

系统的顾客是注册到系统的员工,可以订餐(如果未登录,需先登录)、注册工资支付、预约规律的订餐,在特殊情况下可以覆盖预订。

餐厅员工是特殊顾客,可以进行备餐、生成付费请求和请求送餐,其中对于注册工资支付的顾客生成付费请求并发送给工资系统。 菜单管理员是餐厅特定员工,可以管理菜单。

送餐员可以打印送餐说明,记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。

顾客订餐过程如下: 1. 顾客请求查看菜单; 2. 系统显示菜单和今日特价; 3. 顾客选菜;

4. 系统显示订单和价格;

- 25 -

《软件工程》随堂练习题 RegisterCourseForm ViewReportForm SelectTeachCourseForm SubmitGradesForm MaintainProfessorsForm MaintainStudentsForm MaintainCourseForm CloseRegistrationForm BillingSystemNotice 为学生提供选课注册的操作 为学生提供成绩查询的操作 为教师提供查看学生选课情况的操作 为教师提供登记成绩的操作 为注册管理员提供维护教师信息的操作 为注册管理员提供维护学生信息的操作 为注册管理员提供维护课程信息的操作 为注册管理员提供关闭注册的操作 提供与收费系统的信息交换接口 表3 学生课程注册系统的控制类

控制类 RegisterCoursesControl ViewReportControl SelectTeachCoursesControl SubmitGradesControl CloseRegistratrationControl 说明 负责新学期学生的选课登记 负责学生成绩的查询 负责新学期课程的学生选择情况 负责学生成绩的登记 负责关闭课程注册

图4创建课程登记表的协作图

【时序图】

注释1:学生打算注册新的课程。

注释2:一张这学期可选择的课程列表。

注释3:显示一张为学生选课用的空白登记表。

- 31 -

《软件工程》随堂练习题

图5创建课程登记表的时序图

【问题1】

在UML中,用例代表一个完整的功能,如与角色通信、进行计算或在系统内工作等。请指出用例图中 (1) ~ (3) 处表示的内容。 【问题2】

协作图与时序图是同构的,二者表示的都是同样的系统交互活动,只是各自的侧重点不同而已。根据题目提供的信息,指出协作图中 (4) ~ (8) 处表示的内容。 【问题3】

UML中包含用例图、类图、对象图、状态图、时序图、协作图、活动图、组件图、分布图等9种图。请指出整个系统的功能由哪种图描述,物理架构由组件图和哪种图描述。

- 32 -

《软件工程》随堂练习题

第五章 需求工程与需求分析

1、需求分析的步骤包括4个步骤:

2、需求获取的常用方法有: 常规方法 快速原型法 3、需求模型分为两种:结构化需求模型、面向对象需求模型 结构化需求模型包括三部分:

面向对象需求模型包括三部分:

4、需求分析阶段完成的文档是

5、需求获取的常用方法不包括( )。 A、建立联合分析小组 B、用户访谈

C、问题分析与确认 D、用瀑布模型获取需求

6、需求管理的实践活动包括:

7、需求管理的管理流程:

- 33 -

《软件工程》随堂练习题

第六章 面向对象分析

1、面向对象分析的基本步骤是: (1) (2) (3) (4)

2、画出面向对象分析模型的组成结构:

3、试着画出面向对象分析模型的五层次模型的各层之间的关系:

- 34 -

《软件工程》随堂练习题

第七章 面向对象设计

1、可以作为软件设计方法的四个基础概念是

2、面向对象设计的任务是什么?软件设计的任务包括4个方面:

3、什么是模块独立性?可用什么来度量?

4、模式分为三种抽象级别:

5、系统架构设计的主要任务是 1) 2) 3) 4) 5) 6)

6、系统元素设计的主要内容包括:

- 35 -

本文来源:https://www.bwwdw.com/article/j1jg.html

Top