基于安卓平台的高校运维系统设计与实现

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:tanleilei
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:随着移动互联网的快速发展,越来越多的系统开始支持移动设备访问,而传统高校运维系统只是单一网站,严重缺乏对移动设备的支持。通过对高校运维系统的需求分析,提出一种基于安卓平台的高校运维系统,并基于MVP架构实现。经相关功能测试和性能测试证明该系统能够稳定运行且能承受较大的压力。
  关键词:高校运维系统;安卓;MVP;Retrofit;RxJava
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)34-0078-03
  Abstract: With the rapid development of mobile network, more and more systems have been supporting mobile devices. But the traditional operation and maintenance system only have web site without considering mobiles access. Analysis on operation and maintenance system, a system based on Android platform is provided. And the system is implemented on MVP architecture. After functional and performance tests, the system is proved to be correct and stable.
  Key words:operation and maintenance system; android; MVP; Retrofit; RxJava
  隨着移动互联网的快速发展,移动设备操作的便捷性,越来越多的系统开始支持移动设备的访问。而传统高校运维系统只是单一网站,操作十分不便,因此设计并实现基于安卓平台的高校运维系统是十分必要的。
  通过对四川旅游学院网络中心运维需求的分析,设计并实现一种基于安卓平台的高校运维系统。师生可以通过安卓手机就可以完成工单提交,查看当前工单处理进度等功能,进一步方便用户操作,提高师生满意度。
  1 系统需求分析
  需求分析是软件开发生命周期的开始,其耗费时间较多,一般占据整个生命周期中一半以上的时间。但其作用也十分关键,直接决定软件产品的成功与否。
  1.1 需求概述
  越来越多的系统开始支持移动设备的访问,高校运维系统也不例外。通过对四川旅游学院运维系统对移动设备支持的需求分析,得出主要的功能模块有:知识库搜索模块、工单管理模块、个人中心模块、消息管理模块以及登录注册模块。
  1.2 详细功能需求
  针对上述需求综述,提出以下各模块具体的需求:
  1.2.1 登录注册模块
  新用户可以通过系统注册,注册成功后,使用账号和密码完成登录。
  1.2.2 个人中心模块
  主要需求是:
  1)用户可以修改个人资料,包括昵称、性别、手机号、头像等信息;
  2)查看当前工单的处理进度;
  3)查看新建、完成等其他各种状态的工单;
  4)查看系统发送的消息。
  1.2.3 知识库模块
  所有已经成功解决的工单将进入系统知识库,以便于用户搜索。在用户遇到新的问题的时候,首先使用系统提供的搜索功能,如提供的答案能够帮助用户解决问题,则无需生成新的工单。知识库模块能够在很大的程度上提高网络中心的解决效率,避免重复劳动。
  1.2.4 工单管理模块
  当用户在日常学习生活中,遇到网络或计算机等方面的问题,可以直接使用运维APP完成对问题的拍照,再加以文字描述,提交至学校网络中心。中心随后便派遣维修人员,解决用户提交的问题。
  1.2.5 消息管理模块
  系统能够将当前工单的处理进度、最新通知公告以站内信的方式通知用户及时关注,避免用户错过重要信息。
  2 系统设计
  在完成系统需求分析后,接下来非常关键的就是系统设计。良好的系统设计是系统实现的开端,同时也为今后系统维护提供便利。
  2.1 系统架构设计
  传统的安卓开发,将所有的代码都统一写在Activity中,这种开发方式对于小的系统来说,不会产生太大的影响。但是一旦系统成长到一定的规模,那么这种方式将会是噩梦般的存在。究其原因在于,业务逻辑代码、界面代码、数据处理代码等混合在一起,为后续的系统维护带来很大的麻烦。针对该问题,很多公司提出了MVC、MVP、MVVM等多种架构。因MVP架构自身的成熟、稳定,因此本系统采用基于MVP的架构来实现。
  View层一般为Activity或Fragment,主要负责界面的显示,所有关于界面的操作全部在该层实现,如提示用户密码输入错误等信息。
  Presenter层负责所有和用户交互的事件,进行复杂业务逻辑的处理
  Model层完成数据的存取,采用三级缓存机制,来完成数据的存取。先从内存缓存查找数据,如未找到再从sqlite本地数据库查找数据,如还未找到则通过网络请求从远程服务器获取数据。
  2.2 系统功能模块设计
  系统主要的功能模块如图2所示:
  3 系统核心功能实现
  在完成系统设计后,接下来就需要在需求分析和设计的基础上,进行代码的实现。
  3.1 系统开发环境
  3.2 关键技术
  Retrofit提供了HTTP GET、POST等多种方法来获取API接口数据,由于是Rest风格的接口,因此可读性非常强。只需要定义接口,就可以返回相关数据,如下:   Retrofit retrofit = new Retrofit.Builder()
  .baseUrl("https://api.github.com/")
  .build();
  GitHubService service = retrofit.create(GitHubService.class);
  另外Retrofit网络请求的执行还提供了同步和异步两种方式,为应对不同的场景,提供了很大的灵活性。
  3.2.2 RxJava介绍
  RxJava是一款实现异步操作的框架,通过一种简单的方式,为复杂的异步操作带来便利。当业务逻辑较为复杂时,传统的异步操作由于嵌套层次较深,代码可读性较差,给后续的维护带来非常大的问题。
  RxJava通过提供Observable、Observer以及强大的操作符等功能,最大程度上简化异步编程。以下是一个简单的示例:
  Observable.from(folders)
  .flatMap((Func1) (folder) -> { Observable.from(file.listFiles()) })
  .filter((Func1) (file) -> { file.getName().endsWith(".png") })
  .map((Func1) (file) -> { getBitmapFromFile(file) })
  .subscribeOn(Schedulers.io())
  .observeOn(AndroidSchedulers.mainThread())
  .subscribe((Action1) (bitmap) -> { imageCollectorView.addImage(bitmap) });
  3.2.3 Glide介紹
  Glide是谷歌员工推出的一款开源的图片加载框架,在Goole I/O上被推荐使用。它的特点是配置简单、支持多种图片格式、高效缓存机制等。以下是官方提供的一个使用示例:
  // For a simple view:
  @Override public void onCreate(Bundle savedInstanceState) {
  ImageView imageView = (ImageView) findViewById(R.id.my_image_view);
  Glide.with(this).load("http://goo.gl/gEgYUd").into(imageView);
  }
  3.3 部分界面设计与实现
  在完成系统设计后,接下来主要的工作就是实现所有的功能。
  3.3.1 用户登录
  当用户第一次访问本系统的时候,会通过下方图片所显示的页面完成用户的注册,在此用户需要设置用户名和密码,然后提交注册信息,界面如图:
  3.3.2 主页
  登录成功后,即进入系统首页。首页对用户电脑可能存在的问题进行了分类,分别是:网络异常、系统异常、电脑卡慢、充电异常、硬件故障、软件异常、其他问题,也可以通过搜索,查找电脑故障的处理方案,界面如图:
  3.3.3 个人中心
  点击底部导航栏“个人中心”,进入用户个人中心页面,即可查看用户的相关信息,用户的保修情况、接收到的消息、用户个人信息,界面如图:
  3.3.4 提交工单
  如果用户在使用搜索功能后仍然不能解决自己遇到的问题,就可以选择使用提交报修的功能,将自己遇到的问题以文字或者图片的形式描述说明,然后上传,系统会将成功上传的工单分配给相应的专业人员,他们会及时帮助您解决问题。
  用户进入“主页”页面,点击左下角“上门服务”,进入提交报修工单的页面,填写用户自己遇到的问题的具体情况,点击右上角“上传”即可提交报修工单,界面如图:
  3.3.5 评价工单
  用户进入“个人中心”页面,点击页面“待评价”文字,进入“我的评价”,在评价中可以对服务的总体评价、服务质量和解决问题的速度进行星级评价,还可以提交文字对运维人员进行详细的评价,用户的评价是对运维人员最好的支持,界面如图:
  4 系统测试
  系统开发完成后,需要经过完备的测试才能上线运行。另外如果代码经过重构后,也需要进行回归测试,确保新的修改不会影响其他功能。
  4.1 功能测试
  根据系统功能需求,对所有功能模块进行完备测试,经测试,所有模块功能正确,无明显错误。
  4.2 性能测试
  使用monkey等工具,模拟用户的大规模点击,来测试系统能够承受的压力。进一步分析系统的性能瓶颈,为下一步的优化做准备。
  5 结束语
  通过对高校运维系统的分析,基于安卓MVP架构实现需求中定义的所有功能,经相关功能测试和性能测试,证明系统是正确的、稳定的。因工单处理流程较为复杂,下一步将重点优化流程处理,提出一种更加灵活的流程处理模块。不同高校的运维需求差异很大,因此很难设计一套通用的基于安卓的系统。但是本文提出的一种设计和实现方法,可作为今后高校运维系统设计和实现提供重要参考。
  参考文献:
  [1] 刘延杰. 基于JavaEE的科研管理系统设计与实现[D]. 成都: 电子科技大学, 2015.
  [2] 金天昕. 浅析高校IT运维系统的建设[J]. 电脑知识与技术, 2015, 11(28).
  [3] 成健, 张重阳. 基于安卓平台的限速交通标志的检测和识别[J]. 微型电脑应用, 2016, 32(4).
  [4] 吴丽淳, 樊爽. 基于安卓平台的手机定位软件开发[J]. 计算机与现代化, 2014(9).
  [5] 丁桦, 余金花. 基于安卓平台的手部护理按摩仪系统研发[J]. 电脑知识与技术, 2015, 11(18).
  [6] 徐怀志, 赵航. 基于安卓平台的电磁频谱监测应用程序的开发[J]. 设计与研发, 2016(13).
  [7] 宋晓莹, 王浩君, 廖振松. 一种基于Android 平台的远程智能处理系统[J]. 信息通信, 2014(8).
