计算机软件技术基础 杨建军 第6章 软件的开发流程新.pptVIP

计算机软件技术基础 杨建军 第6章 软件的开发流程新.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 面向对象程序设计 主讲教师: 杨建军 教学重点 软件的需求定义 软件系统设计 软件系统实现 软件测试 软件维护 6.1软件工程过程和软件的生命周期 软件工程过程是指为获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动。不同的组织有不同的软件过程,这些活动可以重叠,执行时也可以有迭代。 软件生存周期是指软件产品从考虑其概念开始到该软件产品交付使用,直至最终淘汰为止的整个过程,一般包括计划、分析、设计、实现、测试、集成、交付、维护等阶段。 6.2软件的需求定义 6.2.1系统可行性分析 可行性研究的任务是系统分析员进行概要分析研究,初步确定项目的规模、目标、约束和限制,然后进行简要的需求分析,抽象出项目的逻辑结构,建立逻辑模型。从逻辑模型出发,经过快速原型设计,探索出若干种可供选择的解决方法,对各种解决方法都要研究它的可行性。主要从以下几个方面考虑: (1)技术可行性。一般考虑的情况包括:开发的风险即设计出的系统能否达到要求的功能和性能、资源的有效性、相关技术的发展是否支持。 (2)经济可行性。进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资。 (3)社会可行性。要开发的项目是否存在任何侵权问题,运行方式在拥护组织内是否可行,现有管理制度、人员素质、操作方式是否可行。 (4)提出并评价实现的各种开发方案,选出最适合该项目的切实可行的方案。 6.2.2 软件开发计划 软件开发计划的内容 在进行了可行性研究之后,开发软件系统可行的话,接着要制定软件的开发计划。软件项目开发包括如下几个方面: ①项目概述:说明项目的各项主要工作;说明软件的功能、性能;为完成项目应具有的条件;用户及合同承包者承担的工作完成的期限及其他条件限制;应交付的程序名称;所使用的语言及存储形式;应交付的文档。 ②实施计划:说明任务的划分,各个任务的责任人,项目开发的进度,项目的预算,各阶段的费用支出,各阶段应完成的任务,用图表说明每项任务的开始和完成时间。 ③人员组织及分工:所需人员类型、数量、组成结构。 ④交付期限:最后完工日期。 归纳起来,关键问题就是软件的资源计划、成本预算和进度安排。 6.2.3 软件的需求分析 软件需求分析工作是软件生存期中重要的一步,也是决定性的一步。通过软件需求分析,才能把软件功能和性能的总体概念描述为具体的软件需求规格说明,从而奠定软件开发的基础。软件需求分析工作也是一个不断认识和逐步细化的过程。整个过程将软件计划阶段所确定的软件范围(工作域),逐步细化到可详细定义的程度,并分析出各种不同的软件元素,然后为这些元素找到可行的解决方法。 制定软件的需求规格说明不只是软件开发人员的事,用户也起着至关重要的作用。用户必须对软件功能和性能提出初步要求,并澄清一些模糊概念。而软件分析人员则要认真了解用户的要求,细致地进行调查分析,把用户“做什么”的要求最终转换成一个完全的、精细的软件逻辑模型并写出软件的需求规格说明,准确地表达用户的要求。 6.3软件系统设计 6.3.1软件概要设计概述 问题定义、可行性研究和需求分析构成了软件计划阶段,在这个阶段确定了系统的开发目标和系统需求规格,而软件开发阶段的任务是回答系统如何实现的问题。软件开发阶段包括概要设计、详细设计、编码和测试等。 概要设计阶段需要编写的文档有:概要设计说明书,初步的用户操作手册。 概要设计的主要目标是把需求转换为软件的体系结构,而软件体系结构包括两部分:程序的模块结构和数据结构。 6.3.2软件设计的基本原则 在软件设计中,要遵循一些基本的软件设计概念与原则。这些概念与原则是经过多年的实践发展和总结出来的,它已成为软件设计人员完成复杂设计问题的基础。 1. 模块化与模块独立性 模块是数据说明、可执行语句等程序对象的集合。模块可以被单独命名,而且可通过名字来访问,例如,过程、函数、子程序、宏等等都可作为模块。在面向对象的方法学中,对象和对象内的方法也是模块。在软件的体系结构中,模块是可组合、分解和更换的单元。模块是构成程序的基本构件。 模块独立性是软件系统中每个模块只涉及软件要求的具体子功能。而和软件系统中其他的模块接口是简单的联系。例如,如果一个模块只具有单一的功能,并且与其他的模块没有太多的联系,则称此模块具有模块独立性。 6.3.2软件设计的基本原则 2. 抽象与细化 抽象是人类在认识复杂现象的过程中使用的最强有力的思维工具。抽象就是抽取出事物的本质特性而暂时忽略它们的细节。由于人类思维能力的限制,如果每次面临的因素太多,是不可能做出精确思维。处理复杂系统的惟一有效的方法是用层次的方式构造和分析它。因此在进行模块化软件设计时,可以在不同的抽象层次进行设计。在抽象的最高层次使用问题环境的语言,以概括的方式

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档