摘要:分别对考试分析管理系统设计中的软件需求分析、数据库设计、客户端应用程序设计及其开发过程中遇到的问题进行了探索和研究。该系统建立在CS模型的基础上,使用MSSQLServer数据库,并借助PowerBuild设计而成,可方便、快捷地统计每一场考试的数据。
关键词:考试分析管理系统;数据库;应用程序设计;PowerBuild
中图分类号:TP311.52 文献标识码:A DOI:10.15913/j.cnki.kjycx.2016.03.085
目前,由于我国的考生人数不断增加,教师的工作量日益增加。而一场考试的各项数据指标是衡量教师工作情况和学生学习情况的重要指标。考试分析软件是指根据学生考试成绩快速分析数据库的应用程序。考试分析管理系统使用数据库开发工具,利用继承、封装的方法,建立了易于维护的数据库应用软件。软件的设计以实用性、易用性为前提,允许教师输入相应的评语,并有打印和数据导入功能,能以图表的方式将数据显示在用户界面上,直观地表现了考试分析结果,体现了Windows程序易用性的特点。
1面向对象的分析和设计
面向对象分析和设计是当前最流行的应用系统的分析和设计方法,其特点在于将系统中的各要素以对象的形式进行抽象,并提取出关键抽象。具体的面向对象分析设计方法,比如UML不在本文的论述范围内。由于考试分析系统较为简单,在此只进行简单分析。在数据库应用系统中,所有的系统模块可分为系统的客户端界面和相应的数据库处理模块。在设计过程中,对上述二者的处理应尽量分开,即隔离界面的修改与数据库数据流程的修改,这样有利于应用系统的维护。数据库中的对象分为考试、学生分数、成绩分布直方图和编码表等。为了实现这些对象的编程,必须使用面向对象的编程技术。在面向对象的编程中,类由属性和属性上的方法构成,对象是类的实例化。
2PowerBuild应用程序设计
PowerBuild采用独特的数据窗口对象,使数据库数据的相关录入、编辑、报表制作非常方便。
2.1与数据库的连接
PowerBuild是一种非常方便的数据库应用开发工具,其可利用多种方法与数据库建立连接,并提供多种方法实现与数据库的数据交互。以下为一段简单的数据库连接代码:sqlca.database=ksfx//数据库名sqlca.logid=sa//登录名sqlca.logpass="*******"//密码sqlca.servername=ksfx_server//服务器名sqlca.DBMS="MSSMicrosoftSQLServer6.x"//DBMS类型为MSSQLSERVERconnectusingsqlca;在PowerBuild与数据库的交互过程中,所有与数据库交互的语句,比如CONNECT、嵌入式SQL都需要在语句结束后加上“;”。
2.2嵌入式SQL
PowerBuild可直接在应用程序中使用嵌入式SQL,嵌入式SQL可使PowerBuild与数据库的交互更加简单、快捷。但有时用户需要进行一些数据录入、修改工作,这些工作都是在DataWindow上进行的。数据窗口是PowerBuild的可视控件之一,每个数据窗口都与1个数据源相连接,该数据源就是1条SELECT语句。数据窗口实质上是利用1个SQLCA对象访问该数据源,从数据源中提取数据,并以用户自定义的格式将数据显示出来的方式。
2.3数据源
用户可使用Insertrow、Deleterow插入、删除新行,也可直接在可视界面上修改记录,但是这些修改都不会实时写入数据库。只有当执行Update方法时,数据库才会将修改过的数据记录以SQL命令的形式发送至数据库。如果发送失败,则Update的反馈信息为“-1”。此时,用户可通过SQLCA对象中的相应属性(SQLDBCode、SQLErrText)了解具体出错的代码及出错原因;如果修改成功,则Update的反馈信息为“1”。
3考试系统的设计
3.1考试分析窗口
考试分析窗口是考试分析的主窗口,也是该系统应用中最重要的窗口,如图1所示。该窗口由活页夹(考试分析、图示、录入考试评语)组成。考试分析项主要是指考试的各项指标,比如平均成绩、难度系数等。图示中会生成考试成绩的直方图,考试评语为手工输入的教师评语。该窗口左上方有1个小数据窗口,这个数据窗口采用了下拉子数据窗口的方式,可为用户提供自由输入考试编码的界面,从而帮助用户确定需要分析考试的场次。此外,统计按钮用于生成数据统计,保存按钮用于保存教师输入的评语。在统计按钮的设计中,用户可从小数据窗口中提取考试数据,并调用窗口方法wf_ksfx计算、分析各类考试数据,比如最高分、最低分、平均分、人员总数、难度系数和标准偏差;将统计出的数据插入到dw_2的相关数据字段中,数据窗口会自动绘制相关的直方图。
3.2系统测试
针对数据库应用程序的特点,测试主要围绕数据库进行。对于数据录入程序,分别以插入多行、一行、空行测试,并录入了错误数据,比如重复编码等;对于考试分析程序,分别统计了一行、多行、空记录,从而检验程序的健壮性。经过测试发现了一系列错误,比如,如果统计时无考试成绩,系统会用0除以分母。因此,对该错误进行了预处理。
作者:包艳霞 单位:丽水学院
相关专题:美国如何应对金融危机 从日本动漫看日本文化