基于androidd的毕业设计选题及周总结管理App的设计与实现_第1页
基于androidd的毕业设计选题及周总结管理App的设计与实现_第2页
基于androidd的毕业设计选题及周总结管理App的设计与实现_第3页
基于androidd的毕业设计选题及周总结管理App的设计与实现_第4页
基于androidd的毕业设计选题及周总结管理App的设计与实现_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

本科毕业设计说明书 题 目:基于 android 的毕业设计选题及 周总结管理 App 的设计与实现 院 (部):计算机科学与技术学院 专 业: 软件工程 班 级: 软件 111 姓 名: 学 号: 指导教师: 完成日期:2015 年 5 月 26 日 山东建筑大学毕业设计说明书 I 目 录 摘 要 III ABSTRACT IV 1 前 言 1.1 选题背景 1 1.2 系统简要说明 1 1.3 相关开发技术和工具简介 2 1.4 应用前景 4 2 需求分析 2.1 系统概述 5 2.1.1 目标 5 2.1.2 用户定义及权限 5 2.2 系统环境 . 6 2.2.1 系统开发环境 6 2.2.2 系统运行环境 6 2.3 功能需求 . 7 2.3.1 功能需求分析 7 2.3.2 系统用例图 8 2.4 数据描述 12 3 概要设计 3.1 功能概要设计 . 13 3.2 系统类图 15 3.3 逻辑结构设计 18 4 详细设计与实现 4.1 系统总体结构 . 19 4.2 系统架构设计 . 19 4.3 系统关键基础类 . 20 山东建筑大学毕业设计说明书 II 4.4 系统模块调用顺序图 23 4.5 业务功能模块设计与实现 27 4.5.1 公共模块 27 4.5.2 学生模块 28 4.5.3 教师模块 33 5 系统测试 5.1 测试目标 38 5.2 测试环境 38 5.3 功能需求 38 5.4 性能测试需求 42 5.5 测试结果 43 5.6 缺陷报告单 45 6 总结 . 47 谢 辞 . 48 参考资料 49 山东建筑大学毕业设计说明书 III 摘要摘要 目前基于 Android 系统的智能手机发展迅速,人们对智能手机的依赖程度越来越大。传 统 PC 上的各种系统也逐渐的向移动端迁移,包括游戏、社交软件、部分办公软件、娱乐 软件等都有相应的 APP,人们可以通过使用 Android APP 在任何时间、任何地点进行娱乐、 办公、通讯以及各种生活服务,既方便又快捷。 现在计算机学院采用毕业设计过程管理系统对毕业生的毕业设计整个过程进行规范的 信息化管理,其功能包括:指导教师发布课题、审核课题、毕业生选题、周总结管理,以 及系统信息管理等。该系统的 web 版已经成功运行了 4 年,随着 Android 智能移动端的迅 猛发展和普及,为了方便师生们更好地使用相关功能,现在需要为毕业设计过程管理系统 设计和开发基于 android 的毕业设计选题及周总结管理手机 App。 基于 android 的毕业设计选题及周总结管理手机 App 主要有学生和教师两大模块。 学生 模块的功能主要有:课题浏览、选择课题、编写周总结、上传相关文档和编辑个人信息等; 教师模块的主要功能有:申请课题、盲审课题、选择学生、盲审相关论文、管理周总结和 编辑个人信息等。 基于 android 的毕业设计选题及周总结管理 App 侧重于客户端的设计和开发, 而不过多 关注后台逻辑以及数据库的实现。后端通过 Servlet 提供服务接口,APP 通过 Volley 网络框 架访问服务接口。该 APP 除了实现毕业设计过程管理系统的基本功能外,还提供了一些特 色功能,如自动登录、下拉刷新列表数据以及消息推送等。该 APP 一旦上线,会给教师和 学生们在毕业设计过程中带来更多的方便。 关键词:关键词:毕业设计管理系统;Android;APP; Volley 山东建筑大学毕业设计说明书 IV Design and Implementation of Graduate Design Picking Subject and Managing Week summary App Based on Android ABSTRACT Recently, smart phones based on android are developing rapidly, and people more and more dependent on them. The various systems over traditional PCs also gradually are migrated over mobile terminal, including games, social softwares, office-softwares, entertainment softwares, etc. Thus, people can use those softwares through corresponding android App on their mobile terminals conveniently and quickly anytime, anywhere. At present, our school uses Graduation Design Process Management System to manage whole process of the graduation design. Its functions include: Instructor release subject, reviewing subject, graduate picking subject, week summary management, and system information management, etc. Current version of this system has run successfully for 4 years. For the convenience of teachers and students, we need to design and implement a mobile client App for this system. This App is based on Android, mainly including student module and teacher module. The main function of student module includes browsing subject, picking subject, filling in week summary, uploading graduation design documents and editing personal information, etc. The main function of the teacher module includes applying subject, blind reviewing subject, picking student, blindly reviewing relevant papers, managing week summary and editing personal information, etc. This App is focus on client design and development, without paying too much attention to the background logic and the realization of the database. Backend provides service interface through servlet, and it accessed those services through existing Volley network framework. Besides basic functions of graduation design process management, this App also provides some features, such as automatic login, refresh data list through drop-down mode, and message delivery, etc. Once this App is on-line, it would provide teachers and students more convenience during the graduation design process. Key words: Graduation Design Management System; Android; APP; Volley 山东建筑大学毕业设计说明书 1 1 1 前前 言言 1.1 1.1 选题背景选题背景 2008年9月, 谷歌正式发布了Android 1.0系统, 2009年4月, 谷歌正式推出了Android 1.5 这款手机,2010 年 10 月份, 在电子市场上获得官方数字认证的 Android 应用数量已经 达到了 10 万个,Android 系统的应用增长迅猛。2013 年的第四季度,Android 平台手机 的全球市场份额已经达到 78.1%,而 2015 年 Android 平台手机的全球市场份额超过 80%。 Android 系统的出现给只能移动设备带来一场新的革命,它的易用性、界面友好性等都深 深吸引用户。人们越来越希望能在只能移动终端上完成之前只能在 PC 上完成的工作,而 事实上 Android 已经做到了这一点,包括娱乐、社交、部分办公,各种生活服务都能在 Android 智能终端上进行。它的方便快捷,使得人们越来越离不开它,这也是为什么 Android 发展迅猛的原因之一。 如今各种大大小小的网站和其他软件都把往只能终端上迁移, 而毕业设计选题系统是 用于管理毕业生的毕业设计选题的相关工作和内容的系统, 它的用户是高校生和教师, 在 这个群体中用的最多也也更愿意用的是只能终端,而不是传统的 PC。 毕业设计过程管理系统已经有比较完整的 web 版, 但这也存在一些局限性, 每次选题 或者查看毕业设计情况的时候都要打开电脑、 登陆到毕业设计过程管理系统, 并且需要有 较良好的网络环境。所以仅有一个 web 版的毕业设计过程管理系统已经越来越不能满足 教师和学生的需求,他们急迫需要一个 APP 以更方便和快捷的选题、查看毕业情况以及 完成其他相关的毕业设计工作。因此基于 Android 的毕业设计过程管理系统 APP 的设计 和开发是必要的更是大势所趋。 1.2 1.2 系统简要说明系统简要说明 毕业设计选题系统的 APP 仅仅是一个客户端,相当于 web 客户端,同样是采用 B/S 模式,它的服务端则直接用原有的服务端。毕业设计选题系统的 APP 也包含三大模块: 学生模块、教师模块和管理员模块。本文重点介绍的是学生模块和教师模块。 学生模块的主要功能:选题、编写并提交周总结、提交相关论文等。 教师模块的主要功能:申报课题、发布课题、盲审课题、盲审论文、管理周总结等。 山东建筑大学毕业设计说明书 2 在该系统中有三种角色:学生、教师和管理员,在用户登陆系统的时候会让用户选择 自己的角色进行角色,系统会根据用户的角色和用户名、密码来进行验证,验证通过则根 据角色进入不同的界面,并给予用户不同的权限。 1.3 1.3 相关开发技术相关开发技术和工具和工具简介简介 (1)android Android 的系统架构采用了分层架构的思想,从底层到上层共有四层,分别为 Linux Kernel(Linux 内核) 、Android Runtime and Library(系统库和 Android 运行时) 、 Application Framework(应用程序框架层)和 Application( 应用程序层) 。 1)Linux Kernel Android 的底层采用了 Linux 系统的核心服务,如内存管理、进程管理、驱动模型、 安全等,但它也并不是完全照搬 Linux,它除了修改 linux 的一些 bug 外,针对资源有限 的终端设备(手机等)提供特定的服务,如:低内存管理器、Android 电源管理、Android Binder 等。 2)Android Runtime Android 运行环境包含一个核心库集合,它提供大部分 java 核心类库。并包含 Dalvik 虚拟机。Dalvik 虚拟机是 android 系统特有的的运行虚拟机,可执行.dex 格式的文件,而 dex 格式则是专为 Dalvik 设计的一种压缩格式,适合内存和处理器速度有限的系统。 3)Library Library 是一个 C/C+库的集合,提供给 Android 系统的各个组件使用。开发者可通 过接口访问这些库。 系统库包含了图层管理、 媒体库、 SQLite、 OpenGLEState、 FreeType、 WebKit、SGL、SSL 和 libc 这九个库。 4)Application Framework 应用程序框架层是 Android 应用开发的基础,其为开发人员通过各种接口。应用程序 框架层提供了活动管理器、窗口管理器、内容提供者、视图系统、包管理器、电话管理器、 资源管理器等十个部分服务。 5)Application Android 系统中有一个核心应用程序集合,这些应用包括拨号、日历、地图、浏览器、 联系人等等。所有的这些应用程序都是用 Java 编程语言写的。 山东建筑大学毕业设计说明书 3 (2)Volley 网络框架 在 Google I/O 2013 发布会上谷歌发布了 Volley 网络框架 ,Volley 是 Android 平 台上的一个优良的网络通信框架,它能使网络通信更快,更简单,更健壮。Volley 适合 于数据量不大但是通信频繁的场景,如图片的加载等。Volley 提供的功能如下。 JSON 数据格式请求,提供异步下载。 对网络请求可进行排序。 网络请求的优先级处理。 同 Activity 生命周期绑定,即当 Activity 结束时会自动取消所有网络请求。 (3)xutile 文件上传下载框架 xUtils 是第三方的工具库,可支持大文件上传,ORM 操作、异步请求和网络图片加 载等功能。其让这些功能使用变得简易、灵活和快捷。xUtils 主要有四大模块如下。 DbUtils 模块: 是 android 中的 orm 框架,可用一行代码增删改查数据;同时也支持 事务;支持自定义表名,列名,外键,唯一性约束, CHECK 约束等各种约束,也支持 绑定外键等等。 ViewUtils 模块:是 android 中的 ioc 框架,使用注解方式就可以将 UI 和资源与事件绑 定;即使使用混淆了工具混淆,它仍可正常工作。 HttpUtils 模块: 不仅支持同步, 而且也支持异步方式的请求; 支持大文件上传和下载; 支持 GET,POST,PUT,MOVE,COPY 等多种请求。 BitmapUtils 模块:对加载 bitmap 加载进行优化,避免 oom 和图片错位等现象;支持 加载网络图片和本地图片等。 (4)Gson: Gson 用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库,也是 Google 提供 的。相对于 java 以及其它 json 的解析框架,Gson 有自己的优点。 (5)ADT Bundle ADT Bundle 是 Android 集成开发环境,其中包含了以安置 ADT 插件的 Eclipse 和 Android SDK。ADT 即 Android Developer Tools 的简称,是 Android 开发工具,如果想 在 Eclipse 上开发 Android 应用,则需要安装 ADT 插件。Android SDK 是开发工具包,其 中包含了开发所需的开发工具和调试工具,以及相关文档等。 山东建筑大学毕业设计说明书 4 1.4 1.4 应用前景应用前景 毕业设计选题系统是一个非常实用的管理系统, 其主要针对高校业生毕业设计管理这 项复杂的流程而开发, 主要有管理员、 教师、 学生三个角色。 不管是对生生还是老师来说, 毕业设计选题系统能打打节省他们时间,减少流程的复杂度,方便易操作。 然而传统的web系统在用户使用上存在很多不做之处, 如选题或者管理周总结的时候, 必须在电脑前才能完成,这也给用户带来一定局限性。而现在的智能移动端特别是 Android 只能移动端发展迅猛,人们更希望通过手机或者其他移动端来完成这些工作,这 样就不受 PC 的约束,几乎可以随时随地进行操作,对网络的选择空间也更大。所以毕业 设计选题系统的 APP 有着更好的前景比 web 网站更加受欢迎。 山东建筑大学毕业设计说明书 5 2 需求分析 2.1 系统概述 2.1.1 目标 (1)学生可以通过毕业生选题 APP 选择课题、查看课题、编写并提交周总结和上传相关 论文等。 (2)教师可以通过毕业生选题 APP 进行申报课题、发布课题、盲审课题、盲审论文、管 理周总结等。 (3)系统可以通过推送功能,通知教师和学生实时更新选课情况。 (4)系统易用、稳定可靠。 2.1.2 用户定义及权限 (1)该系统的用户用三种:学生、教师和管理员。 (2)用户的权限 学生:查看课题、选择课题、重选课题、写周总结和上传相应论文。 教师:申报课题、发布课题、盲审课题、选择或放弃选题学生、盲审论文、评阅周总 结。 管理员:是系统中用户最高权限的角色,可对整个系统进行管理。课题管理包括发布 课题、调整课题、查看设计文档等;盲审管理包括课题盲审、论文盲审和设置教师课题方 向; 系统管理包括学生管理、教师管理、专业班级管理、用户管理、代码管理和参数维护。 山东建筑大学毕业设计说明书 6 2.2 系统环境 2.2.1 系统开发环境 (1)软件: 1) tomcat6.0 服务器。 Tomcat 是 Apache 的一个免费的开放源代码的 Web 应用服务器, 适用于中小型系统,是运行 JavaEE 开发的系统的首选。 2)mysql5.0 数据库。一个免费开源的关系型数据库管理系统,适用于中小型系统的 数据管理。 3)jdk1.6。jdk 是 java 语言的开发工具包,包含了 java 程序开发所需要的环境、工具 和资源。 4)myEclipse8.5。是一个主要用于 Java、Java EE 以及移动应用的开发企业级开发集 成环境。 5)ADT Bundle。ADT Bundle 是 Android 集成开发环境,其中包含了以安置 ADT 插件 的 Eclipse 和 Android SDK。 (2)硬件 1)PC 机。处理器为 Pentium,内存 2G。 2)调试机。装配 Android2.2 Android4.2 系统的智能手机。 2.2.2 系统运行环境 (1)软件: 1)tomcat6.0 服务器。 2)mysql5.0 数据库。 3)jdk1.6。 (2)硬件: 1)装配 Android2.2 Android4.2 系统的智能手机。 山东建筑大学毕业设计说明书 7 2.3 功能需求功能需求 2.3.1 功能需求分析 基于 android 的毕业设计选题及周总结管理 APP 主要有学生和教师这两大模块,具体 的功能需求如下所示。 (1)学生模块功能分析: 1)编辑个人信息并进行提交。可编辑的个人信息有性别、联系方式和电子邮箱。在 初选课题前必选完善个人信息,否则不允许选题。 2)学生登陆系统后可以更改自己的登陆密码。 3)浏览课题列表,查看课题详细信息和任务书以及跟该课题相关的教师的信息。 4)初选课题,调整初选课题顺序。初选最多可选两个课题,两个课题之间是有顺的 第一个课题的优先级会高于第二个课题,被教师“确认”接受的可能性高于第二 个。然后提交初选课题,并等待选题结果。 5)初选的课题如果被指导教师选中则说明选题成功,如果教师放弃选择,则属于落 选。若果在提交初选课题的时候勾选了“候选后有专业负责人指派课题”的复选 选项,则在落选后,直接有专业负责人在后期指派一个课题,否则可重新选题。 6)上传毕业设计说明书、源代码等资料。当学生的课题选择成功后,该学生就可以 在规定的时间上传自己的毕业说明书、源代码等资料。 7)编辑日志并提交。当学生的课题选择成功后,该学生就可以规定的时间段编辑日 志,然后将日志提交。 (2)教师模块功能分析: 1)编辑、修改个人信息。可编辑的个人信息有性别、职称、学位、研究方向、邮箱 和手机。 2)教师也可以修改自己的登陆密码。 3)申报课题。教师首先要填写“选题任务书” ,任务书的内容有:确定课题名称、指 导教师、设计工作基本要求、设计工作内容、设计原始参数、设计工作日程、主要 参考资料以及相关文献等内容。然后提交给专业负责人进行审核,审核通过后,专 业负责人会提交到教学秘书处发布课题。 山东建筑大学毕业设计说明书 8 4)当学生初选课题后,教师可以查看学生选题情况,可以选择某一个学生或者放弃 一个学生。 5)盲审课题。课题发布后,由管理员分配盲审课题,教师可以盲审课题,写评审意 见并提交。 6)盲审论文。学生提交相关论文后,由管理员分配论文让教师进行盲审,教师填写 相关的盲审意见后进行提交。 7)周总结管理,包括对学生的提出的问题进行解答和评价考核学生的周日志,以及 生成进程表等。 2.3.2 系统用例图 从以上的需求分析中我们可以简单的画出系统的用例图,为了描述清楚业务,下面我 们按业务模块来画出系统的用例图,更加直观的描述系统的关于毕业设计过程的情况。 (1)教师课题申请用例 课题申报首先需要教师录入课题,即填写“选题任务书” ,然后提交“选题任务书” , 由专业负责人对选题任务书进行审核,如果课题符合要求,则生成“通过审核的任务书” , 否则专业负责人将填写审核意见, 然后将审核结果反馈给相关课题教师。 教师收到审核意 见后可以删除课题,也可以继续修改课题,然后重新提交审核。对于审核通过的课题,专 业负责人将课题提交到管理员那里,由管理员进行发布课题,并且形成课题明细表。 另外,在教室申报课题时,会有最多可申请课题数目的限制(目前最多可申请 10 个 课题,可由管理员配置) ,而一个课题只使用于一个学生,即一个课题只能被一个学生选 择。教师课题申请用例图如图 2.1 所示: 山东建筑大学毕业设计说明书 9 教师 管理员 专业负责人 录入课题 提交申请 审核课题 发布课题 图 2.1 教师课题申请用例图 (2)学生教师课题双选用例 当课题发布后,且毕业设计已经开始,学生便可以初选课题。在这个阶段,每个学生 可以选择多个课题(最多可选题数由管理员配置) ,而一个课题也可以别多个学生选择。 教师将根据学生的初选情况对学生进行选择。 被选中的学生属于选题成功, 而所有其他已 初选该课题的学生,在该课题上属于落选状态。 学生初选课题方式有两种,具体如下: 1)直接从课题列表中选择课题,目前一个学生最多可初选两个课题。如果一个学生选 择了两个课题,这两个课题是有优先顺序的,排在第一的那个课题优先级最高,被选中的 可能性更高。在提交初选课题之前,这两个课题时可以调整顺序的。 学生提交初选课题后, 第一志愿首先被提交到相应课题的教师那里, 等待教师的确认。 如果教师确认了该学生,则说明该学生选题成功,并形成“已有学生选题的任务书” ,然 后提交给管理员进行归档。如果该学生被教师“放弃” ,或者在该课题上教师确认了其他 学生,则该学生都属于落选状态。落选后,该学生的第二志愿才会被提交到第二志愿课题 的相应教师那里,等待确认。确认的过程同第一志愿相同。 如果该学生在初选课题的时候没有要求“落选后由专业负责人指派课题” ,则在两个 志愿都落选后,可以重新初选课题。 2)由专业负责人指派课题。如果某个学生不想自己选择课题,则直接勾选“落选后由 专业负责人指派课题” ,然后进行提交,在选题后期,专业负责人会为该学生分配一个课 山东建筑大学毕业设计说明书 10 题。当然,在选择课题时,同样可以勾选该选项,在所有的志愿都落选后,该学生就不用 重新选择课题了,专业负责人会在选题后期为该学生分配一个课题。 学生教师课题双选用例图如图 2.2 所示: 学生 教师 专业负责人 管理员 初选课题 选择学生 指派课题 提交归档 图 2.2 学生教师课题双选用例图 (3)论文盲审用例 学生提交相关论文后,由管理员分配盲审论文。和盲审课题一样,教师对论文进行盲 审评阅,并形成“指导教师批阅意见” 。最后,由评阅人对毕业设计文档进行评审,形成 “评阅人评审意见” 。论文盲审用例图如图 2.3 所示。 学生 教师 管理员 编写论文 上传论文 盲审论文 分配盲审论文 提交盲审意见 图 2.3 论文盲审用例图 山东建筑大学毕业设计说明书 11 (4)学生、教师个人信息用例 学生和教师登陆系统后可以编辑、修改自己的个人信息,但只能编辑一部分信息,另 一部分信息是由管理员录入的,这一部分信息是学生和教师不能修改的,如学生的学号、 姓名,教师的编号、姓名所在教研室等。学生、教师个人信息用例如图 2.4 所示。 学生 教师 管理员 修改学生个人信息 修改教师个人信息 录入学生基本信息 录入教师基本信息 图 2.4 学生教师个人信息用例图 (5)周总结管理用例 在整个毕业设计的过程中,学生必须没有都写周总结。周总结内容包括:本周工作总 结,需要教师支持和解决的问题以及下周工作安排。学生编写周总结后提交,由相应的指 导教师进行评阅,然后写评阅意见,再上传归档。周总结管理用例图如图 2.5 所示。 学生 教师 编辑周总结 提交周总结 评阅周总结 提交评阅意见 图 2.5 周总结用例图 山东建筑大学毕业设计说明书 12 2.4 数据描述 从整个系统看,系统需要管理 7 类基本信息,即系统参数、学生信息、教师信息、班 级信息、周总结管理和盲审管理。 系统参数是管理员来操作,主要是输入相应专业、教研室、申报课题数、周总结次数、 进度表周数等基本信息, 然后保存到数据库, 这些参数可用一个数据存储 “系统参数信息” 来保存这些信息,主要的信息会根据“班级基本信息”处理教学秘书输入,并保存在“学 生基本信息”数据存储中。学生信息主要有姓名、性别、所在班级以及联系方式。教师信 息主要包括姓名、 性别、 所在专业、 职称、 研究方向和联系方式, 主要的一些信息会由 “系 统参数信息” 中的教研室信息处理教学秘书输入, 并保存在 “教师基本信息” 数据存储中。 班级信息主要有班级名称、对应专业、开班时间、毕业时间等,这些信息也是由管理员管 理输入的,可存在“班级信息”表中。周总结主要是由学生编写周总结内容,由教师进行 评阅,可保存在一个单独表“周总结信息”中。盲审的信息包括课题盲审和论文盲审,盲 审主要是由教师进行盲审评阅,可分别保存。 山东建筑大学毕业设计说明书 13 3 3 概要设计概要设计 3.1 功能概要设计 (1)原有系统提供的服务: 毕业设计过程管理系统已经有一个比较完整、 稳定的 web 版本, 也成功运行了几年。 所以基于 Android 的毕业设计过程管理系统 APP 直接调用已有后端的接口,不需要重新 开发后端服务和设计数据库。 毕业设计过程管理系统的服务端使用 Servlet 向 APP 提供接口,即 APP 主要与后端 的 Servlet 进行交互,向 Servlet 发送请求后获取数据。服务端主要提供的 Servlet 如下: 1)LoginServlet,提供用户登陆接口。 2)UserServlet,提供增加角色,修改个人信息和密码等接口。 3)Download,提供从服务器上下载文件的接口。 4)SubSubmitServlet,提供上传文件的接口。 5)ReviewPaperServlet,提供为教师分配盲审论文、设置盲审意见、查看盲审意见、获取 教师盲审的论文信息和新增课题等接口。 6)SpecialityServlet,获取所有专业的接口。 7)StudentServlet,提供与学生相关的接口,包括:获得学生列表、根据学号获得学生基 本信息、学生修改个人信息和增加学生等。 8)StusubServlet,有关学生课题的接口,包括:提交学生初选结果、获得学生已初选的 课题列表和学生换导师等。 9)SubjectServlet,课题相关的接口,有增加新课题、修改课题和得到课题列表等。 10)TeacherServlet,教师相关的接口,包括:管理员增加、修改个人基本信息、教师修改 个人信息、设置教师课题方向和为评审教师分配课题。 11)WeekSumServlet,提供获取、提交和评阅周总结的接口。 (2)系统总体结构: 基于 Android 的毕业设计过程管理系统 APP 的总体结构图如图 3.1 所示。 该 APP 主要 实现学生和教师两大模块的功能,基本涵盖了原有系统的所有基本功能。 山东建筑大学毕业设计说明书 14 毕业设计过程管理系统APP 学生模块教师模块 浏 览 课 题 选 择 课 题 上 传 文 档 编 辑 周 总 结 修 改 个 人 信 息 申 报 课 题 查 看 课 题 审 核 课 题 选 择 学 生 盲 审 论 文 管 理 周 总 结 修 改 个 人 信 息 修 改 密 码 修 改 密 码 图 3.1 总体结构图 (3)学生模块: 1)浏览课题。当毕业设计开始后,学生可以登录到毕业设计过程管理系统 APP 看看 本专业所有教师的相关课题情况。课题内容包括:课题性质、设计论文概要、设计工作内 容、设计工作基本要求、设计工作日程和参考文献资料。 2)学生选择课题。在毕业设计第一阶段,学生可以通过毕业设计过程管理系统 APP 选择一到两个自己喜欢的课题, 然后提交等待教师的确认。 也可以由专业负责人指派课题。 3)上传文档。当学生选题成功后,需要在相应的时间段上传相应的文档,如:毕业 设计说明书、外文文献及翻译和程序源代码等。这些文档经过盲审后,最总提交归档。 4)编辑周总结。在毕业设计过程中,学生每周都需要些周总结,然后提交给相关教 师进行评阅。 周总结内容: 本周工作总结、 要求教师支持和解决的问题以及下周工作计划。 5)学生修改跟人信息。在选题之前,学生必须完善个人信息,否则无法选题。可编 辑修改的个人信息有性别、邮箱和手机,而学号、姓名和班级等基本信息由系统管理员录 入,学生不可修改。 6)修改密码。登陆毕业设计过程管理系统 APP 后,学生可对自己的登陆密码进行修 改。 (4)教师模块: 1)申报课题。在毕业设计开始前,教师首先需要录入课题信息并提交申请。课题信 山东建筑大学毕业设计说明书 15 息包括:确定课题名称、指导教师、设计工作基本要求、设计工作内容、设计原始参数、 设计工作日程、主要参考资料以及相关文献等内容。然后提交给专业负责人进行审核,审 核通过后,专业负责人会提交到教学秘书处发布课题。 2)查看课题。教师可以查看自己的课题内容,以及每个课题被学生选择情况。 3)审核课题。课题发布后,由管理员分配盲审课题,教师可以盲审课题,写评审意 见并提交。 4)选择学生。当学生初选课题后,教师可以查看学生选题情况,可以选择某一个学 生或者放弃一个学生。当选择某个学生后,则说明该学生选题成功,而其他选择该课题的 学生都落选,若放弃一个学生,则该学生也属于落选。落选的学生需要重新选择课题或者 由专业负责人指派课题。 5)盲审论文。学生提交相关论文后,由管理员分配论文让教师进行盲审,教师填写 相关的盲审意见后进行提交。 6)周总结管理。教师需要对学生的提出的问题进行解答和评价考核学生的周日志, 以及生成进程表等。 7) 、编辑、修改个人信息。可编辑的个人信息有性别、职称、学位、研究方向、邮箱 和手机。 8) 、教师也可以修改自己的登陆密码。 3.2 系统类图 由于系统比较庞大,所以系统的类图按模块来进行描述。 (1)学生模块类图 系统的设计主要利用 java 的继承特性, 把公共的行为和属性都提到父类中, 子类继承 父类就拥有父类的行为和属性了,这样能提高代码的重用性和易维护性。系统中所有的 Activity 都要继承 BaseActivity,BaseActivity 是封装了网络请求等基本功能的基础类。 StudentActivity 是学生的入口界面,该界面包含多个 Fragment。 如果某学生未过题,则他进入系统后会首先进入 StuSubjectListFragment,即课题列表 页面。在该页面学生学生可以查看课题任务书,选择课题。但必须是毕业设计开始,且个 人信息也完善才能选题。 当某个学生选择某个课题后就转到 PickingSubjectFragment,即学生选题页面,一个学 山东建筑大学毕业设计说明书 16 生可最多选两个,在该页面学生可以将选择的课题提交。提交后为初选阶段,等待教师的 确认。如果教师一直还没确认或放弃,则学生每次进来都首先进到这个页面。当然也可以 切换到尅提列表页,但不能选题,也可以切换到周总结页面,当此时不能编辑周总结。 如果一个学生的初选课题被教师放弃,则他需重新选择课题然后提交,等待确认,也 可以同意让专业人选分配课题。 如果一个学生初选课题被教师选择了, 则说明他选题成功, 就会切换到 PickedSubjectFragment,在该页面可以上传相应的论文。此时可以切换到周总 结页面编写周日志,然后保存上交。学生模块的类图如图 3.2 所示。 Activityandroid.app.Fragment +setHeaderTitle() +initLocalData() +initContentView() +initViewData() +onClick() +StringPostRequest() +StringPostRequest() +setParams() +execut() +onResponse() +onErrorResponse() -request : StringPostRequest -dialog -isShowDialog : bool -mQueue : RequestQueue BaseActivity +onCreateView() +StringPostRequest() +StringPostRequest() +setParams() +execute() +onResponse() +onErrorResponse() -request : StringPostRequest -dialog -isShowDialog : bool -mQueue : RequestQueue BaseFragment RequestQueue +getParams() +setParams() -params StringPostRequest +onCreate() +initLocalData() +initContentView() +initViewData() +onClick() +login() +localVerify() +onResponse() -uRole : string -uId : string -uPass : string LoginActivity 1 * 1 * +onCreate() +initLocalData() +initContentView() +initViewData() +onClick() +onResponse() -setTabSelection() -clearSelection() -hideFragments() -subjectListFragment : StuSubjectListFragment -stuWeekSumFragment : StuWeekSumFragment -pickingSubjectFragment : PickingSubjectFragment -pickedSubjectFragment : PickedSubjectFragment -fragmentManager -stuid : string -allStatus : string -student -SelectedsubjectList StudentActivity +onCreateView() +initLocalData() +requstStuInfo() +onResponse() +requestSubList() -subjectList -subjectNameList -checkedIndexList -stuSubjectListAdapter -stuSubjectListAdapter StuSubjectListFragment +onCreateView() +stuInfoRequst() +request() +initLocalData() +onResponse() +onItemClick() -stuId : string -student -allStatus : string -weekorderset -weeknum : long StuWeekSumFragment +onCreateView() -stuid : string PickingSubjectFragment +onCreateView() +onClick() +onResponse() -stuId : string -student PickedSubjectFragment 1 * 1 * 1 * 1 * 1 * 1 * +onCreate() +initLocalData() +initContentView() +initViewData() +onClick() -chooseFile() -upload() +onResponse() -showStatus() +onActivityResult() -stuId : string -subName : string -docType : string -filePath : string StuThesisUploadActivity +onCreate() +initLocalData() +initContentView() +initViewData() +onClick() +saveStuInfo() +localVerify() +onResponse() -stuid : string -student StuPersonalInfoActivity +onCreate() +initLocalData() +initContentView() +initViewData() +onClick() +saveReview() +onResponse() +showContent() -stuId : string -subName : string -teaName : string -weekSumBean -weekorder : string -isEditable : bool StuWeekSumContentActivity 图 3.2 学生模块类图 (2)教师模块类图 教师模块的设计结构与学生模块类似,教师登陆系统首先会进入到课题页面 TeaSubjectFragment,在该页面教师可以看到每个课题有多少学生初选,点击某个课题则 山东建筑大学毕业设计说明书 17 转到 TeaSelectStuActivity 页面进行选择或放弃学生。选择或放弃之后自动转向 TeaSubjectFragment。 当某个课题确认选择某个学生之后,在 TeaSubjectFragment 也会有所标记。再点击该 课题时会转向 TeaSelectedStu 页面,在该页面可查看该学生论文提交情况。 教师可以通过滑动切换到盲审页面和周总结管理页面。 盲审页面有课题盲审和论文盲 审。点击课题盲审可进入 TeaReviewSubjectListActivity 页面选择某个课题进行盲审评阅, 论文盲审则进入 TeaReviewThesisListActivity 页面选择某个论文进行盲审。在周总结管理 页面可以选择某个学生,然后选择某个周次进行周总接管理。一般只有当前周次可编辑, 其他周次不可编辑。教师模块的类图如图 3.3 所示 Activity +setHeaderTitle() +initLocalData() +initContentView() +initViewData() +onClick() +StringPostRequest() +StringPostRequest() +setParams() +execut() +onResponse() +onErrorResponse() -request : StringPostRequest -dialog -isShowDialog : bool -mQueue : RequestQueue BaseActivity RequestQueue +getParams() +setParams() -params StringPostRequest 1 * 1 * android.support.v4.app.FragmentFragmentActivity +onCreateView() +initLocalData() +StringPostRequest() +StringPostRequest() +setParams() +execute() +onResponse() +onErrorResponse() +onClick() -request : StringPostRequest -dialog -isShowDialog : bool -mQueue : RequestQueue BaseV4Fragment +onCreate() +setHeaderTitle() +initLocalData() +initContentView() +initViewData() +onClick() +StringPostRequest() +StringPostRequest() +setParams() +execut() +onResponse() +onErrorResponse() -request : StringPostRequest -dialog -isShowDialog : bool BaseFragmentActivity +onCreate() +initLocalData() +initContentView() +initViewData() -initeCursor() +onClick() +onResponse() +onPageSelected() -teaId : string -fragmentists -teaPagerViewAdapter -cursor -offSet -currentI

温馨提示

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

最新文档

评论

0/150

提交评论