- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2011春季学期软件工程原理习题
2012春季学期《软件工程原理》
*有问题请联系huangzhou@pku.edu.cn(黄舟)
软件的定义:软件由计算机程序、数据及文档组成.
软件按功能分类:应用软件、系统软件、支撑软件。
软件的发展经历了三个阶段:程序设计阶段、程序系统阶段、软件工程阶段。
什么是软件危机?并简述其表现。
落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。
;
软件开发成本严重超标;
软件开发周期大大超过规定日期;
软件质量难于保证;
失败的根本原因在于:开发人员写出的东西达不到用户要求 (人的问题、技术问题)
软件工程包含的基本活动有哪些?
需求、分析与设计、实现、确认与测试、维护与支持;
软件工程的基本原则有哪些?
采用适宜的开发模型,使用恰当的开发方法,提供高质量的工程支持,实施有效的工程管理,
增量模型的概念?范型的概念?
增量模型把软件产品分解成一系列的增量构件,在增量开发迭代中逐步加入。
范型又称为风范。通常认为范型就是开发模型(Model)或开发模式(Pattern),实际上它与方法(Methodology)一样,都被视为一种开发技术。
可行性研究的目标。
从经济可行性、技术可行性、法律可行性和用户操作可行性等方面评价系统是否值得做,是否能做。
简述如何与用户有效地沟通以获取用户的真实需求
好的需求获取技术,应具有如下基本特征:
提供便于沟通的工具,如易于理解的语言和直观的图表;
提供定义系统边界(交互)的方法;
提供支持抽象的机制,如“分解”、“映射”等;
以流程为主线
在与用户交流的过程中,应该用流程将所有的内容串起来。如信息、组织结构、处理规则等。这样便于交流沟通。
需求分析中数据建模、功能建模与过程(行为)建模的含义。
数据模型包括三种互相关联的信息:数据对象,描述对象的属性,描述对象间相互连接的关系。
功能建模:
行为建模给出需求分析方法的所有操作原则。描述系统或各个数据对象的行为。
状态迁移图的概念。
通过描述系统或对象的状态,以及引起系统或对象状态转换的事件来表示系统或对象的行为。
结构化语言的词汇表组成成分。
命令动词
数据字典中定义的名字
有限的自定义词
逻辑关系词 IF_THEN_ELSE、SWITCH、WHILE_DO、FOR、DO_WHILE等组成。
需求规格说明、需求评审的概念。
需求规格说明
包括
系统应提供的功能和服务;
非功能需求;
系统开发或运行的限制条件;
与系统互连的其他系统的信息。
系统定义的目标是否与用户的要求一致;
需求分析阶段提供的文档资料是否齐全;
文档中的所有描述是否完整、清晰、准确反映用户要求;
第二章结束
软件设计的基本目标。
基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,即软件设计是确定系统的物理模型
软件设计中的抽象化原则。
过程抽象 是指在软件设计中将处理过程的实现细节隐藏在数据抽象中,可以直接通过模块接口使用这些处理操作。
数据抽象 是指采用抽象数据类型表示数据,实现数据封装,使得使用者可通过接口使用数据而不必关心数据结构的实现。
软件设计中的模块化原则。
每个模块可独立地开发、测试,最后组装成完整的程序。
其出发点是本着将一种复杂问题“分而治之”的原则。其目的是使程序的结构清晰,容易阅读、理解、测试、修改。
Meyer的???这个吗?明显标准啊
可将系统按问题/子问题分解的原则分解成系统的模块层次结构;
可利用已有的设计构件组装成新系统,不必一切从头开始。
一个模块可不参考其他模块而被理解;
对软件需求的一些微小变更只导致对某个模块的修改而整个系统不用大动;
将模块内出现异常情况的影响范围限制在模块内部;软件设计包括概要设计与详细设计两个阶段,试简述这两个阶段分别需要完成的工作内容。
将软件需求转化为软件体系结构
确定系统级接口
全局数据结构或数据库模式。
详细设计
确立每个模块的实现算法和局部数据结构
用适当方法表示算法和数据结构的细节
非直接耦合、内容耦合。
非直接耦合:
如果发生下列情形,模块之间就是内容耦合:
一个模块直接访问另一个模块的内部数据;
一个模块不通过正常入口转到另一模块内部;
两个模块有一部分程序代码重迭(只可能出现在汇编语言中);
一个模块有多个入口。
功能内聚、巧合内聚。
一个模块中各个部分都是完成某一具体功能必不可少的组成部分,或者说该模块中所有部分都是为了完成一项具体功能而协同工作,紧密联系,不可分割的。则称该模块为功能内聚模块。
当几个模块内正好有一段代码是相同的,将它们抽取出来形成单独的模块,即巧合内聚模块。这种模块没有独立功能,各部分之间没有联系,或联系很松散。
程序流程图有哪几种基本控制结构?
原创力文档


文档评论(0)