学生素质综合测评助手的设计与实现_第1页
学生素质综合测评助手的设计与实现_第2页
学生素质综合测评助手的设计与实现_第3页
学生素质综合测评助手的设计与实现_第4页
学生素质综合测评助手的设计与实现_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、存档日期: 存档编号: 题 目: 学生素质综合测评助手的设计与实现 学 号: 姓 名: 联 系 电 话: 电 子 邮 箱: QQ : 学 院: 专 业: 年 级 、 班 级: 指 导 教 师: 学生素质综合测评助手的设计与实现摘要:本文主要研究了如何开发一个安卓学生素质综合测评,当今社会上随着大学教育的提高,学生的素质也明显提高的,那么如何更加准确的测评学生素质高,怎么更加便捷的随时随地的可以管理素质信息,是很多人的一个迫切需求,安卓学生素质综合测评就是一个可以帮助用户便捷的素质综合测评的优秀APP,安卓学生素质综合测评就为这些人的素质测评提供了方便,使用者可以通过手机下载安卓学生素质综合测评

2、系统,更加高效便捷合理的测评学生素质。基于Android 的点名系统采用开发环境 MyEclipse进行开发程序的界面,后台编程语言采用面向对象的编程语言Java编程语言来进行编程。关键词:学生素质综合测评;安卓;JavaIIDesign and Implementation of Students Comprehensive Assessment AssistantAbstract:This paper mainly studied how to develop an android students quality comprehensive evaluation, in todays s

3、ociety with the improvement of university education, students quality is obviously improved, so how to have a more accurate assessment of students quality is high, how much more convenient to manage quality information anytime and anywhere, is an urgent demand, many android students quality comprehe

4、nsive assess-ment is a quality comprehensive evaluation can help users convenient excellent app, android students quality comprehensive evaluation is provided convenience for the measurement of the quality of these people, users can download the android mobile phone students quality comprehensive ev

5、aluation system, more efficient and reasonable to evaluate students quality.Attendance system based on Android using MyEclipse development environment to develop the program interface, the background programming language using object-oriented programming language Java program-mming language for prog

6、ramming.Keywords: students quality comprehensive evaluation; Android; Java目录第1章 绪论11.1 课题背景11.2研究现状11.3选题意义11.4研究目标1第2章 软件需求分析32.1 可行性分析32.2 功能需求概述32.2.1 主要功能32.3 UML用例图4第3章 软件设计53.1功能模块设计53.2 程序流程图设计63.3 程序实体图设计63.4 程序E-R图设计7第4章 软件实现84.1 主要功能模块的实现84.1.1 登陆界面84.1.2 功能界面114.1.3素质测评界面15第5章 系统调试与测试175.

7、1程序调试175.2程序的测试175.2.1 测试的重要性及目的175.2.2软件测试18第六章 总结与展望206.1总结206.2展望20毕业设计体会21致 谢21参考文献23英文翻译资料24VII第1章 绪论1.1 课题背景当今社会生活节奏越来越快,学校生活也是如此,然而,很多学校工作占用了大量的时间,如学生素质综合测评。不仅要下发纸质的材料让学生填写,还要几经转手,小组组评,学院审查,最终汇总等工作。如果在手机能实现这些功能,就能够节省大量的时间。虽然手机操作系统种类繁多,有谷歌Android系统、苹果IOS系统、Symbian系统等,但是其中Android系统有着最为广泛的用户。因此,

8、我就以谷歌Android为平台设计一款学生素质综合管理App。本文涉及的软件就是一个基于谷歌Android手机平台的学生素质综合管理助手APP。有了这款app,利用手机平台,就可以实现学生素质综合测评,使用户节省时间、方便操作,增加效率。适应现在讲究高效,越来越快节奏的社会环境。1.2研究现状本设计实现的学生素质综合管理助手,在之前有类似的课表助手等软件,但应用并不广泛。本软件将综合素质测评搬到手机上来,既减少了填写纸质材料的消耗,又方便了学生与老师。能够大大简化学生素质综合测评的过程,让学生随时随地完成测评。所以,开发一款手机学生素质综合测评软件是符合社会需求的。学校也正需要这样一款软件来简

9、化程序。1.3选题意义目前学生素质综合测评并没有相关的手机APP,而此学生素质综合测评手机软件能够简化测评过程,减少人力物力,适应现在的需求。所以有必要开发一款手机端的测评软件。本课题是研究如何开发一款Android平台上的的学生素质综合管理软件,简化原先纸质填写,pc统计的繁琐步骤。本软件界面简洁美观,操作方便,能够为用户节省很多时间和精力。1.4研究目标基于Android平台的安卓学生素质综合测评,手机联网或者通过USB连接电脑下载即可,在手机上安装完成,直接就可以使用,使用者可以通过学生素质综合测评助手实现学生素质测评的拓展功能。打开软件,首页显示登陆信息,用户首先需要登陆软件才可以进行

