[项目名称]_概要设计说明书_v1.1_第1页
[项目名称]_概要设计说明书_v1.1_第2页
[项目名称]_概要设计说明书_v1.1_第3页
[项目名称]_概要设计说明书_v1.1_第4页
[项目名称]_概要设计说明书_v1.1_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、XXX 概要设计说明书概要设计说明书中软培训实训基地第 1 页 共 21 页编写:XXX日期:YYYY-MM-DD审核:日期:批准:日期:受控状态:是 发布版次:1.0日期:YYYY-MM-DD编号:XXXXXX 概要设计说明书概要设计说明书XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 2 页 共 21 页变更记录变更记录日期版本变更说明作者YYYY-MM-DD1.0初始版本XXX签字确认签字确认系统模块对应章节对应部门负责人签字XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 3 页 共 21 页目目 录录目录目录1引言引言.31.1编写目的.31.2背景.4

2、1.3基线.41.4特殊名词定义.41.5参考资料.42总体设计总体设计.42.1概述.42.2系统环境描述.42.2.1运行环境.52.2.2开发环境.62.3系统总体结构设计.72.3.1系统业务层次图.72.3.2系统架构说明.82.3.3软件架构说明(选作).82.3.4关键技术与算法.142.2.3 关键数据结构(选作).153系统功能设计系统功能设计.153.1系统功能.153.1.1文件上传.163.1.2组织管理列表(树状图).174尚待解决的问题尚待解决的问题.201引言引言1.1 编写目的编写目的书写要求:本说明书目的在于明确说明系统各功能的实现方式,指导开发员进行编码。本

3、说明书的预期读者为:XXX 等。XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 4 页 共 21 页1.2 背景背景书写要求:待开发软件系统的名称:XXX此软件系统任务提出者:XXX此软件系统任务开发者:XXX此软件系统任务用户:XXX1.3 基线基线书写样例:XXX 需求分析说明书 v1.01.4 特殊名词定义特殊名词定义XXX:YYY。1.5 参考资料参考资料书写样例:属于本项目的其他已发表的文件。本文件中引用的其他文献、资料以及软件开发标准。2总体设计总体设计2.1 概述概述2.2 系统环境描述系统环境描述系统包括的范围:XXX。XXX 概要设计说明书概要设计说明书内部文

4、档中软培训实训基地第 5 页 共 21 页.1运行环境运行环境 软件环境软件环境分类分类名称名称版本版本语种语种操作系统操作系统的附加功能数据库平台数据库平台补丁应用平台应用平台补丁邮件系统客户端软件 硬件环境硬件环境服务器服务器最低配置最低配置推荐配置推荐配置应用和数据库服务器邮件服务器XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 6 页 共 21 页.2开发环境开发环境 服务器软件环境服务器软件环境分类分类名称名称版本版本语种语种操作系统操作系统的附加功能数据库平台数据库平台补丁应用平台应用平台补丁

5、版本控制系统目录服务系统邮件系统客户端软件 服务器硬件环境服务器硬件环境服务器服务器最低配置最低配置推荐配置推荐配置应用服务器、数据库服务器、邮件服务器、目录服务器 开发机器软件环境开发机器软件环境分类分类名称名称版本版本语种语种操作系统XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 7 页 共 21 页操作系统的附加功能数据库平台应用平台开发平台客户端软件 开发机器硬件环境开发机器硬件环境分类分类最低配置最低配置推荐配置推荐配置开发机器2.3系统总体结构系统总体结构设计设计2.3.1系统业务层次图系统业务层次图内容描述:图例:XXX

6、概要设计说明书概要设计说明书内部文档中软培训实训基地第 8 页 共 21 页功能简介(类似需求分析):2.3.2系统架构说明系统架构说明说明整个系统的软硬件架构层次:图例如下:硬硬件件软软件件网网络络EmailWWW 文文件件传传输输域域名名服服务务电电子子身身份份认认证证目目录录服服务务网网络络安安全全网网络络管管理理1 1. .网网络络基基础础设设施施2 2. .网网络络基基础础服服务务3 3. .共共享享数数据据库库4 4. .应应用用平平台台系系统统6 6. .业业务务功功能能数数据据库库(IBM DB2)应应用用服服务务平平台台(IBM WebSphere)日日志志管管理理权权限限管

