《软件设计规范》解读.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  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文档。上传文档
查看更多
《软件设计规范》解读.doc

软件设计规范 第一章 概 述 一、前言 软件设计是把需求转化为软件系统的最重要的环节,一般会包含以下几大部分:体系结构设计、界面设计、数据结构和算法设计、数据库设计、接口设计、安全设计等。软件设计的优劣在根本上决定了软件系统的质量。但是,由于各种历史原因,软件设计在开发中的重要性没有得到合理的体现。很多软件的设计工作都是有名无实,设计文档更是五花八门,几乎完全依赖于设计人员个人的设计水平与经验。很多设计文档几乎没有使用价值,开发人员都是直接看需求。这样,最终软件的质量完全依赖于开发人员。开发人员水平好,软件质量就高。开发人员水平差,软件质量就差。为了解决这一问题,制定一份软件设计规范,就成为最好的选择。 从目前的现状出发,本规范对软件设计过程、设计方法、设计工具以及设计要做到的程度进行了规定。同时,特别对逻辑设计进行了详细规定,物理设计在本阶段暂不做要求。 二、适用范围 本规范适用于开发部所负责的项目,其它部门的项目可进行参考。对于Dotnet技术类项目,必须全部符合本规范。对于Dephi技术类项目,可以进行取舍。 对于完全新建项目,必须全部符合本规范,对于在旧系统之上进行扩展的项目,可以对本规范进行取舍,对于维护类项目,可以不按本规范进行。 由于项目的特殊原因,可以对设计过程进行取舍,但不得降低所执行设计过程的规范要求。一旦设计过程确认后,必须严格执行设计规范。此规范的符合,是评审通过的唯一依据。未通过设计评审的项目,可以继续进行后续工作,但评审委员会不再对此项目的软件质量负责。 三、名词解释 逻辑设计:这是微软对软件设计工作的一种划分方式。是指在需求的基础上,从业务逻辑和当前用户应用环境中抽象出系统对象的组成结构、流程和各个部分相互关系,另外还要设计数据库的逻辑结构和界面的逻辑关系。逻辑设计是将用户业务语言转化为项目组语言的关键。在逻辑设计中的对象只是抽象的系统对象,而不是物理实现中采用的类、组件、模块和页面。 物理设计:这是微软对软件设计工作的一种划分方式。是指在逻辑设计的基础上,从系统的逻辑对象、数据实体和界面逻辑关系中进一步整理和细化得到的设计方案。物理设计将确定系统采用的技术方案,平台,并明确实际开发的组件、数据库表、窗口以及页面等,并考虑到实现的可能性和最终系统的性能。 系统:是由相互作用和相互依赖的若干组成部分结合成的、具有特定功能的有机整体。系统具有三个基本特征。第一,系统是由若干元素组成的;第二,这些元素相互作用、互相依赖;第三,由于元素间的相互作用,使系统作为一个整体具有特定的功能。一个管理软件系统一般会包含界面、算法、数据库等内容。 第二章 软件设计过程 一、设计阶段划分 软件设计分为架构设计、逻辑设计、物理设计三个阶段,其中逻辑设计和物理设计分别又分为系统设计和组件设计两个阶段。组件设计分为三部分:界面设计、业务算法设计、数据库设计。 开发部的软件使用统一的软件架构,故架构设计不是每一个项目必须要做的,在此不对架构设计进行规范。对于在统一的软件架构中没有包含的部分,各项目组可自行增加。 软件设计过程可用下图来说明: 二、过程裁减 在项目开发过程中,可能由于各种原因需要对设计过程进行裁减。一般情况下,对于Dotnet技术类项目,必须全部采用本过程。对于Dephi技术类项目,可以进行取舍。对于完全新建项目,必须全部采用本过程;对于在旧系统之上进行扩展的项目,可以不进行架构设计和物理设计;对于维护类项目,可以不采用本过程。 由于项目的特殊原因,需要违反以上原则对设计过程进行裁减时,必须在设计工作开始前得到开发部经理的认可。 第三章 软件设计方法 开发部的软件设计主要使用两种设计方法:自顶向下的设计方法和面向对象的设计方法。对于Dephi技术类项目,在得到开发部经理同意的情况下,可以采用结构化的软件设计方法。在个别情况特殊的项目中,可以采用自底向上的设计方法,但必须得到开发部经理的认可。 在使用面向对象的方法进行设计时,必须使用UML语言。在设计中,应尽可能的使用设计模式,以求得最好的性价平衡。 以上两种设计方法目前都已为一种工业标准,其详细情况可参见相关资料,下面仅做一个简单介绍。 一、自顶向下的软件设计方法 自顶向下的软件设计方法从整体系统角度着重考虑设计环节,由上而下有机地将系统分化为多个子系统、再将子系统分化成多个组件,直至分化出明确的类及其公共接口,然后开始编码。此方法在设计前需要明确需求,在设计阶段可以不断验证实现设计的可行性。经过验证的、良好的设计可以有效管理复杂度,降低自底向上设计方法中在后期“推倒重建”的风险,能让整个开发团队同步进行,适用于总体需求明确,开发任务复杂庞大的项目。 二、面向对象的软件设计方法 面向对象的设计方法是一种工程化规范,它是一种解决软件问题的设计范式,一种抽象的范式。

文档评论(0)

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

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

1亿VIP精品文档

相关文档