(软件工程知识点总结.docx

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(软件工程知识点总结

7.1软件的定义及特点软件( Software)是计算机系统中与硬件相互依存的另一部分,它是包括程序(Program) ,数据(Data)及其相关文档( Document)的完整集合。三个特点:(1)软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性;(2)软件的生产与硬件不同,在它的开发过程中没有明显的制造过程;(3)在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。7.2软件危机及其表现软件危机(softward crisis)是指在计算机软件的开发和维护中所遇到的一系列严重问题。这些问题绝不仅仅是“不能正常运行的”软件才具有,实际上几乎所有软件都不同程度地存在这些问题。具体地说,软件危机主要有下述一些表现。 (1)对软件开发成本和进度的估计常常很不准确。  (2)用户对“已完成的”软件系统不满意的现象经常发生。  (3)软件产品的质量往往靠不住。 (4)软件常常是不可维护的。 (5)软件通常没有适当的文档资料。  (6)软件成本在计算机系统总成本中所占的比例逐年上升。7.3软件工程及三要素软件工程:软件工程是采用工程的概念、原理、技术和方法来指导软件开发和维护的工程学科,以工程化的原理和方法来解决软件问题。软件工程的特性:(1) 软件工程关注于大型程序的构造(2) 软件工程的中心课题是控制复杂性(3) 软件经常变化(4) 开发软件的效率非常重要(5) 和谐地合作是开发软件的关键(6) 软件必须有效地支持它的用户(7) 在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人软件工程方法学包含3个要素:方法、工具和过程。7.4软件生命周期软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和 测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审 查、形成文档以供交流或备查,以提高软件的质量。 每个阶段的任务如下问题定义阶段:该阶段的关键任务是要明确:要解决的问题是什么?可性行研究阶段:该阶段的关键任务是要明确:做不做?需求分析阶段:该阶段的关键任务是要明确:做什么?概要设计(总体设计)阶段:该阶段的关键任务是要明确:怎么做?详细设计阶段:该阶段的关键任务是要明确:具体做法。编码和单元测试阶段:该阶段的关键任务是:编码和单元测试。综合测试阶段:该阶段的关键任务是通过各种类型的测试(及调试)使软件达到预定的要求。软件维护阶段:该阶段的关键任务是通过各种必要的维护活动使系统持久地满足用户的要求。7.4.1瀑布模型瀑布模型有以下优点 1)为项目提供了按阶段划分的检查点。2)当前一阶段完成后,您只需要去关注后续阶段。3)可在迭代模型中应用瀑布模型。4)它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。瀑布模型适合于用户需求明确、完整、无重大变化的软件项目开发。瀑布模型的成功在很大程度上是由于它基本上是一种文档驱动的模型。瀑布模型有以下缺点 1)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。2)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。4)瀑布模型的突出缺点是不适应用户需求的变化。“瀑布模型是由文档驱动的”这个事实也是它的一个主要缺点。实际项目很少按照该模型给出的顺序进行,用户常常难以清楚地给出所有需求,用户必须有耐心,等到系统开发完成。7.4.2 原型模型—快速原型模型在用户不能给出完整、准确的需求说明,或者开发者不能确定算法的有效性、操作系统的适应性或人机交互的形式等许多情况下,可以根据用户的一组基本需求,快速建造一个原型(可运行的软件),然后进行评估,进一步精化、调整原型,使其满足用户的要求,也使开发者对将要做的事情有更好的理解。优点:(1)开发人员和用户在“原型”上达成一致。这样一来,可以减少设计中的错误和开发中的风险,也减少了对用户培训的时间,而提高了系统的实用、正确性以及用户的满意程度。(2)缩短了开发周期,加快了工程进度。(3)降低成本。尽早发现需求,揭示风险缺点:⑴为了使原型尽快的工作,没有考虑软件的总体质量和长期的可维护性。⑵为了演示,可能采用不合适的操作系统、编程语言、效率低的算法,这些不理想的选择成了系统的组成部分。⑶开发过程不便于管理。7.4.3螺旋模型螺旋模型的优点:(1)对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标(2)减少了过多测试或测试不足(3)维护和开发之间并没有本质

文档评论(0)

xinghua3aa + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档