




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
知识点1软件工程基本概念1.软件定义:是计算机系统中与硬件相互依存的另一部分,是包括程序、数据以及相关文档的完整集合。数据是使程序能够正常操作信息的数据结构。文档是与程序开发、维护和使用有关的图文资料。程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令(语句)序列。2. 软件的特点:1)软件是一种逻辑实体,而不是物理实体,具有抽象性,是计算机的无形部分;2)软件的生产与硬件不同,它没有明显的制作过程;3)软件在运行、使用期间不存在磨损、老化问题;4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;5) 软件复杂性高,成本昂贵;6) 软件开发涉及诸多的社会因素3.软件的分类:按照功能可以分为:应用软件、系统软件、支撑软件(或工具软件)a应用软件是为解决特定领域的应用而开发的软件。如:教务管理系统、财务管理系统等。b系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。如:操作系统、数据库管理系统等。c支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具软件。比如:编码工具软件、测试工具软件4.软件危机软件危机是指在软件的开发和维护过程中所遇到的一系列严重 问题。软件危机主要体现在以下几个方面: 软件开发的实际成本和进度估计不准确 开发出来的软件常常不能使用户满意 软件产品的质量不高,存在漏洞,需要经常打补丁 大量已有的软件难以维护 软件缺少有关的文档资料 开发和维护成本不断提高,直接威胁计算机应用的扩大 软件生产技术进步缓慢,跟不上硬件的发展和人们需求增长5.软件工程a.软件工程概念的出现源自软件危机。b.软件工程的基本要素 方法:完成软件工程项目的技术手段;工具:支持软件的开发、管理、文档生成;过程:支持软件开发的各个环节的控制、管理。C. 软件工程的核心思想:把软件产品看作是一个工程产品来处理。知识点2软件生命周期1. 将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。2. 软件生命周期一般划分为定义、开发和维护3个阶段:定义阶段:可行性研究、需求分析2个阶段;开发阶段:概要设计、详细设计、编码实现和测试4个阶段;维护阶段:使用、维护、退役阶段。 1)结构化需求分析方法2)面向对象的分析方法。3.软件工程的概述1)软件定义阶段:包括制定计划和需求分析。2)软件开发阶段:软件设计:分为概要设计和详细设计两个部分。软件实现:把软件设计转换成计算机可以接受的程序代码。软件测试:在设计测试用例的基础上检验软件的各个组成部分。3)软件运行维护阶段:软件投入运行,并在使用中不断地维护,进行必要的扩充和删改。软件生命周期中所花费最多的阶段是软件运行维护阶段。4)软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。5)软件工具与软件开发环境知识点3软件设计基本概念软件工程过程:问题定义可行性研究需求分析软件设计软件编码软件测试软件维护软件设计分为:a.总体设计 目的:要解决的问题是“怎样实现目标系统” 任务:确定软件的总体结构,进行模块划分,确定每个模块的功能、接口及模块之间的调用关系,并对全局数据结构进行设计,同时产生概要设计说明书 b.详细设计 目的:要解决的问题是“应该怎样具体实现目标系统” 任务:在概要设计的基础上,设计每个模块实现的细节及对局部数据进行设计(包括模块的数据结构和所需的算法),同时产生详细设计说明书软件测试: 是为了发现程序中的错误而执行程序的过程知识点4软件设计的基本原理1模块化:指解决问题时自顶向下的方法逐层把软件系统划分成若干个模块的过程2抽象:认识复杂过程中使用的思维工具,即抽出事务的本质的共同的特性而暂不考虑它的细节和其他因素。3信息隐蔽:旨在设计和确定模块式的时候,是的一个模块内包含的信息,对于不需要这些信息的其他模块来说不可访问4模块独立性:指每个模块只完成系统要求的独立的功能,并且与其他模块联系最少且接口简单模块的耦合性和内聚性是衡量软件的模块独立性的两个定性指标。1)内聚性:是对模块功能强度的度量,即对一个模块内部各个元素(语句之间、程序段)间彼此结合的紧密程度的度量。2)耦合性:是模块间互相连接的紧密程度的度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。一个设计良好的软件系统应具有高内聚、低耦合的特征。在结构化程序设计中,模块划分的原则是:模块内具有高内聚度,模块间具有低耦合度。 软件设计有两个步骤:(1)概要设计(又称结构设计)是将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式;(2)详细设计是确定每个模块的实现算法和局部数据结构,通过对结构表示进行细化,得到软件的详细数据结构和算法。知识点5 结构化分析方法1.结构化分析(简称SA)方法是面向数据流进行需求分析的方法。2.结构化分析方法的常用工具:数据流图、数据字典、结构化语言、判定树、判定表 3.SA的基本步骤如下: 自顶向下对系统进行功能分解,画出分层的数据流图 由后向前定义系统的数据和加工,编制数据字典和加工说明 写出需求规格说明书(SRS) 4.数据流图(简称DFD-Data Flow Diagram)a图形元素b 数据流:是数据在系统内传播的路径。使用箭头代表数据的流向,数据名称标在箭头的边上 加工:输入数据经过加工变换产生输出。使用圆框代表加工 数据存储:指处理过程中存放各种数据。使用双杠(或单杠)表示数据文件或数据库。文件与加工之间用箭头线连接,单向表示只读或只写,双向表示可读可写 数据源点或终点:指软件系统外部环境中的实体(包括人员、组织或其他软件系统,统称为外部实体)。使用方框表示数据的源点和终点5.数据字典a数据字典就是用来定义数据流图中的各个成分的具体含义和详细的描述。它和数据流图共同构成了系统的逻辑模型,是需求规格说b明书的主要组成部分。是结构化分析方法的核心。 数据字典有四类条目:数据流、数据项、数据存储和基本加工。6.SD方法的中心任务就是把用DFD图表示的系统分析模型方便地转换为软件结构的设计模型。.知识点6软件测试的目的和准则1.软件测试的定义:软件测试就是使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。2. 软件测试的原则:1. 所有测试都应追溯到需求2. 严格执行测试计划,排除测试的随意性3. 避免由软件开发人员测试自己的程序4. 充分注意测试中的群集性现象5. 除了很小的程序外,“彻底”的穷举测试是不可能的6. 妥善保存测试计划、测试用例、出错统计和最终的分析报告,为维护提供方便3.软件测试的目的:软件测试是保证软件质量的重要手段,其主要过程涵盖了整个软件生命周期的过程,包括需求定义阶段的需求测试、编码阶段的单元测试、集成测试以及后期的确认测试、系统测试、验证软件是否合格、能否交付给用户使用。知识点7软件测试的方法和实施1.软件测试的分类:a从是否需要执行被测软件的角度,软件测试分为静态分析和动态测试 静态测试一般是指人工评审软件文档或程序,借以发现其中的错误,由于被评审的文档或程序不必运行,所以称为静态的。静态测试包括代码检查、静态结构分析、代码质量度量等。动态测试是指通过运行软件来检查软件中的动态行为和运行结果的正确性,也就是常说的上机测试。被测程序用白盒法设计测试用例常用以下几种技术: 语句覆盖 判定覆盖 条件覆盖 判定条件覆盖 条件组合覆盖 路径覆盖 测试数据b按照功能划分,动态测试又分为白盒测试和黑盒测试 白盒测试也称结构测试,它与程序内部结构相关,要利用程序结构的实现细节设计测试用例,它涉及程序风格、控制方法、源程序、数据库设计和编码细节。 黑盒测试 是测试者已经知道被测程序的功能,而对程序内部的逻辑结构和处理过程完全不用考虑,只是对它的每一个功能进行测试,将测试后的结果与期望的结果进行分析比较,检查程序的功能是否符合规格说明书的要求。用黑盒法设计测试用例常用以下几种技术: 等价类划分法 边界值分析法 错误推测法 因果图法 黑盒测试是在程序接口进行的测试2.软件测试的实施a 单元测试b 集成测试非增量组装方式是先分别对每个模块进行单元测试,再把所有模块按设计要求组装在一起进行测试,最终得到所要求的软件增量组装方式是把下一个要测试的模块同已经测试好的那些模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试c 确认测试d 系统测试知识点8程序的调试1.调试也称排错或纠错。2.程序调试的任务:诊断和改正程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工商银行个人客户经理业务题库及答案
- 2025年新能源出租车租赁合同续签及车辆挂靠服务协议
- 物理考研试题及答案
- 河北省保定市唐县一中2026届化学高三上期中质量跟踪监视模拟试题含解析
- 2025年文化旅游商业综合体场地使用权租赁合同
- 2025年人工智能领域增资入股及股权调整合同
- 2025年度智能网联汽车挂靠服务与自动驾驶技术研发合同
- 2025年新型养老院整体设计及施工一体化合同
- 2025智能语音助手小程序定制开发与语音识别服务合同
- 2025-2030中国旅游景区行业发展分析及投资风险预警与发展策略研究报告
- 2024沪教版初中英语新教材六年级上册单词表(默写表)
- 教学课件-饭店管理概论第二版
- 开学第一课开学立规矩课件21
- 《冲击波疗法》课件
- 基于模型的系统工程(MBSE)及MWORKS实践 课件 4 MBSE教材讲义 第四章 设计仿真一体化的MBSE方法
- 《中国世界遗产》课件
- 糖尿病眼底病变
- 2024年县特殊教育学校德育工作计划样本(2篇)
- 车辆gps管理制度
- 住宅小区园林景观绿化工程施工组织设计方案
- 中式烹调师高级技师考试模拟题与参考答案
评论
0/150
提交评论