二、填空题1. 计算机软件一般是指计算机系统中的程序及其______。
2. 对于单一一个需求,必须具有的基本性质:必要的、无歧义的、______、可跟踪的以及______。
3. 需求人员通过提出问题/用户回答的方式,直接询问用户需要的初始发现需求技术是______。
4. 在结构化分析方法中,表示“数据的静态结构”的术语是______。
5. 指不同模块之间相互依赖程度的度量是______。
6. 把要解决问题的过程分解为多个步骤或阶段,每一步是对上一步结果的细化,以接近问题的解法,该方法称为______。
7. 结构化程序设计的基本控制结构包括顺序、选择和______。
8. 如果在一个时间段内,整体类的实例中至少包含一个部分类的实例,并且该整体类的实例负责创建和消除部分类的实例,特别是如果整体类的实例和部分类的实例具有相同的生存周期,那么这种关联关系称为______。
9. RUP是一种以用况为驱动、以体系结构为中心的______。
10. 在单元测试中,由于模块不是一个独立的程序,必须为每个模块单元测试开发驱动模块和______,后者代替被测模块的下属模块,打印入口检查信息,并将控制返回到它的上级模块。
11. 软件测试是一个有程序的过程,包括测试设计、测试执行以及______等。
12. 软件基本过程指那些与软件生产直接相关的活动集,可分为获取过程、供应过程、开发过程、______和______。
13. 对于一个项目而言,过程管理计划是项目管理计划的主体,一般还可能存在一些对支持生存周期过程具有重要作用的其他计划,包括软件工程管理计划、软件配置管理计划、______、软件验证和确认计划和______。
14. 针对开发的CMMI是一个有关产品和服务的过程改善的成熟度模型,集成了3个源模型:______、系统工程CMM和集成产品开发CMM。
15. 在CMMI模型中,遵循一个过程可达到盼预期结果的程度是______。
16. CMMI模型基于过程途径思想,通过过程把软件质量的3个支撑点:受训的人员、______、______和设备进行集成,以开发所期望的系统/产品。
三、简答题(每小题5分,共30分)1. 简述软件危机与软件工程的概念以及提出软件工程概念的目的。
(1)软件生产率、软件质量远远满足不了社会发展的需求,成为社会、经济发展的制约因素,把这一现象称为软件危机;
(2)软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科;
(3)软件工程概念的提出是倡导以工程的原理、原则和方法进行软件开发,以期解决出现的软件危机。
2. 简述结构化方法详细设计的任务及目标。
(1)详细设计的任务是具体描述模块结构图中的每一个模块,即给出实现模块功能的实施机制,包括一组例程和数据结构,从而精确地定义了满足需求所规约的结构;
(2)详细设计的目标是将总体设计阶段所产生的系统高层结构映射为以这些术语所表达的低层结构,也是系统的最终结构。
3. 简述用况图及其通常包含的模型元素。
(1)用况图是一种表达系统功能模型的图形化工具;
(2)一个用况图通常包含6个模型元素:主题、用况、参与者、关联、泛化和依赖。
4. 简述RUP和UML之间的关系。
(1)RUP和UMI构成了一种特定的软件开发方法学;
(2)UML作为一种可视化建模语言,给出了表达事物和事物之间关系的基本术语,给出了多种模型的表达工具;
(3)RUP利用这些术语定义了需求获取层、系统分析层、设计层、实现层,并给出了实现各层模型之间映射的基本活动以及相关的指导。
5. 简述边界值分析与等价类划分技术的区别。
(1)边界值分析与等价类划分技术的区别在于:边界值分析着重边界的测试,应选取等于、刚刚大于或刚刚小于边界的值作为测试数据;
(2)而等价类划分是选取等价类中的典型值或任意值作为测试数据。
6. 简述验证和确认以及它们的区别。
(1)验证就是证实一个过程或项目的每一软件工作产品/服务是否正确地反映了所规约的需求;
(2)确认就是证实所期望使用的软件工作产品是否满足其需求;
(3)区别:验证是通过提供的客观证据,证实规约的需求是否得以满足;确认是通过提供的客观证据,证实有特定期望的使用或应用的需求是否得以满足。
四、综合应用题(每小题10分,共20分)1. 现准备为某银行开发一个信用卡管理系统CCMS,该系统的基本功能为:
(1)信用卡申请:非信用卡客户填写信用卡申请表,说明所要申请的信用卡类型及申请者的基本信息,并提交给CCMS。如果信用卡申请者被银行接受,CCMS将记录该客户的基本信息,并发送确认函给客户,告知客户信息卡的有效期及信贷限额;否则该客户将会收到一封拒绝函。非信用卡客户收到确认函后,便成为信用卡客户。
(2)信用卡激活:信用卡客户向CCMS提交激活请求,用信用卡号和密码激活该信用卡。激活操作结束后,CCMS将激活通知发送给客户,告知其信用卡是否被成功激活。
(3)信用卡客户信息管理:信用卡客户的个人信息可以在CCMS中进行在线管理。每位信用卡客户可以在线查询和修改个人信息。
(4)交易信息查询。信用卡客户使用信用卡进行的每一笔交易都会记录在CCMS中。信用卡客户可以通过CCMS查询并核实其交易信息(包括信用卡交易记录及交易额)。
请画出系统的顶层数据流图,并指出其所包含的外部实体。
该系统的顶层数据流图如下图,其所包含的外部实体如下:
(1)非信用卡客户;
(2)银行;
(3)信用卡客户。
2. 请用白盒测试法对下图所对应的程序流程图进行测试。要求从下表给出的候选答案中分别找出满足语句覆盖、分支覆盖、条件覆盖,条件组合覆盖和路径覆盖5种覆盖标准所需的最少测试用例。
(1)语句覆盖:③;
(2)分支覆盖:③;
(3)条件覆盖:②;
(4)条件组合覆盖:⑩;
(5)路径覆盖:⑤。