软件详细设计说明书.docx
《软件详细设计说明书.docx》由会员分享,可在线阅读,更多相关《软件详细设计说明书.docx(95页珍藏版)》请在冰豆网上搜索。
![软件详细设计说明书.docx](https://file1.bdocx.com/fileroot1/2023-1/24/207e3a6a-d939-4ded-bd3a-eb178bfb3969/207e3a6a-d939-4ded-bd3a-eb178bfb39691.gif)
软件详细设计说明书
密级:
机密—JM
文档编号:
SD002
版本号:
V1.0
软件详细设计说明书
文件更改摘要:
日期
版本号
修订说明
修订人
审核人
批准人
2012.10.15
V1.0
创建
2012.11.12
V1.0
增加门诊就诊模块
1.引言
1.1.编写目的
详细设计是设计的第二个阶段,这个阶段的主要任务是在概要设计书基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。
概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。
详细设计则要解决如何实现各个模块的内部功能,即模块设计。
具体的说,模块设计就是要为已经产生的各子系统设计详细的算法。
但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为用某种程序设计语言书写的程序。
预期读者:
对相关业务技术和总体方案作出决策的管理人员和质量管理人员;
对本《详细设计》进行评审和确认的有关业务,技术人员
参加编码阶段工作的全体软件工程师
参加系统测试的全体软件工程师
参加试运行的全体软件工程师
项目组,其他有权需要调用本文档的人员
1.2.背景
a.待开发软件系统的名称:
历下区社区卫生综合管理信息平台-社区门诊医疗系统
b.项目提出者:
历下区卫生局
c.开发者:
中联佳裕(北京)科技有限公司
d.用户:
历下区卫生局及所属的10个卫生服务站点
e.运行该软件的计算站(中心):
历下区卫生局VPN专网
f.项目与其他软件和系统的关系:
该软件系统同山东省城市社区卫生服务信息协同应用系统的基本卫生服务、同新中天公司的OA系统、门户网站有相互来往关系,且嵌入山东省城市社区卫生服务信息协同应用系统中进行使用
1.3.定义
DB2:
是IBM出口的一系列关系型数据库管理系统
LINUX:
是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核
WebSphere:
是IBM的软件平台。
它包含了编写、运行和监视全天候的工业强度的随需应变Web应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具
VNC:
(VirtualNetworkComputing)是虚拟网络计算机的缩写。
VNC是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的。
VNC是在基于UNIX和Linux操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和Windows和MAC中的任何远程控制软件媲美。
在Linux中,VNC包括以下四个命令:
vncserver,vncviewer,vncpasswd,和vncconnect。
大多数情况下我只需要其中的两个命令:
vncserver和vncviewer。
SSH:
为建立在应用层和传输层基础上的安全协议。
SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
利用SSH协议可以有效防止远程管理过程中的信息泄露问题
TOAD:
它最大的特点就是简单易用,访问速度快。
使用Toad,我们可以通过一个图形化的用户界面快速访问数据库,完成复杂的SQL和PL/SQL代码编辑和测试工作。
Toad由Oracle开发专家专门为开发人员而设计,是一个功能强大、结构紧凑的专业化PL/SQL开发环境。
SSH:
在J2EE项目中表示了3种框架,即Spring+Struts+Hibernate。
Struts对Model,View和Controller都提供了对应的组件。
Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,它由RodJohnson创建。
它是为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,可以应用在任何使用JDBC的场合,可以在Servlet/JSP的Web应用中使用,也可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
Ajax:
的核心是JavaScript对象XmlHttpRequest。
该对象在InternetExplorer5中首次引入,它是一种支持异步请求的技术。
简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。
DWR:
(DirectWebRemoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。
它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样。
BIRT:
(BusinessIntelligenceandReportingTools),是为Web应用程序开发的基于Eclipse的开源报表系统,特别之处在于它是以Java和J2EE为基础。
BIRT有两个主要组件:
基于Eclipse的报表设计器,以及部署到应用服务器上的运行时组件。
My97DatePicker:
一个非常好用的日期控件,功能非常优秀,绝对是你一直想要的日期控件.
SuggestFrameWork:
SuggestFramework故名思意,就是仿GoogleSuggest的一个小框架,让你的文本框也有提示功能。
利用suggestframework你可以在自己的网站上很轻松实现“输入提示”效果,这种效果会很大程度上提高用户体验,提高搜索效率。
一个页面上可以出现多个搜索框,每个搜索框都可以实现单独配置。
此框架无浏览器限制,基本兼容当前的绝大多数浏览器
1.4.参考资料
文档名
版本号
发表日期
来源
文档简称
政府进货竞争性谈判文件
项目名称:
历下区社区卫生综合管理信息平台
2012.5
招标公司
谈判文件
国家基本公共卫生服务规范2011版
2011.5
内部
基本公共卫生服务规范
2.总体设计
2.1.运行环境
在卫生局的主机环境下,系统提供可靠的性能,内网满足全区所有用户100-200员工的日常工作需要。
服务器环境:
应用服务器
CPU:
2颗,4核,2.4G以上;最大支持4颗以上
内存:
8G,最大可扩展到64G
硬盘:
5块146GSAS,RAID5
网卡:
2个1000M接口
冗余电源
2台
数据库服务器
CPU:
2颗,4核,2.4G以上;最大支持4颗以上
内存:
16G,最大可扩展到64G
硬盘:
5块146GSAS,RAID5
网卡:
2个1000M接口
冗余电源
2台
磁盘阵列及双机热备软件
高性能的RAID控制器,支持SBB架构,硬件校验加速器≥2个,16槽位,6块1000GSATA硬盘,最大支持240块磁盘,锂电池保护(非ups);配置存储分区软件、虚拟化存储卷管理软件、自动介质巡检软件、数据迁移软件,双机热备软件。
1套
2.2.软件功能描述
CCS1.0.0_RD002_软件需求规格说明书
2.3.软件结构
模块结构图第一层
模块结构图第二层
3.模块设计
3.1.门诊导医
3.1.1.描述
病人挂号功能,如果是该社区的居民如已有健康档案,则直接查询即可选择医生挂号;
没有健康档案则先建立完健康档案再进行挂号;如果是其它情况下的病人则建立临时档案后再选择就诊医生
3.1.2.功能
门诊挂号和挂号记录查询。
如果该病人是该社区已建档的居民则查询人口学表,进行挂号
如果该病人是该社区没有建档的居民则先建立正式档案,然后再挂号
如果该病人不是社区所在省份的居民则建立临时档案后,再挂号
门诊查询功能:
查询一段时间的门诊量,查询一个医生的门诊量,查询操作员挂号数量,查询该社区一段时间门诊量
(程序框图、表字段判断)
3.1.3.参数说明
档案类型:
正式档案,查询T_DA_JKDA_RKXZL表,如果档案不存在则新建(居民健康档案管理功能)
档案类型:
临时档案,查询DA_LSDA表,如果档案不存在则新建
挂号成功后果操作表T_MZ_MZGH
门诊挂号查询页面:
档案类型(正式档案,临时档案)、性别(字典),出生日期(日期控件)、身份证号(可通过身份证读卡器)、医疗保险号。
正式档案查询页面
临时档案查询页面
正式档案查询结果页面
临时档案查询结果页面
挂号操作(该社区必须有医生角色的用户)
挂号查询结果页面
临时建档:
正式建档(部分页面):
3.1.4.流程逻辑
3.1.5.算法[可选]
如果处理逻辑较为复杂,需详细说明本模块功能所选用的算法,具体的计算机公式和计算步骤。
3.1.6.文件清单
文件名称(带相对路径)
说明
/jsp/menzhenyiliao/menzhendaoyi/menzhenguahao.jsp
正式档案查询结果页面,在此页面
有挂号操作
/jsp/menzhenyiliao/menzhendaoyi/menzhenguahao1.jsp
临时档案查询结果页面,在此页面有挂号操作
/jsp/menzhenyiliao/menzhendaoyi/linshidangan.jsp
建立新的临时档案页面
/jsp/menzhenyiliao/menzhendaoyi/guahaochaxun.jsp
挂号查询页面和结果显示页面
/jsp/menzhenyiliao/menzhendaoyi/menzhendaoyiSelect.jsp
正式档案查询页面
/jsp/menzhenyiliao/menzhendaoyi/menzhendaoyiSelect1.jsp
临时档案查询页面
/jsp/menzhenyiliao/menzhendaoyi/jiuzhenyisheng.jsp
挂号选择医生页面
使用的Action类
类的动作名称
com.zljy.menzhenyiliao.action.MenzhendaoyiAction
showSelect:
查询页面,showAll:
正式档案,showAll1:
临时档案,showLSDA:
临时建档,showGHCX
:
挂号查询,guahaoYS:
挂号操作,guahaoInsert:
挂号插入
业务实现Service
类名
MenzhendaoyiServiceImpl
包名
com.zljy.menzhenyiliao.service.impl
父类
无
接口
MenzhendaoyiService
方法名
方法概述
参数
返回值
功能描述
getPageBean
int页码
String姓名
TPwUseruser,
String性别
String住址
String出生日期
String身份证号
String档案状态IndividualArchivesService个人档案Service
PageBean
根据条件查询出所有符合条件的档案
getPageBeanGH
int页码
TPwUseruser
String挂号时间
PageBean
根据条件查询出所有符合条件的挂号病人
insert
Object保存对象
void
插入一个对象
czyList
TPwUser用户信息
List
根据机构编号查询出当前操作员信息
ghyList
TPwUser用户信息
List
查询出当前机构的所有医生信息
findHQL
Stringhql语句
List
根据语句查询
getInfoByHql
TPwUser用户信息
List
查询最大的门诊号并截取字符串,用于生成门诊号
页面跳转控制action
类名
MenzhendaoyiAction
包名
com.zljy.menzhenyiliao.action
父类
MenzhendaoyiActionSupport
接口
无
方法名
功能描述
操作的数据库表
showAll
正式档案查询
TDaJkdaRkxzl人口学资料
showAlled
正式档案查询(分页)
TDaJkdaRkxzl人口学资料
showAll1
临时档案查询
TDaJkdaRkxzl人口学资料
showAll1ed
临时档案查询(分页)
TDaJkdaRkxzl人口学资料
showLSDA
跳转到创建临时档案界面
无
showGHCX
挂号查询所有
TMzMzgh门诊挂号表
TPwUser用户信息表
showSelect
跳转到正式档案的查询界面
无
showSelect1
跳转到临时档案的查询界面
无
insertLSDA
创建临时档案
TMzMzgh门诊挂号表
TPwUser用户信息表
guaHaoSelect
挂号条件查询
TMzMzgh门诊挂号表
TPwUser用户信息表
guaHaoSelected
挂号条件查询(分页)
TMzMzgh门诊挂号表
TPwUser用户信息表
guahaoYS
跳转到挂号医生界面
TPwUser用户信息表
guahaoInsert
正式挂号,添加到挂号表中
TDaJkdaRkxzl人口学资料
TMzMzgh门诊挂号表
TPwUser用户信息表
3.1.7.用户界面[可选]
如果模块功能涉及到用户界面并且,需要给出界面的具体设计,建议使用Frongpage或Dreamweaver制作出htm,并将效果图粘贴在文档中。
用户界面应预先由分析人员与编程人员共同确定统一风格。
3.1.7.1.页面名称
●对应文件名称 XXXXXXXX (应与3.1.6文件清单中的文件对应)
●页面逻辑与控制
描述页面总体逻辑
●元素逻辑与控制
描述页面各元素逻辑处理
名称
操作
备注
3.1.8.性能[可选]
说明对各模块的性能要求,包括精度、时间特性和处理速度。
3.2.门诊就诊
3.2.1.描述
门诊挂号之后,应该到相应的挂号医生处就诊;如果没有挂号操作也可以直接就诊。
如需要填写病历和用药则点击“新建病历”;一个人可以有多个病历、医嘱(药品、其它检查生成收费记录)
3.2.2.功能
如果已挂号可通过“挂号病人”查询列表然后再添加病历、医嘱及医嘱的审核。
已就诊查询可以查看就诊结束后的内容
直接就诊居民,在就诊开始时,首先给他挂号然后再添加病历信息
3.2.3.参数说明
就诊查询页面:
档案状态是从字典中获得、性别:
字典,姓名,身份证号(可通过读卡器),医疗保险号,操作时间:
查询档案操作页面:
(在就诊时,已经为其挂号且修改状态是已就诊)
挂号病人:
新建病历:
添加医嘱
3.2.4.流程逻辑
3.2.5.算法[可选]
如果处理逻辑较为复杂,需详细说明本模块功能所选用的算法,具体的计算机公式和计算步骤。
3.2.6.文件清单
文件名称(带相对路径)
说明
/jsp/jiuzhen/jiuzhen/queryJiuzhen.jsp
就诊查询页面
/jsp/jiuzhen/jiuzhen/listjiuzhen.jsp
挂号病人就诊列表
/jsp/jiuzhen/jiuzhen/listjiuzhen2.jsp
正式档案直接就诊列表
/jsp/jiuzhen/jiuzhen/listjiuzhen3.jsp
临时档案直接就诊列表
/jsp/jiuzhen/jiuzhen/listjiuzhen4.jsp
暂时不用
/jsp/jiuzhen/jiuzhen/addbingli.jsp
挂号病人添加病历页面
/jsp/jiuzhen/jiuzhen/addbingli2.jsp
直接就诊添加病历页面
/jsp/jiuzhen/jiuzhen/shenhe.jsp
填写完医嘱时,在此页面填写审核人
/jsp/jiuzhen/jiuzhen/seachlinshidangan.jsp
给居民健康档案管理使用的页面
/jsp/jiuzhen/jiuzhen/jiuzhentongji.jsp
已就诊统计结果页面
/jsp/jiuzhen/jiuzhen/bingliview.jsp
查看病历页面
使用的Action类
类的动作名称
com.zljy.jiuzhen.action.JiuZhenAction
toselect:
查询页面,queryList:
挂号病人,querymGuahao:
直接就诊,jiuzhenTongji:
已就诊查询,toinsert:
跳转添加病历,insertJiuZhen:
插入病历操作
业务实现Service
类名
JiuZhenServiceImpl
包名
com.zljy.jiuzhen.service.impl
父类
无
接口
JiuZhenService
方法名
方法概述
参数
返回值
功能描述
getPageBean()
TMzJiuzhen门诊就诊表
Pcode页码
TPwUser用户表
PageBean存放数据的类
实现门诊就诊已就诊查询
getPageBean()
TMzMzgh门诊挂号表
Pcode页码
TPwUser用户表
PageBean存放数据的类
实现门诊就诊已挂号病人查询
getPageBean()
DaLsda临时档案表
Pcode页码
TPwUser用户表
PageBean存放数据的类
实现门诊就诊临时档案查询
getInfoByHql()
TPwUser用户表
最大门诊号
查询最大门诊号
selectTMzYizhuByMzh()
Stringmzh门诊号
TPwUser用户表
TmzYizhu实体类
根据门诊号机构号查找门诊医嘱
selectTMzSfhzByMzh()
Stringmzh门诊号
TPwUser用户表
TMzSfhz实体类
根据门诊号机构号查找门诊收费汇总表
updateTMzYizhu
TMzYizhu医嘱,TMzJiuzhen就诊,String[]ypbh药品编号,String[]ypmc药品名称,String[]yplb药品类别,String[]ypjl药品剂量,String[]yzxdw进销单位,String[]yypl用药频率,String[]ypyf药品用法,String[]ypzb药品组别,String[]ycxts持续天数,String[]ybz备注,String[]ysl数量,String[]ylsdw零售单位,
String[]ydj单价,String[]yzj总价,String[]sfzt收费状态,String[]shzt审核状态
String
更新医嘱信息
updateTMzJiuzhen()
String
更新就诊记录表
跳转控制action
类名
JiuZhenAction
包名
com.zljy.jiuzhen.action
父类
JiuZhenActionSupport
接口
无
方法名
方法概述
参数
返回值
功能描述
toselect()
String
点击树形菜单门诊就诊
bingliview()
String
点击门诊号显示电子病历
updateJiuZhen
String
实现就诊记录的修改
Toinsert()
String
点击新建病历
toinsertMGuahao()
String
未挂号点击查询档案点击就诊
queryList()
String
查询已经挂号尚未就诊的信息
querymGuahao()
String
点击查询档案查询所有辖区内的个人信息
insertJiuZhen()
String
挂号就诊,点击新建病历再点击保存时调用
insertJiuZhen2()
String
未挂号直接就诊点击保存时调用
insertTyMzinfo()
String
关联医疗服务-门诊医疗插入到暂时性健康记录表
jiuzhenSelect()
String
已就诊查询统计
3.2.7.用户界面[可选]
如果模块功能涉及到用户界面并且,需要给出界面的具体设计,建议使用Frongpage或Dreamweaver制作出htm,并将效果图粘贴在文档中。
用户界面应预先由分析人员与编程人员共同确定统一风格。
3.2.7.1.页面名称
●对应文件名称 XXXXXXXX (应与3.1.6文件清单中的文件对应)
●页面逻辑与控制
描述页面总体逻辑
●元素逻辑与控制
描述页面各元素逻辑处理
名称
操作
备注
3.2.8.性能[可选]
说明对各模块的性能要求,包括精度、时间特性和处理速度。
3.3.门诊收费
3.3.1.描述
病人再就诊结束后,如有有医嘱则会产生费用,病人需到收费处交费,然后到药品发药处领药。
3.3.2.功能
病人交费,收费员查询此次的就诊的总费用,然后收费。
3.3.3.参数说明
门诊收费查询页面:
已收费查询结果页面:
未收费查询结果页面:
收费页面:
3.3.4.流程逻辑
3.3.5.算法[可选]
如果处理逻辑较为复杂,需详细说明本模块功能所选用的算法,具体的计算机公式和计算步骤。
3.3.6.文件清单
文件名称(带相对路径)
说明
/jsp/menzhenyiliao/menzhenshoufei/weishoufeichaxun.jsp
收费查询页面
/jsp/menzhenyiliao/menzhenshoufei/shoufeiShow.jsp
收费查询结果页面
/jsp/menzhenyiliao/menzhenshoufei/shoufeiXinxi.jsp
已收费查询结果页面
/jsp/menzhenyiliao/menzhenshoufei/shoufeimingxi.jsp
已收费清单页面
/jsp/menzhenyiliao/menzhenshoufei/qdshoufei.jsp
收费清单页面
使用的Action类
类的动作名称
com.zljy.menzhenyiliao.action.MenzhenshoufeiAc