《详细设计说明书实例.doc》由会员分享,可在线阅读,更多相关《详细设计说明书实例.doc(10页珍藏版)》请在三一办公上搜索。
1、信息发布系统(详细设计说明书)编写单位:JAVA实践小学期第22组设计人员:版 本:1.0编写日期:2010/9/5 目录第一部分、引言21.1编写目的21.2背景31.3定义33.1程序描述53.2整体结构53.3性能53.4输入输出项53.5算法53.6主要类的设计53.7存储分配73.8注释73.9限制条件73.10测试计划73.11尚未解决的问题74.1 程序描述74.2 功能74.3 性能84.4 输入输出项84.5 限制条件85 设计特点85.1 通信便捷85.2 开发速度快8第六部分、项目分工8附录:9第一部分、引言1.1编写目的本说明书在概要设计的基础上,对信息发布系统的各模块
2、、程序分别进行了实现层面上的要求和说明。软件开发小组的产品实现成员应该阅读和参考本说明进行代码的编写、测试。1.2背景说明:A、 软件系统的名称:信息发布系统B、 任务提出者:JAVA实践小学期开发者:第22组成员C、 实现完成的系统将可用在所有JAVA虚拟机的个人PC上.为使用者提供信息发布,浏览,评论的方式,沟通各个用户.1.3定义服务器端API :服务器端设计者通过规范的API文档,提供给客户端,以方便客户端的开发,使得同时进行,提高效率,节约时间。两端通过protocol(协议类)进行通信。Gson:Google提供的一个类库。通过使用这个类库,可以把把对象转换成json格式的字符串,
3、以方便在网络中的传输。也可反向将字符串转换成对象,这样带有方法地操作对象,可以有效,方便地保证信息的沟通。Json:JavaScript Object Notation,是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript的一个子集,JSON采用完全独立于语言的文本格式,这些特性使得JSON成为理想的数据交换语言。1.4参考资料,相关的文件包括:A、 项目需求说明;B、 项目详细设计说明书;C、 项目概要设计说明书;参考资料:软件工程概论,王华第二部分、程序系统的结构该系统为了两大部分:客户端与服务器端,中间通过protocol类通信。其中使用gs
4、on库来转换和逆向转换对象,实现标准包括:1、客户端主程序A、工程类型:JAVA项目;B、工程名称:信息发布系统C、编译生成文件:jar形式D、引用的组件:JDK,Gson库注:以上提供的是工具集合,具体用到的类都包含在里面2、服务器端主程序:服务器端程序以及数据库操作类(DBO)3、服务器端数据库操作验证用户,用户注册,更改密码,更新文档,新建文档,新建记录(包括浏览记录和回复记录),查看文档,删除文档,查看记录。第三部分、基本操作部分界面设计如下图:3.1程序描述A、客户端窗体:尽量友好的设计,让用户尽可能地关注信息的内容主体。B、服务器端设计:该窗体在设计上尽量的符合人们的使用习惯,并且
5、在出现非法操作的情况下,有相应的提示信息输出。3.2整体结构系统的整体大致结构为下图:3.3性能灵 活 性:窗口响应绝大部分的快捷菜单和控制面板操作;时间特性:响应鼠标单击的时间在23秒之间;3.4输入输出项输入的数据是户执行的各种操作,包括鼠标、键盘等操作。输出是从数据库中读取的数据,或错误警告信息。3.5算法本部分没有采用自定义的算法。3.6主要类的设计用户类数据库操作类(包括静态方法) 3.7存储分配本程序在高级语言JAVA进行编码,直接的内存分配由JAVA运行时分配。本组件内所依赖的变量、结构要求全部在组件元素内申明。3.8注释在代码的适当出有中文代码注释。注释设计请参考Visual
6、Basic 可视化程序设计的附录部分。3.9限制条件所有用户的权限都经过严格设置,不能进行权限外的操作。用户组分为三组:管理员,用户和游客。3.10测试计划测试日期、测试人员安排请参考测试计划,测试用例的具体内容,请参考测试用例说明。3.11尚未解决的问题在文件中存储文档文件中,不能存储文件名相同,但类型不同的文档。可以通过在文件名中加入文档类型来解决。但因时间关系,尚未解决。第四部分、其它附加功能及帮助系统4.1 程序描述本程序设计是客户机和服务器机通过C/S模式,建立连接。在此基础上,进行信息的共享,发布等功能。系统的目的是为了方便用户的沟通。4.2 功能主要功能就是给用户带来信息的沟通,
7、交流的便捷。4.3 性能灵活性:响应鼠标操作和键盘操作。时间性:视网络响应速度而定。4.4 输入输出项从键盘,鼠标按提示输入。依服务器响应从界面输出响应信息。4.5 限制条件在界面上控制输入输出,服务器端如果出错也会返回出错信息。5 设计特点5.1 通信便捷 本系统客户端与服务器端采用JSON格式作为信息载体,在开发中将信息作为对象,信息传递很便捷。5.2 开发速度快由于使用通信协议约定,所以只要客户端与服务器端约定好通信协议API文档,即可以进行通信。而且直接对对象操作,不存在类型转换的问题。这样可以使客户端与服务器端开发同时在API文档的约定下进行,提高开发效率。第六部分、项目分工王佳龙:
8、 负责编写GUI部分代码,以及客户端部分的所有代码戴清灏:编写服务器端代码,设计通信协议,以及对数据库的操作。负责编写详细设计文档。华从男:各方面知识全面,负责组织工作,在软件测试方面有一定的能力。在软件开发过程负责测试文档等文档的编写。 王玮柯:负责测试,组织工作。附录:服务器端操作API文档(最少需要的参数,如不全服务器会返回type=“0”的信息):服务器和客户端之间的所有通信都封装在protocol对象中,通过对要发送的protocol对象进行set和get操作就可以通信。验证用户,用户注册,更改密码,更新文档,新建文档,新建记录(包括浏览记录和回复记录),查看文档,删除文档,查看记录
9、1.验证用户 name,pass,LimitsOfAuthority返回:如验证通过则返回type=“11”,不通过则返回type=“12”2.用户注册 name,pass,LimitsOfAuthority返回:如注册成功则返回type=“21”,不成功则返回type=“22”3.更改密码 name,pass,newPass返回:如更改成功则返回type=“31”,不成功则返回type=“32”4.查看文档 filename(可选,如为“”则查询本类的所有文档,不带全部内容),filetype,replyAuthor(可选,如果filename不为“”则必须)返回:如查看成功则返回则返回ty
10、pe=“41”,不成功则返回type=“42”;文档内容在content中,文档名列表在filenames中,对应的文档摘要在filesummaries中;回复内容在recordContents中,对应的回复作者在recordAuthors中5.建立新文档 filename,filetype,content,author,filesummary返回:如果建立成功则返回type=“51”,如不成功则返回type=“52”6.修改文档 filename,filetype,newFilename,newFiletype,filesummary返回:如果修改成功则返回type=“61”,如不成功则返回type=“62”7.建立新记录 filename,filetype,recordContent,replyAuthor返回:如果建立成功则返回type=“71”,如不成功则返回type=“72”8.删除文档 filename,filetype返回:如查询成功则返回type=“81”,如不成功则返回type=“82”9.查看浏览记录 无返回:如查看成功则返回type=“91”,如不成功则返回type=“92”,返回的记录内容在recordContents中,对应的作者在recordAuthors中