篇一:最好软件详细设计说明书参考文档
中大软件详细设计D0903-0302
丁丁网上购书系统
详细设计
Version r.0.0.1
修订历史
目 录
1 2 3 4 5 6
绪言及目标 .................................................................................................................................... 3 范围 ................................................................................................................................................ 3 定义及缩写 .................................................................................................................................... 3 引用 ................................................................................................................................................ 3 角色及职责 .................................................................................................................................... 3 工具及环境 .................................................................................................................................... 4 6.1 6.2 6.3 6.4 7
研发硬件配置 ......................................................................................................................... 4 研发语言及编译器 ................................................................................................................. 4 软件支持工具 ......................................................................................................................... 4 第三方工具 ............................................................................................................................. 4
高层分析 ........................................................................................................................................ 5 7.1
7.2 7.3 7.4
数据模型视图 ......................................................................................................................... 5 抽象类视图 ............................................................................................................................. 6 时序图..................................................................................................................................... 6 用户界面架构 ....................................................................................... 错误!未定义书签。
8 详细分析 ...................................................................................................................................... 11 8.1
8.2
类/接口 视图 ........................................................................................................................ 11 构件/包 视图 ........................................................................................................................ 14
9 详细设计 ...................................................................................................................................... 15 9.1 9.2
数据库定义 ........................................................................................................................... 15 用户界面设计 ....................................................................................................................... 21
1 绪言及目标
项目名称:丁丁网上购书系统 项目提出单位:丁丁图书销售公司
项目开发者:中山大学软件师资班(第二期)第三小组 项目使用单位:丁丁图书公司
软件的详细设计阶段是给出软件模块的内部过程描述即是模块内部的算法设计。
本文档为“丁丁网上购书系统详细设计说明书”,主要用于为实现系统的功能而进行的系统详细设计说明,详细描述了系统各软件组成模块的实现流程、功能、接口、编译、测试要点等内容,便于对系统的编码进行指导和约束。
本文档供项目组全体成员及项目组领导,单元测试人员阅读。
2 范围
本文档用于软件设计阶段的详细设计,该详细设计的范围是:系统各组成部分的构成、每个软件模块(或类)的属性、方法、事件,各软件模块的外部接口说明,数据用户界面设计等内容。
3 定义及缩写
4 引用
5 角色及职责
6 工具及环境
6.1 研发硬件配置
6.2 研发语言及编译器
本系统开发所用的语言是JAVA语言,开发的IDE工具是MyEclipse 5.5.1 GA.
6.3 软件支持工具
开发使用Rose, Myeclipse, Dreamweaver等软件工具。
6.4 第三方工具
7 高层分析 7.1 数据模型视图
系统数据视图如下图所示:
数据视图
篇二:软件详细设计说明书.doc
软件详细设计说明书
项目名称:学生公寓信息管理系统
日期:年月 日
信息工程学院
目 录
1 引言 ...................................................................... 1
1.1编写目的 ............................................................. 1
1.2 项目背景 ............................................................. 1
1.3 定义 ................................................................. 1
1.4 参考资料 ............................................................. 1
2 总体设计................................................................... 2
2.1 需求概述 ............................................................. 2
2.2 软件结构 ............................................................. 2
3 程序描述................................................................... 4
3.1 下面对各模块的功能,性能,输入,输出进行具体描述 ..................... 4
3.2 算法 ................................................................. 9
3.3 程序逻辑 ............................................................. 9
3.4 接口 ................................................................ 12
3.5测试要点 ............................................................ 12
1 引言
信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,学籍管理系统软件将会为教学办公室带来了极大的方便。
1.1编写目的
本需求的编写目的在于研究学籍管理系统软件的开发途径和应用方法,主要是为了对学生公寓管理系统进行使用和维护。
本需求的预期读者是与学籍管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,支持本项目的领导和公司人员,软件验证者。
该需求充分利用计算机的功能实现对系统管理、信息录入、信息查询,信息打印等的自动化控制,将会使学生公寓管理工作大大减轻,方便友好的信息管理用户界面,简便的操作,完善的数据库管理,将会使得信息管理系统极大限度地应用于现代化学生成绩管理,成为管理人员的得力助手。
1.2 项目背景
● 项目的委托单位:河北联合大学
● 主管部门:学生公寓管理委员会
● 该软件系统与其他系统的关系:与学生管理相关联。
1.3 定义
本需求的编写目的在于研究学籍管理系统软件的开发途径和应用方法。
本 需求的预期读者是与学籍管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,支持本项目的领导和公司人员,软件验证者。
专门术语:
Data processing 数据处理feedback反馈
DTE数据终端设备 transmission传输介质
DCE数据数据设备 LAN局域网
1.4 参考资料 《软件工程基础教程》---- 刘文,朱飞雪 主编: 粘新育,陶洁 副主编:出版社: 北京大学出版社
《asp.net程序设计》 ---- 尚俊杰 编著:出版社: 清华大学出版社
《SQL Server 2008 实用教程》---- 蒋文沛 主编: 韦善周,梁凡 副主编:出版社:人民邮电出版社
《软件工程案例教程》,韩万江,机械工业出版社
2 总体设计
2.1 需求概述 (1)、系统高级管理员功能的需求:
A、学生查询信息管理:可浏览,添加,修改,删除所有学生信息。
B、学生违纪信息管理:可浏览,添加,修改,删除所有违纪、考勤信息。
C、用户信息管理:管理系统中所有登录用户的信息,分配用户的权限。
D、系统后台信息管理:可浏览,添加,修改,删除后台的任务信息,包括数据管理,参数设定,权限设定
(1)、系统一般管理员功能的需求:
A、晚归信息管理:可浏览所有晚归信息,添加,修改,删除属于自己添加的晚归信息。
B、考勤信息管理:可浏览所有考勤信息,添加,修改,删除属于自己添加的考勤信息。
3、系统一般用户功能的需求:
A、公寓信息管理:可浏览一般的水电报修、卫生检查、物品管理等信息。
B、学生违纪信息管理:可浏览一般的考勤信息。
C、学生查询管理:可以浏览一般的学生数据信息。
2.2 软件结构
软件详细结构图1
软件详细结构图2
软件详细结构图3
篇三:详细设计说明书 真正例子
详细设计说明书
1.引言
1.1编写目的
本详细设计说明书是针对网络信息体系结构的课程作业而编写。目的是对该项目进行详细设计,在概要设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为进行后面的实现和测试作准备。本详细设计说明书的预期读者为本项目小组的成员以及对该系统感兴趣,在以后想对系统进行扩展和维护的人员。
2. 系统的结构
? ui:系统界面部分,负责接受用户输入,显示系统输出,负责其他模块功能的协调调用,
并含有站内搜索功能,即在用户指定的已打开的ftp站点中搜索用户需要的资源。ui部分调用common部分的功能读取xml文件中保存的界面元素属性信息,用户最近访问过的10个ftp信息,用户选择的下载的ftp内容列表及其他需要通过xml文件保存的信息。
? client:实现ftp客户端的功能,ftp连接,ftp上传及下载:上传或下载用户指定的
资源,并返回相应的信息。
? search:资源实时检索部分,根据用户输入的资源名称关键字,资源类型和选择的检索
方式检索用户需要的资源,并验证资源的可用性,返回可用资源及其大小,速度等相关信息。
? preview:资源预览部分,显示用户选择的资源的部分内容,以使用户决定是否需要该
资源。preview部分调用common部分读取属性文件的内容亦显示预览资源内容的显示格式。
3.模块1(ui)设计说明
3.1模块描述
实现用户界面的包,含有11个文件51个类,是本系统中最复杂的代码。
3.2功能
负责接受用户输入,显示系统输出,其他模块功能的协调调用,并含有站内搜索功能,即在用户指定的已打开的ftp站点中搜索用户需要的资源。
3.3交互的模块
client,search,preview,common。
3.4 模块设计
该模块中的主要文件,文件中包含的主要类及其功能和与其它包的交互如下:
? MainFrame.java:MainFrame是含有主函数的类,也是lyra客户端开始执行的类,它先后进行资源的初始化,显示主界面等工作,根据屏幕大小设置界面大小,设置界面的观感。
? FtpFrame_AboutBox.java:显示关于窗口的类,当用户点击帮助菜单中的关于菜单
项时会弹出关于对话框。
? Tools.java:FileTools是文件操作辅助类,可以实现文件的递归删除等。
? XMLController.java: JDOMTes是操作xml文件的类,用JDOM来操作xml文件,
实现的功能有:
(1)保存ftp服务器的文件列表(站内搜索时使用),递归的从ftp服务器读取列表,并存入一个xml文件中(文件的命名方法是:ip+用户名.xml);以目录树的形式保存。
(2)根据文件名在文件中查找文件,站内搜索时使用。
(3)保存ftp服务器的信息:ip,端口(默认端口21不保存),用户名(默认anonymous不保存),密码,最多存10个;存在resource\settings\ serversinfor.xml文件中。
(4)读取已存储的ftp服务器信息。
(5)从type.xml读取搜索的类型。
? Constants.java:放置系统运行时使用的一些常量,initcontent()函数对所有常量进行
初始化,这个函数在MainFrame中被调用一次。iconHashMap是hash表,用于存放文件的系统图标。
? CustomizedController.java:包含自定义的控件类,java中的控件可能不能满足需求,
需要自己定义某些属性。这些控件会在创建界面时使用。其中含有的类有:
(1)CustomizedJTable 是表格类,设置表格的某些属性,如字体等。
(2)CustomizedTableCellRenderer是表格单元格绘制器类,主要用于显示文件的系统图标,和文件名。
(3)LeftPanel类的父类是JTabbedPane,用户显示主窗口左边的面板。
(4)RightPanel类的父类是JPanel,用户显示右边的主题部分,包括右上边的搜索及服务
器选项,和中间的显示服务器文件的TabbedPane。.
(5)BottomPanel类是右下放显示下载和服务器信息的JTabbedPane。
(6)CustomizedJButton 是定义按钮类,更改了按钮的字体,java本身默认的字体不好看。
(7)CustomizedTableModel是表格类,实现单元格的不可编辑。
(8)CustomizedTableCellRenderer_Remote类是表格绘制器,在远程文件浏览器RemoteFilesPanel使用,用于显示文件名和文件图标。
(9)FontTableCellRenderer类是表格单元格绘制器,主要功能是设置字体。
(10)FontListCellRenderer类是下拉列表框单元格绘制器,主要用于设置字体。
(11)CustomizedJLabel类是自定义标签类,重新设置了标签的字体。
(12)CustomizedJTextField类是自定义文本框类,主要用于设置文本框的显示属性。
(13)CustomizedJMenu类是自定义菜单类,重新设置了菜单的字体。
(14)CustomizedJMenuItem类是自定义菜单项类,重新设置了菜单的字体。
(15)CustomizedListCellRenderer类是JComboBox即组合框单元格绘制器,用于在本地路径选择的下拉列表中显示磁盘图标。
? SearchResultReceiver.java, SearchResultReceiver是一个接口,主要用于返回搜索结果。
搜索完成后调用接口中的函数通知调用者。其中主要有两个函数:
(1)OnSearchFinished(String[] keywords,ArrayList[] resultset);result是一个10维的数组表result[10],result[i]是由类型为i的资源组成的数组。i:0-9,和类型列表框中的顺序一致。
(2)OnSearchFinished(String[] keywords,ArrayList resultset);不分类型,将所有资源放在一个数组表中。
? FtpFrame.java:FtpFrame是程序主窗口类,类型为JFrame,是由三个分割窗口JSplitPane
构成的。
jSplitPane_Left是左边的分割窗口,水平分割条上边显示本地文件框,下边是预览框; jSplitPane_Right是右边的分割窗口,水平分割条上边是服务器选项和ftp服务器文件显示的窗口,下边是下载和服务器信息显示窗口;
jSplitPane_Whole是整体的分割窗口,垂直分割条,左边是jSplitPane_Lef,右边是jSplitPane_Right。
FtpFrame把LeftPanel,RightPanel,BottomPanel,PreviewWrapperPanel这几部分安装在相应的分割窗格中;LeftPanel,RightPanel,BottomPanel是在CustomizedController.Java中定义的,PreviewWrapperPanel是在Preview包中定义的。
? LeftPanelCtrl.java: LocalFilesPanel是本地文件面板,用表格来显示本地文件的信
息。上边是组合框,显示了磁盘分区通过这里可以改变根目录。表格中显示了文件的信息,包括文件名,文件的系统图标,大小,最近修改日期,属性等。选中一个文件后可以执行上载和删除操作。文件夹会递归的删除。GetCurrentPath()函数返回当前的路径。DisplayPathFiles()函数在列表中显示指定目录下的文件。
? RightPanlCtrl.java:定义右上边的控件。含有的类有:
(1)FtpServerOptionPanel类是服务器连接选项面板,包含服务器地址,端口,用户名,密码等,还包括最上端的搜索选项。openRemoteFilesPanel()函数在下面的TabbedPane中打开一个新的服务器面板,连接服务器。
(2)RemoteFilesPanel类的主要功能是连接Ftp服务器并显示文件。这里会进行文件的上载,下载及预览等操作。RemoteFilesPanel 的内部类TransferController负责调用FtpClient类提供的功能与服务器进行交互,完成用户指定的文件操作。TransferController还有三个内部类:ConnThread类是负责连接服务器的线程(新开一个线程,目的是避免连接时阻塞),DownloadFileThread类是下载文件的线程,UploadFileThread类是上载文件的线程。
(3)SearchResultPanel类是显示搜索结果的类,它有两个子类SearchResultPanelWithinSearchEngine类的功能是在搜索引擎中搜索,SearchResultPanelWithinServer类的功能是站内搜索。搜索引擎的搜索会调用search包中的程序,搜索引擎搜索完成后search包通过OnSearchFinished()来通知SearchResultPanelWithinSearchEngine类,然后显示搜索结果。
(4)RightTabbedPane是显示ftp服务器文件表格的TabbedPane类。
? BottomPanelCtrl.java:实现主窗口下部面板及控件,显示下载情况,服务器连接信息。
包含的主要类有:
(1)RemoteMessPanel类是显示服务器连接信息的面板。需要显示ftp服务器传回的信息,并在显示前进行编码转换,还需要显示本地的相关信息。
(2)DownloadingMessPanel类是显示资源下载信息的面板,显示下载资源的大小,下载速度,已用时间,剩余时间等信息。
3.5流程逻辑
总体流程:
4.模块2(client)设计说明
4.1模块描述
实现ftp客户端FtpClient,有两个文件FtpClient.java和FtpLoginException.java,前者具体实现了ftp协议,后者是为登录时可能抛出的异常而定义的类。
4.2功能
实现ftp客户端FtpClient,实现了ftp协议,用于和ftp服务器通讯和数据传输。
4.3交互的模块
ui
4.4 模块设计
该模块中的主要文件,文件中包含的主要类及其功能和与其它包的交互如下:
? FtpClient.java:含有类FtpClient,,该类会被ui包中的界面类调用,完成ftp功能。
其中要功能的实现有:
在构造函数中根据ip和port建立与服务器的连接;
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。
《详细设计说明书》出自:百味书屋
链接地址:http://www.850500.com/news/6046.html
转载请保留,谢谢!