赞
踩
目录
参考文献 21
致谢 22
在生活中,我们借阅图书需要先前往图书馆,然后在硕大的图书馆中根据分类等信息或者询问图书管理员去查找我们所需要的书籍。有些热门书籍还可能会因为借阅的人多暂时不在馆中,使得我们白跑一趟,并且我们也不能方便的知道借出去的书什么时候会被归还。对于图书的管理员来说,大量的借阅人群使得登记等相关工作变得繁琐复杂。
随着计算机科学技术的高速发展,越来越多的电子产品进入了我们的生活,它们不仅能够给丰富我们的空闲生活,在忙碌之后放松我们的精神,最主要的,高科技产品给我们的生活带来了许多的便利。
传统的图书管理系统给用户和管理员带来的问题,可以在如今这样一个科技高速发展的环境下通过高科技产品得以解决。本文在这样一个背景下,进行了研究,并设计出一款基于Android移动设备的应用程序。
通过本系统可以使得用户足不出户,便能查询到想要借阅的图书此时此刻是否在馆中,同时还能够查看自己借阅过的书籍的借阅时间,依次来计划归还时间。在满足用户需求的同时,管理员能够通过本程序增加、修改以及删除图书来完善馆藏信息,同时,管理员能够通过程序查看被书籍的借阅情况,便于图书的管理。提升了管理人员的工作效率以及用户的生活品质。
传统的图书管理系统给用户和管理员带来的问题,可以在如今这样一个科技高速发展的环境下通过高科技产品得以解决。本文在这样一个背景下,进行了研究,并设计出一款基于Android移动设备的应用程序。
本文所进行研究的内容,是建立在上文的研究背景以及研究意义的基础之上的,对现实的图书馆图书信息的录入、查询、借出、管理以及订阅等流程进行仔细的研究,从而可以设计出一种不仅方便图书管理者完成图书馆中的各种图书信息管理的工作,而且可以满足借阅者方便快捷的查询、借阅以及归还图书功能的一款基于Android的移动设备的应用软件,使得图书管理员的日常工作得到很大的便利以及使得图书借阅者的生活需要得到大大的满足,进一步提高他们的工作效率以及节约他们日常生活的时间。
表 2-1 项目定义
序号 | 术语缩写 | 定义 |
1 | 用户 | 注册用户可以进行系统提供的对动态的一切操作 |
2 | AS | Android Studio(软件开发环境) |
通过本系统可以使得用户足不出户,便能查询到想要借阅的图书此时此刻是否在馆中,同时还能够查看自己借阅过的书籍的借阅时间,依次来计划归还时间。在满足用户需求的同时,管理员能够通过本程序增加、修改以及删除图书来完善馆藏信息,同时,管理员能够通过程序查看被书籍的借阅情况,便于图书的管理。提升了管理人员的工作效率以及用户的生活品质。
图 2-1 用例图
App设计的成本花费主要来源于App界面的设计、数据库的设计、推广和维护的费用。首先,该App没有用到数据库,所以不存在数据库相关设计的费用,我们利用免费的软件进行页面设计,是零成本;其次,可以通过现有的软件,开发本款App;最后的成本就是App 的推广和维护费用。
就现在市面上App开发使用的技术来看,对设计与实现所需要的技术进行研究和分析,确定利用现在所学到的技术可以达到项目的目标。
图 3-1 数据流图
该App的开发不存在侵权问题。
操作可行性主要考虑用户操作使用的满意度。因此该项目在设计时充分考虑用户的使用习惯,使App界面相较于图书借阅类的软件更简洁美观,操作步骤简单,方便用户使用,相关的图书信息也精确明了,用户在登录后便可以查看所借阅的书籍相关信息。
(1)将图书借阅管理App的功能简单化:界面设计简洁美观、功能简单、操作简单。在设计本款App之前,我们先归纳整理了许多书籍信息,方便用户的使用,使图书借阅管理App变得更实用起来。
(2)信息化时代的到来,利用智能手机的普遍化以及人们对手机的依赖程度,将图书管理系统App做的更加可使用化,充分利用到了手机的便携作用。
在方便用户的同时,图书管理系统的出现就是为了缓和图书管理员的管理任务。当然,这其中也蕴含了一定的抽象意义,就是实现了从计算机上的虚拟化在现实生活中的实际运用;实现了图书馆由传统走向信息化道路的愿望。可以说,这样的管理系统是极大地减轻了管理员的负担。这样的程序在将图书信息进行简明化处理后,就实现了图书信息的集中化管理,使得管理的成本也大幅度降低。在进行查找操作时,系统可以快速地进行综合查询,得到最准确的结果。
主要功能如图4-1所示:
本系统是运行在Android移动设备上的应用程序,针对使用者的相关需求,我们需要进行分析并进行系统的开发,使得系统更加的完善以及便利。
图 5-1时序图
本App通过时序图来展现主要的业务用例。下面将介绍图书信息查看管理用例的实现过程。
用户:
(1)用户输入用户名和密码进入用户主页;
(2)在登陆界面显示用户可操作的功能模块;
(3)在主页上选择可以查询个人借还书记录和修改个人信息和密码。
管理员:
(1)管理员输入管理员名和密码进入管理员主页;
(2)在登陆界面显示管理员可操作的功能模块;
(3)在主页上选择对图书信息的增删改查和对普通用户的管理。
超级管理员:
(1)超级管理员输入超级管理员名和密码进入超级管理员主页;
(2)在登陆界面显示超级管理员可操作的功能模块;
(3)在主页上选择对图书信息的增删改查和对普通用户和普通管理员的管理。
本模块提供用户的注册以及登录,使得用户能够合理的进行后续操作及查询自己的相关信息。其中,登录功能通过识别用户的角色,决定用户能够使用后续的哪些功能。其中超级管理员账号为admin,密码为123456方便测试。
图 6-1 登录模块程序流程图
对于一个完整的图书管理系统,不仅要求功能完整、操作简单,还要有良好的设计风格和另人耳目一新的界面。对于一个系统来说,登录界面是很重要的,登录界面设置了进入本系统的用用户名和密码,防止非法用户进入本系统进而破坏系统安全和所保存的数据,故只有合法的用户在输入正确的密码和选择正确的权限后方可进入相应的系统界面,否则将会提示“帐号或密码输入错误”,此时需要重新输入帐号和密码,直到通过系统验证,才可进入系统[13]。未注册过的用户第一次进入需要注册新用户信息。这些功能使得图书管理系统对其使用者有了一定的限制,不仅增加了系统的安全性及保密性,而且便于系统的控制和管理,更加有利于系统的维护。
图 6-2 登录模块的页面设计
界面切换功能的实现,填写完账号和密码后,点击登陆按钮,登陆按钮被设置为了监听,点击后会把用户填写的信息和数据库里的信息匹配,相符的话,则跳转到登陆后的主界面,若不相符,则会提示错误信息,限制用户进入图书展示主界面。
用户登陆成功后,此界面会展示所有的图书信息,用户可以浏览该界面或者在界面上方的搜索框中输入图书名或者作者的关键字查找想要的图书如图6-3。
图 6-3 图书展示界面设计
当用户在图书展示界面点击一本图书时,系统将会跳转到该图书的详细信息展示界面, 在该界面中,将会展示该图书的书名、作者、所属分类、馆存数量、出版社、出版时间、页数以及简介等基本信息。同时该界面提供了收藏图书和借阅图书两个核心功能的按钮。
图6-5 图书详细信息展示界面
此界面将展示用户收藏的图书信息,当用户取消收藏该图书后,该界面将不会显示该图书。
图6-6 图书收藏图书界面
图 6-7 用户借阅信息界面设计
对于实现系统的需求带说,数据库的设计是非常重要的部分,也是系统设计中最基本的一个部分,因此选择合适的数据库并创建合理的结构式开发程序是首要的问题。数据库系统是现代信息系统基础设施。本系统的数据库将采用Android自带的Sqlite数据库进行设计与管理。根据以上章节对系统所做的需求分析和系统设计,规划出本系统中使用的数据库实体分别为用户实体、图书实体、借阅信息实体,各个实体具体的描述如下图所示:
描述概念模型的常用工具就是实体——联系方法,即E-R模型。
图7-1 图书借阅系统ER图
本系统的数据结构比较清晰,依据课程管理系统的功能要求,主要设计出数据库的表有:用户信息表(user)、图书信息表(books)和借阅信息表(borrow)。
逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为数据模型相符合的逻辑结构。本系统选用的是Sqlite数据库,关于数据库表结构设计如下所示:
表7-1 用户信息表(user)
列名 | 类型 | 意义 |
id | AUTOINCREMENT | 用户id |
username | varchar(20) | 用户名 |
password | varchar(20) | 密码 |
passlock | varchar(20) | 密保问题 |
passkey | varchar(20) | 密保答案 |
role | varchar(20) | 权限组 |
borrowlist | varchar(20) | 借阅图书表 |
collection | varchar(20) | 收藏图书表 |
表7-2 图书信息表(book)
列名 | 类型 | 意义 |
id | AUTOINCREMENT | 图书id |
ISBN | varchar(20) | 图书ISBN号 |
bookname | varchar(20) | 图书名 |
author | varchar(20) | 作者 |
press | varchar(20) | 出版社 |
publicationtime | varchar(20) | 出版时间 |
category | varchar(20) | 分类 |
synosis | varchar(50) | 简介 |
page | int | 页数 |
inventory | int | 馆存数量 |
表7-3 借阅信息表(borrow)
列名 | 类型 | 意义 |
boid | AUTOINCREMENT | 借阅id |
botime | varchar(20) | 借阅时间 |
bookid | varchar(20) | 借阅图书id |
userid | varchar(20) | 借阅用户id |
bostate | int | 借阅状态 |
backtime | varchar(20) | 还书时间 |
reviewer | varchar(20) | 还书审核人 |
表7-4 借阅信息表(borrow)
在软件的生命周期中,软件测试是一个软件的重要组成部分,是为了发现错误而执行的一个程序或者系统的过程[14]。软件的测试结果对软件的可靠性有很重要的作用,软件测试是软件产品交付给大众用户使用之前用以保证软件质量的一个很重要的方法。在软件每一阶段中的生命周期都包含软件测试活动,因此在软件设计的整个过程中都应该有软件测试进行。使得随时能够检查本阶段的成果能不能接近预期的结果目标,进而尽可能早一点发现到错误并加以改正。
我们在进行测试工作的时候为了保证系统的质量,可以将测试工作的内容分成以下所说的几个部分,即: 审查代码、集成测试、单元测试、系统测试和确认测试。
检查系统设计最小的单位(—个模块)就是单元测试,通过测试检查出用来定义该模块的功能说明不符合与实现该模块的实际功能的情况,以及编码时的错误。
我们可以将每个小的模块按照设计的需求组装起来后同时进行集成测试,集成测试的主要目的是检查与接口有关联的某些问题。假设一个模块和另一个模块可能会出现由于疏忽的问题而引起有危害的影响;把子功能模块组合起来后可能不能产生预期的主功能;有个别的看起来视乎能接受的误差却很有可能积累到不能接受的程度;全程数据结构可能有错误等。
确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,基本排除了接口的错误,接下来我们就应该进一步的检验系统软件的有效性,就是确认测试工作的任务,是将系统软件的性能和功能发挥到如用户们合理期待的一样。
完成软件设计开发以后,最后还要将它与系统中其他的部分整合运行,从性能测试、安全测试、强度测试和恢复测试等四个方面来进行系统测试。
当输入的用户名、密码信息经身份验证查询不对应、不正确时,系统将会显示出“登录失败!用户名不存在或密码错误!”,停留在登录界面,无法进入系统。密码正确时,则跳转到系统主界面,并通过验证用户的权限组确定某些功能按钮是否可见。
图8-1登录错误提示
图书管理员可对图书信息进行管理,管理员可以根据图书馆中图书的信息进行添加图书信息,查看图书信息详情,修改图书信息,删除已有图书信息。为防止添加空白或错误图书信息,在添加时会有系统的错误提示无法进行提交,在填写了完整且正确的图书信息后才能保证提交信息成功。下面进行测试:
图8-2 图书管理功能主界面
图8-3 添加图书信息界面
图8-4 修改图书信息界面
图书管理员可以对所有用户的所有信息进行添加、删除、修改管理。下面进行测试:
图8-5 用户管理功能主界面
图8-6 用户信息修改及删除界面
图书管理员可以对用户的图书借阅信息进行查看和管理。下面进行测试:
图8-7 用户借阅管理功能主界面
本文详细的论述了基于Android的图书管理系统的设计与实现的过程。通过多天的小组设计改进,我们终于完成了图书管理系统移动应用开发APP,在这个过程中,我们将这个学期在Android移动开发课程上所学到的知识应用到了实践中。在实践的过程中,我遇到了许多的难题,但在经过上网查找相关的资料之后总能得以解决,汲取了很多他人的智慧,慢慢的提升自己的专业知识能力。从开始对开发工具都不是很熟悉到后来的得心应手,我发现本次实践使我开发软件的能力得到了很大的提升。
在本次的实践中,也让我们发现了许多现在的不足,系统的架构能力还需要很大的提升,才能够不至于在开发的过程中总发现许多地方在前期的设计不足。在今后的学习生活里,还需要多阅读软件开发的相关书籍,提升自己的软件开发能力。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。