10、数据操作,登陆后,首页显示查看公告,进入评估,查看年度最终分数,前10%划分线,前20%划分线几大功能,用户可以在查看公告里面查看当前公告,进入素质评估界面做素质评估,给学生素质打分,查看年度最终分数,前10%划分线,前20%划分线并可以查看分数线详细数据。第2章 软件需求分析2.1 可行性分析作为面向大众的一个应用软件,必须开发可性,使用简单。可开发包括经济上可行,不会占用太多的人力物力导致开发者无法承受;以及技术上可行,开发人员有足够的能力开发出来。操作简单必须保证使大多数的用户能够快速上手,掌握如何使用。(1) 经济上的可行性本软件开发比较简单,并不需要很多的人力物力就能开发出来。本软件

11、适应现在的学校需求,每一个拥有安卓手机的学生都可以使用本软件,对硬件上的要求并不高。(2) 技术上的可行性本软件采用java开发,使用SQL sever为数据库。也曾有pc版的学生素质综合测评助手和课表助手app,但应用并不广泛。在校期间,学习过java开发的相关课程,有一定的基础。所以,本软件在技术上完全可行。(3) 操作上的可行性本软件采用Android框架,界面简洁明了,在大多数人都使用过安卓手机的前提下,几乎人人都可以快速的流畅使用本软件。因此,本软件完全开发可行,在经济上,技术上,操作上都可以实现。2.2 功能需求概述2.2.1 主要功能(1) 打开软件,首页显示登陆信息,用户首先需

12、要登陆软件才可以进行数据操作,未曾注册过的用户可以点击登录滑块,进入注册界面注册。在用户登陆后,首页显示查看公告,进入评估,查看年度最终分数,前10%划分线,前20%划分线几大功能。 (2) 用户可以在查看公告里面查看当前公告,进入素质评估界面里面做素质评估,给学生素质打分,查看年度最终分数,前10%划分线,前20%划分线,并且可以查看分数线详细数据。2.3 UML用例图安卓学生素质综合测评助手可以满足用户的素质测评和数据查看的一些功能。安卓学生素质综合测评助手的功能包括:查看公告,进入评估,查看年度最终分数,前10%划分线,前20%划分线五个功能菜单。安卓学生素质综合测评的用例图如图2.1所

13、示。图 2.1 安卓学生素质综合测评用例图11第3章 软件设计3.1功能模块设计根据对软件的功能进行分析我们总结信息的获取的具体功能模块包括下面的几个主要的功能模块:软件的功能模块图:如图3.1所示:图3.1 系统功能模块图3.2 程序流程图设计用户进入软件后可进行查看公告,进入评估,查看年度最终分数,查看前10%划分线,前20%划分线等操作。程序流程图如图3.2所示:图 3.2程序流程图3.3 程序实体图设计程序公告信息是信息预览的一个界面,用户进入这个界面,可以看到最新的公告信息。公告信息的实体图如图3.3所示, 图 3.3公告的实体图进入测评主要对学生素质进行测评打分记录。实体图如图3.

14、4所示图 3.4测评的实体图3.4 程序E-R图设计整个程序主要侧重素质测评扩展功能,所以信息的获取功能是主要信息,软件的E-R图。如图3.5:图3.5软件E-R图第4章 软件实现本章主要对信息的获取连接软件的主要功能模块进行详细的设计,利用软件工程所学的知识来解释软件中的几个比较重要的功能模块的实现过程,以及实现方法和实现过程等信息进行描述。4.1 主要功能模块的实现信息的获取是一个基于Android 开发出来的软件,本节主要介绍信息的获取连接软件的重要功能模块的实现过程,程序流程以及运行的界面。4.1.1 登陆界面软件进入主页后,软件会要求用户登录,用户可根据情况选择登录或者注册。登陆后界

15、面如图4.1所示:图 4.1 登陆界面关键代码如下:public class LoginActivity extends BaseActivity implements OnClickListener private EditText et_username,et_password; DbUtils dbUtils; Overrideprotected void onCreate(Bundle savedInstanceState) / TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentVie

