福州大学14年软件工程复习材料归纳1-8章(共5页).docx





《福州大学14年软件工程复习材料归纳1-8章(共5页).docx》由会员分享,可在线阅读,更多相关《福州大学14年软件工程复习材料归纳1-8章(共5页).docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上第一章 软件和软件工程1. 定义软件:(1).指令的集合,通过执行这些指令可以满足预期的特征、功能和性能需求 (2).数据结构,使得程序可以合理利用信息 (3).软件描述信息,它以硬拷贝和虚拟形式存在,用来描述程序操作和使用2. 软硬件不同的特性:(1).软件是设计开发的,而不是传统意义上生产制造的 (2).软件不会磨损 (3).虽然整个工业向着基于构建的构造模式发展,然而大多数软件仍是根据实际的顾客定制的3. 软件应用领域:系统软件,应用软件,工程、科学软件,嵌入式软件,产品线软件,Web应用软件,人工智能软件4. 遗留软件原因:在几十年前开发,它们不断被修改以满足
2、上也需要和计算平台的变化。这类系统的繁衍使得大型机构十分头疼,因为它们的维护代价高昂且系统演化风险较高。5. 遗留软件演化原因:(1).软件需要进行适应性调整,从而可以满足新的计算环境或者技术需求 (2).软件必须升级以满足新的商业需求 (3).软件必须扩展使之具有与更多新的系统和数据库互操作能力 (4).软件构架必须进行改建使之能适应多样化的网络环境6. 软件工程定义:(1).将系统化的、规范的、可量化的方法应用于软件的开发、运行和维护,即将工程的方法应用于软件 (2).在(1)中所述方法的研究7. 软件过程是一种层次化的技术。根基:质量关注点;框架:过程;解决方法:方法;支持:工具8. 软
3、件过程框架活动:工作产品构建时所执行的一系列活动动作任务的集合:1.沟通 2.策划3.建模 4.构建 5.部署(可迭代应用)9. 利益相关者:可在项目成功中分享利益的人,包括业务经理、最终用户、软件工程师、支持人员等10. 软件工程实践的精髓:理解问题(沟通和分析),计划解决方案(建模和软件设计),实施计划(代码生成),检查结果(测试和质量保证)。11. 软件工程整体时间原则:存在价值,保持简洁,保持愿景,关注使用者,面向未来,计划复用,认真思考第二章 软件过程1. 过程模式:描述了软件工程工作中遇到的过程相关的问题、明确了问题环境并给出了针对该问题的一种或集中可证明的解决方案。即提供了一个模
4、板2. 几种惯用过程模型:a) 瀑布模型:经典生命周期,提出一种系统的顺序的软件开发方法,从用户需求规格说明开始,通过计划、建模、构建和部署的过程,最终提供一个完整的软件并提供持续的技术支持(以及V模型)缺点:1.实际项目很少遵守瀑布模型提出的顺序 2.客户难以描述清楚需求 3.发布等待时间长b) 增量过程模型:随着时间的推移,增量模型在每个阶段运用线性序列。每个线性序列以一种演化过程流声场增量类似的方法生产出一个软件的可交付增量。优点:人员需求少,规避技术风险等c) 演化过程模型:随着时间推移演化,是迭代的过程模型i. 原型开发:开始于沟通,与利益相关者会晤,定义软件整体目标,明确抑制需求,
5、迅速策划一个原型开发迭代并进行建模(快速设计)。之后由利益相关者反馈后细化需求不断调整。优点:快速产生可执行的程序缺点:1.利益相关者未察觉到软件粗糙往往陷入失败 2.使用这种手段使得不完美的选择成为系统组成部分避免:所有利益相关者必须承认原型是为定义需求服务的,实际的软件系统是以质量为第一目标开发的ii. 螺旋模型:结合了原型的迭代性质和瀑布模型的系统性和可控性特点,具有快速开发越来越完善软件版本的潜力。适用:开发大型系统和软件的理想方法。优点:降低风险,能在风险变为问题之前化解风险去欸但:以来大量的风险评估专家来保证成功d) 协同开发模型:允许软件团队表述任何模型中的迭代和并发元素适用:所
6、有类型的软件开发,提供精确的项目当前状态图。3. UML统一建模语言,包含了大量用于面向对象系统建模和开发的符号。4. 统一过程:a) 起始阶段:客户沟通和策划活动b) 细化阶段:沟通和通用过程模型的建模活动c) 构建阶段:与通用软件过程中的郭建活动相同d) 转换阶段:包括通用构建活动的后期阶段以及通用部署活动的第一部分。软件提交给最终用户进行Beta测试。e) 生产阶段:与通用过程的部署活动一致第三章 敏捷开发1. 敏捷:鼓励能使沟通更便利的团队结构和协作态度,强调可运行软件的快速交付而不那么看重中间产品。2. 极限编程(XP)五个要素:沟通、简明、反馈、鼓励和尊重3. 极限编程过程:策划,
7、设计,编码,测试4. 工业极限编程(IXP) 六个新实践:准备评估、项目社区、项目承租、测试驱动管理、回顾、持续学习5. 对XP的批评意见:需求易变,矛盾的客户需求,需求的非正规表示,正规设计的缺乏6. 其他敏捷模型a) 自适应软件开发ASD:思考-协作-学习(循环)-发布b) Scrum:需求、分析、设计、演化、交付c) 动态系统开发、Crystal、特征驱动开发、精益软件开发、敏捷建模、敏捷统一过程第四章 理解需求1. 需求工程:致力于不断理解需求的大量任务和技术。从软件过程的角度来看,需求工程是一个软件工程动作,开始于沟通活动并持续到建模活动。必须适应于过程、项目、产品和人员工作的需要2
8、. 质量功能部署:将客户要求转换成软件技术需求的质量管理技术。a) 正常需求:实现了这些需求将满足客户b) 期望需求:隐含在产品或系统中c) 令人兴奋的需求:实现这些特点会使用户特别满意3. 四种不同的交互模式:编程模式、测试模式、检测模式、故障检查模式(用例图)4. 需求模型的元素:a) 基于场景的元素:从用户的视角描述系统(活动图)b) 基于类的元素:一个参与者与系统交互时所操作的一组对象,被分成具有相似属性和共同行为的事物集合(类图)c) 行为元素:基于计算机系统的行为能够对所选择的设计和所采用的实现方法产生深远的影响(状态图)d) 面向数据流的元素:信息在基于计算机的系统中流动时会被转
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 福州大学 14 软件工程 复习 材料 归纳

限制150内