1、 1 1 系统总体概况描述 1.1 项目背景 随着时代不断的进步,手机不再仅仅是一个移动电话,已经越来越多的融入了我们的生活,而 随着 移动终端的迅猛发展,人们的业余生活也得到了很多改善。 数字科技的发展 , 早已改变了 我们很久之前的生活习惯。 记得上高中上学时,经常为了查找一个知识点而翻遍教材与参考书;经常在上下学坐车的路上抱着厚重的“五年高考三年模拟”一页一页的翻;经常在宿舍其他同学都睡觉的时候,自己打开床头灯,秉烛夜读。这样做既浪费时间又非常的不方便,使得学习的效率大打折扣。对于“时间就是成绩”的高三学生来说,多一分时间就多一分成绩,多一分成绩也许命运就从此不同。考一个理想的分数固然重
2、要,但光有好的成绩是不够的,选择合适的大学与自己喜欢的专业也非常重要。我们经常看到很多同学由于在报选专业的时候对自己所选择的专业并不十分了解,真正入学后对自己的 专业毫无兴趣,因而产生厌学情绪。 如何提高学生的学习效率,让学生更加方便的学习。如何让学生选择好合适的大学与喜欢的专业都成了有待解决的问题。 1.2 开发原因 基于以上的现状,我决定在本科阶段自己开发一个基于 Android 平台的高考宝典系统,使高中学生可以通过手机应用程序轻松浏览高考课程知识、高校信息、热门专业与高校招生动态。 1.3 开发环境及运行环境 1.3.1 开发环境和使用工具 ( 1)手机客户端: Eclipse+JDK
3、1.6+SDK2.2+ADT ( 2) Web 服务端: Visual Studio2010+ .NET Framework SDK ( 3)服务器: IIS7.5 ( 4)数据库: SQL Server 2005 ( 5)开发所用电脑的配置如下: 处理器: Inte(R) Core(TM)2 Duo CPU T66002.2GHZ 2.20 GHz 内存: 3.00GB 硬件空间: 80GB 2 1.3.2 建议的运行环境 手机客户端: Android 手机系统 2.2 或以上版本 Web 服务端: Internet Explorer 5.5 或以上版本 1.4 系统目标 在 Android
4、 手机上做高考宝典系统是一个学习性质的尝试,动机主要除了兴趣以外,主要是为了更好的深入学习计算机科学与技术这门学科,学习在移动终端开发应用程序。同时也希望这个高考宝典系统有一定的使用价值,使用户可以真正通过这个应用程序提高自己学习的效率与学习成绩。无论在上下学的路上、还是入寝之前,都可以打开高考宝典浏览查看自己需要的知识、高校信息、专业信息与招生动态。 1.6 可行性分析 1.6.1 技术实现可行性 随着移动网络的发展,手机上网人数日益增多,人们已经习惯通过手机网络的方式在网 络上进行即时信息的交流和接受服务。 开发高考宝典系统已经非常成熟,首先,从硬件上讲,现在的只能手机速度现在已经不是问题
5、,大容量高速度的手机存储卡十分普遍,同时无限网络的速度普遍可以达到 100M,这些为电子商务的运行打下坚实的基础。从软件的角度上讲, Anroid 操作系统具有非常强大的功能,可以让 Java 程序人员在 Android 操作系统的手机上开发各种软件。同时,开发手机客户端的工具 Eclipse 也相当成熟。有了这些技术的支持,我们成功开发一个移动手机客户端没有任何技术风险。 此外现在已有不计其数的软件采用手机 客户端 -Web 服务端 -数据库的模型开发手机应用程序,因此此项技术早已完全成熟。 1.6.2 软件经济可行性 ( 1) 硬件成本: 开发终端: PC 一台。 测试终端: Androi
6、d 一部。 所使用硬件均为本人已有硬件,因此无任何硬件成本。 ( 2) 软件成本: 所使用软件均为开源软件和破解软件,因此无任何软件成本。 1.6.3 开发环境可行性 ( 1) Eclipse:目前最主流的 Android 开发工具。采用最新的 INDIGO 版本 3 ( 2) Android SKD 2.2: Android 开发工具包,提供强大的开发文档与应用编程接口。 ( 3) JDK 1.6: JDK 是整个 Java 的核心,包括了 Java 运行环境, Java 工具和Java 基础的类库。 ( 4) Visual Studio 2010:用来开发高考宝典系统 Web 服务端。 (
7、 5) SQL Server 2005:用来提供后台数据库支持。 1.6.4 总体可行性结论 通过上面的所有的可行性分析,这次毕业设计所做的高考宝典系统中的项目方案已经十分成熟,继续下一步的开发工作是完全可行的。 4 2 系统需求分析 2.1 数据流图 图 2-1 顶层数据流图 图 2-2 手机客户端数据流图 5 图 2-3 Web服务端端数据流图 2.2 数据字典 ( 1)管理员信息数据字典 ( 2)高考课程数据字典 ( 3)高考课程知识数据字典 ( 4)高校信息数据字典 名称:高考课程知识表 数据存储编号: 03 说明:对高考课程知识进行操作 有关数据结构:高考课程知识表 数据存储组成:知
8、识点标题 +知识点内容 名称:高考课程表 数据存储编号: 02 说明: 对高考课程名进行操作 有关数据结构:课程表 数据存储组成:课程名称 名称:管理员信息 数据存储编号: 01 说明: 对管理员信息进行提取 有关数据结构:管理员信息表 数据存储组成:管理员名 +管理员密码 6 ( 5)专业信息数据字典 ( 6)招生动态数据字典 2.3 方案论证 2.3.1 系统结构论证 C/S( Client/Server)结构 即 客户机 /服务器 结构 ,其中服务器是网络的核心,客户机是网络的基础,客户机通过网络从服务器或得所需要的资源; Client 是运行客户端程序的机器, Server 是运行服务
9、器程序的机器。 C/S 结构充分利用了客户机与服务器两端的硬件优势,将一部分工作交由客户机来处理,只需要将结果通过网络发送给服务器,这样不仅节省了网络流量,还大幅减少了服务器的负载,进而可以减少服务器的响应时间,改善用户的使用体验。 B/S( Browser/Server)结构即浏览器 /服务器结构。它是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构。本软件需要在 Android 手机 上编写一个客户端的软件供用户进行信息的浏览,而不会使用到浏览器的任何功能,因此该系统模式不适合 Android 高考宝典系统 。 综上所述, 由于本系统是基于 Android平台的
10、手机应用系统,因此选用 C/S 结构 。 2.3.2 Web 服务端技术论证 ASP.NET: 服务器控件使用很方便,可以直接在代码里设置它的属性,可以代替名称:招生动态表 数据存储编号: 06 说明: 对招生动态表进行操作 有关数据结构:招生动态表表 数据存储组成:标题 +内容 +所属学校 名称: 专业信息表 数据存储编号: 05 说明: 对 专业信息表 进行操作 有关数据结构: 专业信息表 数据存储组成:专业名称 +专业介绍 名称:高校信息表 数据存储编号: 04 说明: 对高校信息进行操作 有关数据结构:高校信息表 数据存储组成 :高校名称 +城市 +标签 +主管部门 +学校网址 +简介
11、 +校徽 7 相应的 html 代码,显示查询的表格可以很方便地赋值给 datalist 等控件一个属性,然后调用 databind()就行了,这样就可以生成相应的表格了。还有,校验控件使用非常方便, web 编程很繁琐的一个地方就是表单校验,校验控件几乎不用进行什么设置就可以校验了,不用你写 JS 脚本,但是,缺点也有,没有三层这种模型,每个实体的数据库操作 都要重写一遍,虽然你也可以封装进一个类里面,但是,构造函数的参数通常相当多,而且,每次需要的构造函数也不同,比如同样的表单信息,用在注册里时,需要填写的信息和你在后台浏览该注册信息时的更新的字段肯定是不同的,这样,如果硬要封装,使用也是
12、很不方便的。 JSP: 跨平台, struts 的技术对于三层模型使用起来非常方便,可以封装一个实体的所有数据库操作,便于重用,第一次开发可能会慢些,以后维护和二次开发非常方便的,校验可以用 validator 技术,比起传统校验,要方便,但比起 ASP.NET 要麻烦,而且,每次修改配置 文件,都要重启服务器, ASP.NET 就不用,也有类似于 ASP.NET的视图状态功能。免费的类到处都是,而微软的东西想找免费的很难,你只能用它提供的,如果没有,你就别用了。 综上所述,本系统 Web 服务端技术选用 ASP.NET。 2.3.3 数据库论证 当前流行的 Web 数据库管理系统有 SQL
13、Server、 Oracle、 DB2、 Sybase 等,小型企业多使用 Access。 在 Web 服务器端,考虑到该系统未来的扩展性和建成之后可能产生的大量数据IO 操作,小型数据库 Access 不适合。而 Oracle 是以高级结 构化查询语言( SQL)为基础的大型关系数据库,对硬件要求高,而且与 SQL Server 相比,快速的熟练起来比较困难,需要有长期的实践和摸索。使用 Oracle 需要经验丰富的人才能够胜任。 SQLite,是一款轻型的数据库,是遵守 ACID 的关联式 数据库管理系统 ,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低
14、,在嵌入式设备中,可能只需要几百 K 的内存 就够了。它能够支持Windows/Linux/Unix 等等主流的 操作系统 ,同时能够跟很多程序语言相结合,比如 Tcl、 C#、 PHP、 Java 等,还有 ODBC 接口,同样比起 Mysql、 PostgreSQL 这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。 SQL Server 作为微软在 Windows 系列平台上开发的数据库,与 Windows 操作系统有很好的兼容性,并且在平 常的使用开发练习过程中较多的使用了 SQL Server 数据库, 因此 Web 服务器端数据库采用 SQL Server 2005。
15、 综上所述, 本系统选用 SQL Server 作为数据库系统 。 8 3 系统总体设计 3.1 架构设计 图 3-1 系统部署图 系统部署的形式是:手机客户端 Web 服务器 数据库服务器的三层部署架构。手机客户端通过 http 协议访问 Web 服务器,使用 post 方式向服务器发出 URL 请求,服务器收到手机端的请求,对请求进行处理,处理完毕后把需要返回的信息以 json格式返回到手机客户端,客户端通过 adapter 解析,最终以列表形式展示。 3.2 系统功能设计 为了实现一个功能完整的高考宝典系统,需要考虑每一个必要的环节,这个系统的构成请参见下面的系统功能图: 9 手 机 客
16、 户端高考课程知识查询高校信息查询招生动态查询高考课程知识收藏高校专业查询高考课程知识搜索高 考 宝 典系 统W e b 服 务端高考课程知识管理高校信息管理招生动态管理高校专业管理管理员密码修改图 3-2 系统功能结构图 ( 1) 高考课程知识模块:实现了对课程知识点的添加、删除、修改、查看功能。意义在于让用户可以通过手机随时随地的浏览、查阅高考各科的知识点。不管你是在公交地铁上还是宿舍熄灯后躺在床上,只需要拿出手机在屏幕上点两下,即可浏览自己想看的知识。相对传统的查阅课本与笔记来说,好处不 言而喻。高考课程知识模块分为 6 门学科,即数学、语文、英语、物理、化学、生物。内容为各个学科的知识
17、点。以数学为例,进入数学模块后会显示一个多行的知识列表,如:数列、三角函数等。再次点击后显示相关知识点、公式等。 ( 2) 高校信息模块:实现了对高校信息的添加、删除、修改、查看功能。意义在于让即将报志愿的莘莘学子们可以更直观的查看自己想要报的高校信息。以便于用户们结合自身情况报选最适合自己的大学。 ( 3) 高校专业模块:实现了对高校专业的添加、删除、修改、查看功能。高校信息分为工商管理、法学、金融、计算机、会计学等等。点击相应专 业后会有此专业的详细介绍以及推荐院校。 ( 4) 招生动态模块:实现了对招生动态的添加、删除、修改、查看功能。在服务器端动态更新高考招生的热点信息,如 清华大学
18、2012 招生简章 等此类文章。 10 ( 5) 搜索模块:信息搜索包括标题和内容检索,学生可以检索课程知识模块里的知识点,方便知识点的查找。用户输入查询字段,客户端通过 HTTP 向 Web 服务端请求查询信息, Web 服务端处理后通过 JSON 返回查询到的内容,再经过客户端的适配器处理以列表形式展示最终结果。 ( 6) 收藏夹模块:用户通过点击收藏按钮将需要知识点保存到收藏夹内,方便查看。用户点击收藏按钮后,客户端在本地数据库保存 Web 服务端数据库对应信息的 ID。 3.2.1 手机客户端功能设计: 手机客户端内容主要有两部分,手机的逻辑设计,手机界面设计。手机文章列表采用滑动加载的方式进行分页,让用户更好的体验 Android 智能手机的特效。好的界面设计可以给用户很高的视觉享受和友好暗示。所以,在手机客户端开发过程中,我们对界面 倾注了大量的时间进行了研究。 手机客户端高 考 课 程 知 识高 校 信 息高 校 专 业招 生 动 态高 校 信 息 查 询高 校 专 业 查 询招 生 动 态 查 询知 识 点 搜 索高 考 课 程 知 识查 询知 识 点 收 藏图 3-3 手机端系统功能图 ( 1) 高考课程知识:对高考课程知识点的总结归纳,用户可以直接点击课程查看该课程的重点知识点。用户可以对知识点进行收藏、查询。课程知识点每次从
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。