7、管理理个个人人办办公公项项目目管管理理会会议议管管理理人人力力资资源源管管理理行行政政管管理理5 5. .通通用用功功能能异异常常管管理理公公文文管管理理 信信息息管管理理通通讯讯系系统统.3软件架构说明软件架构说明(选作)(选作)书写要求:根据系统设计的功能层次逐一说明(与需求分析中的“系统功能总体说明”部分的内容基本一致)XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 9 页 共 21 页 系统架构设计说明书写要求:根据系统的功能需求设计并说明系统开发所采用的软件开发架构。书写样例:Jsp & Servlet & JavaBea

8、n 架构架构结构 具体架构层次如图 4.1 所示。图 4.1 Jsj 架构结构各层实现功能说明View 层是与客户的交互层,负责提交用户请求和数据,并将后台的响应结果返回给客户层。同时提供客户提交信息的 javasript 验证功能。Control 层负责项目中业务功能实现流程的管理工作。如:具体的业务功能由哪些类来实现,实现结果有谁来显示等等,必须由 Control 层来决定。同时XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 10 页 共 21 页Control 层还要负责与其它两层的通信,这个过程还需要一些 bean 类来协助传递信息,另外 Control 层还要负责请求

9、的转发与从定向。从 Control 层所负责的功能上不难想象的到在业务逻辑相对复杂的时候此层代码编写会略显繁重和复杂。Model 层主要是一些实现具体业务功能的类,在这里可以统一简称为Business 类。也可以将架构中除了 Servlet 控制器之外的所有类统一叫做Javabean 类。从这种命名方式上可以看出,model 层在实现业务功能是具体的实现方式比较自由,但在业务逻辑比较复杂的情况下 model 层职能的划分会出现问题,可能会造成一定混乱和不便。设想一下如果可以更明确的将 model 层进一步划分使之变得更有条理,这样就会增强该层的可维护性了。特别说明,图 4.1 中的“bean”

10、可以看作数据封装类,它以实例对象的形式作为各层之间数据通信的载体,实际上这些对象也属于业务对象,如 User 对象、Book 对象。Jsp & Servlet & JavaBean 架构特点说明1.架构的优点结构简单明了,搭建时配制信息很少只有一个文件“web.xml” ,该文件主要用来映射 Servlet。Control 层的应用一定程度上将 Jsp 中的 Java 代码分离出来,使得 jsp 文件的复杂程度有所降低。另外该架构涉及到的架构知识较少,很容易上手。基于 Java 语言的 Web 开发技术掌握难易顺序大致可参见图 4.2 所示。图 4.2 基于 Java 语言的

11、Web 开发技术掌握难易顺序基于基于 Java 语言的语言的 Web 开发技术开发技术Html Xml Jsp JavaScriptHibernate SpringServlet Struts不易掌握XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 11 页 共 21 页通过图 4.2 可见 Jsp+Servlet+JavaBean 这种架构技术组合难度是很低的。2.架构的缺点不能将 Java 代码完全从页面上脱离,页面中会用 Js 验证代码,使 Jsp 页面结构相对复杂,不易维护。Control 层读取客户提交的信息要逐条操作,代码书写比较麻烦,Controler 层要定义处理

12、响应的分支和 model 层类的调用,使得Controler 本身内容较多不便开发和维护。另外 Jsp+Servlet+JavaBean 架构技术组合层次简单,各层的代码开发较随意自主,尤其是在 JavaBean 实现的 Model 层由于完成的业务功能多种多样,如果开发人员没有很好的遵循一定开发规范或是开发思路不清晰,那么代码开发会变得混乱。为了解决这些问题,引入一定的架构技术来调理代码开发就变得很必要了。下面一节将 Struts、Spring、Hibernate 三种比较流行的架构技术引进架构设计中来构建一种较为复杂却层次清晰得的开发模式。具体架构层次如图 4.3 所示。XXX 概要设计说

