精·1软件设计综述-软件工程与软件设计.pptVIP

精·1软件设计综述-软件工程与软件设计.ppt

  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文档。上传文档
查看更多
软件设计 Software Design: From Programming to Architecture Eric J. Braude, Boston Univ. ISBN 0-471-20459-5, ?2004, 576 pages Software Design: From Programming to Architecture Eric J. Braude, Boston Univ. ISBN 0-471-20459-5, ?2004, 576 pages 软件设计知识域 根据IEEE的定义[IEEE610.12--90],设计既是“定义一个系统或组件的体系结构、组件、接口和其它特征的过程”,又是“这个过程的结果”。软件设计的知识域分为6个子域。 第一个子域是软件设计基础,它是理解力软件设计作用和范围怕基础,这些是:一般的软件概念、软件设计上下方和软件设计的使能技术。 第二个子哉将软件设计的关键问题聚集在一起,它们 包括地:并发性、事件 的控制和 、组件的分布、错误和异常处理、容错、交互与表现、数据持久性。 第三个子域是软件结构与体系结构,它的主题是体系结构与视点、体系结构风格、设计模式、程序与构架族。 第四个子域描述软件设计质量的分析与评价。虽然有一个完整的软件质量知识域,这个子域描述与软件设计质量特别有关的主题。这些方面包括:质量属性、质量分析和评价技术与度量。 第五个子域是软件设计符号,它分为结构与行为描述两部分。 最后一个子域是软件设计策略与方法。首先描述一般策略,然后是面向功能的设计方法、面向对象的设计方法、以数据结构为中心的设计、基于组件的设计和其它方法。 本课程教学内容内容 软件工程与软件设计 整体设计 软件体系结构的设计 界面设计 详细设计 设计模式 第一章 软件工程与软件设计 软件工程相关概念 软件工程的目标和原则 软件的生存期 软件开发过程模型 1.1 软件工程 典型定义: 1.软件工程将系统的、规范的、或度量的方法应用于软件的开发、运行和维护过程,以及对上述方法的研究。 2.软件工程是用工程、科学、和数学的原则和方法,研制、维护计算机软件的有关技术及管理方法。 软件工程是由方法、工具和过程三个要素组成 软件工程的目标与原则 目标: 可修改性 有效性 可靠性 可理解性 可维护性 可利用性 可适应性 可移植性 可追踪性 原则: 抽象 信息隐藏 模块化 局部化 一致性 完全性 可验证性 1. 2 软件的生存周期 软件生存周期的“V-模型” 软件过程的各个阶段 1.需求分析(回答“做什么?”):定义应用程序必须做什么 2.设计(回答“怎样做?”):定义每部分将是什么样和它们将如何协调 3.实现(也称为“编码”):编写代码 4.测试:以测试数据作为输入来执行应用于程序 5.维护:修补缺陷和增强功能 各阶段的详细内容 需求分析:文本,例如“...应用于将显示用户银行账户的收支余额 设计:图表和文本,例如:“...设计将包含类CheckingAccount,SavingsAccount...” 实现:源代码和目标代码,例如,“...测试用例:存款¥44.92/存款¥32.0/取款¥100,结果正确...” 维护:修改设计,代码和文本,例如,错误纠正:“当余额不足又试图取款时程序出现异常...”;例如,功能增强:”允许使用Pesos进行操作“ 需求分析 需求分析的难点 : 使用通俗中、清晰折语言来表棕需求 非技术性的 从用户观点出发 将需求组织为逻辑分组 易于访问和改变 需求管理的安排 为了及时更新需求分析必须提前开发的程序 谁、怎样和何时 需求举例 详细需求 2.1输入 1)CustomFootnoter将接收收件人名字的前10 个字符,如下所示: 请输入发送者的名字: abcd 2)应用程序将以下面的格式接收和中间名字 的首写大字母: 请输入发送者中间名字的首写大写字母 M 3)应用将接收和收件人姓氏的前10个字符,如下所示: 请输入发送者的姓氏: Xyz 4)应用程序将以1)2)和气)的相同方式接收发送者的名字 2.2输出 5)如果文本少于或者等于60个字符,那么CustomFootnoter 将以下文本输出到控制台 --To abcd M.Xyz from Eric J.Braude.— (空格的数目和位置由此例指出) 否则,可以使用三个部分的首写大写字母,例如: --To A.M.X. form E.J.B.— 2.3用户界面:省略 编码 编码技巧: 只根据设计来编码 精确地描述第个方法所完成的操作 在提交编译之前,通达仔细地阅读代码来确定代码的正确性 “正确性”是指定完成所要求的功能 即作者检测过程 每编写一部分代码,

文档评论(0)

daixuefei + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档