软件工程导论第五版答案和ppt

上传人:xins****2008 文档编号:231430785 上传时间:2023-09-03 格式:PPT 页数:111 大小:961.50KB
收藏 版权申诉 举报 下载
软件工程导论第五版答案和ppt_第1页
第1页 / 共111页
软件工程导论第五版答案和ppt_第2页
第2页 / 共111页
软件工程导论第五版答案和ppt_第3页
第3页 / 共111页
资源描述:

《软件工程导论第五版答案和ppt》由会员分享,可在线阅读,更多相关《软件工程导论第五版答案和ppt(111页珍藏版)》请在装配图网上搜索。

1、第一章第一章 软件工程概述软件工程概述主要内容主要内容1 软件的发展与软件危机2 软件工程3 软件的生命周期4 软件过程及模型1.1 软件危机软件危机计算机软件发展的三个时期计算机软件发展的三个时期 1 1、程序设计阶段(程序设计阶段(6060年代中期之前)年代中期之前)-“个体个体化化”早期早期,写程序写程序,单个程序单个程序,一个人写一个人写-”-”个体生产个体生产方式方式”1 1)尚无软件概念,主要围绕硬件开发)尚无软件概念,主要围绕硬件开发2 2)规模小,工具简单)规模小,工具简单3 3)个性化)个性化 无文档无文档 2 2、程序系统阶段(程序系统阶段(6060年代中期年代中期-70-

2、70年代中期)年代中期)中期中期,几个人配合几个人配合,分工不是很明确分工不是很明确,不规范不规范-”-”生生产作坊产作坊”,产品软件产品软件沿用沿用-“个体化个体化”开发开发方法。方法。1 1)出现高级语言)出现高级语言 2 2)用操作系统统一进行资源管理)用操作系统统一进行资源管理3 3)从单一的计算到工程设计)从单一的计算到工程设计出现早期危机出现早期危机如如:人员变化人员变化,一个人负责一个人负责,后来走了后来走了,谁来接替工作谁来接替工作软件开发越来越走入困境软件开发越来越走入困境.例如例如:19631963年年,美国飞往火星的火箭爆炸美国飞往火星的火箭爆炸.FORTRANFORTR

3、ANDo 5 I=1,3Do 5 I=1,3写成写成 Do 5 I=1.3 Do 5 I=1.3 损失损失10001000万万19671967年年,前苏联前苏联”联盟一号联盟一号”宇宙飞船烧毁宇宙飞船烧毁,由于软由于软件忽略一个小数点件忽略一个小数点,在进入气层时打不开降落伞而在进入气层时打不开降落伞而烧毁。烧毁。失之毫厘失之毫厘,差之千里差之千里.3 3、软件工程阶段(软件工程阶段(7070年代中期之后)年代中期之后)软件开发成为一门新兴的工程学科软件开发成为一门新兴的工程学科软件工程。软件工程。3.软件工程时期(70年代至今)软件危机加剧,科学家着手研究软件工程学的理论,方法和时限等一系列

4、问题。独唱-小合唱-合唱-万人大合唱|简单程序 较复杂程序 软件Windows95有1000万行代码Windows2000有5000万行代码Windows2000开发人员结构项目经理 约250人开发人员 约1700人测试人员 3200人1.1.1 1.1.1 软件危机的介绍软件危机的介绍软件危机的概念 软件危机软件危机是指在计算机软件开发和维护是指在计算机软件开发和维护过程中的所遇到的一系列严重问题。这些问题绝不是不能正常运行的软件才具有,实际上,几乎所有软件有不同程度的问题。1.1.1 1.1.1 软件危机的介绍软件危机的介绍软件危机的主要表现7个方面:对软件开发成本和进度的估计不准确 产品

5、不符合用户的要求 软件质量不高、可靠性差 软件常常不可维护、错误难以改正 缺乏适当的文档资料 软件成本占系统总成本的比例逐年上升(见图)软件开发速度跟不上计算机发展速度 硬件软件1.1.2 软件危机产生的原因软件危机产生的原因客观:软件本身特点客观:软件本身特点1)软件不同于硬件。软件是一种逻辑实体,而不是具体的物理实体,具有高度的抽象性;软件的运行和维护阶段,没有传统意义上的机械磨损、老化问题。2)软件不同于一般的程序。软件是一个逻辑上复杂而规模上庞大的系统,涉及技术、管理等多方面的问题;1.1.2 软件危机产生的原因软件危机产生的原因主观:不正确的开发方法,落后的开发工具主观:不正确的开发

