软件工程大作业范本模板Word文件下载.docx
《软件工程大作业范本模板Word文件下载.docx》由会员分享,可在线阅读,更多相关《软件工程大作业范本模板Word文件下载.docx(25页珍藏版)》请在冰豆网上搜索。
![软件工程大作业范本模板Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-12/15/4f63ba71-6474-449c-b674-8aa493d552c3/4f63ba71-6474-449c-b674-8aa493d552c31.gif)
正确
错误
是
否
学生照片信息管理
学生基本信息管理
学生主要教育经历管理
考试成绩管理
课程设置管理
转学\调班管理
退学\休学管理
针对各个模块不同的表实现添加记录、修改记录、删除记录,以及查询显示记录等功能
图3。
2学生档案管理系统结构图
2.3子系统功能描述
院系管理
由创建院系及班级信息,修改院系班级记录,删除院系班级记录,查看院系班级数据四部分组成。
创建院系与班级信息.主要是院系名称,班级专业名称,院系具体描述,班级介绍,院系编号由数据库系统自动编号,不显示在前台程序。
修改院系与班级记录。
可对院系或班级名称,描述,介绍等记录进行修改。
删除院系与班级记录.可选择删除院系或班级,如果所选院系或班级已含有数据记录,如含有专业班级资料,或学生资料,则必须先将其所含有的记录资料删除,才能成功完成操作。
查询院系与班级资料.在院系管理的主界面查看已有院系及班级记录。
2)学生信息管理
由创建、修改、删除学生信息资料,添加、修改、删除学生教育经历,添加与删除学生照片组成。
学生信息资料创建,将刚入学的学生资料添加到数据库中加以保存。
信息资料由学生编号、姓名、照片、性别、民族、生日、政治面貌、籍贯、身份证号、学生证号、家庭电话、居住住址、邮政编码、入校日期、职务、所在院系编号、备注和填表时间组成。
基于保护数据记录安全性考虑学生编号由数据库系统自动生成,不显示在前台程序.院系编号亦不在学生信息管理界面显示,只在后台数据库显示。
添加、修改、删除学生教育经历,创建并管理所选择学生过去的教育经历,曾就读与某校,任何职务。
添加、删除学生照片。
为所选择学生添加个人照片,如需更新照片,只需再次添加,既可覆盖原有照片数据记录。
3)奖惩信息管理
由添加学生奖惩信息,修改奖惩信息,删除奖惩信息,浏览学生奖惩信息组成。
添加、修改学生奖惩信息,设置学生奖励或处罚资料,奖励与处罚项目使用备选项,亦可再加以具体说明.
删除奖惩信息。
奖励与惩罚记录分开显示,选择某条奖惩记录,将其删除.
4)学生学籍信息管理
由添加、修改、删除学生退学、转学、休学、调班等学籍信息组成。
添加、修改学生学籍信息资料。
通过在院系表中选择目标班级,可选择学生姓名,
删除学生学籍变更数据记录.
学生调班成功后,系统敬爱能够自动更新该学生在院系班级表,学生基本信息表中的相关数据记录。
5)课程管理
由创建、修改、删除课程信息,学生课程成绩信息组成。
创建、修改课程信息,可创建或修改新课程名称,授课教师,课时设置,课程类型。
删除课程信息。
选择某个课程记录,可将其所包含的所有信息删除。
学生课程成绩信息,由添加、修改、删除课程成绩信息组成.设置院系学生中学生课程成绩信息。
6)系统管理
由创建用户,修改用户,删除用户,浏览用户信息组成。
创建用户。
该功能只对系统管理员开放,使用系统管理员身份登陆后可创建起他用户。
修改、删除用户。
该权限只对系统管理员开放。
非系统管理员只能对自己的用户名和密码进行修改.
第三章。
系统设计
3。
1界面设计原则
一个好的应用程序不仅要有强大的功能,还要有美观实用的用户界面。
用户界面是应用程序的一个重要组成部分,一个应用程序的界面往往决定了该程序的易用性与可操作性,一个美观的界面的美观和用户亲和性是应用软件成功的首要条件。
界面设计具有一般性的原则,最为重要的有:
界面要具有一致性;
常用操作要有捷径;
提供简单的错误处理;
提供信息反馈;
操作可逆。
我们在设计界面时充分从一致性、友好性、交互性、信息子最小量原则、易用性、数据输入等方考虑,遵循以下原则
操作简单,易学,易掌握;
界面美观,操作舒适;
快速反应,响应合理;
语言规范,语义一致.
一致性,在同一界面中,所有的菜单选择、命令输入、数据显示和其他功能应保持风格的一致性.
信息最小量原则。
人机界面设计要尽量减少用户记忆负担,采用有助于记忆的设计方案。
用户界面应能对用户的决定做出及时的响应,提高对话、移动的思考的效率,最大可能的减少击键次数,缩短鼠标移动距离,避免使用户产生无所适从的感觉.
人机界面应该提供上下文敏感的求助系统,让用户及时获得帮助,尽量用简短的动词和动词短语提示命令。
操作应该可逆,对于不具备专业知识的操作人员非常有用,可逆的动作可以是单个的操作,也可以是一个相对独立的操作序。
界面设计过程(略)
3.2数据库设计
数据流程图DFD(DataFlowDiagram)是描述系统数据流程的工具,它将数据独立抽象出来,通用图形方式描述信息的来龙去脉和实际流程。
开始
退出程序
读取用户类型
用户登录
失败超过3次
重试
失败
成功
普通用户
Admin
用户
管理自己的用户信息
1、管理自己的用户信息
2、管理普通用户的用户信息
学生档案管理模块
用户管理模块
图4.1数据流程分析图
数据字典(DataDictionary,DD)是DBMS中的一个特殊文件,用于存储数据库的一些说明信息,这些说明信息称为元数据(MetaData)。
DD是在新的信息系统数据流程图的基础上,进一步定义和描述数据处理过程、外交实体及数据存储(数据库)的详细逻辑内容工具。
本系统后台数据库采用MicrosoftSQLServer2000数据库。
建立了一个数据库StudentSys,包括了九个表:
院系班级表Classes、学生基本信息表Students、学生教育经历记录表Experience、学生奖惩表Evaluation、学生学籍变动表Change、课程设置表Lessons、考试成绩表Scores、用户信息表Users。
表1Classes结构
编号
字段名称
数据类型
字段大小
说明
1
Class_id
Int
4
院系编号
2
Class_Name
Varchar
40
院系名称
3
Describe
400
院系职能描述
UpperId
上级院系编号
表2Students结构
Student_Id
学生编号
Student_Name
姓名
Photo
Image
16
照片
Sex
性别
5
Nationality
民族
6
Birth
20
生日
7
Political_Party
政治面貌
8
Family_Place
60
籍贯
9
Id_Card
身份证号
10
BadgeId
学生证号
11
Home_phone
30
家庭电话
12
Residence
100
居住地址
13
Postcode
邮政编码
14
InDate
入校日期
15
Class_Id
Smalint
所在院系编号
Title
职务
17
Memo
200
备注
18
Fillin_Time
填报时间(日期+时间)
表3Experience结构
ExpId
Start_Date
Char
开始日期
End_Date
终止日期
School
50
学校/单位名称
表4Evaluation结构
EvaId
奖惩记录编号
EvaDate
奖惩日期
EvaType
Bit
奖惩类型(0表示奖励,1表示处罚)
Varchat
奖惩说明
EvaContent
奖惩内容
表5Change结构
ChangeId
学籍变动编
号
ChangeType
Tinyint
学籍变动类型(1表示退学,2表示休学,3表示转学,4表示调班)
ChangeDate
学籍变动日期
OriClass
原班级编号
NewSchool
转入学校名称
NewClass
转入班级编号
Reason
学籍变动原因
表6Lessons结构
LessonId
课程编号
LessonName
课程名称
Term
课程设置的学期
Teacher
授课老师
Hours
课时
LessonType
课程类型(必修课,选修课)
表7Scores结构
Score
考试分数
表8Users结构
UsersName
用户名
Pwd
密码
UserType
用户类型
3代码设计
一个高效的软件不仅应该比实现同样功能的软件运行得更快,还应该消耗更少的系统资源。
所以代码的设计就显得非常重要.考虑到以后对系统更新与维护的可行性与方便性,减少程序员工作量,等各方面的考虑,我们在代码设计过程中遵循科学性,系统性,可扩展性,规范化,人性化,通用性,含义单纯性,容易理解等原则考虑.以下只列举部分关键代码
添加院系信息
IfTrim(txtClass)="
”Then
MsgBox"
请输入院系班级名称”
ExitSub
EndIf
WithMyClass
.Class_Name=MakeStr(txtClass)
.Describe=MakeStr(txtDescribe)
IfModify=FalseThen'
插入
If.In_DB(.Class_Name)=TrueThen
MsgBoxTrim(txtClass)+”已经存在”
.UpperId=CurClass。
Bh=。
Insert
Tmp_Key="
a”+Trim(Str(Bh))
FrmClassMan。
TreeView1。
SelectedItem.Image=1
SelectedItem。
ExpandedImage=2
FrmClassMan.TreeView1。
SelectedImage=3
SetTmpNode=FrmClassMan.TreeView1.Nodes。
Add(FrmClassMan。
Key,_
tvwChild,Tmp_Key,。
Class_Name,4,5)
TmpNode。
Selected=True
Else'
修改
IfCurClass.Class_Name〈>
Trim(txtClass)Then
If.In_DB(Trim(txtClass))=TrueThen
MsgBoxTrim(txtClass)+"
已经存在"
.Update(CurClass.Class_Id)
TreeView1.SelectedItem.Text=Trim(txtClass)
CurClass。
Class_Name=Trim(txtClass)
EndWith
UnloadMe
删除院系资料IfTreeView1。
SelectedItem.Key="
a0”Then
MsgBox”此项不能删除”
IfCurClass.HaveSon(CurClass.Class_Id)=TrueThen
MsgBoxCurClass。
Class_Name+”包含下级院系班级,不能删除”
IfMyClass.HaveStudent(CurClass。
Class_Id)=TrueThen
MsgBoxCurClass.Class_Name+"
包含学生,不能删除”
IfMsgBox(”是否确定要删除”+Trim(TreeView1。
Text),vbYesNo,"
请确认"
)=vbNoThen
CallCurClass.Delete(CurClass。
Class_Id)
TreeView1.Nodes。
RemoveTreeView1.SelectedItem.Index
TreeView1_Click
学生信息资料管理
添加学生基本信息资料
WithMyStu
。
Student_Name=MakeStr(txtStu_Name)
.Sex=ComboSex.Text
Nationality=MakeStr(txtNationality)
IfIsDate(ComboBirth.Text)=FalseThen
MsgBox”请选择正确的出生日期”
Birth=ComboBirth。
Text
.Political_Party=MakeStr(txtPolitical_Party)
.Family_Place=MakeStr(txtFamily_Place)
Id_Card=MakeStr(txtId_Card)
.BadgeID=MakeStr(txtBadgeID)
Home_phone=MakeStr(txtHomePhone)
.Residence=MakeStr(txtResidence)
Postcode=MakeStr(txtPostcode)
IfIsDate(ComboInDate.Text)=FalseThen
请选择正确的入校日期”
InDate=ComboInDate。
Title=MakeStr(txtTitle)
.Memo=MakeStr(txtMemo)
dd=Date
dd=Format(dd,”yyyy-mm—dd”)
t=Time
tt=Trim(Str(Hour(t)))+"
:
"
+Trim(Str(Minute(t)))+”:
”+Trim(Str(Second(t)))
.Fillin_Time=dd+””+tt
.Class_Id=CurClass.Class_Id
IfModify=FalseThen
Else
.Update(CurStu.Student_Id)
FrmStuMan.TmpOk=True
照片管理
IfButton=1Then
IfFrmPhotoMenu。
Visible=TrueThen
UnloadFrmPhotoMenu
IfButton=2Then
IfCurStu。
Student_Id〈=0Then
FrmPhotoMenu。
Left=X+Image1。
Left+200’—1610
FrmPhotoMenu.Top=Y+Image1。
Top+1900
Show
DimDiskFileAsString
IfCurStu.Student_Id〈=0Then
请选择学生"
CommonDialog1.Filter="
BMP文件(*.bmp)|*。
bmp|JPEG文件(*.jpg)|*.jpg|GIF文件(*。
gif)|*。
gif"
CommonDialog1.ShowOpen
DiskFile=CommonDialog1。
FileName
IfDiskFile=””Then
请选择照片文件”
CallSaveImage(DiskFile,FrmStuMan.AdoStuDetail)
CallShowImage(FrmStuMan。
Image1,FrmStuMan.AdoStuDetail)
请选择学生”
FrmStuMan.AdoStuDetail.Recordset。
Fields
(2).AppendChunk"
”
FrmStuMan.AdoStuDetail。
Recordset。
Update
FrmStuMan.Image1。
Picture=LoadPicture(”"
)
学籍管理
添加学籍管理信息资料
FrmChangeEdit.ComboDate。
Text=Format(Now,"
yyyy—mm—dd"
SelStu。
Init
FrmChangeEdit.ComboName。
Text=”"
FrmChangeEdit.ComboType。
ListIndex=ComboType.ListIndex
FrmChangeEdit.ComboClass="
FrmChangeEdit.txtMemo=”"
FrmChangeEdit.Modify=False
FrmChangeEdit.Show1
Refresh_Change
修改学籍管理信息资料
FrmChangeEdit.OriId=Adodc1.Recordset.Fields(0)
Text=Trim(Adodc1。
Recordset.Fields
(1))
Student_Id=Adodc1.Recordset。
Fields
(2)
GetInfo(SelStu.Student_Id)
FrmChangeEdit。
ComboName。
Text=Trim(Adodc1.Recordset.Fields(3))
ComboType。
SelectCaseComboType.ListIndex
Case0,1'
退学、休学
txtNewSchool=”"
ComboClass="
txtReason=Trim(Adodc1。
Recordset.Fields(4)