软件设计说明书_第1页
软件设计说明书_第2页
软件设计说明书_第3页
软件设计说明书_第4页
软件设计说明书_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1概述 1.1系统简述对系统要完成什么,所面向的用户以及系统 运行的环境的简短描述,这部分主要来源于 需求说明书的开始部分。1.2软件设计目标这部分论述整个系统的设计目标,明确地说 明哪些功能是系统决定实现而哪些时不准 备实现的。同时,对于非功能性的需求例如 性能、可用性等,亦需提及。需求规格说明 书对于这部分的内容来说是很重要的参考,看看其中明确了的功能性以及非功能性的 需求。这部分必须说清楚设计的全貌如何,务必使 读者看后知道将实现的系统有什么特点和 功能。在随后的文档部分,将解释设计是怎 么来实现这些的。1.3参考资料列出本文档中所引用的参考资料。(至少要 引用需求规格说明书)1.4修订

2、版本记录列出本文档修改的历史纪录。必须指明修改的内容、日期以及修改人。2术语表对本文档中所使用的各种术语进行说明。如 果一些术语在需求规格说明书中已经说明 过了,此处不用再重复,可以指引读者参考 需求说明。3用例此处要求系统用用例图表述(UML),对每 个用例(正常处理的情况)要有中文叙述。4设计概述4.1简述 这部分要求突出整个设计所采用的方法(是 面向对象设计还是结构化设计)、系统的体 系结构(例如客户/服务器结构)以及使用到 的相应技术和工具(例如OMT、Rose)4.2系统结构设计这部分要求提供高层系统结构的描述,使用 方框图来显示主要的组件及组件间的交互。 最好是把逻辑结构同物理结构

3、分离,对前者 进行描述。别忘了说明图中用到的俗语和符 号。4.2.1顶层系统结构4.2.2子系统1结构 4.2.3子系统2结构4.3系统界面各种提供给用户的界面以及外部系统在此 处要予以说明。如果在需求规格说明书中已 经对用户界面有了叙述,此处不用再重复, 可以指引读者参考需求说明。如果系统提供 了对其它系统的接口,比如说从其它软件系 统导入/导出数据,必须在此说明。4.4约束和假定 描述系统设计中最主要的约束,这些是由客 户强制要求并在需求说明书写明的。说明系 统是如何来适应这些约束的。另外如果本系统跟其它外部系统交互或者 依赖其它外部系统提供一些功能辅助,那么 系统可能还受到其它的约束。这

4、种情况下, 要求清楚地描述与本系统有交互的软件类 型(比如某某某数据库软件,某某某EMail 软件)以及这样导致的约束(比如只允许纯 文本的Email)。实现的语言和平台也会对系统有约束,同样 在此予以说明。对于因选择具体的设计实现而导致对系统的约束,简要地描述你的想法思路,经过怎 么样的权衡,为什么要采取这样的设计等5对象模型5.1系统对象模型提供整个系统的对象模型,如果模型过大, 按照可行的标准把它划分成小块,例如可以 把客户端和服务器端的对象模型分开成两 个图表述。对象图应该包含什么呢? 在其中应该包含所有的系统对象。这些对象 都是从理解需求后得到的。要明确哪些应 该、哪些不应该被放进图

5、中。所有对象之间的关联必须被确定并且必须 指明联系的基数(一对一、一对多还是多对 多,0.1, *,1.*)。聚合和继承关系必须 清楚地确定下来。每个图必须附有简单的说 明。可能经过多次反复之后才能得到系统的正 确的对象模型。6对象描述 在这个部分叙述每个对象的细节,它的属 性、它的方法。在这之前必须从逻辑上对对 象进行组织。你可能需要用结构图把对象按 子系统划分好。为每个对象做一个条目。在系统对象模型中 简要的描述它的用途、约束(如只能有一个 实例),列出它的属性和方法。如果对象是 存储在持久的数据容器中,标明它是持久对 象,否则说明它是个临时对象(transientobject)0对每个对

6、象的每个属性详细说明:名字、类 型,如果属性不是很直观或者有约束(例如, 每个对象的该属性必须有一个唯一的值或 者值域是有限正整数等)。对每个对象的每个方法详细说明:方法名, 返回类型,返回值,参数,用途以及使用的 算法的简要说明(如果不是特别简单的话)。 如果对变量或者返回值由什么假定的话, Pre-conditions 和 Post-conditions 必须在此 说明。列出它或者被它调用的方法需要访问 或者修改的属性。最后,提供可以验证实现 方法的测试案例。6.1子系统1中的对象6.1.1对象:对象1用途:约束:持久性:6.1.1.1属性描述:属性:属性1类型:描述:约束:属性:属性26

7、.1.1.2方法描述:1.方法:方法1返回类型参数:返回值:Pre-Condition:Post-Condition:读取/修改的属性:调用的方法: 处理逻辑:测试例:用什么参数调用该方法,期望的输 出是什么7动态模型这部分的作用是描述系统如何响应各种事 件。例如,可以建立系统的行为模型。一般 使用顺序图和状态图。确定不同的场景(Scenario)是第一步,不 需要确定所有可能的场景,但是必须至少要 覆盖典型的系统用例。不要自己去想当然地 创造场景,通常的策略是描述那些客户可以 感受得到的场景。7.1 场景(Scenarios)对每个场景做一则条目,包括以下内容: 场景名:给它一个可以望文生义的名字 场景描述:简要叙述场景是干什么的以及发 生的动作的顺序。顺序图:描述各种事件及事件发生的相对时 间顺序。7.1.1场景:场景1描述:动作1动作27.2状态图这部分的内容包括系统动态模型重要的部 分的状态图。可能你想为每个对象画一个状 态图,但事实上会导致太多不期望的细节信 息,只需要确定系统中一些重要的对象并为 之提供状态图即可。7.2.1状态图1:非功能性需求 在这个部分,必须说明如何处理需求文档中 指定的非功能性需求。尽可能客观地评估系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论