摘 要
对图书管理的流程进行科学整理、归纳和功能的精简,通过软件工程的研究方法,结合当下流行的互联网技术,最终设计并实现了一个简单、易操作的图书管理小程序。内容包括系统的设计思路、系统模块和实现方法。系统使用过程主要涉及到管理员和用户两种角色,主要包含个人信息修改,用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等功能。
系统开发主要在 Windows 系统下进行,采用支持跨平台的java语言开发完成,因此可以运行在任意开发环境下。系统采用mysql数据库和B/S结构的方式,按照ssm框架进行开发。
1研究意义
图书管理行业对互联网的运用正经历着质变,从技术支撑者的技术建构与技术运用转向以教育问题和产业需要为起点,通过重新构建教育与基于微信小程序的图书管理系统,实现制度上的发展变革[7]。本文将设计一个根据整理、归纳后进行精简的图书管理系统。使用采取稳定、可靠且易于维护的开发技术进行系统的实现。系统可以直观、高效、便捷地实现高校对各个图书信息进行管理,使工作人员有针对地安排和管理图书信息,建立统一的基于微信小程序的图书管理系统。
2 开发工具和开发技术
2.1微信公众号开发技术
微信公众平台是一个开放的平台,在成功注册公众号后,需要填写服务器地址(URL)、Token值和消息加密密匙(EncodingAESKey),其中服务器地址是开发者用来接收微信消息和事件的接口URL。开发者可以任意填写Token值用作生成签名,该Token值会和接口URL中包含的Token值进行比对,从而验证安全性。消息加密密匙由开发者手动填写或随机生成,将用作消息体加解密密钥。有明文模式、兼容模式和安全模式三种消息加密方式。模式的选择与服务器配置在提交后均会立即生效。开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址上,同时携带四个参数signature、timestamp、nonce和echostr[5]。开发者通过检验signature对请求进行校验,再将Token、timestamp和nonce三个参数进行字典序排序,又将三个参数字符串拼接成一个字符串进行shal加密,最后开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。成为开发者后,即可选择编辑模式或者开发模式对平台进行开发。开启编辑模式只实现公众平台中基本的自动回复等功能,按照编辑页面上引导的步骤就可完成平台的初步建设。开启开发模式即可获得接口权限,在平台中开发实现更多功能[6]。在开发模式下,以获得接口权限为基础,再通过绑定相关服务器地址(URL)和Token值、编辑相关的程序代码,以实现更高级的功能。
2.2 其他相关技术
本系统在后台使用Java语言实现跨平台的处理,以B/S的结构方式以及ssm框架进行开发,数据库使用MySQL。
3 需求分析
在软件的命周期中,需求分析是其中关键的一环。需求分析过程中不仅要对系统应该实现的功能提出准确和完善的请求,还要考虑需求的可行性。需求分析对设计和实现一个系统具有决定性的重大意义[11]。只有充分完整的需求分析才能为后续的系统开发过程和实现成果奠定基础。
3.1 需求描述
根据日常实际需要,一方面需要在系统中实现基础信息的管理,同时还需要结合实际情况的需要,提供图书信息管理功能,方便图书管理工作的展开,综合考虑,本套系统应该满足如下要求:
首先,在系统中需要实现对基础信息,包括个人信息修改、用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等功能的管理,这些是系统的基础信息,和系统中其他内容密切相关。
然后,系统中需要实现对用户信息的管理,允许管理员对用户进行必要的设置,同时要避免管理员对个人信息进行操作,保障用户的信息安全。
3.2 系统角色需求分析
综合图书管理经历和对网上信息归纳整理的结果,在实际应用中,将用户分为两种:管理员和用户两个角色。其中用户可以操作的内容是有限的,管理员可以进行的操作最多。了解系统用户的分类以及可以进行的操作,对于接下来实现相关的功能具有重要的意义。
3.3 系统功能需求分析
(1)系统的通用功能包括用户登录和密码修改,是两个角色共同需要使用的功能,用例分析如图3-1所示。
图3-1 系统通用功能用例分析图
(2)管理员可以对个人中心、用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等进行基本的信息管理。其用例分析如图3-2所示。
图3-2 管理员用例图
(3)用户可以对个人中心、我的待还、图书归还、催还提醒、我的收藏管理、意见反馈等进行操作,用户用例分析如图3-3所示。
图3-3 用户用例图
3.4 系统流程分析
3.4.1 登录流程
每个用户都有专属的密码和账号,在输入合法的账号和密码之后即可进入系统。登录流程如图3-4所示:
图3-4 登录流程图
3.4.2 添加信息流程
管理层人员有添加信息功能。添加信息流程如图3-5所示:
图3-5 添加信息流程图
4 系统设计
4.1 系统总体设计
基于微信小程序的图书管理系统的建设可以为图书管理提供帮助,通过对一些基础信息管理实现针对性的安排,可以按照用户的角色权限使不同用户角色看到不一样的信息界面。现根据需求阶段的分析,我们可以大致确定系统需要包含的功能如下图所示:
系统总体结构图如下,见图4-1所示。
图4-1 系统总体结构图
4.2 数据库设计
数据库能直观反映表现系统的需求,数据库的设计能否切实符合系统的需求关系到整个系统最终的呈现结果。通过之前的分析梳理,明确了系统中需要包含的功能和要求。系统中除了涉及对数据库的增加、删除、查寻、修改的基础操作较多,还要理清实体间的对应关系,据此完成表结构的设计与实现。
4.2.1 数据库逻辑设计
为了更直观阐明数据库的设计,使用 Vision 绘制的基于微信小程序的图书数据模型E-R实体属性图。根据系统需求设计了以下几个主要实体。
图书信息实体属性图,如图4-2所示。
图4-2图书信息实体属性图
图书归还实体属性图,如图4-3所示。
图4-3图书归还实体属性图
催还提醒实体属性图,如图4-4所示。
图4-4催还提醒实体属性图
系统E-R图如4-5所示。
图4-5系统E-R图
5 详细设计与实现
5.1系统前台功能的实现
5.1.1登录界面的实现
首先双击打开微信小程序客户端系统,连上网络之后会显示出本系统的登录界面,这是进入小程序的第初始页面“登录”,能成功进入到该登录界面则代表小程序的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能。
登录界面如图5-1所示。
图5-1 登录界面
5.1.2注册界面的实现
第一次使用本小程序的使用者,首先是要进行注册,点击“注册”,然后就会进入到注册的页面里面,将用户信息录入注册表,确认信息正确后,系统才会进入登录界面,用户登录成功后可使用本小程序所提供的所有功能。
注册界面如图5-2所示。
图5-2 注册界面
6 系统测试
6.1 测试目的
在基于微信小程序的图书管理系统正式投入使用前,我们可以通过对图书管理系统的检测,找出其中的问题和不足,并对其进行进一步的修正与完善,从而提高系统的优化水平和整体性能。系统测试是软件开发的必经之路,为系统实现的完整性、系统性能的可靠性提供保障。系统测试主要包括两种方法,一种是检查软件的每一个功能是否能够正常使用的黑盒测试,另一种检测软件编码过程中错误的白盒测试。
首先,本系统采用了白盒测试技术,对代码中出现的问题进行了修正,提高了代码的准确度。由于黑盒测试中使用了大量的测试用例,以下将列举一些主要的黑盒测试用例。
6.2 测试用例
(1)登录测试
登录功能是用户进入系统的校验窗口,其中需要填写的信息包括用户账号和用户密码,下面将根据此功能设计具体测试用例来验证登录功能的实现与否。具体测试用例见表6-1。
表6-1 登录功能测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面展示 浏览器输入登录地址 进入登录页面 成功
Test_02 账号非空检验 账号为空,点击“登录”按钮 提示“用户账号必须输入” 成功
Test_03 账号存在性检验 输入不存在的账号 提示“输入的账号不存在” 成功
Test_04 密码非空检验 输入正确的账号,密码为空 提示“用户密码必须输入” 成功
Test_05 密码正确性检验 输入正确的账号和不正确的密码 提示“输入的密码错误” 成功
Test_06 登录成功检验 输入正确的账号和密码 登录成功,进入首页 成功
(2)修改密码测试
更改密码功能需要用户输入原始密码、修改后的密码、修改后的确认密码,方可更换密码。具体测试用例见表6-2。
表6-2 修改密码测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面跳转 点击“密码修改”按钮 进入密码修改页面 成功
Test_02 原始密码非空检验 原始密码为空,点击“提交”按钮 提示“原始密码必须输入” 成功
Test_03 原始密码正确性检验 输入错误原始密码 提示“原始密码输入错误” 成功
Test_04 修改密码非空检验 输入正确的原始密码,修改密码为空,点击“提交”按钮 提示“修改密码必须输入” 成功
Test_05 确认密码非空检验 输入正确的原始密码,修改密码非空,确认密码为空,点击“提交”按钮 提示“确认密码必须输入” 成功
Test_06 两次新密码输入一致性检验 输入正确的原始密码,修改密码非空,确认密码与修改密码不一致,点击“提交”按钮 提示“两次密码输入不一致” 成功
Test_07 修改成功检验 输入正确的原始密码,修改密码非空,确认密码与修改密码一致,点击“提交”按钮 提示“处理成功” 成功
结 论
本文介绍了一个使用方便,界面清晰的基于微信小程序的图书的设计与实现。本系统已经实现了对个人中心、用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等的综合管理,可以充分满足图书管理各方面的需求。系统为图书管理工作节省了精力和时间,简化了在管理过程中重要环节的管理难度,丰富了图书管信息化的建设,符合信息时代的发展趋势。存储在系统中的数据也将对未来图书管理制度的发展提供数据支撑。
本文实现的系统具有功能实用、界面简单清晰、操作简单、安全稳定的优点。在设计实现上本系统采用了java语言和ssm框架进行开发,提升了开发效率、同时也保障了后续维护,易于扩展。使用MySQL轻量级数据库大幅度提升查询性能。
该系统只考虑了一些简单的图书管理的基本构成,缺乏对设计的深入研究和思考。随着网络技术的迅猛发展和新型教学制度的逐步完善,不久将可以形成稳定优质的图书管理模式。这时对系统的要求也将越来越高,这要求我们不断探索新的需求,开发新的技术,与时俱进,实现更完善更智能的基于微信小程序的图书管理系统。