1. 引言
随着时代的发展,智能手机在我们生活中越来越普及,如今越来越多的安卓手机APP出现在人们的生活中,并且,每一款APP都有各种各样的功能。不知不觉间,我们的生活习惯和方式已经被手机APP改变,人们对手机的依赖越来越大。对于高校的大学生来说,在学习和生活过程中也需要用到各类软件,有些软件是学生必须有的,比如说进学校的系统,还有学校为了便于管理学生开发的软件等。“贵大校园易”这款软件从实际出发,为学生交流和课程管理等方面给使用者带来极大便利,并且这个手机APP为贵州大学特制,是具有贵州大学特色的一款软件 [1]。
2. APP项目需求
2.1. 功能需求分析
简单来说,需求分析就是告诉开发者,用户需要实现什么功能、达到什么目的、解决什么问题。在进行需求分析的时候,应当积极主动地与客户进行沟通,从而理解用户的目标,使得项目的开发始终围绕用户来开展。
功能需求是软件需求的主体,因此在开始开发软件之前,必须了解清楚用户的需求和需要,需要与用户多交流,从而确定接下来要开发的软件需要实现和完成的具体功能。
在贵州大学,不管是刚刚步入大学校园的大一新生还是其余的在校学生,在生活和学习过程中都会遇到不少问题,对于他们来说缺少可以解决当下遇到问题的方法和途径,并且对学校部门的管理和功能不了解,本软件在这样的需求之下,来确定了这款软件需要实现的具体功能:
(1) 信息的存储与查找:主要将毕业学生或者在校学生对于个别问题或者事件比较有权威的解答等信息储存起来,方便其他学生对于此类信息的查找。
(2) 实现简单的交流模块:让学生在软件上自主的交流,类似于常见的社交软件,并从中获取自己需要的有用信息。
(3) 导入学生课程信息:将学生学习课程表导入软件中,方便学生日常上课查找教室与寻找任课教师。
(4) 实现用户等级区分:对于学生与老师这两个不同用户,给予不同的操作权限。
2.2. 非功能需求分析
非功能需求分析用于补充功能需求分析,主要包括用户使用时对于软件性能方面的要求以及软件运行环境的要求。
(1) 易操作性:软件的用户针对不同的人群,软件的基本操作都与人们日常生活中经常使用的软件的基本操作相同,所以本软件简单的操作可以适用于不同的人群。
(2) 美观性:一个软件的美观性是提升用户体验感的基本要求,本软件在设计软件的界面时使用了大量的贵州大学的元素,给使用者带来视觉上亲切的体验感。
(3) 可维护性:随着不同人群对APP的使用,系统会出现各种不足,所以,在进行系统设计时,需要考虑是否方便维护,在APP出现漏洞和问题时,需要精准及时的维护。所有的维护记录都应该记录在系统日志中,在出现相同问题的时候,能够提供指导 [2]。
3. 开发平台
3.1. 开发平台简介
“贵大校园易”的开发是在Android Studio、Eclipse、UI三大平台的基础上,以Android Studio平台作为主要的开发环境,我们将通过Android Studio平台对“贵大校园易”APP进行开发,用Android Studio开发平台所提供资源和环境,完成整个APP的构建。
Android Studio平台:Android Studio开发平台基于IntelliJ IDEA,它是谷歌推出的一个Android集成开发环境,它提供的Android开发工具用于软件开发和APP的各项功能调试 [3]。
UI平台:UI是用户界面(User Interface)的简称。用户界面是指软件的人机交互,操作逻辑,界面美观的整体设计。用户界面设计分为实体用户界面和虚拟用户界面 [4]。
Eclipse:Eclipse是基于Java的可扩展开发平台,是一个开发源代码的开发平台。本身而言,Eclipse是一个框架和一组服务,主要用于插件组件构建开发环境。Eclipse本身还附带一个标准的插件——Java开发工具JDK [5]。
3.2. 数据库构建
数据库的构建是“贵大校园易”大校园开发的关键。首先,开发初期对贵大全体师生进行调查,从而确定APP主要的服务功能;其次,针对调查对象的需求,掌握APP服务用户的关注点以及对信息获知的需求程度,把握服务功能的总体方向;最后将不同内容的信息对应相应的版块进行展示,有效管理。除此之外,会及时收集反馈信息,根据信息中的问题对“贵大校园易”大校园的各项功能进行调试,从而保证“贵大校园易”大校园的正常使用。
4. 软件技术介绍
Android Studio软件是由Google公司基于IntelliJ IDEA环境研发的,主要用于安卓软件的开发与设计,与elipeclipseadt较为相似,但是Android Studio的功能更加强大与完备,Android Studio提供了多种集成的开发工具用于嵌入式软件的系统开发和软件调试。相较于其它类似的开发软件,Android Studio在改变软件开发环境与软件开发操作模式等方面更加的方便快捷,Android Studio有着较强的功能和适应性,因为它可以支持多种语言的嵌入式软件开发,并且为软件开发者和用户提供了测试工具和各种数据统计分析 [6] [7]。
5. APP开发背景与意义
如今互联网发展的方向趋向解决人们生活的不便,人们习惯了通过掌上的APP随时随地获取想要的信息。很多公司对各个领域的便捷性基本实现覆盖,但小区域往往因为地方特性和业务辐射局限性得不到想要的便利。我们发现本校很多指南性流程和制度对新生或者刚接触某个领域的同学不完善,部门走动及无目的的询问过于繁琐。目前还没有一个系统性收录这些攻略和便利指南的平台,所以我们做一个属于贵州大学学生,致力于在学习、教务、生活等方面,简单明了地提供便利和交流的平台——贵大校园易。
通过APP开发出来的两次内测,我们得出的结论是贵大校园易已基本实现我们初期设定和规划的效果,同学们积极的反响也达到了我们的预期。它实现了对本校师生提供各方面便利的作用,成为一款属于贵大人的具指南性和服务性的APP。
6. 主要功能介绍
本软件用户程序安卓系统上运行,用户端分为两个等级,一个等级面向在校教师,另一个等级面向在校学生;这两个等级在结果和功能上面没有太大区别,主要通过部分功能的权限来区别和管理不同的用户,比如说教师端可以发布课程和添加课程以及发布通知,而学生端只能查看。APP的主要功能有课表管理、交流平台和连接外网三大部分。如图1所示,为App的首页界面。
如图2所示,实现注册界面功能的部分代码如下:
type = getIntent().getIntExtra(type, 0);
tvTitle.setText(注册);
UserBeanuserBean = new UserBean();
userBean.setUser_id(edtMobile.getText().toString());
userBean.setName(edtName.getText().toString());
userBean.setMobile(edtMobile.getText().toString());
userBean.setPassword(edtpwd.getText().toString());
userBean.setType(type);
userBean.save();
ToastUtil.showToast(this, 注册成功);
如图3所示,实现登录功能的部分代码如下:
protected void onCreate(Bundle savedInstanceState)
{super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
ButterKnife.bind(this);
imgvReturn.setVisibility(View.GONE);
tvTitle.setText(登录); }
6.1. 课表管理
在课表管理板块,学生可以修改自己的姓名、手机号、年龄、性别等个人资料,也可以重置密码,退出登录等;还可以收到学校发的一些选课通知、放假通知等;学生可以在课表管理板块查看个人的课表,也可以添加和删除课程。
Figure 3. The login interface for students and teachers
图3. 学生教师登录界面
6.2. 交流平台
在交流平台板块,学生们可以就学习或者是生活中遇到的各种问题,发表一些意见和建议,也可以在交流平台上面分享和发表自己的一些感想,如果发现出错等情况可以删除自己的言论。如图4所示,学生A发表言论之后,其余的学生就可以对学生A的言论进行评论,这样不仅可以促进学生们在日常生活中的交流,还可以给在学习和生活中遇到难题的学生一个解决问题的交流平台,为学生提供了便利。
校园平台功能实现部分代码:
String content = et_comment.getText().toString().trim();
if (TextUtils.isEmpty(content)) {
Toast.makeText(this, 请输入评论内容, Toast.LENGTH_SHORT).show();
getComment();
Toast.makeText(this, 评论成功, Toast.LENGTH_SHORT).show();
6.3. 连接外网
如图5所示,在连接外网板块,本软件可以接入贵州大学的官网以及百度百科官网。因此,学生可以及时了解学校的动态,贵大新闻、通知公告等学校信息。通过贵大官网还可以进入教务系统,进行选课、查看课表、查询考试成绩等。在连接外网板块接入百度百科的官网,有利于帮助学生了解想要查询的内容。百度百科里面涵盖各个领域的知识,包罗万象,不仅查找方便,而且很实用。
Figure 5. Connecting to internet interface
图5. 连接外网界面
7. 总结
贵大校园易APP大部分功能都完整实现,并且达到预期的运行效果,这也充分验证了Android平台具有极强的兼容性和开放性。这款APP能够帮助贵大学子解决部分日常学习和生活问题,在实际测试中成功的运行。作为试运行阶段,虽为学生提供了一定便利,但“贵大校园易”APP的设计中还存在不足,后期我们会根据全体师生的需求进行总结,不断改善优化,进一步提高APP的开发质量。
在整个开发过程中,比较困难的地方是APP中一些功能的实现,覆盖的知识面比较广,花费较长时间。通过这个项目的开发,我们明白一个APP的开发并没有想象的简单。从做好每一个小组成员分工,到一个APP框架的建立,再到开发出APP的雏形,以及后面的APP界面的设计,功能的实现等等,这其中的每一步都不容易,比想象的要难得多。通过这个项目,小组成员都得到了成长,懂得做好一个项目,有一个好团队是至关重要的,一个人不管他怎么努力怎么强,也很难把一个项目从头到尾做好。只有这个团队中的每一个人都积极主动的参与到其中,贡献出自己的一份力量,团结一致,才能真正体会到完成项目的意义与乐趣。
基金项目
贵州大学大学生创新创业训练项目——贵大(省)创字2019(008)。
NOTES
*通讯作者。