软件工程训练报告.doc_第1页
软件工程训练报告.doc_第2页
软件工程训练报告.doc_第3页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件工程训练报告理学院应数 一、 什么是软件工程?软件工程的基本目标是什么?什么是软件工程活动?软件工程活动中包括几个基本过程活动?答:软件工程的定义是运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。软件工程的目标是在确定的时间内,实现成功开发高质量的软件系统。软件工程活动是生产一个最终满足需求且达到工程目标的软件产品所需要的步骤。主要包括需求、设计、实现、确认及支持等活动。需求活动设计活动实现活动确认活动软件工程问题分析:获得需求定义需求分析:生成功能规约概要设计:建立整个软件体系结构详细设计:产生可用的模块说明将设计的结果转换为程序代码软件测试:得到正确可执行的软件软件运行:得到满足要求的软件二、 什么是软件生存期?具体包括几个过程?并请说明软件生命期模型中的瀑布模型和螺旋模型的基本方法和它们的不同之处。答: 软件生命期是指从软件开始开发到报废的全过程,也称为软件生存期。一般用瀑布模型来描述,GB8567中规定软件生命期分为7个阶段:可行性研究和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护。生存期模型是描述软件开发过程中各种活动如何执行的模型。下面介绍瀑布模型和螺旋模型。(1) 瀑布模型瀑布模型是将软件生存周期各活动规定为依次性顺序连接的若干阶段的模型,该模型说明整个软件开发过程是按图中的各个阶段进行的,每个阶段的任务完成之后,进行相应的文档,并进行下一步任务。(2) 螺旋模型对于大型软件,只开发一个原型往往达不到要求,螺旋模型将瀑布模型和增量模型结合起来,并加入了风险分析。所以两者的区别是螺旋模型在做分析的时候用到了瀑布模型。三、 需求分析的任务、目标、评审内容是什么?在对数据流进行分析时可以采用什么样的方法,举例说明。答:需求分析的任务是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的“做什么”的问题。评审的主要内容是:1.系统定义的目标是否与用户的要求一致;2.系统需求分析阶段提供的文档资料是否齐全;3.文档中的所有描述是否完整、清晰、准确反映用户要求;4.与所有其它系统成分的重要接口是否都已描述;5.所开发项目的数据流与数据结构是否足够;6.所有图表是否足够清楚;7.主要功能是否已包括在规定的软件范围之内,是否都已充分说明;8.设计的约束条件和限制条件是否符合实际;9.开发的技术风险是什么;10.是否考虑过软件需示的其它方案;11.是否考虑过将来可能会提出的软件需求;12.是否详细制定了检验标准,它们能否对系统定是否成功进行确认;13.有没有遗漏、重复或不一致的地方;14.用户是否审查了初步的用户手册;15.软件开发计划中的估算是否受到了影响。四、 在软件测试阶段,它的任务、目标是什么?在软件开发过程中,要经过几种类型的软件测试过程?这些测试过程中是针对哪些问题进行的?答:对于软件测试来说,基于不同的立场,存在两种完全不同的测试目的。从用户角度来看,用户希望能通过软件测试暴露软件中隐藏的错误和缺陷;从开发者角度来看,希望通过测试,表明软件产品中不存在错误的过程, 验证该软件已正确地实现了用户的要求。总的来说,软件测试的目的是想以最少的时间和人力找出软件中潜在各种错误和缺陷。软件测试过程的类型有:1) 单元测试单元测试又称为模块测试针对软件设计的最小单位-程序模块进行正确性检验的测试工作。2) 组装测试在单元测试的基础上,需要将所有的模块按照设计要求组装成为系统进行测试,子系统的组装测试称为部件测试,它所做的工作是找出组装后的子系统与系统需求规格说明的不一致。3) 确认测试确认测试的任务是验证软件的功能和性能及其他特性是否与用户的要求一致。4) 系统测试系统测试是将通过测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。五、 软件设计阶段将程序划分为多个模块,模块与模块之间的关系有哪些?举例说明。答:耦合性是程序结构中各个模块之间相互关联的度量,取决于各个模块之间接口的复杂程度、调用模块的方式以及有哪些信息通过接口。内聚性是程序结构中各个模块内部各部分之间的关系的度量。耦合性和内聚性是程序结构中各个模块内部和之间关系的度量,在设计模块时,应使模块间的关系具有低耦合性和高内聚性的特点。一般模块之间可能的连接方式有7种,构成耦合性的七种类型:1.非直接耦合:如果两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。这种耦合的模块独立性最强。2.数据耦合:如果一个模块访问另一个模块时,彼此之间是通过数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息的,则称这种耦合为数据耦合。3.标记耦合:如果一组模块通过参数表传递记录信息,就是标记耦合。4.控制耦合:如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。 5.外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。6.公共耦合:若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。7.内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合。1)一个模块直接访问另一个模块的内部数据;2)一个模块不通过正常入口转到另一模块内部;3)两个模块有一部分程序代码重叠(只可能出现在汇编语言中;4)一个模块有多个入口。六、 若有一台自动售货机, (1)里面的货品价格分别为1元,1.5元; (2)只允许投硬币购买,只接受5角和1元的硬币,对于其它面值的硬币不予接收; (3)硬币接收的面值可以累计,先投硬币,再选择货品进行按键购买; (4)对于售货过程用灯光表示,红灯表示投币不足或有误,绿灯表示操作成功,黄灯表示该种货品缺货,不能进行购买; (5)购买成功,则送出相应货品,并送出找的钱;如果购买不成功,则全额退所投的款额;现要求完成以下功能(1) 使用分层数据流图,描述上述自动售货机的售货过程;(2) 假设在只有两种货品,价格分别是1元和1.5 元的情况,使用判定表给出购买过程的出现的各种情况以及处理方法,要求,只能使用单条件。答:(1)顶层数据流图 付款 消费者 售货机 出售中层数据流图 按显示灯指示操作消费者 显示灯 提示消费者当前状态货物显示可售 是否出售显示灯售货机根据投入的硬币显示相应的可进行的操作底层数据流图货物显示可售 是否出售 最终目的 显示灯售货机根据投入的硬币显示相应的可进行的按提示灯操作投币显示当前状态 消费者 出售(2)情况分类消费者操作1元商品的红灯1.5元商品的红灯第一种投入5角OO再次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论