iOS平台英语等级考试成绩查询系统设计

2016-09-13 09:12王东洋
电子设计工程 2016年5期
关键词:控件考试用户

王东洋

(渤海大学 外语教研部,辽宁 锦州 121013)

iOS平台英语等级考试成绩查询系统设计

王东洋

(渤海大学 外语教研部,辽宁 锦州121013)

全国大学英语等级考试是全国性的教学考试,本文基于iOS设计的成绩查询系统为考生提供最先进的移动信息化服务。在阐明iOS平台层次结构的基础上,研究主要从四个方面展开,设计了由3个子系统12个模块构成的功能框架、基于MySQL数据库管理系统设计了数据逻辑结构、使用AppCode开发工具设计了软件核心功能、采用修正系数法设计了屏幕适配方案。以本文研究内容开发的软件系统具有使用方便、易于维护、易于扩展等优点。

iOS平台;英语等级考试;成绩查询;系统设计;CET-4;CET-6

全国大学英语等级考试(CET,College English Test)是教育部主管的一项全国性教学综合考试,目的是对大学生实际英语能力进行客观、准确的测量,为大学英语教学提供服务。现行的大学英语等级考试分为大学英语四级考试(CET-4)和大学英语六级考试(CET-6)两种[1]。考试结束后,考生迫切想知道自己的考试成绩。传统的纸制方式公布成绩或互联网方式查询成绩手段单一,受环境影响且不够及时。在移动通信时代大学生每人都随身携带手机,使用手机查询成绩是最简单快捷的方式,深受广大考生欢迎。

iOS(i Operating System)是苹果公司开发的移动操作系统,属于Unix类的商业操作系统,最初是为iPhone设计开发的,后来陆续应用到苹果公司的iPod touch、iPad以及Apple TV等产品上。iOS编程的接口、工具以及资源全部包含于iOS SDK,通过集成开发环境完成应用程序开发[2-3]。苹果公司的iPad、iPhone等移动产品具有极高的市场占有率,在当代大学生中使用更是非常普遍。文中基于iOS平台设计英语等级考试成绩查询系统,为软件开发提供解决方案和技术支持,为广大考生提供最先进的移动信息化服务。

1 iOS平台结构

iOS平台由4层构成,每个层包含若干组件,通过组件完成相应功能。平台层次结构如图1所示。各层简要描述如下[4-5]:

1)可触摸层(Cocoa Touch)。通过界面控制、多任务、多点触控等关键技术,提供实现人机交互、触摸操作的应用,为开发各类智能终端软件提供了便捷的方法和技术支撑。UIKit框架是最核心部分,包含Objective-C程序接口,提供实现程序界面的各种组件,事件驱动的iPhone应用的关键架构,还负责处理屏幕上的多点触摸事件、文字输出、图片和网页显示、相机或文件存取,以及加速感应等。

2)媒体应用层(Media Application)。提供相互结合可以完成各种图像、音视频等多媒体服务的应用和相关开发技术,为移动设备带来完美的多媒体体验。应用程序中使用各种媒体文件,进行音频与视频录制,图形绘制,以及制作简单的动画效果,也可以通过底层框架访问必要的音频设备硬件。主要包括图像技术 (Quartz、Core Animation和OpenGL ES),音频技术(Core Audio和OpenAL)和视频技术。

图1 iOS平台层次结构Fig.1 Hierarchy on iOS platform

3)核心服务层(CoreService)。核心服务层位于Core OS层之上,为所有应用程序提供基础系统服务,提供的主要框架包括:CoreFoundation框架为iOS程序开发基本数据管理和服务功能;CFNetwork框架提供网络协议的面向对象的抽象。CoreLocation框架利用附近的GPS、蜂窝基站或Wi-Fi信号信息测量用户的当前位置;Security框架提供了管理证书、公钥/私钥对和信任策略等接口确保应用数据安全。

4)核心操作系统层(Core OS)。位于iOS层次结构的最底层,包括操作系统的内核环境、驱动和基本接口,通过C语言提供的API函数完成与硬件设备交互及其他一些操作任务,包括Bonjour和DNS服务、硬件驱动、区域语言信息、内存分配、程序管理、线程管理、数学计算、文件访问、网络管理、电源按理、标准输入输出等。内核基于Mac操作系统,负责操作系统的各个方面。

2 功能框架设计

功能设计最常用的方法是模拟化,功能框架结构是模块化的结果。功能框架结构是将系统功能进行分解,按功能从属关系表示的图形,图中的每一个矩形框都称为一个功能模块。功能分解过程从大到小,从粗到细,从上到下。从概念上讲,上层功能控制下层功能,愈上层功能愈笼统,愈下层功能愈具体。功能分解的过程就是一个由抽象到具体、由复杂到简单的过程。功能模块可以根据具体情况分的大一些或小一些,分解得最小的功能模块可以是一个程序中的每个处理过程,而较大的功能模块可以是完成某一个任务的一组程序。英语等级考试成绩查询系统的用户主要包括考生用户、成绩管理用户和系统管理用户等3类,其中核心用户是考生用户。通过分析与综合,参照其他人的研究成果[6-8],将3类用户功能归纳为3个子系统12个模块,功能框架结构如图2所示。

