a_trans[3]+=1
case0.71to1
data_trans[4]+=1
endchoose
next
fori=1to4
data_trans[i]=round(100*data_trans[i]/var_questions,2)
next
dwc_section1.SetTransObject(SQLCA)
dwc_section1.Retrieve()
//dwc_section2.SetTransObject(sqlca)
//dwc_section2.retrieve(var_semester,var_spec)
ifdwc_section1.rowCount()=0then
dwc_section1.insertRow(0)
endif
dwc_section1.setItem(1,"difficult30",data_Trans[1])
dwc_section1.setItem(1,"difficult50",data_Trans[2])
dwc_section1.setItem(1,"difficult70",data_Trans[3])
dwc_section1.setItem(1,"difficult100",data_Trans[4])
//calculatepartition
datastoreds_difficult
ds_difficult=createdataStore
ds_difficult.dataObject="dw_analysis_top25"
ds_difficult.setTransObject(sqlca)
ds_difficult.retrieve(var_semester,var_spec)
stu_nums=ds_difficult.getItemdecimal(1,"compute_stu_num")
fori=1tovar_questions
there_paper[1,i]=ds_difficult.getItemdecimal(1,"compute_"+trim(string(i)))
next
fori=1tovar_questions
there_paper[2,i]=ds_difficult.getItemdecimal(1,"compute_"+trim(string(i+10)))
next
ds_difficult.dataObject="dw_analysis_end25"
ds_difficult.setTransObject(sqlca)
ds_difficult.retrieve(var_semester,var_spec)
fori=1tovar_questions
there_paper[3,i]=ds_difficult.getItemdecimal(1,"compute_"+trim(string(i)))
next
fori=1tovar_questions
there_paper[4,i]=ds_difficult.getItemdecimal(1,"compute_"+trim(string(i+10)))
next
destroyds_difficult
SELECTmax(score.score1),max(score.score2),max(score.score3),max(score.score4),
max(score.score5),max(score.score6),max(score.score7),max(score.score8),
max(score.score9),max(score.score10),
min(score.score1),min(score.score2),min(score.score3),min(score.score4),
min(score.score5),min(score.score6),min(score.score7),min(score.score8),
min(score.score9),min(score.score10)
INTO:there_paper[5,1],:there_paper[5,2],:there_paper[5,3],:there_paper[5,4],
:there_paper[5,5],:there_paper[5,6],:there_paper[5,7],:there_paper[5,8],
:there_paper[5,9],:there_paper[5,10],
:there_paper[6,1],:there_paper[6,2],:there_paper[6,3],:there_paper[6,4],
:there_paper[6,5],:there_paper[6,6],:there_paper[6,7],:there_paper[6,8],
:there_paper[6,9],:there_paper[6,10]
FROMscore,
paper,
student
WHERE(score.semester=paper.semester)and
(paper.spec_code=student.spec_code)and
(score.stu_id=student.stu_id)and
((score.semester=:VAR_SEMESTER)AND
(score.absent=0)
);
fori=1tovar_questions
temp[1,i]=round((there_paper[1,i]-there_paper[3,i])/stu_nums,2)
next
ifthere_paper[5,var_questions]-there_paper[6,var_questions]<>0then
temp[1,var_questions]=round((there_paper[2,var_questions]-there_paper[4,var_questions])/((there_paper[5,var_questions]-there_paper[6,var_questions])*stu_nums),2)
else
temp[1,var_questions]=0
endif
fori=1tovar_questions
choosecasetemp[1,i]
caseis<=0.19
data_trans[5]+=1
case0.20to0.29
data_trans[6]+=1
case0.30to0.39
data_trans[7]+=1
caseis>=0.40
data_trans[8]+=1
endchoose
next
fori=5to8
data_trans[i]=round(100*data_trans[i]/var_questions,2)
next
dwc_section1.setItem(1,"part19",data_Trans[5])
dwc_section1.setItem(1,"part29",data_Trans[6])
dwc_section1.setItem(1,"part39",data_Trans[7])
dwc_section1.setItem(1,"part40",data_Trans[8])
else
dwc_section1.SetTransObject(SQLCA)
dwc_section1.Retrieve()
//dwc_section2.SetTransObject(sqlca)
//dwc_section2.retrieve("","")
endif
第八章测试报告
软件测试在开发软件过程中是一个不可缺少的部分。因为在开发软件系统的漫长过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺,因此,在软件生命周期的各个阶段都不可避免地产生差错。我们力求在每个阶段结束之前通过严格的技术审查,尽可能早地发现并纠正错误;但是,经验表明审查并不能发现所有的差错,此外在编码过程中还不可避免地会引入一些新的错误。如果在软件生产性运行之前,没有发现并纠正软件中的大部分差错,则这些错误迟早在生产过程中暴露出来,那时不仅仅改正这些错误的代价更高,而且往往会造成很恶劣的后果。测试的目的就是在软件投入生产运行之前,尽可能多地发现并纠正软件中的错误。基于上述的原因,我在编码过程中进行了模块测试,编码结束进行了系统测试和验收测试。下面将介绍测试方案,测试过程和测试结果。
一模块测试
1测试方案
采用了白盒测试,即按照程序内部的逻辑结构,检验程序中的每条通路是否都按预定要求正常工作。
2测试过程
检验模块之间的接口。
A每个被调用模块是否正确接受参数。
B每个调用模块是否能调用每个自己想要调用的模块。
3测试结果
测试结果表明,每个模块之间的接口都吻合,即被调用模块都能正确接受参数,调用模块能调用自己想要调用的每个模块。
二
1测试方法
采用了黑盒测试,即检查程序功能是否能按照规格说明书的规定正常使用,程序是否适当地接受数据产生正确的输出信息,并且保持外部信息的完整性。
2测试过程:主要检验是否能正确实现每个功能。
A每个功能时候按照规格说明书的要求正常使用。
B数据库里的记录是否符合要求。
C用户界面是否友好
3测试结果
结果表明,每个功能都能按照规格说明书里的要求正常使用且速度达到了预期的标准。数据库里的记录符合要求,用户界面友好。
当然,整个系统在测试过程中仍发现了不少的错误,但在知道老师的指导下改正并完善了所发现的错误和不足之处,达到了测试要求。
第九章体会
通过本次设计,收获很大。不但对PowerBuider这一开发工具有所掌握,更重要的是对进行软件设计的整体设计流程及思维方法有了深刻的认识。到了最后,发现的许多问题都源、于没有认真地按步骤进行设计,不重视需求分析,总体设计部分,对各个方面将会产生的问题考虑不周全。
同时,在毕业设计的过程中,我们小组的同学互相学习,相互鼓励,营造了一个良好的学习氛围。在这样一种团结,紧张的氛围中,不但使我学会了与别人合作,我还真正领会到了团结合作的团队精神的实质和重要性。没有一个良好和睦的工作环境,没有团结合作的团队精神,就不可能取得成功,今后也不可能取得大的成就。
在设计过程中,对于我来说,由于很多都是新知识,这就迫使我到处查阅相关资料,学习新知识,从而培养了独立思考解决问题的能力。
总之,在整个设计完善的过程中,我学到了在书本里根本学不到的许多知识,体会到软件设计中,总体把握系统的流程的为实现某个功能的各个程序的流程是多么的重要,再一次感谢金小峰老师的细心知道!!!
(最后)参考文献
1《PowerBuider8.0彻底研究》,中国铁道出版社2003年1月 第一版
李勇温为民主编。
2《PowerBuider8.0 实用程序设计100例》,人民邮电出版社 2003年3月第一版 段兴 主编。
3《理工学院课程成绩分析报告》
4《PowerBuider8.0完全解析》
论文指导教师评语
签字(印章):
年月日
院系论文答辩机构意见
答辩机构负责人签字:
院(系)印章
年月日
??
??
??
??
理工学院1
上一篇:
pb学生学籍管理+论文(论文和程序)
下一篇:
“台独”的渊源与实质(中)——兼论台湾问题的基本估计与中国统一的可能前景