软件开发技术-山东大学软件学院管理信息系统.doc

软件开发技术-山东大学软件学院管理信息系统.doc

软件开发技术-山东大学软件学院管理信息系统.doc

软件开发技术 复 习 题 一、填空及简述: 1、软件、工程、软件工程及其三要素? P1-3 答:计算机系统中的程序及其文档称为软件。 工程是将科学论理和知识应用于实践的科学。 软件工程是一类求解软件的工程。它应用计算机科学、数学及管理科学等原理,借鉴传统工程的原则、方法,创建软件以达到提高质量、降低成本的目的。 软件工程的三要素是指——目标、原则、活动 ①软件工程的目标可概括为“生产具有正确性、可用性以及开销合宜的产品”。 ②四条基本原则~⑴选取适宜的开发模型 ⑵采用合适的设计方法 ⑶提供高质量的工程支持 ⑷重视开发过程的管理 ③软件工程的活动包括 ~需求、设计、实现、确认和支持。 2、软件开发模型的种类、适用情况、缺点? P5-10 答:①瀑布模型~在支持结构化软件开发、控制软件开发的复杂性、促进软件开发工程化等方面起着显著作用。最为突出的缺点是该模型缺乏灵活性,无法通过开发活动澄清本来不够确切的软件需求,可能导致开发出的软件并不是用户真正需要的软件,无疑要进行返工或不得不在维护中纠正需求的偏差,为此必须付出高额的代价,为软件开发带来不必要的损失。 ②演化模型~针对事先不能完整定义需求的软件开发。但忽略风险分析。 ③螺旋模型~适合于大型软件的开发。使用时需要具有相当丰富的风险评估经验和专门知识,如果项目风险较大,又未能及时发现,势必造成重大损失。 ④喷泉模型~主要用于支持面向对象开发过程。软件刻画活动需要多次重复。 ⑤增量模型~广泛地使用开计算机工业中。需不断地进行系统的增量开发。 3、设计的分类? P43 答:软件设计可采用多种方法,如结构化设计方法、面向数据结构的设计方法、面向对象的设计方法等。 4、结构化设计方法的分类及功能? P43、P65 答:结构化设计方法分为~①总体设计。其功能是设计被建系统的模块结构,即系统实现据需要的软件模块-系统中可标识软件成分,以及这些模块之间的调用关系。 ②详细设计。这个阶段的功能是确定怎样具体地实现所需求的系统,即应该得出对目标系统的精确描述,从而在编码阶段可以将这个描述直接翻译成用某种程序设计语言书写的程序,基本上决定了最终的程序代码的质量。 5、模块及其独立性和相关内容? P56 答:模块是执行一个特殊任务或实现一个特殊的抽象数据类型的一组例程和数据结构。 模块由两部分组成~一部分是接口,列出可由其他模块或例程访问的对象,如常量、变量、数据类型、函数等;另一部分是实现模块功能的执行机制,包括私有量(只能由本模块自己使用的)及实现模块功能的过程描述或源程序代码。 6、评价软件设计的基本准则及其相关内容? P56-60 答:基本准则是“高内聚”、“低耦合”。 ⑴耦合是对不同模块之间相互依赖程度的度量。 紧密耦合是指两个模块之间存在着很强的依赖关系;松散耦合是指两个模块之间存在一些依赖关系,但它们之间的连接比较弱;无耦合是指模块之间根本没有任何连接。 耦合的强度依赖于以下几个因素~①一个模块对另一个模块的引用 ②一个模块向另一个模块传递的数据量 ③一个模块施加到另一个模块的控制的数量 ④模块之间接口的复杂程度 耦合的类型(从强到弱)~①内容耦合 ②公共耦合 ③控制耦合 ④标记耦合 ⑤数据耦合 ⑵内聚度量的是一个模块内部各成分之间相互关联的强度。一个模块内聚程度越高, 该模块的内部各成分之间以及同模块所完成的功能之间的关联也就越强。 内聚的类型(从低到高)~ ①偶然内聚 ②逻辑内聚 ③时间内聚 ④过程内聚 ⑤通信内聚 ⑥顺序内聚 ⑦功能内聚 7、软件测试及技术分类? P154-155 答:软件测

文档评论(0)

1亿VIP精品文档

相关文档