16、w(R.layout.login);dbUtils = DbUtils.create(getApplicationContext(),userinfo.db);et_username = (EditText) findViewById(R.id.editText1);et_password= (EditText) findViewById(R.id.editText2);findViewById(R.id.button1).setOnClickListener(this);findViewById(R.id.button2).setOnClickListener(this);if (!Stri

17、ngUtils.isEmpty(sharedPreferencesUtil.getString(username) UserInfo userInfo = null;try userInfo = dbUtils.findFirst(Selector.from(UserInfo.class).where(username, =, sharedPreferencesUtil.getString(username).and(password, =, sharedPreferencesUtil.getString(password); catch (DbException e) / TODO Auto

18、-generated catch blocke.printStackTrace();if (userInfo!=null) AppConfig.userInfo = userInfo;startActivity(new Intent(this,MainActivity.class);finish();Overridepublic void onClick(View v) switch (v.getId() case R.id.button1:login();break;case R.id.button2:startActivity(new Intent(this,RegisterActivit

19、y.class);break;private void login() / TODO Auto-generated method stubString username = et_username.getText().toString();String password = et_password.getText().toString();if (StringUtils.isEmpty(username) | StringUtils.isEmpty(password) Toast.makeText(this, 0).show();return; else try UserInfo userIn

20、fo = dbUtils.findFirst(Selector.from(UserInfo.class).where(username, =, username).and(password, =, password);if (userInfo!=null) AppConfig.userInfo = userInfo;Toast.makeText(this, , 0).show();startActivity(new Intent(this,MainActivity.class);sharedPreferencesUtil.setString(username, username);shared

21、PreferencesUtil.setString(password, password);finish();elseToast.makeText(this, 0).show(); catch (DbException e) / TODO Auto-generated catch blocke.printStackTrace();4.1.2 功能界面(1)功能界面包括查看公告,进入测评,查看年度最终分数,前10%划分数,前20%划分数几大功能。功能界面如图4.2所示:图4.2功能界面关键代码如下:public class AddFee extends BaseActivitySpinner s

22、pinner;Button button;EditText editText;DbUtils dbUtils;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.addfee);dbUtils = DbUtils.create(getApplicationContext(),FeeInfo.db);spinner = getViewById(R.id.spinner1);button = getViewById(

23、R.id.button);editText = getViewById(R.id.editText);button.setText(mYear+-+String.format(%02d, mMonth+1)+-+String.format(%02d,mDay);public void onclick(View v)switch (v.getId() case R.id.button:showDialog(0);break;case R.id.button1: save();break;(2)公告界面用于显示公告信息,此处显示学生素质综合测评表为例子。界面效果如下图:图4.3查看公告界面核心代码

24、如下:private void save() / TODO Auto-generated method stubif (StringUtils.isEmpty(editText.getText().toString() return;FeeInfo feeInfo = new FeeInfo();feeInfo.setId(System.currentTimeMillis();feeInfo.setType(int) (spinner.getSelectedItemId()+1);feeInfo.setDate(button.getText().toString();feeInfo.setDa

25、taNumber(Long.parseLong(button.getText().toString().replaceAll(-, );feeInfo.setMoney(Integer.parseInt(editText.getText().toString();try dbUtils.saveOrUpdate(feeInfo);finish(); catch (DbException e) e.printStackTrace();OverrideDeprecatedprotected Dialog onCreateDialog(int id) if (id=0) return new Dat

26、ePickerDialog(this, new OnDateSetListener() Overridepublic void onDateSet(DatePicker arg0, int arg1, int arg2, int arg3) button.setText(arg1+-+String.format(%02d, arg2+1)+-+String.format(%02d,arg3);, mYear, mMonth, mDay);return super.onCreateDialog(id);4.1.3素质测评界面 用户登录后选择进入评估按钮可进入评估界面对学生进行综合素质测评,学生根

27、据自己的情况可逐项填写测评结果详细界面如下图:图4.4 学生素质测评的详解图核心代码如下,仅供参考,具体代码参见程序源代码。private void search() / TODO Auto-generated method stubtry long start = Long.parseLong(btnstart.getText().toString().replaceAll(-, );long end = Long.parseLong(btnend.getText().toString().replaceAll(-, );long type = spinner.getSelectedItem

28、Id();if (spinner.getSelectedItemId()=0) dataList=dbUtils.findAll(Selector.from(FeeInfo.class).where(dataNumber,=, start).and(dataNumber, =, start).and(dataNumber, 0) listView.setVisibility(View.VISIBLE);listView.setAdapter(new MyAdapter();int total = 0;for (int i = 0; i dataList.size(); i+) total+=d

29、ataList.get(i).getMoney();editText.setText(+dataList.size()+n +total+ listView.setVisibility(View.INVISIBLE);editText.setText(); catch (DbException e) e.printStackTrace();private void save() / TODO Auto-generated method stubif (StringUtils.isEmpty(editText1.getText().toString() return;if (StringUtil

30、s.isEmpty(editText2.getText().toString() return;JiaYouInfo feeInfo = new JiaYouInfo();feeInfo.setId(System.currentTimeMillis();feeInfo.setDate(button.getText().toString();feeInfo.setFuel(Integer.parseInt(editText1.getText().toString();feeInfo.setMoney(Integer.parseInt(editText2.getText().toString();

31、try dbUtils.saveOrUpdate(feeInfo);showToast(已保存);finish(); catch (DbException e) e.printStackTrace();第5章 软件调试与测试5.1程序调试在软件的设计过程中,不可避免会出现一些错误。编程语言语句上的错误,在编译运行时编程软件会自动提示,编程人员可以根据提示立即修改,这类错误是比较容易发现和纠正的。但另一类错误是在程序设计时有所疏忽,考虑不完全或对某些数据的计算公式的逻辑错误。这类错误比较隐蔽需要对软件不断的测试才能减少这些错误。5.2程序的测试5.2.1 测试的重要性及目的一款软件从设计出来到最

32、终发布,必然要经过测试的过程。尽可能早的发现错误并加以修正,能够防止前面的错误导致后面的错误,最终难以寻找错误的根源。在软件设计的过程中纠错,能避免软件成型后需要修改大量的代码才能纠正错误。 并且,设计者通过对软件的测试,可以充分了解软件的不足之处。不仅仅是修复软件的错误,更可以改善用户的使用体验,使软件更加人性化。一些软件最初设计时的错误也会在测试中显现出来。由此可见,程序的测试对软件的测试者在软件的完善上有极大的帮助。5.2.2 软件测试下面是测试过程截图依次是登陆测试,浏览通知,学生素质测评。登陆时需要输入账号密码,如果输错则提示错误,不能进入软件,测试数据:用户名:101,密码101,

33、报错。输入正确数据,用户名:200,密码123,进入软件。图5.1账户密码错误提示图5.2用户名密码正确进入软件登陆后用户点击查看公告可以获取公告信息,详细界面如下:图5.3获取公告界面用户进入学生素质评测后,可以对学生各项数据进行评测,界面如下:图5.4学生素质评测界面第六章 总结与展望6.1总结本次设计是学生素质综合管理助手,实现了在手机上对学生素质综合评测表格的填写,并对评测的结果做了相关的统计。是的学生素质综合测评能够更加简便高效得进行。在设计过程中也出现了一些问题:(1) 公告并不能在手机上直接修改,必须程序员后台修改,导致变更公告的工作会比较繁琐。(2) 设计软件时设计的学生填完测

34、评表后自动生成完整的测评表功能,因技术问题难以实现,在以后对编程有更深入的了解后可加以完善。6.2展望由于自己的技术生疏,知识浅薄,所以软件实现的功能较少,软件的界面也不够美观。许多代码比较复杂,不会简化。希望在以后的学习和工作中,能够学习到更多的编程知识和经验。然后加以完善这个软件,让这个软件真正成为实用且高效得应用软件。毕业设计体会这次的毕业设计使我对安卓软件开发有了一定的了解,让我对安卓软件开发积累了宝贵的经验。让我了解了一个软件从最初设想到最终完成的过程,并没有想象中那么简单。在毕业设计过程中还认识了许多编程人员,通过与他们交流,我学会了很多知识,收获颇丰。在收集资料时也了解到了许多编

35、程方面的网站,很多开发人员在这些网站上交流经验,这些宝贵的经验对我们这些入门这有着很大的作用。在这次毕业设计过程中,我学会了很多知识和技能。今后,我还要再丰富我的专业知识,提高编程能力,开发出更加高效,实用的软件。致 谢毕业设计的顺利完成,要真诚的感谢所有帮助过我的人。感谢老师在项目中对我的指导,使我受益匪浅,在老师的帮助下我终于顺利地完成了此次设计。在设计过程中给了我很多关键性的指导。在程序设计上课给了我很多关键性的资料,在软件的功能方面给了我很多建议,使我顺利地完成了毕业设计。感谢所有的专业课老师,在毕业设计过程中需要很多专业相关的知识,他们都曾在专业课上传授教导过我。感谢同学对我的帮助,

36、当我在设计上有问题时给与我解答和建议。还要感谢网上热心的编程人员,在我编程遇到问题时给我解答,尤其在环境搭建和编程技巧方面提供了宝贵的经验。参考文献1张海藩,软件工程导论(第6版),北京:清华大学出版社,2013年;2 靳岩、姚尚朗著,Google Android开发入门与实战M,北京:清华大学出版社,2009-07-01.3 高昂著,支持动态语言的Android平台M,北京:人民邮电出版社, 2009-05-07.4 毕广吉,Java程序设计实例教程M,北京:冶金工业出版社,2007. 5 何玉杰,数据库原理与应用M,北京:机械工业出版社,2007.6 辛运帏、饶一梅、马素霞Java程序设计

37、M,北京:清华大学出版社,2006.7 余志龙编著Google Android SDK开发范例大全M ,北京:人民邮电出版社, 2009-7-1.8王向辉、张国印、沈洁Android应用程序开发,清华大学出版社,2010年3月9孙一林、彭波,Java数据库编程实例,清华大学出版社,2002年10王珊、萨师煊,数据库系统概论(第4版),北京:高等教育出版社,2006年;11张永常 ,java程序设计使用教程(第2版),电子工业出版社,2012年12 Lan Sommerville.Software EngineeringM.Addison Wesley,2004.13 RogerS.Pressm

38、an.SoftwareEngineering:APractitioners ApproachM.McGraw-Hill,2001.14 Bruce Eckle.Think in Java 2nd EditionM.Prentice Hall,2000.15R.J(Bud)Bates. GPRS:General Packet Radio Service .McGraw-Hill, 2003, .16 Cameron,J.R. JSP & JSD the Jackson approach to software development .Silver Spring MD: IEEE Compute

39、r Society Press, 1983, .17 M.J.King,J.P.Pardoe. Program design using JSP a practical introduction .Basingstoke Hampshire: Macmillan, 1992, .18 James Goodwill. Pure Java Server Pages .Indianapolis Ind: Sams, 2000, .19 Gwenael Le Bodic. Mobile messaging technologies and services SMS EMS and MMS .New Y

40、ork: J.Wiley, 2005, .20 Henry Labord(?)re,Vincent Jonack. SMS and MMS interworking in mobile networks .Boston: Artech House, 2004, .英文翻译资料A.英文原文Android applications are written in the Java programming language. The Android SDK tools compile the codealong with any data and resource filesinto an Andro

41、id package, an archive file with an .apk suffix. All the code in a single .apk file is considered to be one application and is the file that Android-powered devices use to install the application. Once installed on a device, each Android application lives in its own security sandbox: The Android ope

42、rating system is a multi-user Linux system in which each application is a different user. By default, the system assigns each application a unique Linux user ID (the ID is used only by the system and is unknown to the application). The system sets permissions for all the files in an application so t

43、hat only the user ID assigned to that application can access them. Each process has its own virtual machine (VM), so an applications code runs in isolation from other applications. By default, every application runs in its own Linux process. Android starts the process when any of the applications co

44、mponents need to be executed, then shuts down the process when its no longer needed or when the system must recover memory for other applications. In this way, the Android system implements the principle of least privilege. That is, each application, by default, has access only to the components tha

45、t it requires to do its work and no more. This creates a very secure environment in which an application cannot access parts of the system for which it is not given permission. However, there are ways for an application to share data with other applications and for an application to access system se

46、rvices: Its possible to arrange for two applications to share the same Linux user ID, in which case they are able to access each others files. To conserve system resources, applications with the same user ID can also arrange to run in the same Linux process and share the same VM (the applications mu

47、st also be signed with the same certificate). An application can request permission to access device data such as the users contacts, SMS messages, the mountable storage (SD card), camera, Bluetooth, and more. All application permissions must be granted by the user at install time. That covers the b

48、asics regarding how an Android application exists within the system. The rest of this document introduces you to: The core framework components that define your application. The manifest file in which you declare components and required device features for your application. Resources that are separa

49、te from the application code and allow your application to gracefully optimize its behavior for a variety of device configurations.Application ComponentsApplication components are the essential building blocks of an Android application. Each component is a different point through which the system ca

50、n enter your application. Not all components are actual entry points for the user and some depend on each other, but each one exists as its own entity and plays a specific roleeach one is a unique building block that helps define your applications overall behavior. There are four different types of

51、application components. Each type serves a distinct purpose and has a distinct lifecycle that defines how the component is created and destroyed. ActivitiesAn activity represents a single screen with a user interface. For example, an email application might have one activity that shows a list of new emails, another activity to compose an email, and another activity for reading emails. Although the activities work together to form a cohesive user e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论