6、方法,落后的开发工具 1)忽视软件需求分析的重要性;对系统需求没有清楚和准确的认识就进入开发阶段。(见图)2)对软件与程序的概念不清;错误认为:软件开发=程序编写3)忽视对软件开发过程的管理。轻视软件维护。软件开发与维护的方法不正确:软件的定义(Boehm):软件是程序以及开发、使 用和维护程序需要的所有文档和数据。早中晚引入同一变动付出的代价随时间变化的趋势1.1.3 解决软件危机的途径 1、正确认识软件的概念。软件:程序、数据、文档程序:能够完成预定功能和性能的可执行的指令序列。数据:是程序能处理信息的数据结构文档:开发、使用和维护程序所需的图文资料2、消除“个性”软件工程研究目标:是以较

7、低的成本获取较高质量的软件产品。(少花钱多干事)体验软件工程各个阶段的主要工作,特别注意汲取教训,学会与他人合作,培养团队精神。(项目如造房子,管材料,管建房子,人力资源,电脑资源调配,跟客户沟通.每一个人具有螺丝钉的精神,不行,换同规格螺丝钉,把程序员的个性磨灭,变成标准配置,互相协作,互相监督,出现大量跳槽,三年之内跳槽,每跳一次工资会加高)3、用好的软件工具软件开发=焦油坑软件开发=焦油坑图是人月神话第一章的插图:拉布雷阿的焦油坑壁画(Mural of La Brea Tar Pits)。史前,没有别的场景比巨兽在焦油坑中垂死挣扎的场面更令人震撼。上帝见证着恐龙、猛犸象、剑齿虎在焦油中挣

8、扎。它们挣扎得越是猛烈,焦油纠缠得越紧,没有任何猛兽足够强壮或具有足够的技巧,能够挣脱束缚,它们最后都沉到了坑底。过去几十年的大型系统开发就犹如这样一个焦油坑。软件工程背景1968年由NATO(北大西洋公约组织)在德国召开的国际学术会议上,Feitz Bauer首先提出了“软件工程”概念。引入了现代软件的开发方法,希望用工程化的方法和原则来克服软件危机。1.2 软件工程软件危机-根源-解决途径:软件工程二、软件工程定义IEEE 1993年定义软件工程(Software Engineer):把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件。即:软件工程就是建立

9、和使用一套合理即:软件工程就是建立和使用一套合理的工程原理,从而经济地获得可靠的、的工程原理,从而经济地获得可靠的、可以在实际机器上高效运行的软件。可以在实际机器上高效运行的软件。有哪些文档标准?国际ISO国家GB行业标准IEEE(国际电工组织)1.2 软件工程三、软件工程本质特性:1.软件工程关注于大型程序的构造2.软件工程的中心课题是控制复杂性3.软件经常变化4.开发软件的效率非常重要5.和谐地合作是开发软件的关键6.软件必须有效地支持它的用户7.在软件工程领域中通常由具有一种文化背景的人替具有另一种文化背景的人创造产品1.2.2 软件工程的基本原理目前有100多条关于软件工程的准则,其中

10、最出名的是著名软件工程专家B.W.Boehm在1983年提出的7条基本原理。1.2.2 软件工程的基本原理1.用分阶段的生命周期计划严格管理在不成功的软件项目中有一半左右是由于计划不周造成,完善计划。2.坚持进行阶段评审大部分错误是在编码之前造成的,错误发现与改正得越晚,所需付出的代价越高。因此,在每个阶段都进行严格的评审,以便尽早发现在软件开发过程的错误1.2.2 软件工程的基本原理3.实行严格的产品控制在软件开发过程中不要随意改变需求,因为改变某项需求往往需要付出较高的代价,但在实践中用户往往会提出需求变更,因此需要采取科学的产品控制技术。对涉及基准配置的修改,必须经过严格的评审,通过后才

