简明扼要的软件工程讲义.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程 ; 1 软件工程的基本概念 1.1软件以及特点;(2)软件的特点 软件是一种逻辑实体,而不是物理实体,具有抽象性。 软件的生产与硬件不同,它没有明显的制作过程。 软件在运行、使用期间不存在磨损、老化问题。 软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题。 软件复杂性高,成本昂贵。 软件开发涉及诸多的社会因素。; 1.2软件危机与软件工程;为了消除软件危机,形成了软件工程的概念,开辟了工程学的新兴领域——软件工程学。软件工程就是试图用工程、科学和数学的原理与方法研制、维护计算机软件的有关技术及管理方法。 关于软件工程的定义,国标(GB)中指出,软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。;软件工程包括3个要素,即方法、工具和过程。 方法是完成软件工程项目的技术手段; 工具支持软件的开发、管理、文档生成; 过程支持软件开发的各个环节的控制、管理。 软件工程的核心思想是把软件产品作为是一个工程产品来处理。把需求计划、可行性研究、工程审核、质量监督等工程化的概念引入到软件生产当中,以期达到工程项目的三个基本要素:进度、经费和质量的目标。; 1.3 软件工程过程与软件生命周期;2. 软件的生命周期(Software Life Cycle) 通常,将软件产品提出、实现、使用 、维护到停止使用退役的过程称为软件的生命周期。 ;可将软件生命周期分为定义、开发及维护三个阶段。; 1.4软件工程的目标与原则 ;2. 软件工程的原则 软件工程原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。 ①抽象。抽取事物最基本的特性和行为,忽略非本质细节。 ②信息隐蔽。用封装技术,将程序模块的实现细节隐藏起来,使模块接口尽量简单。 ③模块化。模块是程序中相对独立的成分,一个独立的编程单位,应有良好的接口定义。;④局部化。要求在一个物理模块内集中逻辑上相互关联的计算资源,保证模块间具有松散的耦合关系,模块内部有较强的内聚性,这有助于控制解的复杂性。 ⑤确定性???软件开发过程中所有概念的表达应是确定的、无歧义且规范的。 ⑥一致性。包括程序、数据和文档的整个软件系统的各模块应使用已知的概念,内外部接口应保持一致,系统规格说明与系统行为应保持一致。 ⑦完备性。软件系统不丢失任何重要成分,完全实现系统所需的功能。 ⑧可验证性。开发大型软件系统需要对系统自顶向下,逐层分解。系统分解应遵循容易检查、测评、评审的原则,以确保系统的正确性。 ; 1.5软件开发工具与软件开发环境;2. 软件工程环境 称软件工程环境是全面支持软件开发全过程的软件工具集合。 计算机辅助软件工程(CASE)是将各种软件工具、开发机器和一个存放开发过程信息的中心数据库组合起来,形成软件工程环境。; 2 软件需求分析;2. 需求分析方法 常见的需求分析方法有: ①结构化分析方法。 ②面向对象的分析方法。; 2.2结构化分析方法 ;(2)结构化分析的的常用工具 1. 数据流图 数据流图是描述数据处理过程的有力工具,是从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。 2. 数据字典 数据字典是结构化分析方法的另一个工具。 数据字典是对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。;3. 判定表 判定表是一种文本化的加工说明的流行格式,它特别适用于带有一组测试条件的说明。 ;4. 判定树 判定树也是用来表达加工逻辑的一种工具。; 2.3软件需求规格说明书;2. 软件需求规格说明书的内容 概述; 数据描述; 功能描述; 性能描述; 参考文献; 附录。;3. 软件需求规格说明书的特点 正确性; 无歧义性; 完整性; 可验证性; 一致性; 可理解性; 可修改性; 可追踪性。 ; 3软件设计;2. 抽象 用自顶向下由抽象到具体的方式进行分配控制,简化了软件的设计和实现,提高了软件的可理解性和可测试性,并且使软件更容易维护。 3. 信息隐蔽 信息隐蔽使得一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说,是不能访问的。;4. 模块独立性 每个模块完成一个相对独立的特定子功能,并且和其他模块之间的接口很简单。 模块的独立程度可以由两个定性标准来衡量,这两个标准分别称为耦合性和内聚性。藕合衡量不同模块彼此间互相依赖(连接)的紧密程度;内聚衡量一个模块内部各个元素彼此间结合的紧密程度。 一般较较优秀的软件设计应尽量做到高内聚、低耦合,即减弱模块间的耦合性和提高模块内的内聚性,有利于提高模块的独

文档评论(0)

职教魏老师 + 关注
官方认证
服务提供商

专注于研究生产单招、专升本试卷,可定制

版权声明书
用户编号:8005017062000015
认证主体莲池区远卓互联网技术工作室
IP属地北京
统一社会信用代码/组织机构代码
92130606MA0G1JGM00

1亿VIP精品文档

相关文档