[精品]软件工程期末复习提纲
第1章软件工程介绍 1、软件是一种逻辑产品。 2^软件危机(概念和产生原因) 第2章过程综述 1、软件工程是一门工程性的学科,其目标主要是成功地建造一个大型软件系统。包括:付 出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植; 需要较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。 2、软件工程是集成计算机软件开发的过程、方法和工具的学科(二个基本要素) 3、软件生存周期 4、软件工程过程(P、D、C、A) 5、能力成熟度(CMM) 6、计算机辅助软件工程(CASE) 第3章过程模型 1、软件过程模型(线性、快速原型、螺旋、构件等)及特点 第4章敏捷视角下的过程 1、敏捷的概念 第5章系统工程 1、统一建模语言UML (是一种建模语言,是一种标准的表不方法,而不是一种完整的方法 学,更不一种编程语言) 2、UML动态图、静态图有哪些 3、协作图与时序图是同构的 第6章需求工程 1、需求分析阶段的任务是确定软件系统的需求(即做什么,包括功能的和非功能性的,例如 性能等) 2、需求分析的最终结果是产生需求规格说明书;需求分析阶段的文档还有“初步用户使用 手册” 第7章构建分析模型 1、数据流图(DFD)采用逐级细化的方式,要保证父图和子图的平衡,它至少有一个输入 流和一个输出流 2、模型,就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的形式化的 描述。通常,模型山一组图形符号和组成这些符号的规则组成。 3、在软件工程中,要创建两类模型:分析模型和设计模型. 4面向对象=对象+分类+继承+通信 5封装 第8章设计工程 1、内聚:偶然内聚;逻辑内聚;时间内聚;通信内聚;顺序内聚;功能内聚 2、耦合:(1)非直接(2)数据(3)标记(4)控制(5)外部(6)公共(7)内容 信息隐藏 划分模块时,一个模块的作用范围应在其控制范围之内 第9章进行体系结构设计 1、软件体系结构提供了待建造系统的整体视图 第10章构件级设计建模 1、程序的二种基本控制结构:顺序、选择、重复 2、三种设计工具:图示(IPO、PAD、NS等)、表格、设计语言(PDL) 第11章完成用户界面设计 1、界面设计的三个方面 2、用户界面设计的黄金规则。 第12章软件测试策略 第13章测试战术 1、软件测试的目的和任务。(不可能找出所有错误,关键问题是如何选择测试用例,尽可 能发现错误) 2、测试的终止标准 3、白盒测试、黑盒测试概念和常见的设计测试用例方法 基本路径测试:环复杂度;独立路径集; 4、单元测试、集成测试、确认测试、系统测试(概念及其测试的依据)。 5、Alpha测试和Beta测试。 6、等价划分、边值。 测试目标规则: (1)测试是一个为了寻找错误而运行程序的过程。 (2)一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。 (3)一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。 驱动模块、桩模块 7、调试:蛮力法、回溯法、原因排除法、演绎法。 第14章产品度量 1、可靠性、可维护性、可移植性 2、软件维护涉及软件开发的各个阶段,可能因修改软件而造成新的错误(包括文档、代码、 恢复等方面的)。 3、软件维护(纠错校正、适应、增强完善、预防) 第15章项目管理 1、4P (People> product、process> project) 2、W5HH(why> what> when> who、where> how> how much)) 3、文档在软件工程中非常重要,可以提高软件开发过程的能见度、开发效率,作为开发人 员阶段工作成果和结束标志,记录开发过程的有关信息便于使用与维护,提供软件运行、维 护和培训有关资料,便于用户了解软件功能、性能。 第16章过程和项目度量 1、面向规模的度量 2、面向功能的度量 3、缺陷排除率 第17章估算 1、软件估算:多长时间、多少工作量、多少人员、资源和风险。 2、可行性:技术、经济、时间、资源;可行性分析是在系统开发的早期所做的一项重要的 论证工作,它是决定该系统是否开发的决策依据,因必须给出行或不行的回答。在需求 分析之前 3、COCOMO模型,中级结构性成本模型COCOMO是一个动态多变量模型 第18章项目进度安排 1、人员与工作量之间的关系 2、工程任务网络图 第19章风险管理 1、风险管理的主要目标是预防风险。 2、风险管理的步骤 RMMM计划 第20章质量管理 1、质量成本 2、缺陷的放大 3、标准(国际、国家、区域、行业) 4、著作权应包括:发表权、署名权、修改权、复制权、发行权、出租权、信息网络传播权、 翻译权、许可权。 5、自然人的软件著作权,保护期为自然人终生及期死亡后50年 6、MTBF, MTTF、MTTR 第21章变更管理 1、软件配置管理是应用于整个软件过程的庇护性活动,变更发生在任何时间,当然也包括 各种变更(如文档、程序、模型) 2、软件配置管理及主要内容 1、某工厂公开招工,规定报名者年龄应在16至35周岁之间(2004年5月30日止)。即出 生年月不在上述范围内,将拒绝接受,并显示“年龄不合格”等信息。试用等价分类法设计 对这一程序功能的测试用例。 2、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。 “一个程序读入3个整数,把这3个数值看做一个三角形的3条边的长度值。这个程序要打 印出信息,说明这个三角形是等边的、等腰的或是不等边的”。 3、银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系 统,如果是存款则系统记录存款人信息,并印出存单给储户;如果是取款而且存款时留有密 码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息 清单给储户。用实体-联系图描绘系统中的数据对象 4、某培训中心要研制一个计算机管理系统。它的业务是: 将学员发来的信件收集分类后,按几种不同的情况处理。 1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该 课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开 出发票给学生。 2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做 相应的修改,并给学生注销单。 3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。 画出数据流程图和软件结构图的主图。 (1)PROCEDURE EX (A, B: REAL; VAR X: REAL); BEGIN IF (A=3) OR (B> 1) THEN X: =AXB IF (A>2) AND (B=0) THEN X: =A—3 FOR I:=l TO A DO IF I