1、I目录第一章 问题定义 11 开发背景 12 开发目的 1第二章 可行性研究与需求分析 22.1 可行性研究 .22.1.1 技术可行性 22.1.2 经济可行性 22.1.3 操作可行性 22.2 需求分析 .22.2.3 数据流图 3第三章 总体设计 .63.1 总体设计原理 .63.2 运行环境与系统结构 73.3 系统流程图 .73.4 系统功能模块图与设计 .73.5 系统功能分析 .93.6 系统安全与维护措施 .9第四章 详细设计 94.1 数据库的概念设计 94.1.1 局部 E-R 模式设计 .94.1.2 全局 E-R 设计 .124.2 数据库的逻辑设计 .13第五章 测
2、试 155.1 测试计划 155.2 测试目的 .155.3 测试目标 155.4 测试方法 155.5 测试项目 16总 结 .161第一章 问题定义1 开发背景 随着计算机及网络技术的飞速发展,Internet/Intranet 应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大,从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。如何利用现代信息技术使企业拥有快速、高效的市场反映能力和高度的效率,已是医药经营企业,特别是医药连锁经营企业特别关心的问题。尽快建立一个功能齐备的药品管理系统,完善现代企业的信息化管理机制,已成为医药企业生存发展的当务之急.
3、 通过本系统软件,能帮助用户利用计算机管理药品,快速方便地对客户所需要的药品进行查找,方便了客户的同时,也使用户更加方便的管理每天的进货情况.2 开发目的为 了 适 应 现 代 社 会 人 们 高 度 强 烈 的 时 间 观 念 , 中 小 型 医 院 药 品 管 理 系 统 软 件 为 医 院带 来 了 极 大 的 方 便 。中 小 型 医 院 药 品 管 理 系 统 可 实 现 对 药 品 进 行 各 项 管 理 。 借 助 本 系 统 显 示 的 结 果 可以 达 到 以 下 目 的 : 方 便 使 用 者 可 以 安 全 的 查 找 自 己 想 要 的 各 种 药 品 信 息 ; 通
4、过 全 面 的 药 品 信 息 采 集 和 处 理 , 辅 助 提 高 系 统 的 管 理 水 平 ;使用本系统,可以有利的发展小型的药品管理系统的效率。2第二章 可行性研究与需求分析2.1 可行性研究2.1.1 技术可行性 一个完备的中小型医院药品管理系统具有以下优越性:方便管理员查询药品的进销等各种情况,节省时间,可以提高系统的工作效率和准确性。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在查询药品信息时发挥高效、便捷的作用,把系统管理员从繁重的工作中解脱出来!该药品管理系统是以 SQL Server 数据库为后台核心应用、以服务为目的信息平
5、台,对资源进行科学的加工整序和管理维护,为药品信息提供管理。2.1.2 经济可行性经济可行性主要依据是成本/效益分析,该系统的目标是以最低的成本,在最短的期限内开发出药品管理系统。系统能减少很多不必要的资源,不用像以前那样用冗余的纸张式的管理。大大节省了医院的能源。并且计算机的存储与快速查询功能大大提高了药品信息管理的效率,并且还提高了药品信息管理的精确度。方便快速的操作,可减少药品信息管理的漏洞,又减少因工作的冗余出现的错误,并且操作非常简单,可减少许多不很必要的人员,这无论从物质上还是工作人员的工资上都为医院节约了开支。为医院增加了财富。目标系统开发需求比较低,加上具有成熟的软硬件环境,所
6、以在软硬件的支出上比较低。而且,目标系统并不是十分的复杂。当系统开发完实际运行后,将很大程度上提高计算机的功能,在为使用者带来便利的同时,也为系统的进一步推广创造了条件。这带来的经济回报将远超过支出,并且最重要的是该软件的开发可以使我们对系统的开发有全面的认识。从经济角度考虑,此药品管理系统开发可行。2.1.3 操作可行性用户仅需具有基本的电脑操作能力即可。 综上所述,此项目在技术、经济、操作和社会效益上是完全可行的。2.2 需求分析2.2.1 系统功能及用户需求分析3在 开 始 制 作 中 小 型 医 院 药 品 管 理 系 统 之 前 , 就 要 先 明 确 此 系 统 能 做 些 什 么
7、 事 情 , 也就 是 所 谓 的 需 求 .1. 功 能 需 求( 1) 对 药 品 信 息 的 维 护 ,及 时 的 添 加 新 药 品 的 信 息 ,如 药 品 编 号 , 药 品 名 称 ,药 品 数 量 ,单 价 ,规 格 ,购 置 日 期 等 .( 2) 对 系 统 的 安 全 性 管 理 , 包 括 用 户 的 添 加 以 及 密 码 的 修 改 。( 3) 对 药 品 库 存 的 查 询 ,包 括 药 品 的 编 号 , 药 品 名 称 ,药 品 数 量 ,单 价 ,规 格 ,购 置 日 期 .过期 日 期 .( 4) 对 各 种 药 品 的 销 售 的 情 况 进 行 统 计
8、 ,对 进 货 情 况 进 行 统 计 ,对 报 损 情 况 进 行 统 计2 信 息 需 求本 系 统 应 该 包 含 用 户 个 人 基 本 信 息 的 管 理 , 药 品 基 本 信 息 的 管 理 , 客 户 基 本 信 息 的管 理 , 供 货 商 基 本 信 息 的 管 理 等 。用 户 个 人 基 本 信 息 : 编 号 ,姓 名 ,性 别 ,年 龄 ,出 生 年 月 , 籍 贯 , 联 系 电 话药 品 基 本 信 息 的 管 理 : 药 品 编 号 ,规 格 ,数 量 ,单 价 ,生 产 日 期 ,生 产 厂 商客 户 基 本 信 息 : 姓 名 ,性 别 ,年 龄 ,出 生
9、 年 月 , 联 系 电 话 ,家 庭 住 址供 货 商 基 本 信 息 : 供 货 商 编 号 ,名 称 ,地 址 ,联 系 电 话 ,邮 编3. 处 理 需 求本 管 理 系 统 要 求 能 够 实 现 浏 览 药 品 的 所 有 信 息 , 浏 览 供 货 商 的 所 有 信 息 , 用 户 对 药品 的 管 理 信 息 等 功 能 。4. 用 户 需 求医 院 药 品 管 理 系 统 针 对 的 用 户 主 要 是 药 品 管 理 员 ,客 户 和 供 货 商 .用 户 需 求 包 括 以 下 两 个 方 面 :药 品 管 理 员 可 以 在 登 陆 验 证 通 过 以 后 , 进 入
10、 药 品 管 理 系 统 界 面 进 行 增 加 用 户 、 修 改 用户 密 码 .管 理 员 能 够 在 登 陆 系 统 后 对 药 品 信 息 进 行 药 品 增 加 、 药 品 删 除 、 药 品 修 改 .管 理 员 能 够 在 登 陆 系 统 后 对 供 货 商 信 息 进 行 增 加 、 删 除 、 修 改2.2.3 数据流图 数据流程图,它是描述数据处理过程的有力工具。数据流程图从数据传递和加工的角度,以图型的方式刻画数据处理系统的工作情况。数据流程图是一种能全面地描述信息系4统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。本管理系统的
11、数据流图如下图 2.1 所示:药 品管 理 员药品管理员药 品管 理 系 统药品出入库信息 药品信息1药品管理药品管理员需求信息 2销售管理4更新库存清单库存信息5处 理 定 货定货信息3 供货商客 户销售信息采购员定货信息药品信息药品信息图 2.1 药品管理系统的基本系统模型5药品管理员药品信息 1.1接收药品信息药品信息药品信息 1.2更新库存信息清单药品查询库存清单药品信息药品编号信息1.3药品查询查询信息查询信息客 户图 2.3 药品管理层数据流图D1 D2D3查询信息药品管理员药品信息 2.1接收药品信息药品信息药品信息 2.2更新库存信息清单药品查询库存清单药品信息库存信息2.3处
12、理出货出货信息报表信息客户 2.4产生报表图 2.4 销售管理层数据流图药品信息D1 D2D3出货信息 出货信息图 2.2 药品管理系统的顶层数据流图6第三章 总体设计3.1 总体设计原理经过了需求分析,我们已经清楚了系统所要完成的全部功能,接下来就是决定“怎么做”。 概括的说,总体设计的基本目的就是回答“ 系统应该如何实现?” 的这个问题。通过这个阶段的工作,将划分出组成系统的物理元素:程序,文件,数据库,人工过程和文件等。总体设计阶段的另一项重要任务是设计基本的结构,也就是要确定系统中每个程序是由哪些模块组成,以及这些模块间的相互关系。采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅
13、读和理解。因为程序的错误通常局限在有关的模块及它们之间的接口中,所以模块化使软件容易测试和调试。应而有助于提高系统的可靠性。并且模块化还能够提高软件的可修改性,也有助于软件开发工程的组织管理。因此,在进行软件结构设计时应该遵循的最主要的原理就是模块化独立原理。药品管理员药品信息3.1更新库存信息清单药品查询库存信息3.2处理订货定货信息定货信息3.3产生报表定货报表采购员定货报表3.4处理订货定货信息供货商图 2.5 供货商管理层数据流图3.5处理出货定货信息药品D1定货信息73.2 运行环境与系统结构 3.3 系统流程图该药品管理系统的系统流程图如下:订货 客户信息补货药品新药验收药品库存入
14、库新药药品销售过期药品报 损药品销售到 货浏览补货药品浏览查 看登记登记退货不合格退货查询查询合格入库检验退 货有效期已过过期药品新药登记报损药品浏览用户登录 验证正确图 3.1 药品管理系统的系统流程图3.4 系统功能模块图与设计采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。因为程序错误常局限在有关的模块及它们之间的接口中,所以模块化使软件容易测试和调试,因而有助于提高软件的可靠性。一个好的电子系统要有一些必要的模块组成,若缺少了某些模块那么这个系统就会有缺陷。81)中小型医院药品管理系统需要实现的功能主要有五大块,系统的功能模块图如下图所示:删除用户更新用户添加用户添加药
15、品删除药品更新药品添加供货商删除供货商修改供货商进货统计销售统计报损统计销售查询退货查询药品查询图 4.2 功能模块图2)功能的实现:用户管理模块:药品管理员可以在登陆验证通过以后,进入药品管理系统界面进行增加,删除,更新用户信息以及修改用户密码等.药品管理模块:用户登录该系统后,可对药品信息进行增加,删除,更新,并且对药品进行查询等操作.供货商管理模块:用户登录该系统后,可对供货商信息进行增加,删除,修改. 销售管理模块:用户登录系统后,可对销售信息进行查询,对退货信息进行查询.统计模块:用户登录该系统后,可对销售信息进行统计,对进货信息进行统计,对报损信息进行统计.销售管理模块供货商管理模
16、块药品管理模 块用户管理模 块药品管理系统统计模块93.5 系统功能分析权限功能:为用户设置权限功能,可分为普通用户,一般用户,超级用户。普通用户只是查询不能修改,一般用户只能对授权范围内进行相应修改及删除,超级用户能修改、删除所有信息。录入功能:为一般用户提供相应的录入功能,为超级用户提供对所有信息的录入功能。查询功能:为所有用户提供查询的功能,可查询允许范围内的所有信息。维护功能:为一般用户提供查询及相应的修改,删除功能,为超级用户提供对所有信息的修改删除功能。帮助功能:能帮助初次使用者对本系统的应用及处理常见的问题。退出功能:结束并关闭系统。3.6 系统安全与维护措施本系统采用直接方式添
17、加记录,该方法直接而简单,为了避免输入有错误,该功能界面对用户容易出错的地方都给出了输入提示,同时也使用了更新和取消按钮来确认数据的取消输入,如果输入数据与实际数据不相复,则系统会给出提示信息,让你重新输入正确的数值。此管理系统也为系统用户提供了一定的安全性,该系统可以多人使用,每人使用不同的用户名和密码进入系统,但只有系统管理员的权限可以进行用户的管理,其它用户都不能对用户进行操作。一个好的管理系统,应该为系统提供处理系统故障,恢复系统数据的功能。该系统也同样提供了数据维护(包括对数据的备份、恢复)两项功能。建议用户定期备份系统数据,这样在系统出现问题时,可以进行有效地恢复。第四章 详细设计
18、4.1 数据库的概念设计根据对数据流图和数据字典的分析,确定该应用中的实体、属性和实体之间的联系,并画出系统总体的 E-R 图。概念设计可分为三步进行:首先设计局部 E-R 模式,然后把各局部E-R 模式综合成一个全局模式,最后对全局 ER 模式进行优化,得到最终的模式,即概念模式。104.1.1 局部 E-R 模式设计利用 ER 方法可分成三步进行:首先设计局部 ER 模式,然后把各局部 ER 模式综合成一个全局模式,最后对全局 ER 模式进行优化,得到最终的模式,即概念模式。 各个实体的 E-R 图如下所示:药品信息编号规格生产厂商单价数量生产日期图 4.1 药品信息 E-R 图用户信息编
19、号年龄出生日期性别姓名联系电话籍 贯图 4.2 用户信息 E-R 图客户信息姓名编号性别 联系电话家庭住址年龄家庭住址图 4.3 客户信息 E-R 图11供货商信息供货商编号供货商名称供货商地址供货商电话供货商邮编图 4.4 供货商信息 E-R 图定货报表药品编号药品名称药品数量规格入库单价入库日期生产厂家编号药品名称药品数量规格入库单价入库日期生产厂家规格 生产厂商定货日期数量规格入库单价入库日期生产厂家图 4.5 定货报表 E-R 图出货报表药品编号药品名称药品数量规格入库单价入库日期生产厂家编号药品名称药品数量规格入库单价入库日期生产厂家规格 生产厂商出货日期数量规格入库单价入库日期生产
20、厂家图 4.6 出货报表 E-R 图定货信息药品编号药品名称药品数量规格入库单价入库日期生产厂家编号药品名称药品数量规格入库单价入库日期生产厂家规格 生产厂商定货日期数量规格入库单价入库日期生产厂家入库单价入库日期生产厂家生产厂家编号图 4.7 定货信息 E-R 图12出货信息药品编号药品名称药品数量规格入库单价入库日期生产厂家编号药品名称药品数量规格入库单价入库日期生产厂家规格 生产厂商出库日期单价数量规格入库单价入库日期生产厂家出库单价入库日期生产厂家生产厂家编号图 4.8 出货信息 E-R 图用户登录用户名 密码图 4.9 用户登录信息 E-R 图4.1.2 全局 E-R 设计所有局部
21、ER 模式都设计好了后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不仅要支持所有局部 ER 模式,而且必须合理地表示一个完整、一致的数据库概念结构。系统的总体 E-R 图说明1) 每个用户可以查看多个定货报表,一份定货报表可以被多个用户查看;2) 每个用户可以查看多种药品信息,每一种药品信息可被多个用户查看;3) 每个用户可以查看多个出货信息,每一种出货信息可被多个用户查看;4) 每个客户可以购买多种药品,每一种药品可被多个客户购买;5) 每个客户可以查看多个出货报表,而每个出货报表只能被买药品的客户所查看;6) 每个供货商可以提供多种药品,每种药品可以被多个供货商所提供;7) 每
22、个供货商可以查看多个定货信息,但每个定货信息只能被一个供货商查看,即提供药品的供货商;13用户查看药品购买客户供应供货商nmmnmn查看查看定货信息查看出货信息查看出货报表定货报表nnnnnmnnm 用户查看n图 4.10 全局 E-R 图4.2 数据库的逻辑设计药品(药品编号、药品名称、药品单价、数量、规格、购置日期、生产厂家)用户(用户编号、姓名、性别、出生日期、家庭住址、联系电话)供货商(供货商编号、名称、地址、电话、邮编、 )客户(姓名、性别、年龄、出生日期、家庭住址、联系电话)定货报表(药品编号、药品名称、数量、定货日期、生产厂商、规格)出货报表(药品编号、药品名称、数量、出货日期、
23、生产厂商、规格)定货信息(药品编号、入库单价、药品名称、数量、定货日期、生产厂商、规格)出货信息(药品编号、出库单价、药品名称、数量、出货日期、生产厂商、规格)用户登陆(用户名,密码)4.3 程序流程图14用户登录开 始用户名密码 正确?NYY使用系统界面YNNY处理用户处理药品处理供货商进行操作?添加?删除? 更新?添加用户操作If 选择处理用户删除用户YIf 添加 删除添加更新用户If 更新添加NIf 选择处理药品添加?删除? 更新?If 更新添加YIf 删除添加If 添加 删除添加更新用户添加用户操作删除用户操作If 删除添加N药品查询按编号 ?按名称 ?If 按名称按名称查询按编号el
24、seIf 选择处理供货商添加?删除? 更新?更新用户更新用户更新用户Y退 出出错超过 3 次?NN图 4.12 药品管理系统的程序流程图15第五章 测试5.1 测试计划软件测试阶段的主要任务是发现并排除在分析、设计、编程各阶段中产生的各种类型的错误,以得到可使用的软件系统。关于软件测试,很多人认为“测试是证实程序中不存在错误” 、 “测试的目的是要证实程序正确地执行了预期的功能” 、 “测试的过程是使人们确信程序可完成预期要完成的工作过程”等。但这些定义是有缺陷的。因为进行测试不应该只是为了证实程序的质量有多好,而应该从程序本身存在错误这个假定出发,从中发现尽可能多的错误。从这个定义出发,我们
25、应该发发现了错误的测试看作是成功的测试,而没有发现错误的测试应该看作是失败的测试。软件测试的目的:(1) 测试是程序的执行过程,目的在于发现错误。(2) 一个好的测试用例在于能发现至今未发现的错误。(3) 一个成功的测试是发现了至今未发现的错误的测试。因此,测试一般不可能发现程序中的所有错误,测试只能证明程序中存在错误,但不能证明程序中不存在错误。5.2 测试目的在软件的开发过程中存在许多复杂的问题,为了保证软件在投入运行中;保证软件的质量和运行的安全行,测试过程是必不可少的,同时也是关键的。测试是为了发现软件在运行过程中所出现的问题,并在出现问题时能够及时的做出相应的修改。5.3 测试目标测
26、试的目标是保证软件在投入运行中的安全性和稳定行。5.4 测试方法测试方法是测试过程中至关重要的环节,采用的测试方法不同所产生的效果和所用的测试经费也是不同的。一个好的测试方法能够提高测试的效率,缩短测试的时间,也能够减少测试的经费。165.5 测试项目测试的项目主要有以下几个方面的内容:1)基本的用户和管理员登陆测试2)基本的输入和输出操作测试3)输入错误时系统的正确反应4)插入、删除及查询测试总 结通过软件工程作业让我们把学到的课本知识用到实践中,充分运用所学知识,培养了我们实践动手能力和理论联系实际能力,通过有目的的调查研究,运用所学知识,分析和解决实际问题,以获得有关的实际知识和技能,锻炼了自己的能力。 此次作业,让我们对传统软件工程方法学的软件过程有了更深的认识。基于瀑布模型的各个阶段,加深了对文档驱动的理解。通过分析需求,绘制各种图形,设计测试方案,对如何开发设计软件产品有了一个总体的把握。17