11、能实施修改。1.2.2 软件工程的基本原理4.采用现代程序设计技术可以提高软件开发和维护的效率,提高质量。实践表明:采用先进的技术既可提高软件开发的效率,又可提高软件维护的效率。80年代及之前:结构化分析、设计技术 90年代:面向对象分析、设计技术1.2.2 软件工程的基本原理5.结果应能清楚地审查 软件产品是看不见、摸不着的逻辑产品,开发 过程难以评价和管理。为了提高软件开发过程的可见性,根据软件开发项目的总目标,制定出相应的产品标准,使得所得的结果能够清楚地审查。6.开发小组的人员应该少而精开发小组人员的素质和数量是影响软件产品质量和开发效率的重要因素。开发小组人员数目的增加,使相互交流复

12、杂7.承认不断改进软件工程实践的必要性积极采纳新的软件技术,注意不断总结经验。1.2.3 软件工程方法学 软件工程包括技术和管理两方面的内容,是技术和管理相结合所形成的工程学科。软件工程方法学-软件生命周期全过程中使用的一整套技术方法的集合1.2.3 软件工程方法学软件工程方法学包含3要素:方法、工具、过程。方法(Method)为完成软件生命周期的一系列活动提供“怎么做”的技术工具(Tool)为“方法”提供一系列自动、半自动的软件支撑环境 过程(Process)为了获得高重量的软件所需要完成的一系列任务的框架,工作步骤。目前使用最广泛的软件工程方法学,分别传统方法学和面向对象方法学。1、传统方

13、法学特点:软件分析 总体设计 详细设计 面向过程的编码 测试 采用结构化技术来完成软件开发的各项任务,把软件生命周期的全过程依次划分为若干阶段,然后顺序完成每个阶段的任务。前一个阶段的完成是开始进行后一个阶段的前提,后一个任务的完成是前一阶段工作提出的解法更进一步具体化。每个阶段结束必须进行技术审查和管理复审。目前传统方法学仍然是使用十分广泛的软件工程方法学。强调自顶向下开发各个阶段 2、面向对象方法学特点:软件分析与对象抽取 对象详细设计 面向对象的编码 测试 当软件规模扩大,对软件的需求是模糊或随时间变化,传统方法学不适合。结构化范型要么面向行为,要么面向技术。面向对象方法把数据和行为看成

14、同等重要,是一种以数据为主线,把数据和对数据的操作紧密结合起来的方法。开发原则是模拟人的思维方式,使得开发方法尽可能接近人类认识世界、解决问题的方法。另一个重要的优点是促进软件重用,继承性和多态性进一步提高软件的重用性。面向对象方法学具有4个要点:把对象作为融合了数据及在数据上操作行为的统一软件构件。把所有对象划成类继承对象之间发送消息1.3 软件生命周期什么是软件生命周期?软件从提出需求开始直到该软件报废为止的整个时期。软件生命周期如何划分?软件生存周期包括软件定义、软件开发、软件使用与维护3个部分。其又分为8个步骤。软件定义问题定义可行性分析需求分析 软件开发系统设计详细设计编码测试 运行

15、时期软件维护1.3 软件生命周期1.问题定义回答的是“要解决的问题是什么?”,通过对客户的访问、调查,写出关于问题性质、工作目标和工作规模的书面报告。2.可行性研究“对上阶段的问题有行的通的解决办法?”是否值得继续进行下去。3.需求分析 不是具体的解决问题,确定“为了解决这个问题,目标系统必须做什么?”目标系统必须具备哪些功能。主要任务,是用正式文档准确地记录对目标系统的需求,文档称为规格说明书。4.总体设计(概要设计)1.3 软件生命周期“应该怎样实现目标系统”,应该设计出几种可能的方案。另一个工作,设计程序的体系结构,即确定程序由哪些模块组成及模块之间的关系。5.详细设计(模块设计)把解法