其他文献
摘要:随着我国无线网络技术的多样化发展以及大数据计划的不断推广,大量无线异构传感器网络间的数据通信需求变得越来越强烈,在众多的无线传感器网络类型里,ZigBee网络属于低速短途无线传感器通信技术,由于其简单、能耗低、自适应能力强的优点,被工业自动化监控领域大量应用,目前已发展成熟;而6LoWPAN是另一种著名的无线传感器网络,其最大的特点是对IPv6协议的高度支持,并可实现复杂数据的高效传输,目前
提出一种适合于大型板结构尺寸优化新方法。是以板结构有限元矩阵方程和K-T条件为基础推导出来的,属于一种结构离散优化准则法。将应力约束按满应力准则视为一种尺寸限约束,由于起
钢琴辅修课是非钢琴专业的音乐类学生的重要选修课程,对于提高学生的综合音乐素质和修养具有积极的作用。但在实际教学过程中,却存在学生重专业而轻辅修和教师对教学的效果不
在镀Pt的Si基底上用射频溅射方式制备了Pb(Zr0.55Ti0.45)O3铁电薄膜,成膜温度为250℃。X射线衍射分析表明几乎没有焦绿石相产生。另一方面,氧化钛-氧化锆固溶体则作为反应产物出现,由此提出了PZT固溶体的一种可
为了使图形自动输入技术满足实用化的要求,研制了图形扫描输入系统(GIRS7.0),并对图像预处理,直线段矢量化算法,圆弧识别算法和字符识别四个关键问题作了一些有益的探讨,使工程图形的矢量化
摘要:为落实国家有关资助政策,使资助工作走向信息化道路,与国家、省、市有关资助管理系统进行对接,高校应着手加强学生资助管理系统的研究与设计,开发使用资助管理系统,为学生工作管理者、班主任老师及学生提供注册、国家奖学金申报、国家励志奖学金申报、国家助学金申报、学校奖学金及勤工俭学岗位申请等功能模块,通过资助管理系统的使用,进一步提高高校资助工作效率,实现精准资助目标。  关键词:高校;资助管理系统;
合唱能够提升演唱者的凝聚力,培养演唱者的团队协作能力及感知音乐及艺术的能力。合唱对音乐的表达更为直观,使人们能够直接感受到音乐的魅力,增强艺术的表现力。合唱指挥与
目的探究对恶性胸腹积液患者实施洛铂局部灌注和亚高温全身热疗联合治疗的疗效及安全性分析。方法选取惠州市第六人民医院2017年6月至2019年6月内收治的50例恶性胸腹积液患者
《江苏教育》(中学教学)2020年10月刊发了《高阶思维在思政课教学中的培养》系列文章,多角度对思政教学的高阶思维培养进行了论述,既有理论指导,又有实践探索,我读后受益匪浅
将多尺度L-S方法用于研究参数激励振动系统的全局分叉,确定了该系统在主参数共振情况下的分叉集合,得到了某些余维二退化分叉点附近产生混沌运动的条件。