软件工程(简要知识点)
软件生命周期:
软件定义软件开发
问题定义(确定题目)可行性研究需求分析概要设计系统设计详细设计
系统实现
编码和单元测试综合测试
运行维护:主要任务是使软件持久地满足用户的需要
一、软件过程五个模型对比(瀑布模型、快速原型、增量、螺旋、喷泉模型)二、可行性研究:1、任务:用最小的代价在尽可能短的时间内确定问题是否能够解决。2、四个方面:技术、经济、操作可行性、法律3、数据流图四种成分:1、源点终点2、处理3、数据存储4、数据流三、需求分析:1、任务:确定系统必须完成哪些工作,对目标系统提出完整、清晰、具体的要求。2、结构化方法就是面向数据流自顶向下逐步求精进行需求分析的方法。3、实体联系图:1、数据对象2、属性3、联系(11、1:N、MN)四、总体设计:1任务:回答“概括的说,系统应该如何实现”,用比较抽象概括的方式确定系统如何完成预定的任务,也就是说应该确定系统的物理配置方案,并且进而确定组成系统的每个程序结构。2系统设计阶段(确定系统具体实施方案)、结构设计阶段(确定软件结构)3模块独立:内聚和耦合4耦合表示一个软件结构内各个模块之间的互连程度,应尽量选用松散耦合的系统
1
f5内聚Cohesio
一个模块内各元素结合的紧密程度
6面向数据流的设计方法:变换流和事务流五、详细设计:1任务:确定应该怎样具体的实现所要求的系统,也就是说经过这个阶段的设计工作应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。2过程设计的工具(程序流程图、盒图、PAD图、判定表、判定树)七、测试:1、单元测试:又称模块测试。每个程序模块完成一个相对独立的子功能,所以可以对该模块进行单独的测试。由于每个模块都有清晰定义的功能,所以通常比较容易设计相应的测试方案,以检验每个模块的正确性。2、集成测试:在单元测试完成后,要考虑将模块集成为系统的过程中可能出现的问题,例如,模块之间的通信和协调问题,所以在单元测试结束之后还要进行集成测试。这个步骤着重测试模块间的接口,子功能的组合是否达到了预期要求的功能,全程数据结构是否有问题等。3、白盒测试技术(逻辑覆盖、基本路经测试)
2
f白盒测试时将程序看作是一个透明的盒子,也就是说测试人员完全了解程序的内部结构和处理过程。所以测试时按照程序内部的逻辑测试程序、检验程序中的每条通路是否都能按预定的要求正r