16、具体化,怎样具体的实现这个系统。设计出程序的详细规格说明,程序员可以根据它写出程序代码。6.编码和单元测试、通过各种必要的维护活动使系统持久地满足用户的需求。7.综合测试8.软件维护通过各种必要的维护活动使系统持久地满足1.4 软件过程什么是软件过程?定义:软件工程人员为了获得软件产品在软件工具支持下实施的一系列软件工程活动。软件开发过程应该明确定义以下元素:过程中所执行的活动及其顺序关系。每一个活动的内容和步骤。团队人员的工作和职责。软件过程模型软件生命周期的每一阶段都有明确的任务,各个阶段的活动如何衔接,开发过程中采用什么样的策略,应遵守什么样的规定和制约,将这些活动框架(忽略不必要的细节

17、)用一种模型表示出来,称为软件过程模型(或软件开发模型或软件生命周期模型)。也就是说,软件过程模型是软件开发全部过程、活动和任务的结构框架。软件过程模型瀑布模型 快速原型模型 增量模型 螺旋模型 喷泉模型 形式化方法模型 基于构件的开发模型1.4.1 瀑布模型特点:1.阶段间具有顺序性和依赖性2.推迟实现的观点3.质量保证的观点 传统瀑布模型存在什么问题?瀑布模型传统过于理想化,实际不可能不出错,实际瀑布模型带“反馈环”。学过控制理论的人都知道一个最简单的道理,“没有反馈(feedback),就没有控制”。反馈的基本原理就是把输出反馈给输入,如果偏差很大,就得调整控制过程,最终使得输出满足输入

18、的需求。总体上看,软件开发的输入是客户,输出是软件产品,控制过程是软件项目的开发过程。如果只是一次性地把软件产品交付给客户,其过程是线形的:“客户-项目实施-客户”这样一个过程,风险很大,所以应该与客户协作,多进行几次这样的过程,最终交付成功得产品。总之:瀑布模型适合于用户需求明确、完整、无重大变化的软件项目开发。瀑布模型的成功在很大程度上是由于它是一种文档驱动的模型。优点:每一个阶段必须提交文档,必须验证.缺点:完全依赖书面的规格说明,很可能导致最终开发的软件不能真正满足用户的需求.1.4.2 快速原型模型基本思想软件开发人员根据用户提出的软件基本需求快速开发一个原型,以便向用户展示软件系统

19、应有的部分或全部的功能和性能,在征求用户对原型的评价意见后,进一步使需求精确化、完全化,并据此改进、完善原型,如此迭代,直到软件开发人员和用户都确认软件系统的需求并达成一致的理解为止。他们很难陈述所有的需求和知识。他们想要的许多细节只能在开发过程中逐步展现出来。细节对于他们可能过于复杂。当他们看到了产品的开发,他们将可能会改变初衷。在用在用户不能不能给出完整、准确的出完整、准确的需求需求说明明,或者开,或者开发者不能确者不能确定定算法算法的有效性、的有效性、操作系操作系统的的适适应性性或或人机交互人机交互的形式等的形式等许多情况下,可以根据用多情况下,可以根据用户的一的一组基本需求,快速建造一

20、个原基本需求,快速建造一个原型(可运行的型(可运行的软件),然后件),然后进行行评估,估,进一步精化、一步精化、调整原整原型,使其型,使其满足用足用户的要求,也的要求,也使开使开发者者对将要做的事情有更将要做的事情有更好的理解。好的理解。再来看一个例子,比如某人想盖一栋房子,他想使用环保材料,当开发商给出房子的草图、价格预算,交给他时,他可能会改变主意。在建造房子的过程中,他的一些想法会逐渐明朗化。软件开发是也生产性的行业,他的产品是交付给客户的软件。类比上面的例子,软件开发更接近于建筑行业,需求会变动,更例外的一点,软件开发的工作量和时间估计比建筑生产更具备不确定性。这种不确定性来自于需求变

21、动、资金支持、技术风险、人员流动、质量控制、功能范围的确定等。1.4.2 快速原型模型特点 通过迭代的过程快速建立与用户需求一致的原型 原型建立以后的阶段之间不带反馈环 软件产品开发过程基本是线性顺序进行的优点 克服了瀑布模型的缺点,减少了不明确需求所带来的开发风险缺点 快速建立起来的系统结构加上连续的修改可能导致产品质量低下 开发人员需要掌握建立快速原型的技术和工具适用范围 小型或者中等规模交互软件 大型系统的部分开发,例如:用户界面 生命周期较短1.4.3 增量模型增量模型是一种非整体开发的模型,是一种进化式的开发过程。第一个构件往往实现软件的基本提供最核心的功能。基本思想 在增量模型中,

