自考软件工程笔记总结 .docx
《自考软件工程笔记总结 .docx》由会员分享,可在线阅读,更多相关《自考软件工程笔记总结 .docx(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品名师归纳总结第一章绪论1.1 软件工程的产生1.1.1 软件的特点软件的定义 :运算机程序及其说明程序的各种文档软件的特性 :(1) 软件是一种规律产品,它与物质产品有很大的区分(2) 软件产品的生产主要是研制,软件产品的成本主要表达在软件的开发和研制上,软件开发研制完成后,通过复制就产生了大量软 件产品(3) 软件产品不会用坏,不存在磨损、消耗问题(4) 软件产品的生产主要是脑力劳动,仍未完全摆脱手工开发方式, 大部分产品是“定做”的(5) 软件费用不断增加,软件成本相当昂贵1.1.2 软件生产的进展1) 程序设计时代 (年年)这个阶段的生产方式是个体手工劳动,使用的工具是机器语言、汇编
2、语言。开发方法是追求编程技巧,追求程序运行效率程序难读、难懂、难修改硬件特点是价格贵、储备容量小、运行牢靠性差软件特点是只有程序、程序设计概念,不重视程序设计方法2) 程序系统时代 (年年)这个阶段的生产方式是作坊式的小集团合作生产,生产工具是高级语言开发方式仍然靠个人技巧,但开头提出结构化方法硬件特点是速度、容量、工作牢靠性有明显提高,价格降低,销售有爆炸性增长软件特点是程序员数量猛增,大量其他行业人员进入这个行业,由于缺乏训练,因而开发人员素养差这时已意识到软件开发的重要性,但开发技术没有新的突破,大量软件开发的需求已提出,但开发人员的素养和落后的开发技术不适应规模大、结构复杂的软件开发,
3、产生了尖锐的冲突,导致了软件危机的产生3) 软件工程时代 (年至现在)这阶段的生产方式是工程化的生产,使用数据库、开发工具、开发环境、网络、分布式、面对对象技术来开发软件硬件特点是向超高速、大容量、微型化以及网络化方向进展软件特点是开发技术有很大进步,但是未能获得突破性进展,软件价格不断上升,没有完全摆脱软件危机1.1.3 软件危机1. 软件危机的产生软件进展到其次阶段末期,软件开发技术的进步跟不上硬件进展的速度2. 软件危机的表现可编辑资料 - - - 欢迎下载精品名师归纳总结(1) 经费预算常常突破,完成时间一再拖延(2) 开发的软件不能满意用户要求(3) 开发的软件可保护性差(4) 开发
4、的软件牢靠性差3. 软件危机的缘由(1) 软件的规模越来越大,结构越来越复杂(2) 软件开发治理困难而复杂(3) 软件开发费用不断增加(4) 软件开发技术落后(5) 生产方式落后(6) 开发工具落后1.1.4 软件工程年北大西洋公约组织的工作会议上第一提出“软件工程”的概念,要用工程化的思想来开发软件1. 软件工程定义用科学学问和技术原理来定义、开发、保护软件的一门科学2. 软件工程的性质软件工程是一门综合性的交叉学科,涉及运算机科学、工程科学、治理科学、数学等领域运算机科学中的讨论成果均可用于软件工程,但运算机科学着重于原理和理论,而软件工程着重于如何建造一个软件系统软件工程要用工程科学中的
5、观点来进行费用估算、制定进度、制定方案和方案软件工程要用治理科学的方法和原理进行软件的生产和治理软禁工程要用数学的方法建立软件开发中各个种模型和各种算法3. 软件工程目标目的是胜利的建造一个大型软件系统所谓胜利,是要达到付出较低的开发成本达到要求的软件功能取得较好的软件性能开发的软件易于移植需要较低的保护费用能按时完成开发任务,准时交付使用开发的软件牢靠性高4. 软件工程内容主要是软件开发技术和软件治理两个方面软件开发技术中主要讨论软件开发方法、软件开发过程、软件开发工具和环境软件开发治理中主要讨论软件治理学、软件经济学、软件心理学5. 软件工程面临的问题a) 软件费用b) 软件牢靠性c) 软
6、件保护可编辑资料 - - - 欢迎下载精品名师归纳总结d) 软件生产率e) 软件重用软件工程过程和软件生存周期软件工程过程目的是为各种人员供应一个公共的框架,以便用相同的语言进行沟通(1) 猎取过程(2) 供应过程(3) 开发过程(4) 操作过程(5) 保护过程(6) 治理过程(7) 支持过程软件生存周期指一个软件从提出开发要求开头直到该软件报废为止的整个过程(1) 可行性分析和项目开发方案必需要回答的问题是“要解决的问题是什么”,有可行的解决方法吗, 假如有需要多少费用多少资源时间明确项目性质明确项目目标明确项目规模确定该问题有没有可行的解决方法指定项目开发方案(2) 需求分析确定软件系统必
7、需做什么确定软件系统必需具备哪些功能(3) 概要设计把确定的各项功能需求转换成需要的体系结构设计软件的结构,明确该结构的模块组成(4) 具体设计为每个模块完成的功能进行具体描述,把功能描述转变为精确的、结构化的过程描述(5) 编码把每个模块的掌握结构转换成运算机可接受的程序代码,即写成以某种特定程序设计语言表示的“原程序清单”(6) 测试保证软件质量的重要手段(7) 保护1.3 软件生存周期模型、方法和工具1.3.1 软件生存周期模型描述软件开发过程中各种活动如何执行的模型1. 瀑布模型将软件生存周期各个活动规定为依线性次序连接的如干阶段的模型 包括全部的软件生存周期环节,规定了由前至后、相互
8、连接的固定次序可编辑资料 - - - 欢迎下载精品名师归纳总结缺点:抱负的线性开发模式,缺乏敏捷性开发过程中用户看不到软件是什么样子,造成开发方向错误2. 增量模型一种非整体开发的模型,软件在该模型中是“逐步”开发出来的,开发一部分展现一部分,可以及早发觉问题。或者开发一个“原型”软件,完成部分主要功能再逐步完善具有较大的敏捷性,适合于软件需求不明确、设计方案有肯定风险的软件项目缺点:对于复杂的大型软件,开发一个原型往往达不到要求3. 螺旋模型将瀑布模型与增量模型结合起来,加入了两种模型均忽视了的风险分析开发过程分为几个螺旋周期,每个螺旋周期大致和瀑布模型相符合每个周期内分四个工作不:制定方案
9、、风险分析、开发实施、用户评估适合于大型软件的开发缺点:需要有相当丰富的风险评估体会和特的学问,使得应用受到肯定限制4. 喷泉模型一种以用户需求为动力,以对象作为驱动的模型,适合于面对对象的开发方法克服了瀑布模型不支持软件重用和多想开发活动集成的局限性是开发过程具有迭代性和无间隙性5. 基于学问的模型又称只能模型,它把瀑布模型和专家系统结合在一起仍处于讨论试验阶段,仍未达到有用阶段6. 变换模型适合于形式化开发的模型1.3.2 软件开发方法使用早已定义好的技术集和符号表示习惯来组织软件生产的过程1. 结构化方法由结构化分析,结构化设计、结构化程序设计构成,是一种面对数据流的开发方法。简洁有用,
10、应用较广,技术成熟2. 方法面对数据结构的开发方法3. 维也纳开发方法()一种形式化的开发方法,软件需求用严格的形式语言描述,然后把描述模型逐步变换成目标系统4. 面对对象的开发方法岁月主流基本动身点是尽可能根据人类熟悉世界的方法和思维方式来分析和解决问题可编辑资料 - - - 欢迎下载精品名师归纳总结包括面对对象分析、面对对象设计、面对对象实现年推出统一建模语言,是面对对象的标准建模语言1.3.3 软件开发工具1. 软件工具的重要性为了支持软件人员开发和保护活动而使用的软件项目估算工具、需求分析工具、编码工具、测试工具、保护工具等2. 工具箱将各种软件工具简洁组合起来就构成工具箱工具箱的工具
11、界面不同意,工具内部无联系,工具切换由人工操作3. 软件开发环境工具系统的整体化及集成化,使之形成完整的软件开发环境使软件工具支持整个生存周期4. 运算机帮助软件工程新的软件工具目的是实现软件生存周期各个环节的自动化,主要用于软件的分析和设计,使用这些工具开发人员可以以对话的方式建立各种软件系统运算机帮助软件工程可以简洁的定义为软件开发的自动化, 结构化方法可以用于瀑布模型、增量模型、螺旋模型进行开发方法可以用于瀑布模型、增量模型维也纳方法只能用于变换模型进行开发其次章软件可行性讨论与项目开发方案可行性讨论目的是用最小的代价在尽可能短的时间内去确定该项目是否能够开发,是否值得开发在较高层次上以
12、较抽象的方式进行需求分析和设计过程可行性讨论的任务进行概要的分析讨论,初步确定项目的规模和目标,确定项目的约束和限制,列举出来。 然后进行简要的需求分析, 抽象出项目的规律结构, 建立规律模型, 从规律模型动身经过压缩的设计, 探究出如干种可供挑选的解决方法, 对每种解决方法都要讨论它的可行性可以从以下三个方面分析讨论每种解决方法的可行性1. 技术可行性、技术可行性一般要考虑的情形包括(1) 开发的风险(2) 资源的有效性(3) 技术(4) 开发人员在评估技术可行性时,一旦估量错误, 将会显现灾难性后果2. 经济可行性进行开发成本的估算以及明白取得效益的评估,确定要开发的项目是否值得投资开发3
13、. 社会可行性要开发的项目时候存在任何侵害、阻碍等责任问题,要开发项目的运行方可编辑资料 - - - 欢迎下载精品名师归纳总结式在用户组织内是否行得通,现有治理制度、人员素养、操作方式是否可行可行性讨论的具体步骤.确定项目规模和目标.讨论正在运行的系统.建立新系统的高层规律模型使用建立规律模型的工具数据流图和数据字典描述数据在系统中的流淌和处理情形。 不是需求分析阶段, 不是完整具体的描述, 只是概括的描述高层的数据处理和流淌.导出和评判各种方案.举荐可行的方案.编写可行性讨论报告 可行性讨论报告的主要内容引言可行性讨论前提对象有系统的分析所建议系统的技术可行性分析所建议系统的经济可行性分析社
14、会因素可行性分析其他可供挑选方案结论看法系统流程图系统流程图的作用用图形符号来表示系统中的各个元素。表达了系统中各个元素之间的心理流淌的情形系统流程图的符号系统流程图的例子可编辑资料 - - - 欢迎下载精品名师归纳总结成本效益分析目的是从经济角度评判开发一个新的软件项目是否可行估算将要开发的系统的开发成本,与可能取得的效益进行比较和权衡效益分有形效益和无形效益有形效益的分析1. 货币的时间价值2. 投资回收期可编辑资料 - - - 欢迎下载精品名师归纳总结3. 纯收入 项目开发方案项目概述实施方案人员组织及分工交付期限第三章软件需求分析需求分析的任务 需求分析的概念开发人员要精确的懂得用户的
15、要求,进行细致的调查分析, 将用户非形式的需求陈述转化为完整的需求定义,再由需求定义装换到相应的形式功能规约(需求规格说明)的过程需求分析的难点:(1) 问题的复杂性(2) 沟通障碍(3) 不完备性和不一样性(4) 需求易变性软件需求分析与说明的方法适用的基本原就:(1) 必需能够表达和懂得问题的数据域和功能域(2) 可以把一个复杂问题按功能进行分解并可逐层细化(3) 建模结构化分析方法和面对对象分析方法都遵循以上原就需求分析的基本任务要精确的定义新系统的目标,为了满意用户的需要,回答系统必需“做什么”的问题。 可行性讨论和软件方案阶段对这个问题的回答是概括的、粗略的本阶段主要进行以下几个方面
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自考软件工程笔记总结 自考 软件工程 笔记 总结
限制150内