13、明书概要设计说明书内部文档中软培训实训基地第 12 页 共 21 页SSH 架构结构图(图例 1)各层实现功能及开发技术说明1.四层结构的优势1)通过成熟的开源产品实现各层功能开发,比起自己开发能缩短开发周期,且架构所用到的开源产品均有很广泛的用户群,经受过实践的考验,质量和性能更有保障。2)层与层之间松散偶合,增加代码重用率。 3)各层分工明确,这样也利于团队的明确分工。2.表示层这一层是面向用户的界面,是用户与系统之间交互的媒介。如:用户在界面发送请求,系统接收请求,进行处理,然后通过界面将结果呈现于用户。这一过程包括了用户动作、数据传递、界面显示。大家熟悉的 MVC 模式就是将这三者分离

14、,减少三者耦合。我们在该层借助了 Struts 来实现。XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 13 页 共 21 页2)Struts 的实现的功能:管理用户的请求,做出相应的响应。提供一个 Controller,委派调用业务逻辑和其它上层处理。处理异常,抛给 Struts Action.为显示提供一个模型。UI(User interface)验证。以下部分则不该在 Struts 显示层的编码中经常出现。因为在表示层引入这些代码,则会带来高偶合和非常麻烦的维护代价。直接的与数据库通信,如 JDBC 调用。与你应用程序相关联的业务逻辑以及校验。3.业务层业务层在实际的项目

15、开发中,每个领域都会有自己独特的业务逻辑,正因为这样,致使项目中代码高度偶合,原本有可能被重用的代码或功能,因为与具体的业务逻辑绑定在一块而导致很难被重用。因此我们将实现这些具体逻辑的代码抽取出来分为单独的一层,其目的是希望通过分层,来降低它与系统其他部分的偶合度。现实中世界是变化的,既然该层实现的是现实中具体的业务逻辑,那该层的实现代码不可避免的会发生变更。怎样让该层适应最大的变化,做到最小的改动?通常我们在编码的时候会尽量考虑到同一业务多种实现的兼容和可扩展的能力。因此我们在该层借助了 Spring,通过依赖注入、AOP 应用、面向接口编程,来降低业务组件之间的偶合度,增强系统扩展性。2)

16、Spring 实现的功能:处理应用程序的业务逻辑和业务校验。管理事务。提供与其它层协同工作的接口。管理业务层级别的对象的依赖。在显示层和持久层之间增加了一个灵活的机制,使得他们不直接的联系在一起。XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 14 页 共 21 页通过揭示从显示层到业务层之间的 Context 来得到 business services。管理程序的执行(从业务层到持久层)。4.数据持久层 数据持久层在开发中与数据库进行数据交互必不可少,通常我们归为CRUD(添加、读取、修改、删除),这些操作占据了系统开发中大部分的时间,同时我们还需要考虑与数据库交互的性能问题

17、,如连接池、数据缓存等等。系统内部的持续层不但需要大量调试时间,而且还经常缺少功能使之变得难以控制。针对这点我们引入 ORM 开源架构 Hibernate。2)Hibernate 实现的功能:查询对象的相关信息的语句。存储,更新,删除数据库记录。支持大部分主流数据库,并且支持 Parent/Child 关系,事物处理,继承和多态。5.各层中的封装类各层的封装类的主要功能都是一致的,就是将有一定联系的数据集合装载在其实力对象中,这样做的道路是显而易见的,通过对象来传递数据集合的效率会更高更方便。显示层的 FormBean 类是用封装来自页面 form 提交的信息的,一般情况下这个类的私有变量是与