22、软件被作为一系列的增量构件来设计、实现、集成和测试,从而适应用户逐步细化需求的形成过程。该模型有较强的灵活性,适合于软件需求不明确的软件项目。1.4.3 增量模型举例使用增量模型开发字处理软件,第一构件:文件管理、编辑和文档生成功能。第二构件提供更完善的编辑和文档生成功能。第三构件实现拼写和语法检查功。第四构件完成高级页面排版功能。优点:1 逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给客户带来的冲击。2 重要功能被首先交付,可以获得最多的测试缺点1、需要软件设计开放式的体系结构,所以增量的有效集成比较困难2、容易退化为边学边做,使软件过程的控制失去整体

23、性 3、开开发发人人员员既要把既要把软软件系件系统统看作整体。看作整体。又要看成可独立的构件,相互矛盾。又要看成可独立的构件,相互矛盾。4、多个构件并行开多个构件并行开发发,具有无法集成的,具有无法集成的风险风险。1.4.4 螺旋模型大型软件开发面临的重要问题:软件风险产品交付给用户后,用户不满意;开发进度落后,开发成本超出预算产品完成前关键的开发人员跳槽在产品投入市场前,竞争对手发布了一个功能相近,价格更低的软件。螺旋模型的基本思想是,使用原型方法,在某一个阶段增加风险分析过程的快速原型模型。螺旋模型的基本思想螺旋模型的基本思想目的目的是是降低降低风险风险。1.4.4 螺旋模型可以看到:螺旋

24、回线 每一个回线表示开发过程的一个阶段 四个步骤1确定该阶段目标、完成这些目标的可选方案及其约束条件2从风险角度分析方案的开发策略,努力排除各种潜在风险,在需求适当的情况下可能需要建造原型系统3 软件开发和验证工作4 评价该阶段的结果,并规划下一个开发阶段螺旋模型的特点螺旋模型的特点风险驱动风险驱动,需要相当丰富的,需要相当丰富的风险风险评评估估经验经验和和专门专门知知识识,否,否则风险则风险更大更大主要适用于内部开主要适用于内部开发发的大的大规规模模软软件件项项目目,随着迭代次数的增加,随着迭代次数的增加,工作量加大,工作量加大,软软件开件开发发成本增加成本增加1.4.5 喷泉模型喷泉模型思

25、想使用面向对象方法学开发软件时,工作重点应该放在生命周期中的分析阶段。面向对象问题中,“对象”,在整个开发过程中得到不断充实和扩充。由于在整个开发过程都是用同一“概念”,因此,整个开发过程很容易实现各个开发步骤的多次反复迭代,达到认识的逐步深化。对生命周期各阶段的区分自然不重要。喷泉模型体现了面向对象软件开发过程迭代和无缝的特性。1.4.5 喷泉模型其特点如下:.开发过程有分析、系统设计、软件设计和实现4个阶段。.各阶段相互重叠,它反映了软件过程并行性的特点。.以分析为基础,资源消耗成塔型。.反映了软件过程迭代性的自然特性。.整个过程是一个迭代的逐步提炼的过程。喷泉模型优点 具有更多的增量和迭

26、代性质,生存期的各个阶段可以相互重迭和多次反复 采用面向对象方法实现的这种在概念上和表示方法上的一致性,保证了开发活动间的无缝过渡。喷泉模型缺点 面向对象要求经常对开发活动进行迭代,这就有可能造成在使用喷泉模型的开发过程过于无序。1.4.6 Rational统一过程Rational软件公司由Mike Devlin和Paul Levy于1981年创立,目的是改进与软件开发相关的流程。在这个目标下,统一建模语言(UML)、Rational统一软件开发过程(RUP)以及大量在当今软件工程领域公认的最佳工具应运而生。1.4.6 Rational统一过程2003年,IBM以21亿美元完成了对Ration

27、al软件公司的收购,Rational软件正式列入IBM旗下,成为IBM软件集团的第五大品牌。在构建和业务发展息息相关的应用程序过程中,Rational软件所具备的高端开发工具和方法论是IBM收购Rational的关键原因。如今,IBM有2,200多名Rational软件开发人员,全球已经有30,000多名客户购买或续订了Rational软件开发工具。1.4.6 Rational统一过程Rational统一过程(RUP)是Rational软件公司创造的软件工程方法。RUP描述了如何有效地利用商业的可靠的方法开发和部署软件,是一种重量级过程(也被称作厚方法学),因此特别适用于大型软件团队开发大型项

