- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
软件工程实践者的研究方法(中文第七版)复习知识点总
结
统一过程模型的图、撰写用例规约、UML用例图、UML活动图、UML泳道图、UML状态图(P140)、UML顺序图(P141)、UML类图、
第一章
定义:软件工程是(1)将系统化、规范化、可量化的方法应用于软件的开1.IEEE发、运行和维护,即将工程化方法应用于软件;(2)在(1)中所述方法的研究。
软件与硬件的区别:本质逻辑与物理;软件是设计开发的,并非传统意义上生产制造的;软件不会磨损;大部分软件是按需定制的。
遗留软件的特点:生命周期长、业务关键性、质量差第二章
软件工程与软件过程的区别:软件过程是工作产品构建时所执行的一系列活动、动作和任务的集合。软件过程定义了软件工程化中采用的方法,但软件工程还包括该过程中应用的技术—技术方法和自动化工具。
软件工程的三个要素:过程、方法和工具。软件工程的目标(根基):质量关注点。
软件工程的通用过程框架定义了5个框架活动和8个普适性活动:五种框架活动:沟通、策划、建模、构建、部署。
8个普适性活动:项目跟踪控制、风险管理、质量保证、配置管理、技术评审、测量、可复用管理、工作产品的准备和生产。
课本21页软件过程框架图
每个框架活动由一系列软件工程动作构成;每个软件工程动作由任务集合来定义,这个任务集合明确了工作任务、工作产品、质量保证点、项目里程碑。(任务集的例子P22、P23)
过程流(P22图)描述了在执行顺序和执行时间上,如何组织框架中的活动、动作和任务。主要类型有:线性过程流、迭代过程流、演化过程流、并行过程流。6.过程模式模板(非重点)P24
过程评估与改进:以改进为目标,评估力求理解软件的当前状态。用于过程改进的CMMI标准评估方法提供了五部的过程评估模型:启动、诊断、建立、执行、学习。
用于组织内部过程改进的CMM评估
瀑布模型(经典生命周期):特点—文档驱动
优点:消除非结构化软件;降低软件的复杂度,促进软件开发工程化缺点:实际项目开发中很少遵守瀑布模型提出的顺序;客户难以清楚的描述真正的需求;客户要等到开发周期的晚期才能看到程序运行的测试版本;在线性过程的开始和结束,容易发生“阻塞状态”
适用于:需求确定、采用线性方式完成的工作中。瀑布模型适合于项目开发而不是产品开发。信息管理系统一般适合于用瀑布模型。因为这类系统业务功能较为明确,架构比较单一,技术难点较少。图书馆系统、销售管理系统都是。瀑布模型图和V模型图(P27)
增量模型融合了瀑布模型的线性方式和原型模型的迭代特征。P29图
当使用增量模型时,第一个增量往往是核心的产品,也就是说第一个增量实现了基本的需求,但很多补充的特征还没有发布。客户对每一个增量的使用和评估,都做为下一个增量发布的新特征和功能,这个过程在每一个增量发布后不断从复,直到产生了最终的完善产品。增量模型强调每一个增量均发布一个可操作
的产品。
优点:(1)人员分配灵活,刚开始不用投入大量人力资源,当核心产品很受欢迎时,可增加人力实现下一个增量。
当配备的人员不能在设定的期限内完成产品时,它提供了一种先推出核心产品的途径,这样就可以先发布部分功能给客户,对客户起到镇静剂的作用。
具有一定的市场。(4)可以规避技术风险。
缺点:至始至终开发者和客户纠缠在一起,直到完全版本出来。增量模型主要适用于当需要快速推出可运行的版本,而该版本不需要完整的功能时。
原型开发模型P29图
缺点:(1)没有考虑软件的整体质量和长期的可维护性。
大部分情况是不合适的操作算法被采用目的为了演示功能,不合适的开发工具被采用仅仅为了它的方便,还有不合适的操作系统被选择等等。
由于达不到质量要求产品可能被抛弃,而采用新的模型重新设计。优
点:(1)如果客户和开发者达成一致协议:原型被建造仅为了定义需求,之后就被抛弃或者部分抛弃,那么这种模型很合适了。
2)迷惑客户抢占市场,这是一个首选的模型。(
客户和开发者必须在开始时达成一致:原型被建造仅是为了定义需求,之后就被抛弃了(或至少部分被抛弃),实际的软件在充分考虑了质量和可维护性之后才被开发。
适用于:需求不明确时。例如,当客户有一个合理的需求,但对细节没有任务线索时,先开发一个原型。
11(螺旋模型P32图
优点:对于大型系统及软件的开发,这种模型是一个很好的方法。开发者和客户能够较好地对待和理解每一个演化级别上的风险。
缺点:(1)需要相当的风险分析评估的专门技术,且成功依赖于这种技术。(2)很明显一个大的没有被发现的风险问题,将会导致问题的发生,可能导致
演化的方法失去控制。
(3)对于要求固定预算的项目不适用。特点:风险驱动
12.协同模型(P33图)
适合于不同的工程团
文档评论(0)