图2 系统功能框架Fig.2 Functional framework of system

对图2所示的子系统及功能模块简要描述如下:成绩查询子系统用于考生进行成绩查询。其中,“准考证号码姓名查询”是系统推荐的查询方式,考生输入准考证号和姓名后即可得到最近一次英语等级考试的各项成绩。如果考生忘记准考证号还可使用“证件号码姓名查询”或“考生组合条件查询”。以上查询功能都是查询成绩信息,如果查询自己的考试其他信息可使用“考生详细信息查询”;成绩管理子系统用于成绩管理用户进行成绩管理。最常使用的是 “单人成绩录入”,根据准考证号录入考生英语等级考试的各分项成绩。对于操作比较熟练的用户,使用“批量成绩录入”,可在一个界面通过滚动屏幕的方式录入多人的各分项成绩,提高录入速度。“成绩分类维护”和“成绩统计分析”提供了对考生成绩进行维护与分析的手段;维护管理子系统用于系统管理员用户进行系统管理。为了保证系统的安全性,使用“用户权限管理”,按角色授予权限,将用户分配到具体的角色中,用户只能操作所属角色的功能。“数据备份恢复”可实现对数据的多种备份方式,如定期备份、增量备份等,如果数据库发生意外事故可自动恢复。“用户信息维护”和“代码信息维护”提供了对相关信息的维护功能。

3 数据结构设计

数据结构是指相互之间存在一种或多种特定关系的数据元素的集合,是计算机存储、组织数据的方式。由于英语等级考试参加人数众多,为了提高数据的存储效率和运行效率,采用数据库表的方式存储数据。数据库由两个表构成,考生信息表(Examinee Information Table)存储所有考生的基本信息;成绩信息表(Score Information Table)存储英语等级考试每个考生的各分项成绩和总成绩。数据库完整性(Database Integrity)是指数据库中数据在逻辑上的一致性,通过两个表之间的关系实现[9]。两个表之间是一对多的联系,即“考生信息表”里的一条记录对应“成绩信息表”中的多条记录。一个考生存在多次考试的成绩,一个准考证号一次考试成绩只能对应一个考生。“考生信息表”主键为“准考证号”字段。“成绩信息表”的主键为“准考证号+考试日期”字段,“准考证号”字段为与“电源大类表”一对多联系相对应的外键(FK_Examinee_Score)。基于MySQL数据库管理系统(DBMS,Database Management System)[10]设计的数据结构及关系如图3所示。

图3 系统数据结构及关系图Fig.3 Data Structure and Relationship Diagram of System

4 核心功能设计

常用的iOS开发工具包括CodeRunner、AppCode、Chocolat、Alcatraz、Mou等。其中,CodeRunner是一款轻量级,可以编写和运行多种语言的编辑器,不需要安装额外的语言环境就可以执行多种语言代码;AppCode是全新的Objective-C的IDE集成开发环境,旨在帮助开发者开发Mac OS X和iOS系统的相关应用程序;hocolat是iOS系统上最新出现的一款强大的文本编辑器,支持vim模式、多种编程语言、窗口分割、标签页、色彩主题等功能;Alcatraz是一个开源的Xcode管理器,可让你更快捷地发现和安装插件、模版和颜色方案;Mou为开发者提供一系列的快速输入Markdown既定语法元素,减少开发者编写代码消耗的时间。

本系统选择AppCode开发工具,具有代码补全功能、代码检查和修改功能、快速跳转功能等优点。在英语等级考试成绩查询系统中,使用最多的是“准考证号码姓名查询”功能。以该模块为例来说明软件设计方法。屏幕设计如下:3个窗口类控件,用于容纳输入信息、按钮和输出信息,用CACollectionView容器类控件实现;8个标签类提示信息控件,分别显示“准考证号、姓名、写作成绩、听力理解成绩、阅读理解成绩、翻译成绩、总成绩、备注”,用CALabel标签类控件实现;2个输入信息控件,分别输入准考证号和姓名,用CALabel标签类控件实现;3个操作按钮控件,分别是“查询、重置、返回”,用CAButton按钮类控件实现;6个输出信息控件,分别输出写作成绩、听力理解成绩、阅读理解成绩、翻译成绩、总成绩和备注,用CALabel标签类控件实现;为了屏幕界面美观,加入若干图片,用CAImageView显示图片控件实现;为了界面的交互性,通过进程条显示当前的查询进度,用CAProgress类进度条控件实现[11]。

5 适配方案设计

屏幕适配没有绝对完美的方案,不可能做到一套适配方案适用所有设备。当一个应用程序运行在不同设备时,由于设备的物理尺寸和分辨率不尽相同,某个界面里的一些UI元素可能会发生变化,很多情况下需要开发者去控制,并且在程序中尽量使用相对坐标。

CrossApp辅助方案适配的原则是尽量保持UI的物理尺寸相近,但仍旧可能会有细微变化,具体变化值由系统决定。在不同设备下,像素值会有所不同,在保持UI物理尺寸不变的情况下,在不同设备上显示效果会有所差别。屏幕尺寸大的设备,显示的内容会相对较多,像素值越高,则画面越精细。常见的Apple设备适配方案如表1所示。