18、页面 form 的元素一一对应的。另外 FormBean 封装类的对象还负责将要显示的信息传递到显示层,其作用是双向的。业务逻辑层的 ValueObject 类是用来封装一定业务功能实现过程中需要的数据集合的,也就是说要封装的数据都是由业务功能的需要决定的。持久层的 PersistObject 类,其实例化对象所封装的数据集是与数据库中表相对应的,即表项对应要封装的数据项。我们根据上面封装类的说明可以看出,FormBean、ValueObject、PersistObject、三者的作用相似都是为了封装数据信息,不同的是这些对象所在的是不同架构层面,这样做的好处是数据的处理和转递比较有条理,层次

19、清晰易于维护。封装类在架构中的情况如图 4.4 所示。XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 15 页 共 21 页BL(业务逻辑层)view(视图层)Persist(持久层)Jsp 页面中的fromFormBeanValueObjectPersistObject业务层的具体业务数据库中的表项决定决定决定各层封装类的情况(图例 2).4关键技术与算法关键技术与算法书写要求:对系统中比较复杂的功能的实现方式或应用的特殊技术加以说明要求通俗直观便于客户参考。书写样例:查询统计(科学项目的查询和统计,科学成果的查询和统计,科学奖励的查询和统计,科技人才的查询和

20、统计)组合检索组合检索:组合检索由拥有搜索权限的用户在组合类别的下拉框中选择需要查询的项目,如科技项目的检索:项目类别+项目资金+项目所属公司+时间;没有选择的项,下拉框默认为空白。点击搜索,系统将对数据库的字段进行模糊搜索,搜索结果列表显示于组合搜索下面,分页显示搜索结果。注:其它的科技成果搜索,科技奖励搜索,科技人才搜索采用统一的组合搜索形式统计图表统计图表:各分公司统计:根据用户在科技项目申请,科技成果申请,科技奖励申请,科技人才的输入的数据,当拥有该权限的用户点击各分公司统计,系统将从数据库中读取以上的部分数据,进行统计,然后以统计图形的形式显示出来,对各分公司进行比较,方便领导制定企

21、业决策。某分公司统计某分公司统计:当拥有权限的用户点击某分公司统计,系统将从数据库中读取这对该公司的数据进行统计,显示统计图,该统计主要面向集团和分公司领导。注:其它的科技成果搜索,科技奖励搜索,科技人才搜索采用统一的统计形式XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 16 页 共 21 页.3 关键数据结构(关键数据结构(选作选作)书写要求:简要说明本系统中的最主要的数据结构。书写样例:3系统功能设计系统功能设计书写要求:此部分主要对关键功能进行设计,描述其实现方式。要求结合具体页面及功能实现过程说明各模块功能。界面要求对输入输出项进行说明,实现过程尽量能

22、细化到每一个操作。 (最好附以特征界面和数据表设计) 。解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。3.1 系统功能系统功能书写样例:3.1.1文件上传文件上传 功能描述功能描述文件上传功能用到了专门为对文档进行上传下载功能而设计的两个包,调用包中特定类的特定方法,然后传入对应的文档路径参数就能实现文档的上传下载。而且还能实现多文档上传。文档上传时,用户单击增及按钮就会多出一个文本框供用户选取上传文档的路径,单击减少按钮就会相应

23、的减少一个文本框。最少要上传一个文件,最多只能同时上传五个文件。用户操作效果如下图例 3、4。XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 17 页 共 21 页文档上传客户页面初始页面(图例 3)文档批量上客户页面(图例 4) 接口设计接口设计输入操作:用户输入文件路径。输出效果:上传成功的文件列表。输入操作通过界面进行。文件路径用文件选择框。XXX 概要设计说明书概要设计说明书内部文档中软培训实训基地第 18 页 共 21 页 功能流程图(也可用活动图等描述)功能流程图(也可用活动图等描述)是否可进行增加或减少上传文件是判断是否点击“增加”或“减少”否增加或减少上传文件数量是是否成功否上传成功是否3.1.2

温馨提示

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

评论

0/150

提交评论