第一章概述1、软件危机、软件危机产生的原因2、软件工程3、软件工程学的主要内容4、软件工程过程5、软件生命周期6、软件生命周期模型(SWlifecyclemodel)及各自特点7、软件工程要达到的目标?8、RUP开发过程有何特点?9、软件危机的表现10、解决软件危机的途径11、演化模型的特点12、快速原型模型的特点?13、软件生存周期分为哪些阶段?各阶段又有哪些基本任务?14、可行性研究的主要内容(第一章的内容请大家自己整理)第二章需求分析1、可行性报告要有结论;或及时中止不可行的项目。2、软件需求是进行软件设计、实现和质量度量的基础。3、需求分析是发现、逐步求精、建模、规格说明和复审的过程。4、建立模型是描述用户需求,定义需求,用以验收产品。5、数据模型用实体-关系图来描述数据对象及相互关系。6、功能模型用数据流图来描述。7、行为模型用状态转换图来描绘。8、数据字典用来描述软件使用或产生的所有数据对象、数据存储规则和处理算法等。9、需求分析阶段还应写出软件需求规格说明,有时附上可执行的原型及初步的用户手册。它是需求分析阶段的最终成果。10、复审:需求分析的结果要经过严格的审查,确保软件需求的一致性、完整性、现实性和有效性。11、软件过程改进的实际意义一般软件组织都有它采用的软件过程模型。软件组织在进行具体软件项目时采用的软件过程,称为软件过程实例。成功的软件过程改进,无论是对模型还是对实例的改进,都可以为软件组织提高效率、减少错误、保证进度、提高质量。据一些持续采用CMM进行了三年以上过程改进的软件组织报告,过程改进典型的投资回报率是7:1。通过过程改进,软件组织的平均年生产率递增37%,缺陷在测试前被发现的比例年增长率18%,产品投放市场的时间平均提前19%,现场错误年平均降低45%。12、软件过程改进的原则与步骤原则[1]过程改进建立在过程评价和过程度量基础上;[2]软件过程改进是一个持续的过程;[3]过程改进活动本身应当被作为一个过程改进项目来完成;[4]将过程度量用于对改进过程进行监控,以便及时对改进活动做必要的调整;[5]适当地重复软件过程评价活动。步骤[1]制定过程改进方案第1页共10页[2]评价各个改进方案[3]对改进方案进行排序[4]估计实施的进度表[5]获得管理层的承诺第三章概要设计1、概要设计的目的与任务:通过这个阶段的工作将划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等,另一项重要任务是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。概要设计的过程由两个主要阶段组成:系统设计阶段,确定系统的具体实现方案;结构设计阶段概要设计过程包括下述9个步骤:[1]设想供选择的方案[2]选取合理的方案[3]推荐最佳方案[4]功能分解[5]设计软件结构[6]设计数据库[7]制定测试计划[8]书写文档[9]审查和复审2、概要设计的工具、方法和结果(重点)[1]层次图[2]结构图[3]Jacksan图3、如何选择程序设计语言实现系统[1]语言自身的功能;[2]系统用户的要求;[3]编码和维护成本:[4]软件的兼容性:[5]可以使用的软件工具;[6]软件可移植性;[7]开发系统的规模;[8]程序设计人员的知识水平。第四章详细设计1、详细设计阶段的根本目标是确定应该怎样具体地实现所要求的系统2、详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设3、计出的处理过程应该尽可能简明易懂。4、详细设计的主要任务:每个模块的内部特性、使用的数据。5、过程设计就是用顺序、选择和循环三种结构的有限次组合或嵌套,描述模块功能的实现算法。6、过程设计阶段的工具:流程图、N_S图、问题分析图(PAD图)7、用户界面设计8、用户界面设计问题[1]系统响应时间[2]用户帮助设施[3]出错信息处理[4]命令交互9、用户界面设计过程用户界面设计是一个迭代的过程,一般步骤如下:第2页共10页[1]先设计和实现用户界面原型。[2]用户试用该原型,向设计者提出对界面的评价。[3]设计者根据用户的意见修改设计并实现下一级原型。[4]不断进行下去,直到用户满意为止。10、用户界面设计的基本原则(1)可靠性(2)简单性(3)易学习性...