表1 适配器解决方案示例Tab.1 Sample on adapter solution

适配解决方案采用修正系数的概念,以iphone4为基准,令修正系数为1,但对于其他设备,这个系数是个近似值,当设置UIsize时,如果需要保持其在不同设备上的显示大小一样,需要乘以修正系数,CrossApp会根据不同设备的规格自动计算这个修正系数的值。使用时只需要把需要设定的数值传递给内联函数可以保证在不同设备上的UI物理尺寸不变。

6 结束语

从2013年12月份开始的大学英语四、六级考试的试卷结构和测试题型都进行了局部调整,本软件是按调整之后的要求设计开发的。大学英语等级考试是全国性的考试,成绩查询系统具有广阔的市场发展空间。系统基于iOS平台,使用AppCode开发,主要特性是完整的Xcode的兼容性;即时的代码转换,支持i18n;及时的代码分析、搜索、转换功能;可直接在iOS设备和模拟器上运行。但也存在一些不足之处。AppCode在某些情况下需要依赖Xcode,没有集成Nib编辑器,在打开Nib文件时会自动去开Xcode,Instrument工具也要调用Xcode。另外,该软件系统适用于iOS系统设备,但目前很多学生使用Android系统手机,本系统的使用具有局限性。因此,可以在本系统设计思想和方法的基础上,开发Android系统的英语等级考试成绩查询系统,才能使软件系统的应用更具有普遍性。

[1]百度百科.大学英语等级考试[EB/OL].(2015-06-05)http: //baike.baidu.com/link?url=ueaX0F2uo9yZOXu2pkUs473b XLQaVfH_rSbm0MEL3_x1FJcnEpjcP2WBQYEUo28gMU8D uR9OM7Czw4gJLNG46Gzg8H3MVRgpjpzEq8Z-AEW.

[2]Charanjeet Singh,A.J.Roy,Sinchita Roy-Chowdhuri.Imagebased Cytopathology Reference App on iOS Plat-form[J]. Journal of the American Society of Cytopathology,2014,38 (7):11-12.

[3]李蕾,李晓丽.基于iOS手持终端的移动学习资源设计研究[J].中国电化教育,2014,35(12):93-97.

[4]Liu C,Zhu Q,Kenneth A.Holroyd,Elizabeth K.Seng.Status and trends of mobile-health applications for iOS devices:A developer's perspective[J].Journal of Systems and Software,2011,84(11):2022-2033.

[5]Jonathan Zdziarski.Identifying back doors,attack points,and surveillance mechanisms in iOS devices[J].Digital Investigation,2014,11(4):3-19.

[6]唐秀忠,刘浩平,兰晓俐.基于ASP.NET环境下成绩查询系统开发实践的思考[J].信息系统工程,2015,28(4):28.

[7]臧强,程立.基于ASP技术和SQL数据库的成绩查询系统的设计与实现[J].电子设计工程,2014,22(3):45-51.

[8]李倩.基于Android的移动客户端成绩查询系统设计与实现[J].软件导刊,2014,7(6):89-91.

[9]Sergio Flesca,Filippo Furfaro,Francesco Parisi.Consistency checking and querying in probabilistic databases under integrity constraints[J].Journal of Computer and System Sciences,2014,80(7):1448-1489.

[10]黄莉,刘丁酉.利用MySQL研究公共自行车服务系统[J].湖北民族学院学报:自然科学版,2014,32(1):78-80.

[11]CrossApp中文官方网站.CrossApp类结构图[EB/OL].(2015-06-05)http://crossapp.9miao.com/Articledetail_1009.html.

Design on scores query system of college english test based on iOS platform

WANG Dong-yang
(Teaching and Research Institute of Foreign Languages,Bohai University,Jinzhou 121013,China)

National college English test is a national learning test,the scores query system designed in this article based on iOS provides candidates with the most advanced mobile information services.On the basis of explaining the hierarchical structure of iOS platform,the research mainly begins with four aspects,designed the functional framework composed of 3 subsystems and 12 modules,designed the data logical structure based on MySQL database management system,and designed core functions for software using AppCode development tool,moreover,designed the screen adaptation scheme using correction coefficient method.The software system developed in this research has the advantage of easy to use,easy to maintain,easy to expand and others.

iOS platform;college English test;scores query;system design;CET-4;CET-6

TN929.5

A

1674-6236(2016)05-0005-03

2015-06-07稿件编号:201506075

辽宁省教育科学“十二五”规划2012年度一般项目(JG12DB243)

王东洋(1968—),女,辽宁锦州人,副教授。研究方向:信息技术与英语教育。

猜你喜欢
控件考试用户
基于.net的用户定义验证控件的应用分析
关于.net控件数组的探讨
Japanese Artificial Intelligence Robotto Take Entrance Examinations
关注用户
关注用户
关注用户
你考试焦虑吗?
如何获取一亿海外用户
准备考试
基于嵌入式MINIGUI控件子类化技术的深入研究与应用