软件开发综合技能训练.docx
- 文档编号:6434838
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:39
- 大小:570.88KB
软件开发综合技能训练.docx
《软件开发综合技能训练.docx》由会员分享,可在线阅读,更多相关《软件开发综合技能训练.docx(39页珍藏版)》请在冰豆网上搜索。
软件开发综合技能训练
软件开发综合技能训练报告
博雅学院综合训练课题申报与选题系统设计
专业
计算机科学与技术
学生姓名
唐飞
班级
M计算机072
学号
0751401219
指导教师
皋军
完成日期
2010年11月11日
博雅学院
一、概述
1.1课程设计的目的
本系统采用B/S模式,采用面向对象技术并结合SQL存储技术实现博雅学院综合训练课题申报与选题系统,该系统主要包含:
用户权限管理、网上提交课题、网上选题、课题查询与打印功能模块。
1.2综合训练要求
(1)要求利用面向对象的编程思想以及组件开发原理来完成系统的设计;
(2)充分利用面向对象语言的优势(即组件、属性和事件等);
(3)根据实际问题合理地选择和使用数据库系统,并根据需求科学地设计具体的数据库文件;
(4)体现可视化编程风格,如功能界面通过菜单、工具栏操作,通过状态栏向用户反馈信息。
2系统开发平台
2.1系统开发环境
一个稳定、功能齐全的系统必须得有良好的开发环境作为技术保障。
在前面分析了本系统所采用的相关工具和技术的优势同时,也体现出了系统优良的配置。
整个系统使用的ASP脚本语言能够动态完成网站的交互性工作。
系统配置与开发测试环境如下:
表2-1开发环境
开发环境
操作系统
Windows2008Server/7
Web服务器
MicrosoftInformationServer6.0
数据库
SQLSever2008
开发语言
ASP
开发软件
Visualstudio2010
浏览器
搜狗浏览器(国内最好的浏览器)
3系统分析
3.1系统需求分析
学校管理员拥有最高权限,所以需对用户登录本模块进行更多的考虑。
在此系统中,学校管理员可以为学生加入课题申报与选题或是登录记录,给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。
本功能实现对课题申报与选题信息、教师信息、总体课题申报与选题情况信息的查询、教师和学生信息查看及维护。
本系统还主要实现教师信息管理、学生信息管理、课题信息管理,其中教师信息管理有教师姓名、教师职称、教师所属系等;学生信息管理有学生姓名、学生学号和学生所在系等;课题信息管理有课题名称、学分、上课地点、已选人数、课题性质、课题人数等。
3.1.1系统功能
本系统的主要功能是完成高校教务管理处对学生课题申报与选题的功能。
实现学生在网上进行独自的课题申报与选题以及教师管理各自的学生,学生能根据自己的意愿来选择自己感兴趣的选修课题和所担任课题的教师。
在教务管理的同时,教务处能全面的管理本学校的信息,学生,老师,课题以及上课的时间和地点等。
达到学生,老师和教室都有合理的安排。
3.1.2用户特征
一般来说,学校里参与管理课题申报与选题的工作人员和教师在计算机的操作水平上参差不齐,这就要求系统的界面友好,使用方便,简单明了,以帮助教务管理人员快速学习系统的操作方式,完成管理课题申报与选题工作。
在管理课题申报与选题的方面,都采用了全部后台管理系统和教师管理权限,使得在管理学生的过程中尽量人性化。
3.2课题的可行性分析
系统可行性研究是系统发展过程中的一项重要的工作,其目的就是订出一套选择标准,一套选择程序,及组成一个有效能的决策组织。
如此,使用者便能依正确的顺序解决相关的问题。
下面将从技术可行性、经济可行性、操作可行性、三个方面来对本系统进行分析。
3.2.1技术可行性分析
本系统采用ASP技术,以Dreamweaver及SQL工具开发设计。
ASP技术的诞生,开创了非专业人员开发高水平网站的历史。
以其具备易用性,兼容性,安全性和可扩充性等特点,几乎不需要什么复杂的编程,就能完成其他专业开发工具所能达到的效果,让用户可以轻松地结合HTMLWeb页面,脚本和ActiveX组件建立或执行动态的,交互的Web服务器应用程序。
Dreamweaver作为强大网页设计工具,以其齐全的设计功能受开发者们的亲睐。
而SQL针对中小型数据库设计为主,以其操作简便,兼容性好等功能为大多小型数据库设计开发人员所使用。
三者在技术上完美的结合可以满足系统目标所要求实现的功能,故系统实现技术上是可行的。
3.2.2经济可行性分析
由于本系统是为教学课题申报与选题管理使用的系统,装上该应用软件,即可使用系统,系统成本主要集中在系统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。
所带来的效益远远大于系统软件的开发成本。
在经济上完全可行。
3.2.3操作可行性分析
对于用户而言,只需一般的网页浏览器操作技术即可,随着网络技术应用在我国的普及,这一项应用操作应该具有广泛的可行性。
本系统界面设计简单易懂,使得操作起来不会存在太大的难度。
3.3系统流程分析
经过分析,在脑海中形成了一个初步的课题申报与选题基本业务流程:
首先由学生登录系统进行课题申报与选题,浏览课题申报与选题列表选择自己所需课题,并传送到教务处管理员。
接着教务处管理员汇总课题申报与选题单,提交学生所课题申报与选题程名单,教师通过自己的权限进行对学生课题的批审,最终确定课题申报与选题名单并提交给教务处管理员。
教务处管理员获取课题申报与选题名单进行备案,之后通知学生上课。
通过对此课题申报与选题大体业务流程分析,可以更加明确的分析和设计相应所需功能模块。
采用此流程可以使学生课题申报与选题过程更有条理和规范,老师和管理员的有条不紊的实施自己对学生课题申报与选题的权限,学生能更清晰的熟知课题申报与选题整个流程,使整个课题申报与选题过程更清晰明了。
下图为分析的基础上设计的课题申报与选题流程图。
图3-1课题申报与选题业务流程图
4系统设计
4.1系统数据设计
图4-1ApplyInfo
图4-2CourseInfo
图4-3DepartmentInfo
图4-4MenuInfo
4.1.4数据表的建立
本系统主要有如下8个数据表:
学生帐号信息表、学生课题申报与选题状态表、课题信息表、教师帐号表、教师信息表、学生成绩表、管理员帐号表、课题申报与选题通知表。
现将本系统设计的8个数据库表逐一说明。
表4-1xsmember(学生帐号信息表)
字段名
数据类型
长度
是否为空
说明
Usid
自动编号
20
Notnull
自动编号
Number
文本
20
Notnull
学号(主键)
Name
文本
10
Notnull
姓名
Xingbie
文本
10
Notnull
性别
Passw
文本
50
Notnull
密码
Bjh
文本
50
Notnull
班级
表4-2xuanke(学生课题申报与选题状态表)
字段名
数据类型
长度
是否为空
说明
Id
自动编号
20
Notnull
自动编号(主键)
Xuehao
文本
50
Notnull
学号
Kehao
文本
50
Notnull
课题号
Xktime
日期/时间
50
Notnull
课题申报与选题时间
Shenpi
文本
10
Null
教师审批
表4-3kecheng(课题信息表)
字段名
数据类型
长度
是否为空
说明
Id
自动编号
20
Notnull
自动编号
Knumber
文本
50
Notnull
课题号(主键)
Kname
文本
50
Notnull
课题名
King
文本
10
Notnull
课题类型
Teacher
文本
20
Notnull
任课教师
Xuefen
数字
10
Notnull
学分
zongtime
数字
10
Notnull
学时
Kktime
文本
50
Notnull
开课时间/地点
up_renshu
数字
10
Notnull
限选人数
yi_renshu
数字
10
Notnull
已选人数
Time
日期/时间
50
Notnull
加入时间
表4-4jsmember(教师帐号表)
字段名
数据类型
长度
是否为空
说明
Id
自动编号
20
Notnull
自动编号
Jsid
文本
50
Notnull
教师号(主键)
Jsname
文本
50
Notnull
教师姓名
Jspassw
文本
50
Notnull
密码
表4-5tcinfor(教师信息表)
字段名
数据类型
长度
是否为空
说明
Id
自动编号
20
Notnull
自动编号(主键)
name
文本
50
Notnull
教师姓名
sex
文本
50
Notnull
性别
code
文本
50
Notnull
职称
phone
文本
50
Notnull
联系电话
yuanxi
文本
50
Notnull
所属院系单位
xueli
文本
50
Notnull
学历
drkc
文本
50
Notnull
担任课题
kycg
文本
50
Notnull
科研成果
xueshu
文本
50
Notnull
学术专著
beizhu
文本
50
Notnull
备注
表4-6bbs1(学生成绩表)
字段名
数据类型
长度
是否为空
说明
Id
自动编号
20
Notnull
自动编号(主键)
Cj
文本
50
Notnull
成绩
Xh
数字
10
Notnull
学号
User
备注
50
Notnull
学生姓名
Kc
文本
50
Notnull
课题名
Xq
文本
20
Notnull
学期
Bj
文本
20
Notnull
任课教师
Lx
文本
10
Notnull
课题类型
表4-7uers(管理员登录表)
字段名
数据类型
长度
是否为空
说明
userid
自动编号
50
Notnull
自动编号(主键)
name
文本
50
Notnull
管理员姓名
pwd
文本
50
Notnull
密码
表4-8tongzhi(课题申报与选题通知表)
字段名
数据类型
长度
是否为空
说明
Id
自动编号
20
Notnull
自动编号(主键)
topic
文本
50
Notnull
新闻标题
content
文本
50
Notnull
新闻内容
Ntime
文本
50
Notnull
发布时间
4.2数据库的连接
本系统所有用户信息、课题信息及课题申报与选题信息等均保存在同一个数据库“school.db”中,在该数据库中创建了若干个表。
另外,根据不同用户的特点,在该数据库中创建了管理员、教师、学生3个用户身份,并分别设置了数据库连接口令和相应的访问权限。
通过执行SQL命令,让用户在浏览器界面中查询、插入、删除和更新站点服务器的数据库信息。
本系统采用SQL作为数据库,使用ADO驱动程序访问数据库。
在数据库连接的时候,一般把数据库连接文件的后缀名改为.asp或.inc。
并且通过
--#includefile="文件地址"-->把该页面嵌入到需要访问数据库的页面中。
下面给出的一段本系统数据库连接的代码:
setcnn=server.CreateObject("adodb.connection")
cnn.connectionstring="provider=Microsoft.Jet.OLEDB.4.0;DATASOURCE="&server.MapPath("../school.db")"
cnn.open//数据库连接
4.3功能模块设计
根据课题申报与选题的功能需求和数据库的设计,网上课题申报与选题系统设计了学生课题申报与选题、教师课题申报与选题、管理员维护和信息发布模块。
在该总体功能设计方面,功能思想来自于学校的学生、教师和教务人员。
在该系统设计的时候得考虑到三个不同权限的用户,权限从低到高分别为学生、教师和管理员。
但是在这不同的三个权限中,分别都有相互联系的和相互补充的。
比如只有学生可以课题申报与选题,教师可以录入自己学生的成绩以及管理员可以管理教师和学生。
在解决好权限问题之后,进而在各个模块中在去实现其功能,把学生模块、教师模块和管理员模块及信息发布模块分别设计出来,用管理员的最高权限来分别对系统配置、课题申报与选题、教师和学生来进行管理。
学生课题申报与选题模块:
本模块包括学生密码修改、查询学校老师信息、全校开设选修课题信息浏览/查询(包括课题开设情况查询、课题申报与选题的信息查询等)、学生课题申报与选题、退课、查询已修课题及成绩(成绩按所有所学过的课题全部列表)等功能。
这些功能对全校全体学生用户开放。
图4-5学生模块
教师课题申报与选题模块:
本模块是全校课题申报与选题任课教师的专用模块,通过该模块,教师可以查询课题开设情况、学生课题申报与选题情况及查询/统计课题申报与选题学生名单、成绩,给定权限的教师还可以按单个学生/课题名进行管理学生的集体课题申报与选题,批量录入学生的课题申报与选题成绩等。
在教师用户登入后,可以查看自己所授权课题以及学生所选该课题的权限,对学生课题申报与选题进行审批。
本模块另外也分别设了用户密码修改、查询课题申报与选题信息等几个子模块。
图4-6教师模块
管理员维护模块:
课题申报与选题系统以至教学管理系统的核心模块,因其功能复杂,又被划分为课题申报与选题管理(课题申报与选题/课题信息的修改/增加/删除)、学生管理(学生的帐号修改/增加/删除)、成绩管理(批量成绩录入/删除、单个成绩增加/修改/删除)、教师信息管理、数据库维护几个子模块,主要完成教务课题申报与选题的设置、学生课题申报与选题信息维护、各类用户信息维护等工作。
本功能模块只对管理人员开放。
图4-7管理员模块
信息发布模块:
本模块其实是属于管理员控制的。
为了突出其作为课题申报与选题系统的一个特定的功能模块,特单独抽出作为模块对其介绍。
主要是管理员完成对教务课题申报与选题信息的修改、增加、删除、发布等操作,为学生、老师提供更方便快捷的课题申报与选题。
4.4总体模块结构设计
根据上述功能模块的分析后,设计出如下的总体模块结构图:
图4-8总体模块结构图
5系统具体实现
5.1主要操作流程实现
在具体功能实现上,对学生及老师课题申报与选题操作功能进行了具体的分析和设计。
老师和学生共用一个登录单选框进入课题申报与选题系统中,学生可以进行课题的浏览,课题申报与选题,退课,查看个人信息及考试成绩等。
老师也可以查看课题申报与选题列表,批审学生所课题申报与选题程,录入学生课题成绩等操作。
(1)学生课题申报与选题操作流程:
在学生课题申报与选题的时候,由课题申报与选题系统的主界面(index.asp)点击登录页面(login.asp)后进入到课题申报与选题(student_ckxk.asp)界面,进行相应的操作。
查看提供的课题申报与选题列表进行课题申报与选题(student_wyxk.asp),若出现重复课题申报与选题情况,系统页面弹出提示(wyxk_up.asp),表示该课题已选。
待老师批审后可以查看课题是否选上(student_ckxk.asp)。
此外还可查询自己课题成绩(chengji/look.asp),以及个人课题申报与选题密码的修改(student_edit.asp)。
下列给出学生课题申报与选题的操作流程图:
图5-1学生课题申报与选题操作流程
(2)教师课题申报与选题操作流程:
在教师进入课题申报与选题系统主界面时,通过和学生同一登录页面进入(login.asp),通过单选框来决定用户是老师还是学生。
老师通过自己的权限对学生所选自己的课题进行审批(teacher_cksk.asp),还可以批量增加学生成绩(teacher_spkc_chengji.asp),但是当成绩已经加入到数据库中时候,老师将不能修改/删除学生的成绩(也就是说老师在批量录入学生的成绩的时候只有一次操作权)。
此外老师还可以查看课题申报与选题列表(xkxt/teacher_xklb.asp),修改个人登录密码的操作(xkxt/teacher_edit.asp)。
下列给出教师课题申报与选题的操作流程图:
图5-2教师课题申报与选题操作流程
5.2前端页面开发与实现
在本系统的首页中,主要是借用了本校的主页模版来设计的。
但是相对与本校的主页中又有很大的区别。
在首页中,分别有学校概况、学校新闻、院系之窗、机构设置、学生课题申报与选题、成绩查询、教师信息等导航功能。
在设计的时候也采用了调用asp文件以及大量的采用VBScript语言来实现。
学生和老师的帐号不能注册,只有通过教务后台管理人员通过后台系统添加,这就防止了本校外的非法用户。
在本系统网页色彩和布局上也下了一翻工夫。
首先得从浏览者的角度考虑,如何在界面上吸引住用户,这必须得从色彩和布局上着手。
Logo的设置、色彩搭配和字体等要素都是直接影响界面效果的重要因素。
故此,在颜色的选择上我尽量以浅色为主,大多页面使用的是以白色为主色调,配上其他颜色加以点缀,不仅给人一种清新明朗的视觉感受,也更体现出网站的紧凑,整体统一性。
5.2.1学生课题申报与选题页面
在进入login.asp页面中,输入学生的学号和密码,选定学生的单框就能进入学生课题申报与选题的页面。
系统首先判断用户学号和密码是否正确,若正确,系统跳转到课题申报与选题的页面student_ckxk.asp。
假如没有通过的话,则再次返回login.asp登录页面。
在学生选完课题的时候,教师进入课题申报与选题的系统也能相应的看到选自己课题的学生,再可以对学生是否通过审批来决定课题申报与选题最终是否成功。
通过教师的审批再返回给学生端。
对学生进入查看自己所选的课题的页面中也有相应的查询自己的成绩,它是根据当前用户的学号来查询。
相对应的本部分也不能缺少学生修改自己的密码问题,但是只能修改密码,不能修改自己的信息以及学号,因为这是由教务人员在后台管理统一分配的。
在当学生选入课题的情况下,在数据库xuanke的表中将自动把学号,课题号等加入表中。
然而当已选了的课题在次选入,将会通过wyxk_up.asp出现报错页面。
课题选上了也是通过该页面提示学生课题已经选上。
5.2.2教师管理课题申报与选题页面
教师管理课题申报与选题的登入页面和学生课题申报与选题的登录页面为同一页面(login.asp),在选择不同的角色进入到教师管理页面。
5.3主要模块ASP页面说明
5.3.1课题申报与选题模块
xkxt/login.asp用户登陆课题申报与选题页面
xkxt/index.asp课题申报与选题系统说明页面
xkxt/xklb.asp课题申报与选题列表页面
xkxt/student_ckxk.asp学生浏览自己课题申报与选题页面
xkxt/student_wyxk.asp学生浏览待课题申报与选题程页面
xkxt/student_edit.asp学生修改个人密码页面
xkxt/teacher_spkc.asp教师批审课题页面
xkxt/teacher_cksk.asp教师查看个人授课页面
xkxt/teacher_edit.asp教师更改个人密码页面
5.3.2成绩模块
xkxt/index1.asp成绩查询登录页面
chengji/look.asp学生查询个人成绩页面
chengji/adminlook3.asp老师查询添加学生成绩页面
xkxt/teacher_spkc_chengji.asp老师成绩录入页面
5.3.3管理员模块
admin/index.asp管理员后台管理页面
xkxt/news.asp管理员发布课题申报与选题通知
5.4系统模拟数据操作
首先,进入系统主页,点击主页导航条上学生课题申报与选题,就会进入学生课题申报与选题等及老师批审课题等功能的页面。
页面上列有相继的一些说明。
点击改页面左边的用户登录,出现学生和老师登录的单选框。
学生输入自己的用户名和密码(以尹福顺为例,用户名:
0751401118,密码:
0751401118)就可以进行一系列的课题申报与选题,查课,退课,更改个人密码等操作。
老师输入自己的用户名和密码(以胡昌龙老师为例,用户名:
hcl,密码:
hcl)可以进行一系列的批审课题,查看自己的授课,查看课题申报与选题列表,课题成绩录入,更改个人密码等操作。
进入系统主页,点击主页导航条上成绩查询,就会进入成绩查询的功能的页面。
在出现的学生和老师登录的单选框中,学生输入自己的用户名和密码(以唐飞为例:
用户名:
1234567,密码:
123456)可以查看自己的课题申报与选题的成绩。
老师输入自己的用户名和密码(以刘颖老师为例。
用户名:
ly,密码:
ly)就可以查看学生选自己课题的成绩。
进入系统主页,点击主页导航条上教师信息,就可以查看系统所有老师的个人相关信息。
管理员输入帐号:
admin,密码:
admin,可进入管理员的后台管理信息中心。
里面有实现前台诸多功能的管理。
6系统测试与疑难问题
6.1系统测试
由于在系统的生命周期的各个阶段都有可能产生差错,所以对于系统的测试是贯穿于系统整个开发的全过程的。
由于本身能力的局限性,所做编写的代码,大多请教有经验的同学帮助,即便通过反复检查也难免出错,所以在本阶段力求使用有限的时间找出尽可能多的错误,力求系统尽量正确。
我在本系统的测试中请了一位不熟悉本系统的人来进行随意性的操作,打破习惯的操作顺序,从中发现错误,在此阶段系统的一些错误得到了改正。
对于系统全部模块进行测试,达到了系统起初的设计需求。
全部功能要求和性能达到满足,文件与数据库正常。
因为整个系统是基于高等院校教学系统,因此可以完成对于学校课题申报与选题管理,也可以进行扩展,将系统扩展到通用,能够适合一般的教学系统的课题申报与选题管理。
6.2开发难点与技巧
该系统的开发难点是如何进行更全面控制管理课题申报与选题的时候出现一系列的问题,比如有课题的选入、退出,已选人数自动递增、递减,成绩批量录入的情况等。
由于本人的水平有限,在设计的时候还存在没有实现的难点功能,比如有通过Web控制课题申报与选题的时间,课题申报与选题的时间冲突,所选的课题的上课地点冲突以及安排老师上课的时间与老师所在的地点冲突。
此外,假如把课题申报与选题系统和排课系统结合起来将会得到更好的效果。
在开发的时候数据库的安全访问方面有很大的技巧。
采用.db为后缀是为了更好的做到保护数据库安全性。
其次就是代码的技巧,在很多页面中,代码都一样,在开发的时候都可以引用,有的只是脚本语言稍微做了点变化,开始时简化了一系列的工作。
一些核心功能的实现上,如:
教师批审课题,批量录入学生成绩等技术也充分体现了开发的技巧。
7小结
经过五个星期的实验操作,我学习了用ASP和数据库技术相结合的方法实现网上课题申报与选题系统,可以方便快捷完成以往需要大量人力的繁杂工作,极大地方便了教学管理。
系统设计和实现思路,可以借
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 开发 综合 技能 训练