28、目。在软件工程领域,与RUP齐名的软件方法还有:净室软件工程(重量级)极限编程(extreme programming)基本思想RUP强调采用迭代和检查的方式来开发软件,整个项目开发过程由多个迭代过程组成。在每次迭代中只考虑系统的一部分需求,针对这部分需求进行分析、设计、实现、测试和部署等工作,每次迭代都是在系统已完成部分的基础上进行的,每次给系统能够增加一些新的功能,如此循环往复地进行下去,直至完成最终项目。1.4.6 Rational统一过程Rational软件公司总结6条经验,被称为“最佳实践”1.最佳实践1)迭代式开发2)管理需求3)使用基于构件的体系结构4)可视化建模5)验证软件质量

29、6)控制软件变更2.RUP软件开发生命周期是一个二维的生命周期模型。1)核心工作流前6个为核心过程工作流程,后3个为核心支持工作流程。业务建模需求分析与设计实现测试部署配置与变更管理项目管理环境2)工作阶段初始阶段精化阶段构件阶段移交阶段在开始段,识别、定义、调度、和安排所有的细节活动都是不太可能的。通过构建反馈周期,可以推动自适应步骤。客户或者用户不可能明确知道他们到底要什么。1.4.7 敏捷过程与极限编程敏捷过程是一种新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。由17位著名的软件专家,并2001初成立了敏捷联盟,联合起草。他们通过亲身实践以及帮助他人实践,揭示更好的软件开

30、发方法。主要思想:相对于“非敏捷”,更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。1.4.7 敏捷过程与极限编程一种以人为核心、迭代、循序渐进的开发方法。1.敏捷过程4个简单的价值观1)个体和交互胜过过程和工具2)可以工作的软件胜过面面俱到的文档3)客户合作胜过合同谈判4)响应变化胜过遵循计划(随时应对变化 优先于循规蹈矩)2)极限编程(ExtremeProgramming,简称XP)极限编程通过引入基本价值、原则、方法等概念把好的开发实

31、践运用到极致。一个应用了极限编程方法的系统开发项目在应对需求变更时将显得更为灵活。极限编程有效实践1 客户作为团队的成员2 使用用户素材3 短交付周期4 验收测试5 结对编程6 测试驱动开发7 集体所有开发人员和客户之间的交互是有益的。因此,一个极限编程的小组从理论上要求需要一个软件用户在身边,这个用户尽可能在各种问题出现的时候马上就能回答(实际工作中,这个角色是由客户代理商完成的).代码评审是好的。因此,极限编程的程序设计师以两人搭档的方式工作。他们共享一个屏幕和键盘,增加了队员之间的交流,也让代码在一被写出的时候就被人评审了。测试代码是好的。因此,在极限编程中,测试用例在实际代码之前就被写

32、出来了。代码只有在通过测试的时候才被认为完成了。8 持续集成9 可持续的开发速度10 开发的工作空间11 及时调整计划12 简单设计13 重构14 使用隐喻简单的代码更容易实现。这样或多或少降低了代码的复杂性和重复性。如果简单的代码是好实现的,那么把变得复杂的代码改写成简单的。极限编程的整体开发过程极限编程的迭代开发过程1.4.8 微软过程 微软过程准则(11条)1 项目计划兼顾未来的不确定因素2 用有效的风险管理来减少不确定因素的影响3 经常测试过渡版本4 采用快速循环,递进的开发过程5 用创造性工作来平衡产品特性和产品成本6 项目进度表应该具有较高稳定性和权威性7 使用小型项目并发完成开发工作8 项目早期把软件配置项基线化,项目后期冻结产品9 使用原型验证,对项目早期论证11 把零缺陷作为追求的目标12 里程碑评审的目的是改进工作,切记相互指责。2.微软软件生命周期各个阶段工作1、规划阶段2、设计阶段3、开发阶段4、稳定阶段5、发布阶段3.微软过程模型本章小结一、计算机软件工程学概述 软件开发的错误观念软件危机软件工程二、软件工程的基本原理和方法 软件工程方法学生命周期方法学、面向对象 的方法学三、软件的生命周期 软件定义、软件开发、软件维护 四、软件过程模型瀑布模型、快速原型模型、增量模型、螺旋模型

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!