3医院运营数据统计查询分析系统软件设计说明文档格式.docx
- 文档编号:695778
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:47
- 大小:153.76KB
3医院运营数据统计查询分析系统软件设计说明文档格式.docx
《3医院运营数据统计查询分析系统软件设计说明文档格式.docx》由会员分享,可在线阅读,更多相关《3医院运营数据统计查询分析系统软件设计说明文档格式.docx(47页珍藏版)》请在冰点文库上搜索。
3.1性能
1.系统对灵活性的要求:
作为一个数据检索查询系统,综合查询系统对具体查询的应用灵活性很高。
这主要表现在:
我们是搭建一个通用的综合查询系统框架,而并非仅仅建立一个满足某一种特定要求的查询系统,以达到开发工作成果的最大可复用性;
工程人员(即系统配置人员)需要对查询系统的具体查询功能做精密调整,自由而方便的增加、删除、改变每一条查询;
这样才能够避免将来用户改变对于具体查询工作的需求时,不断修改系统的情况发生。
2.系统对时间特性的要求
速度问题是数据检索查询系统的重要指标之一,综合查询系统同样需要系统反应的快速性,我们设计的系统对与单条大数据量的查询(涉及到多个表,记录数在百万条以上),反应时间最长不能超过20秒,否则就失去了即时查询的意义;
这里我们的主要解决方法是针对每条不同的查询,建立索引,这样我们付出的是存储空间和删除数据时速度的代价,但同时在查询速度上的改善也是极为明显的。
同时,由于本系统有可能经常性的运行一些大数据量查询,因此我们在设计上考虑使用如下图所示的硬件结构:
我们将在综合查询服务器上安装一个数据库系统,并建立一个到生产服务器的数据库链接。
之后在综合查询服务器上建立生产服务器中各个表的实体化视图(快照),每隔五分钟,综合查询服务器会自动与生产服务器连接,更新实体化视图中(已经改变的)记录。
而当我们运行查询时,一切查询工作都在综合查询服务器上进行,对于生产服务器的性能几乎毫无影响。
3.2数据库的选型原则
一、安全可靠性
综合查询系统是医院的统计分析的数据来源,因此数据库系统用来存放各种数据,其自身的安全性是非常重要的,必须确保数据的安全存放、不受入侵、完整性、完备性、一致性等。
应当选择具有一定安全级别和性能的数据库系统来保证数据安全。
二、可扩展性
随着医疗卫生业务的发展而不断完善的系统,仰赖这些庞大的数据存储可以开展电子政务、商业智能以及其它关键性业务应用服务。
因此需要数据库系统支持从移动用户的膝上电脑到拥有数千兆字节数据以千计用户的大规模并性系统。
三、易操作性
客户能否将数据库方面地集成到业务系统中并加以管理,也是系统顺利运行的关键。
因此需要数据库系统易于使用和管理。
该数据库系统必须提供一整套的GUI管理工具,可以简化其安装、管理及远程操作;
并且提供友好的程序员开发工具,实现应用程序的快速开发和高效运行。
另外,医院数据中心数据库系统的选择还应该考虑以下技术要求:
●支持关系数据库
●支持ANSI/ISOSQL-89和SQL-92、ODBC和X/A协议
●支持基于TCP/IP、SPX/IP协议的分别式数据库应用
●支持客户机/服务器体系结构
●支持UNIX和WINDOWS平台
●支持联机数据备份和恢复
●支持系统、客户和表级的权限管理
●支持SMP多CPU硬件体系结构
●支持多字节数据处理格式
●系统扩充时,可以平滑升级
●数据库所达到的安全级别
●支持加锁机制
●支持异构数据库之间的互联
在进行数据库设计时要遵循的规范:
统一的数据库元素命名,包括表、视图、字段、存储过程、触发器;
完善的数据一致性设计;
完整的数据库设计文档。
考虑医院巨大的数据量,我们建议采用ORACLE10g企业版作为整个系统的数据库。
4CSCI体系结构设计
4.1体系结构
4.1.1程序(模块)划分
4.1.2程序(模块)层次结构关系
4.2全局数据结构说明
4.2.1对象设计说明
用一系列图表列出本程序系统内的每个程序(包括每个模块和子程序)的名称、标识符和它们之间的层次结构关系。
类名
源文件
功能
备注
AgeRange
AgeRange.java
年龄段对象
BarChartBuilder
BarChartBuilder.java
直方图生成对象
BarChartTableBuilder
BarChartTableBuilder.java
直方图对应表格生成对象
为每一个直方图生成一个相应的表格
ChartBuilder
ChartBuilder.java
图形生成对象
图形生成虚基类BarChartBuilder、PieChartBuilder、LineChartBuilder和XYChartBuilder是它的继承类。
ChartBuilderFactory
ChartBuilderFactory.java
图形生成对象工厂
生成各种图形生成对象(ChartBuilder类)
ChartPageBuilder
ChartPageBuilder.java
图表页面生成对象
生成一个HTML页面,其中包含了图表
ChartTableBuilder
ChartTableBuilder.java
图所对应表生成对象
虚基类
PieChartTableBuilder
XYChartTableBuilder是它的继承类。
ClinicAdviceByDrug
ClinicAdviceByDrug.java
按药性搜索处方对象
ClinicAdviceSearch
ClinicAdviceSearch.java
按任意条件搜索出发对象
ClinicCase
ClinicCase.java
门诊病历对象
ClinicAdvice
ClinicAdvice.java
门诊处方对象
ClinicAdviceByDoc
ClinicAdviceByDoc.java
按医生搜索处方对象
ClinicCaseByDiag
ClinicCaseByDiag.java
按药性搜索病历对象
ClinicCaseByDoc
ClinicCaseByDoc.java
按医生搜索病历对象
ClinicCaseByPat
ClinicCaseByPat.java.java
按病人搜索病历对象
ClinicFeeSearch
ClinicFeeSearch.java
门诊收费查询对象
ClinicPatientsSearch
ClinicPatientsSearch.java
门诊病人查询对象
ClinicSearch
ClinicSearch.java
门诊查询对象
虚基类(所有类名以Clinic开始的类都是它的继承类)
Common
Common.java
通用对象
不易归入单独类的常用方法归入此类
CustomCategoryURLGenerator
CustomCategoryURLGenerator.java
定制条状图链接生成对象
主要解决在直方图中嵌入链接的问题
CustomPieURLGenerator
CustomPieURLGenerator.java
定制饼图链接生成对象
主要解决在饼图中嵌入链接的问题
Department
Department.java
科室对象
Doctor
Doctor.java
医生对象
HBarChartBuilder
HBarChartBuilder.java
水平条状图对象
Password
Password.java
口令对象
PieChartBuilder
PieChartBuilder.java
饼图生成对象
PieChartTableBuilder.java
饼图表格对象
QueryCommand
QueryCommand.java
查询命令对象
RequestHandler
RequestHandler.java
查询请求处理对象
TableBuilder
TableBuilder.java
表格生成对象
TableBuilder2
TableBuilder2.java
自动分页表格生成对象
Tree
Tree.java
树结构生成对象
生成查询系统的树结构
User
User.java
用户对象
XYChartBuilder
XYChartBuilder.java.java
XY数值图对象
生成XY轴均为数值的图形
XYChartTableBuilder
XYChartTableBuilder.java
XY图表表格对象
LineChartBuilder
LineChartBuilder.java
线形图对象
生成线形的趋势图
Evaluation
Evaluation.java
员工考评对象
4.2.2数据结构
第一类:
基础类
序号
名称
命名
说明
1.
表
P_TTT
其中TTT为表示此表意义的自定名称。
2.
同义词
PS[V|T]
都只建立私有同义词,程序内都使用带用户名的同义词
V:
一般是指向不可更新视图,即使是指向单表,也表示这个同义词只用于读取,不可更新。
T:
直接对表的同义词,可更新数据。
3.
视图
PV
不建立不带条件的单表视图
4.
存储过程
PP
独立
5.
存储函数
PF
6.
触发器
PRTTT
7.
序列
PNTTT
建立相应的同义词,取名为PsnTTT
8.
索引
PK_TTT
主键
UK_TTT_XXX
唯一索引
其中,XXX为字段名。
如果整个名称太长,则用In结尾(n=1,2,3,…)
IDX_TTT_XXX
XXX的含义同上。
11.
包
PG[ss]XXX
例如PG60GET
12.
数据库联接
目标SID名
13.
字段名
FXXX
英、中文。
少用下划线。
第二类:
业务类
系统名(或系统组名)_TTT
例如MZ_TTT、MZSF_TTT、ZY_TTT
HS[G|T]
HV
HP
HF
HRTTT
HNTTT
建立相应的同义词,取名为HsnTTT
HG[ss]XXX
例如HG60GET
4.3接口设计
由于我们采用面向对象的设计方法,这里对对象的接口(即公共方法)进行描述:
✧BarChartBuilder对象
方法
描述
PublicBarChartBuilder(Connectionconn,StringfSql,StringfDispSql,Stringxml)
构造函数
PublicJFreeChartgenerateChart()
创建图形输出对象
✧BarChartTableBuilder对象
publicBarChartTableBuilder(JFreeChartchart)
publicStringgenerateTable(booleancalSeriesTotal,booleancalCategoryTotal)
生成图形对应图表对象
✧BrowserDetector对象
publicBrowserDetector(HttpServletRequestrequest)
publicbooleanagentIsIE6()
✧ChartBuilder对象
publicChartBuilder(Connectionconn,StringfSql,StringfDispSql,Stringxml)
publicabstractJFreeChartgenerateChart()
虚方法,生成图形对象(具体方法在继承类中实现)
✧ChartBuilderFactory对象
publicChartBuilderFactory(Connectionconnection,Stringsql,StringdispSql,StringcfgXML)
publicChartBuildergetChartBuilder()
根据XML设置参数生成不同ChartBuilder对象
✧ChartPageBuilder对象
publicChartPageBuilder(StringsessionId,Stringxml)
publicvoidoutputHTML(JFreeChartchart,
ServletContextapplication,
HttpServletRequestrequest,
HttpServletResponseresponse)
输出HTML至浏览器
✧ChartTableBuilder对象
publicChartTableBuilder(JFreeChartchart)
publicabstractStringgenerateTable(booleancalSeriesTotal,booleancalCategoryTotal)
虚方法(具体实现在集成类中实现)
publicStringgetErrorMsg()
返回错误信息
✧ClinicAdvice对象
publicClinicAdvice(Connectionconn,StringcaseNo)
publicStringgetAdviceHTML(booleanwholePage)
取门诊医嘱明细HTML格式的内容
✧ClinicAdviceByDoc对象
publicClinicAdviceByDoc(Connectionconn,HttpServletRequestrequest)
publicStringgetCaseNoList(Stringprefix)
取搜索到的相关医嘱对应的病人流水号列表
publicStringgetCompleteCase()
取流水号相关的完整病历信息
✧ClinicAdviceByDrug对象
publicClinicAdviceByDrug(Connectionconn,HttpServletRequestrequest)
publicStringgetDrugCategories(Stringprefix)
取药类列表
publicStringgetDrugList(Stringprefix)
取特定药类的药品列表
publicStringgetAdviceCollection(StringitemNo)
取与药品代码相关的门诊医嘱列表
publicStringgetStatisticTable()
取特定药品医生用药统计结果
✧ClinicCaseByPat对象
publicClinicCaseByPat(Connectionconn,HttpServletRequestrequest)
取流水号列表
取病人完整病历
✧ClinicFeeSearch对象
publicClinicFeeSearch(Connectionconn,HttpServletRequestrequest)
publicStringgetBasicInfo()
取病人基本信息
publicStringgetCaseList()
取病人流水号列表
publicStringgetCategoryFees(StringcaseNo)
取病人分类费用
publicStringgetFeeDetails(StringcaseNo,StringcategoryId)
取病人明细费用
✧ClinicSearch对象
虚基类,门诊部分查询类由本类继承而来。
✧CustomCategoryURLGenerator对象
publicCustomCategoryURLGenerator(Stringprefix)
publicCustomCategoryURLGenerator()
publicStringgenerateURL(CategoryDatasetdata,intseries,Objectcategory)
生成URL链接数组
✧CustomPieURLGenerator对象
publicCustomPieURLGenerator(Stringprefix,StringcategoryParameterName)
publicStringgenerateURL(PieDatasetdata,Objectcategory)
✧Department对象
publicDepartment(Connectionconn,HttpServletRequestrequest)
publicStringgetAllWithLinks(Stringprefix)
输出附带链接的科室列表
✧Doctor对象
publicDoctor(Connectionconn,HttpServletRequestrequest)
publicStringgetDoctorsByDept(StringdeptId)
取指定科室医生列表
publicStringgetDoctorsByDept(booleangenerateLink,Stringprefix,StringdeptId)
✧ImageCleaner对象
publicImageCleaner(StringimagePath,StringsessionId)
publicvoidclean()
删除指定目录下临时文件
✧InPatientAdviceSearch对象
publicInPatientAdviceSearch(Connectionconn,HttpServletRequestrequest)
publicStringgetCaseNoList()
publicStringgetAdviceDetails(StringcaseNo)
取指定流水号医嘱明细
✧InPatientFeeSearch对象
publicInPatientFeeSearch(Connectionconn,HttpServletRequestrequest)
取分类费用
取指定分类费用明细
✧LineChartBuilder对象
publicLineChartBuilder(Connectionconn,StringfSql,StringfDispSql,Stringxml)
publicJFreeChartgenerateChart()
返回图形对象
✧Password对象
publicPassword()
publicStringgeneratePassword(StringclearText)
根据明文生成密码
✧PieChartBuilder对象
publicPieChartBuilder(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 医院 运营 数据 统计 查询 分析 系统软件 设计 说明