学生信息管理系统设计说明书
软件详细设计说明书例

软件详细设计说明书例一、引言在软件开发过程中,详细设计是连接概要设计和编码实现的重要环节。
它为软件的编码提供了具体的指导,包括模块的内部结构、算法、数据结构、接口等方面的详细描述。
本文将以一个简单的学生管理系统为例,展示一份软件详细设计说明书的范例。
二、软件概述(一)软件名称学生管理系统(二)软件功能1、学生信息管理:包括学生基本信息的录入、修改、查询和删除。
2、课程管理:课程信息的添加、修改、查询和删除。
3、成绩管理:学生成绩的录入、查询和统计分析。
三、模块设计(一)学生信息管理模块1、学生信息录入子模块输入:学生的学号、姓名、性别、出生日期、班级等信息。
处理:对输入的信息进行合法性校验,如学号的唯一性检查、出生日期的格式检查等。
将合法的信息保存到数据库中。
输出:提示信息,如“录入成功”或“录入失败,请重新输入”。
2、学生信息修改子模块输入:要修改的学生学号和修改后的信息。
处理:根据学号查询出对应的学生信息,将修改后的信息更新到数据库中。
输出:提示信息,如“修改成功”或“修改失败,请重新输入”。
3、学生信息查询子模块输入:查询条件,如学号、姓名、班级等。
处理:根据查询条件从数据库中检索出符合条件的学生信息。
输出:查询结果,以列表形式展示学生的基本信息。
4、学生信息删除子模块输入:要删除的学生学号。
处理:根据学号从数据库中删除对应的学生信息。
输出:提示信息,如“删除成功”或“删除失败,请重新输入”。
(二)课程管理模块1、课程信息添加子模块输入:课程编号、课程名称、学分、授课教师等信息。
处理:对输入的信息进行合法性校验,如课程编号的唯一性检查。
将合法的信息保存到数据库中。
输出:提示信息,如“添加成功”或“添加失败,请重新输入”。
2、课程信息修改子模块输入:要修改的课程编号和修改后的信息。
处理:根据课程编号查询出对应的课程信息,将修改后的信息更新到数据库中。
输出:提示信息,如“修改成功”或“修改失败,请重新输入”。
《学生宿舍信息管理系统》概要设计说明书

《学生宿舍信息管理系统》概要设计说明书嘿,同学们!咱们今天来聊聊这个学生宿舍信息管理系统,这可真是个神奇的存在,就像宿舍生活的大管家。
想象一下,没有这个系统之前,宿舍管理那叫一个乱呀!谁住哪间房,得翻一堆本子去查;水电费怎么算,全靠人工一笔一笔地写。
但有了这个系统,一切都变得不一样啦!这个系统呢,首先它得有个超级强大的信息录入功能。
每个同学的个人信息,什么名字、学号、专业,那都得整得明明白白的。
这就好比给每个同学都发了一张专属的“宿舍身份证”,走到哪儿都能被系统认出来。
然后啊,宿舍的分配也能通过它轻松搞定。
不再是靠老师头疼地去想怎么安排,系统根据各种条件,比如专业、班级,自动给你分好宿舍。
这是不是有点像个聪明的小助手,把宿舍的拼图拼得恰到好处?再来说说水电费管理。
系统能精确地记录每个宿舍的用水用电情况,再也不用担心算错账啦。
就像一个精细的小会计,一分一毫都算得清清楚楚。
还有维修管理这一块。
宿舍里的东西坏了,在系统里一报,维修人员就能快速收到消息,赶紧来解决问题。
这多方便呀,难道不比你到处找人快得多?另外,系统还能对宿舍的卫生情况进行记录和评估。
哪个宿舍干净整洁,哪个宿舍需要改进,一目了然。
这就像是给每个宿舍都打了个分数,激励大家把宿舍收拾得漂漂亮亮的。
这个系统的界面也得设计得简单易懂,让老师和同学们用起来都不费劲。
不能像那些复杂的迷宫,让人摸不着头脑。
总的来说,学生宿舍信息管理系统就是为了让宿舍管理变得更高效、更有序、更方便。
它就像是宿舍生活的定海神针,有了它,咱们的宿舍生活就能更加轻松愉快,大家说是不是呀?。
学生信息管理系统需求规格说明书

学生信息管理系统需求规格说明书1.1 目的本文档旨在明确学生信息管理系统的功能需求和非功能需求,以便开发团队理解客户需求,实现系统设计、编码和测试等项目开发工作。
1.2 范围学生信息管理系统可以管理学生的基本信息、课程信息、成绩信息等;同时,该系统也可以为教师提供教学计划和成绩管理等功能。
二、总体描述2.1 产品功能学生信息管理系统可以实现以下功能:(1)学生信息管理该系统可以管理学生的基本信息,包括姓名、性别、家庭住址、年龄、联系方式等。
同时,该系统还可以记录学生的入学时间、学籍状况、奖惩记录等。
(2)课程信息管理该系统可以管理课程信息,包括课程名称、授课教师、学分、学时等。
同时,该系统还可以设置授课计划、查看课程评价等。
(3)成绩管理该系统可以记录学生的考试信息和成绩信息,可以对成绩进行统计和分析。
同时,该系统还可以生成学生成绩单、成绩报告等。
(4)教师信息管理该系统可以管理教师的基本信息,包括姓名、性别、家庭住址、年龄、联系方式等。
同时,该系统还可以记录教师的资格证书、科研成果等。
(5)教学计划管理该系统可以为教师提供教学计划和课程安排等功能。
2.2 用户特点本系统主要面向大学管理层、教师和学生。
2.3 约束和限制本系统需要在服务器上部署,同时需要保证数据的安全性和可靠性。
三、详细需求3.1 功能需求(1)学生信息管理1.能够添加、编辑、删除学生的基本信息;2.能够查看学生信息,包括学籍状况、奖惩记录等;3.能够查询和统计学生信息。
(2)课程信息管理1.能够添加、编辑、删除课程信息;2.能够设置授课计划,课程评价;3.能够查询和统计课程信息。
(3)成绩管理1.能够添加、编辑、删除考试信息和成绩信息;2.能够对成绩进行统计和分析;3.能够生成学生成绩单、成绩报告等。
(4)教师信息管理1.能够添加、编辑、删除教师的基本信息、资格证书、科研成果等;2.能够查询和统计教师信息。
(5)教学计划管理1.能够为教师提供教学计划和课程安排等功能;2.能够查询和统计教学计划信息。
学生管理系统需求规格说明书范文

学生管理系统需求规格说明书范文一、引言学生管理系统是一种用于学校或教育机构管理学生信息的软件系统。
该系统可以帮助管理人员更有效地管理学生的个人信息、学籍信息、成绩信息以及其他相关信息。
本需求规格说明书旨在明确学生管理系统的需求,以便于开发团队根据需求设计和开发系统。
二、系统概述学生管理系统主要包括以下功能模块:1. 学生信息管理:包括学生基本信息、家长联系方式、照片等。
2. 学籍管理:包括学生入学、转学、退学、毕业等学籍变动的管理。
3. 成绩管理:包括学生成绩录入、查询、统计和分析等。
4. 课程管理:包括课程信息维护、排课安排、选课管理等。
5. 教师管理:包括教师信息维护、教师评价、考勤管理等。
6. 班级管理:包括班级信息维护、班级调整、班级活动安排等。
7. 日常管理:包括学生请假、奖惩管理、通知公告等。
8. 报表管理:包括各类统计报表的生成与导出。
三、功能需求1. 学生信息管理1.1 学生基本信息录入:包括学生姓名、性别、出生日期、身份证号码、民族等基本信息的录入。
1.2 家长联系方式录入:包括家长姓名、联系电话、地址等信息的录入。
1.3 学生照片上传:支持将学生照片上传至系统,方便身份确认。
1.4 学生信息查询:支持根据学生姓名、班级、学号等条件进行学生信息的查询。
2. 学籍管理2.1 学生入学管理:支持学生的入学登记,包括学生档案的建立、入学报到等。
2.2 学生转学管理:支持学生转学的登记和学籍变动处理。
2.3 学生退学管理:支持学生退学的登记和学籍变动处理。
2.4 学生毕业管理:支持学生毕业的登记和学籍变动处理。
3. 成绩管理3.1 学生成绩录入:支持教师将学生成绩录入系统,包括平时成绩、考试成绩等。
3.2 学生成绩查询:支持学生和教师根据不同条件查询学生成绩。
3.3 成绩统计与分析:支持系统根据学生的成绩数据进行统计和分析,生成成绩报表。
4. 课程管理4.1 课程信息维护:支持管理员维护课程信息,包括课程名称、学时、学分等。
学生信息管理系统详细设计说明书

学生信息管理系统详细设计说明书学生信息管理系统详细设计说明书1:引言1.1 编写目的本文档的编写旨在对学生信息管理系统进行详细设计,明确系统的各个模块及其功能,为开发人员提供明确的开发方向和标准。
1.2 背景随着学校规模的逐渐扩大,学生信息管理变得日益重要。
为了提高学校的信息化管理水平,开发一个学生信息管理系统以便高效地管理学生信息是必要的。
2:系统总体设计2.1 系统功能学生信息管理系统主要包括以下功能:a) 学生信息录入与修改:实现学生基本信息的录入和修改功能;b) 学生信息查询与统计:根据特定条件查询学生信息,并进行统计分析;c) 学绩管理:录入和查询学生的考试成绩,并相应的成绩单;d) 学生档案管理:管理学生的各类档案,如体检档案、奖惩档案等;e) 综合查询:提供综合查询功能,方便用户根据多个条件查询学生信息。
2.2 系统模块划分根据上述功能,将学生信息管理系统划分为以下模块:a) 学生基本信息模块;b) 学绩管理模块;c) 学生档案管理模块;d) 综合查询模块。
3:学生基本信息模块设计3.1 模块功能学生基本信息模块用于录入、修改和查询学生的基本信息。
3.2 数据库设计3.2.1 学生表学生表包括以下字段:- 学生ID:唯一标识每个学生的ID;- 姓名:学生的姓名;- 性别:学生的性别;- 出生日期:学生的出生日期;- 年级:学生所在的年级;- 班级:学生所在的班级;- 联系方式:学生的联系方式。
3.2.2 其他相关表根据需要,可以创建其他相关表,如班级表、年级表等。
3.3 功能设计3.3.1 学生信息录入功能学生信息录入功能包括以下步骤:a) 输入学生的基本信息,如姓名、性别、出生日期等;b) 根据学生所在的年级和班级信息进行关联;c) 提交学生信息并保存到数据库。
3.3.2 学生信息修改功能学生信息修改功能允许用户修改已录入的学生信息。
3.3.3 学生信息查询功能学生信息查询功能允许用户根据特定条件查询学生信息。
学生信息管理系统需求规格说明书

学生信息管理系统需求规格说明书摘要本文旨在对学生信息管理系统进行需求规格说明,包括系统的功能需求、性能需求、界面需求以及约束需求等,以确保系统能够满足用户的需求并提供良好的使用体验。
1. 引言学生信息管理系统是一种用于记录和管理学生个人信息的软件系统。
它为学校、学生和教职员工提供了一个高效、可靠的信息交流和管理平台。
本章主要介绍系统的背景和目标,以及本规格说明的编写目的。
2. 功能需求2.1 学生信息录入功能学生信息管理系统应具备学生信息录入功能,包括姓名、学号、性别、出生日期、年级、班级等基本信息的录入和修改功能。
另外,系统还应支持上传学生照片的功能。
2.2 学生信息查询功能系统应具备学生信息查询功能,用户可通过指定学号或姓名等关键字进行查询,并返回相关学生信息的查询结果。
查询结果应包括学生的基本信息和相应的联系方式。
2.3 学生成绩管理功能系统应支持学生成绩的录入和管理功能。
教师可通过学生的学号或姓名录入学生成绩,并可以查看和修改学生成绩。
学生成绩管理功能还应包括成绩统计和分析功能,以便教师对学生成绩进行全面的评估和分析。
3. 性能需求3.1 响应时间系统的响应时间应尽可能地短,以确保用户能够快速地获取需要的信息或完成相应的操作。
系统对于学生信息的录入和查询操作,应在毫秒级别内完成。
3.2 并发性能学生信息管理系统应具备较强的并发性能,能够支持多个用户同时进行学生信息的录入、查询和修改等操作。
系统应能够正确处理并发操作,避免数据冲突和丢失。
3.3 数据存储性能系统应能够高效地存储和管理大量学生信息和成绩数据。
数据库的设计和优化要满足系统对于数据存取的高效性需求,保证数据的安全性和完整性。
4. 界面需求4.1 用户界面设计学生信息管理系统应具备简洁明了、直观友好的用户界面设计,方便用户进行操作和浏览相关信息。
界面应符合用户的使用习惯,尽量减少操作步骤并提供良好的用户反馈。
4.2 响应式设计系统的用户界面应具备响应式设计,能够适应不同尺寸的屏幕和设备,方便用户在不同终端上进行访问和使用。
学生信息管理系统 设计说明书

学生信息管理系统设计说明书一、引言随着教育信息化的不断推进,学生信息管理的重要性日益凸显。
为了提高学校管理的效率和质量,实现学生信息的规范化、科学化管理,我们设计了这套学生信息管理系统。
二、系统目标与功能需求(一)系统目标本系统旨在为学校提供一个高效、便捷、准确的学生信息管理平台,实现学生信息的集中管理、快速查询、统计分析和数据共享,提高学校管理工作的效率和决策的科学性。
(二)功能需求1、学生基本信息管理能够录入、修改、查询和删除学生的基本信息,包括姓名、性别、出生日期、身份证号、家庭住址、联系方式等。
2、学籍管理实现学生学籍的注册、异动(转学、休学、复学、退学等)处理,以及学籍信息的查询和统计。
3、课程管理对学校开设的课程进行管理,包括课程名称、课程代码、学分、授课教师等信息的录入、修改和查询。
4、成绩管理能够录入学生的课程成绩,进行成绩的计算、统计和分析,生成成绩单和成绩报表。
5、奖惩管理记录学生的奖励和处罚信息,包括奖励名称、处罚原因、时间等。
6、系统管理包括用户管理、权限管理、数据备份与恢复等功能,确保系统的安全稳定运行。
三、系统设计(一)总体架构本系统采用B/S(浏览器/服务器)架构,用户通过浏览器访问系统,服务器端负责数据处理和业务逻辑。
系统分为表示层、业务逻辑层和数据访问层三层架构,提高了系统的可维护性和可扩展性。
(二)数据库设计1、数据库选型选用关系型数据库MySQL,以满足系统对数据存储和管理的需求。
2、数据表设计根据系统功能需求,设计了学生信息表(student_info)、学籍信息表(student_status)、课程信息表(course_info)、成绩信息表(grade_info)、奖惩信息表(reward_punish_info)等数据表,并定义了各表的字段、数据类型、约束条件等。
3、数据库关系通过主键和外键建立了数据表之间的关联关系,确保数据的一致性和完整性。
(三)界面设计1、登录界面用户输入用户名和密码进行登录,系统验证用户身份后进入相应的操作界面。
学生管理系统需求规格说明书范文

学生管理系统需求规格说明书范文学生管理系统需求规格说明书1. 引言学生管理系统是为了方便学校管理学生信息而开发的一款软件系统。
本文档旨在详细描述学生管理系统的功能需求和技术要求,以便软件开发团队进行系统设计和开发。
2. 功能需求2.1 学生信息管理- 系统应能够记录学生的基本信息,包括姓名、年龄、性别、出生日期、家庭住址等。
- 系统应能够支持学生信息的增加、删除、查询和修改操作。
- 系统应能够生成学生信息的统计报表,如男女比例、年龄分布等。
2.2 成绩管理- 系统应能够记录学生的课程成绩,包括课程名称、成绩、学分等。
- 系统应能够支持成绩的录入、查询和修改操作。
- 系统应能够生成学生的成绩单和课程统计报表,如平均成绩、课程通过率等。
2.3 课程管理- 系统应能够记录学校的课程信息,包括课程名称、教师、时间等。
- 系统应能够支持课程信息的增加、删除、查询和修改操作。
- 系统应能够生成课程表和教师授课统计报表。
2.4 教师管理- 系统应能够记录教师的基本信息,包括姓名、年龄、性别、专业等。
- 系统应能够支持教师信息的增加、删除、查询和修改操作。
- 系统应能够生成教师信息的统计报表,如教师专业分布等。
2.5 系统管理- 系统应能够支持管理员对系统用户的管理,包括用户注册、登录、权限分配等。
- 系统应能够支持数据库备份和恢复操作,以保证数据的安全性。
- 系统应具备良好的界面友好性和操作易用性,以提高用户的使用体验。
3. 技术要求- 学生管理系统应基于Web平台开发,以便用户能够通过浏览器进行访问和操作。
- 系统应采用主流的开发技术和数据库,如Java、MySQL等。
- 系统应具备良好的性能和稳定性,能够支持大量用户同时在线操作。
- 系统应具备良好的扩展性和可维护性,以便后续能够方便地进行功能扩展和系统升级。
4. 总结本文档详细描述了学生管理系统的功能需求和技术要求。
通过实现这些功能和满足这些要求,学生管理系统将能够有效地帮助学校管理学生信息,提高学校管理的效率和精确度。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生信息管理系统设计说明书一.需求规格说明书随着计算机科学技术的不断发展,计算机对学生信息进行管理有着手工无法比拟的优点。
例如:检索迅速、查找方便、可靠性高、存储容量的、保密性好、寿命长、成本低等。
这些优点都能极大地提高学生信息管理的效率,方便系统管理员实现对学生的信息管理,同时也方便学生对自己信息的查询。
学生信息管理系统是一个简单实用的系统,它是学校进行学生管理的好帮手。
此软件功能齐全,设计合理,使用方便,适合各种学校对繁杂的学生信息进行统筹管理,具有严格的系统使用权限管理,具有完善的管理功能,强大的查询功能。
它可以融入学校的信息管理系统中,不仅方便了学生信息各方面的管理,同时也为教师的管理带来了极大地便利。
我们进行本次课程设计的主要目的是通过上机实践操作,熟练掌握数据库的设计、表单的设计、表单与数据库的连接、SQL语言的使用和了解它的功能:数据定义、数据操纵、数据控制,以及简单VF程序的编写。
基本实现学生信息的管理,包括系统的登录、学生信息的录入、学生信息的浏览、学生信息的查询、学生信息的修改和学生信息的删除以及系统管理等功能,并对Visual FoxPro6.0的各种功能有进一步的了解,为我们更进一步深入的学习奠定基础,并在实践中提高我们的实际应用能力,为我们以后的学习和工作提供方便,使我们更容易融入当今社会,顺应知识经济发展的趋势。
二.概要设计说明书学生信息管理系统是基于FOXPRO 6.0中文版开发。
FOXPRO在数据库开发方面具有方面,实用,简单,直接等优点。
同时其也具有一定的局限性。
本系统主要面向系统管理员和学生开发使用,因此主要侧重于系统的使用性和方便性。
同时在安全性方面也十分重视。
特别是操作员级别的划分等密码管理,都做了仔细的分析研究。
(一)、系统登录界面的设计,主要是本着实用简便的原则设计制作。
在系统界面被打开时,会播放一段欢迎曲。
系统运行的首界面如图1。
具体实现代码见目录。
图1系统界面中有登陆系统按钮,系统使用人员可以点击进入密码验证页,如果在一分钟内用户没有点击此按钮,系统会自动跳到密码验证页。
此程序的实现代码会在详细设计书中说明。
(二)、密码验证作为系统最基本的安全管理步骤。
用户如果不输入合法的用户名和密码,系统是不能进入的。
用户在文本框输入操作员及口令,若正确则调用系统主界面(菜单)。
允许输入三次,若三次均不正确刚自动退出系统。
当用户输入合法的用户名和密码时,系统管理会自动判断此用户是什么级别的用户,具有什么权限,使用户的操作具有合法性。
密码验证页包括操作员姓名和密码两个部分。
程序运行如图2。
具体的代码实现也将在详细设计书说明。
图2当操作员的名称和密码均正确的时候,系统便会进入系统使用主菜单。
主菜单共分为三个分菜单项:学生信息管理,学生成绩管理,系统管理。
运行界面见图3。
具体代码实现见附件。
图3(三)、学生信息管理系统菜单设计。
在应用系统中,各个子模块是通过菜单组织在一起的。
通过对学生信息管理系统功能模块的设计,可以将系统划分为3大模块:学生信息管理、学生成绩查询、系统管理,具体的菜单设计见下表:学生信息管理学生成绩管理系统管理学生信息维护学生成绩查询操作员管理口令设置学生信息查询权限管理系统日志数据备份退出系统在菜单设计器中实现权限设置在菜单项设计器中,通过[提示选项]对话框设置菜单项的跳过条件可以实现用户权限。
每个操作员对每个菜单项有两种权限:0或1。
“0”表示此操作员对该菜单项没有操作权,系统运行后,该菜单项为灰色。
不能打开对应的表单,“1”代表该操作员对该菜单项具有操作权,系统运行后,该菜单项可用,鼠标单击菜单项能打开对应的表单。
(四)、学生信息管理菜单设计。
(1)、学生信息维护子菜单。
学生信息维护表单包换下列功能:数据录入、修改、删除、查询、浏览、保存、打印等。
本表单左边是浏览窗口,便于用户浏览数据;右边是编辑窗口,主要用于输入修改数据。
在表单数据环境中添加表:rsb.dbf、cjb、dbf。
程序运行如图4,打印的运行窗口如图5。
具体代码实现见附件。
图4图5(2)学生信息查询子菜单。
学生信息管理系统的查询是基于RSB.dbf表,菜单提供学号,姓名,全体查询。
分别利用不同的命令代码方式实现查询打印功能。
功能是便于指导员和老师,学生用户的检索查询。
程序运行窗口见图6。
打印窗口与学生信息维护窗口类似,不予赘述。
具体实现代码见附件。
图6(五)、学生成绩管理菜单。
该菜单仅包含一个子菜单即成绩查询。
成绩查询菜单的设计与学生信息查询菜单的设计比较类似。
菜单调用的是cjcx.scx表单。
各事件代码均与学生信息查询类似。
程序运行界面见图7。
具体代码实现见附件。
图7(五)、系统管理菜单设计。
(1)、操作员管理子菜单。
该模块可实现操作员的浏览、添加,删除,编辑、打印等功能。
程序运行如图8。
具体代码实现见附件。
(2)口令设置子系统。
可以实现对用户密码的更改功能。
通过对用户原口令以及两次输入口令的一致性实现对用户口令的修改。
程序运行窗口见图9。
具体代码实现见附件。
图9(3)、权限设置子系统。
该模块通过对操作原代号对相应菜单的控制权限实现对操作的限制。
其中“1”为只读。
“0”为可写。
具体代码实现见附件。
运行截图见图10。
(4)系统日志子菜单。
该模块实现对用户使用该系统的记载。
记载用户登录时间以及离开是的时间。
程序运行如图11,代码实现见附件。
图11(5)数据备份。
该功能将系统中名为dbsystem的文件加的内容复制到一个一系统日期为名的文件夹中,实现对系统部分内容的备份,以防数据丢失。
运行见图12。
图12(6)、退出子系统。
实现系统的退出。
三、数据库设计说明书该系统由三大菜单紧密结合联系,共分为两个数据库,第一个数据库包括学生管理维护表和成绩查询表,第二个数据库包括系统管理表。
如下图所示(图1)系统Dbrsgz.dbc Dbsystem.dbcRsb.dbv Cjb.dbc log.dbfMenuitem.dbfNeburight.dbfOpreator.dbf四.用户使用说明用户使用流程图:五.心的体会在本系统的开发过程中,由于是初次开发软件,在知识、经验方面都存在着不足。
另外,在整个开发的过程中,时间也比较仓促。
因此,该系统必然会存在一些缺陷和不足。
因为对学生信息管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。
虽然网络在学生管理系统中的应用不是很多,但是未来的发展方向,在本次开发过程由于硬件的限制,未能实现网络功能,因此在以后的系统更新过程中可能会造成一些不必要的数据损失。
尽管本管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。
相信本学生管理系统是一套学校在日常管理中必不可少的管理软件,通过开发这个系统,我掌握了的项本过程,了解了的基本知识巩固了我对Visual Basic 6.0的学习,但在这次毕业设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法。
在两周的实习过程中,通过对遇到的问题反复不断的尝试新的方法,锻炼了我的意志力和对系统的整体感知能力,相信在以后会做出更好的系统。
六.分析所用方法的优、缺点缺点:在程序中有好多类似的控件,比如按钮。
可以用类实现简易操作。
本系统中每个控件都是单独生成,如果在程序开始的时候就设计出类,将会节省开发的时间,使操作变的简单。
在实现备份的时候不能选择性的备份其中的某个文件而是备份了整个文件夹的文件,使系统缺少灵活性。
而且没有设计出文件还原系统,是文件的还原只能通过人工操作,降低了系统的简易力。
在学生信息维护模块中,在对照片的添加功能上没能实现对添加照片大小的限制。
使有时候加入的照片过大而影响美管。
优点:整个系统的运行过程简单,易于操作。
界面友好。
基本实现了对学生信息的管理。
七、附录程序运行主要源代码:主控程序main.prg的代码实现为:CLEAR &&清屏CLEAR ALL &&从内存中释放所有的内存变量CLOSE ALL &&关闭各种类型的文件SET ESCAPE OFF &&禁止运行的程序和命令在按 Esc 键后被中断SET SAFETY OFF &&指定在改写已有文件时不显示对话框SET DELETE ON &&使用范围子句处理记录的命令忽略标有删除标记的记录SET SYSMENU OFF &&在程序执行期间废止 Visual FoxPro 主菜单栏RELEASE WINDOW "常用" &&关闭常用工具栏SET CENTURY ON &&年份以四位显示SET DATE TO ymd &&日期格式为年、月、日SET MARK TO "-" &&指定日期分隔字符SET HOURS TO 24 &&指定为 24-小时时间格式_SCREEN.Visible=.t._SCREEN.Caption="学生信息管理系统" &&系统窗口标题_SCREEN.Icon=".\dod.ico" &&系统标题栏图标*判断显示器当前分辨率_SCREEN.Width=SYSMETRIC(1)_SCREEN.Height=SYSMETRIC(2)*根据分辨率不同,为系统设置不同的背景图片IF SYSMETRIC(1)>=1024_SCREEN.Picture=".\img\bj.jpg"ELSE_SCREEN.Picture=".\img\bj.jpg"ENDIFDO FORM .\face.scx &&调用登录界面表单On ShutDown do OnShutdown &&退出系统时调用函数onshutdown() READ EVENTS &&建立事件循环On ShutDown &&释放当前的On ShutDown命令*按菜单的“关闭”按钮退出时,出现的提示框FUNCTION OnShutdown()sel=MESSAGEBOX("真的要退出吗?",4+32+256,"提示")IF sel=6SELECT 0USE .\dbsystem\LOGGO BOTTOMREPLACE 离开时间 WITH DATETIME() &&退出系统时记录操作员退出时间CLOSE ALLCLEAR EVENTS &&退出事件循环QUIT &&结束当前 Visual FoxPro 工作期,并将控制权返回给操作系统ENDIFENDFUNC登录界面pass的主要代码:登录按钮的click事件:*判断密码是否正确i=i+1SELECT operatorLOCATE FOR 操作员姓名=ALLTRIM(THISFORM.Text1.Value)DO CASECASE i<=3 AND FOUND() AND THISFORM.Text2.Value=operator.口令 &&输入次数未超过3次且用户名正确、口令正确operat=THISFORM.Text1.ValueINSERT INTO log(操作员代号,操作员姓名,登录时间) VALUES(operator.操作员代号,operator.操作员姓名,DATETIME())_SCREEN.Caption="学生信息管理系统"+SPACE(25)+DTOC(DATE())+SPACE(25)+"操作员:"+operatSELECT 权限 FROM menuright INTO ARRAY rr WHERE 操作员代号=operator.操作员代号 ORDER BY 菜单项编号RELEASE THISFORMDO .\main\main_menu.mprCASE i<=3 AND FOUND() AND THISFORM.Text2.Value!=operator.口令 &&输入次数未超过3次且用户名正确、口令不正确MESSAGEBOX("密码错误,请重输!","警告")THISFORM.Text2.Value=""THISFORM.Text2.SetfocusCASE i<=3 AND NOT FOUND() &&输入次数未超过3次且用户名不正确MESSAGEBOX("操作员姓名错误,请重输!","警告")THISFORM.Text1.Value=""THISFORM.Text2.Value=""THISFORM.Text1.SetfocusCASE i>3 &&输入次数超过3次MESSAGEBOX("禁止进入系统!","警告")THISFORM.ReleaseENDCASEchaxun窗口查询打印的click事件代码:*输入编号、姓名提示标签及文本框bel2.Visible=.F.THISFORM.Text1.Visible=.F.THISFORM.Text1.Setfocus()*输入起始日期、截止日期提示标签及文本框不可见bel4.Visible=.F.bel5.Visible=.F.THISFORM.Text2.Visible=.F.THISFORM.Text3.Visible=.F.mand4.Visible=.F.*表格数据不可修改THISFORM.Grid1.Readonly=.T.查询按钮的click事件:*按输入的日期条件在表格中显示查询的记录SELECT rsbPUBLIC qsrq,jzrqqsrq=THISFORM.Text2.Valuejzrq=THISFORM.Text3.ValueDO CASECASE NOT EMPTY(qsrq) AND EMPTY(jzrq)SET FILTER TO 出生日期>=qsrqCASE EMPTY(qsrq) AND NOT EMPTY(jzrq)SET FILTER TO 出生日期<=jzrqCASE NOT EMPTY(qsrq) AND NOT EMPTY(jzrq)SET FILTER TO 出生日期>=qsrq AND 出生日期<=jzrqOTHERWISEMESSAGEBOX("未输入查询时间!","提示")ENDCASETHISFORM.Grid1.Refresh数据备份窗口“开始备份”按钮的click事件:M_ML="dbsystem\"+DTOC(DATE(),1)IF !DIRE(M_ML) &&判别以今天日期为名称的目录是否存在,如果不存在,建立一个MD &M_MLELSEIF MESSAGEBOX("今天已经备份过数据了,"+chr(13)+; &&判断是否今天已经备份过数据"您是否要重新备份一次?",4+32+256,"备份提示")#6RETURNENDIFENDIFSET SAFE OFFDELE FILE BACKUP\*.*CLOS TABLE ALL &&备份数据时必须关闭所有打开的数据库及表CLOS ALLM_CHAR="备份开始,请稍侯..."WAIT WINDOW M_CHAR NOCLEAR NOWAIT &&显示备份开始信息for i=1 to 296for j=1 to 200this.parent.shape5.width=iendforendforDELE FILE DATA\*.BAK &&删除所有BAK文件DELE FILE DATA\*.TBK &&删除所有TBK文件M_ML1=M_ML+"\*.*"COPY FILE dbsystem\*.* TO &M_ML1 &&开始备份WAIT CLEA=MESSAGEBOX("祝贺您,数据已成功备份!",0+48,"备份成功") &&提示备份成功THISFORM.SHAPE5.WIDTH=0RELE M_ML,M_CHAR,M_ML1口令设这窗口modifypasswd的主要代码“确定”按钮的click事件select operatorlocate for operator.操作员姓名=alltrim(operat)if alltrim(thisform.text1.value)=alltrim(operator.口令)if thisform.text2.value=thisform.text3.valuereplace operator.口令 with thisform.text2.valuerelease thisformelsemessagebox("口令不一致!")thisform.text2.setfocus()endifelsemessagebox("原口令错误!")thisform.text1.setfocus()endif信息维护模块的代码(1)、“第一个”按钮的click事件:select rsbgo topmandgroup1.cmdtop.enabled=.f. mandgroup1.cmdprev.enabled=.f.if not eof()mandgroup1.cmdnext.enabled=.t. mandgroup1.cmdbottom.enabled=.t. endifthisform.refresh“前一个”按钮的click事件:select rsbskip -1if bof()go topmandgroup1.cmdtop.enabled=.f. mandgroup1.cmdprev.enabled=.f. endifif not eof()mandgroup1.cmdnext.enabled=.t. mandgroup1.cmdbottom.enabled=.t. endifthisform.refresh(2)、“下一个”按钮的click事件:select rsbskipif eof()go bottommandgroup1.cmdnext.enabled=.f. mandgroup1.cmdbottom.enabled=.f. endifif not bof()mandgroup1.cmdtop.enabled=.t. mandgroup1.cmdprev.enabled=.t. endifthisform.refresh(3)、“最后一个”按钮的click事件select rsbgo bottommandgroup1.cmdnext.enabled=.f. mandgroup1.cmdbottom.enabled=.f. if not bof()mandgroup1.cmdtop.enabled=.t. mandgroup1.cmdprev.enabled=.t. endifthisform.refresh(4)、“增加”按钮的click事件if this.caption="增加"this.caption="保存"MANDGROUP1.CMDTOP.ENABLED=.F. MANDGROUP1.CMDPREV.ENABLED=.F. MANDGROUP1.CMDNEXT.ENABLED=.F. MANDGROUP1.CMDBOTTOM.ENABLED=.F. MANDGROUP1.CMDADD.ENABLED=.T. MANDGROUP1.CMDEDIT.ENABLED=.F. MANDGROUP1.CMDDELETE.ENABLED=.F.MANDGROUP1.CMDFIND.ENABLED=.F. MANDGROUP1.CMDPRINT.ENABLED=.F. MANDGROUP1.CMDEXIT.ENABLED=.F. THISFORM.TEXT1.READONLY=.F.THISFORM.TEXT2.READONLY=.F.THISFORM.OPTIONGROUP1.ENABLED=.T. THISFORM.TEXT3.READONLY=.F.THISFORM.TEXT4.READONLY=.F.THISFORM.TEXT5.READONLY=.F.THISFORM.TEXT6.READONLY=.F.THISFORM.CHECK1.READONLY=.F.THISFORM.EDIT1.READONLY=.F.MAND1.VISIBLE=.F.SELECT RSBAPPEND BLANKGO BOTTOMTHISFORM.TEXT1.SETFOCUS()THISFORM.REFRESHELSETHIS.CAPTION="增加"MANDGROUP1.CMDTOP.ENABLED=.t. MANDGROUP1.CMDPREV.ENABLED=.t. MANDGROUP1.CMDNEXT.ENABLED=.t. MANDGROUP1.CMDBOTTOM.ENABLED=.t. MANDGROUP1.CMDADD.ENABLED=.t. MANDGROUP1.CMDEDIT.ENABLED=.t. MANDGROUP1.CMDDELETE.ENABLED=.t. MANDGROUP1.CMDFIND.ENABLED=.t. MANDGROUP1.CMDPRINT.ENABLED=.t. MANDGROUP1.CMDEXIT.ENABLED=.t.THISFORM.TEXT2.READONLY=.t.THISFORM.OPTIONGROUP1.ENABLED=.f. THISFORM.TEXT3.READONLY=.t.THISFORM.TEXT4.READONLY=.t.THISFORM.TEXT5.READONLY=.t.THISFORM.TEXT6.READONLY=.t.THISFORM.CHECK1.READONLY=.t.THISFORM.EDIT1.READONLY=.t.mand1.visible=.t.endif(5)“编辑”按钮的click事件if this.caption="编辑"this.caption="保存"MANDGROUP1.CMDTOP.ENABLED=.T. MANDGROUP1.CMDPREV.ENABLED=.T. MANDGROUP1.CMDNEXT.ENABLED=.T. MANDGROUP1.CMDBOTTOM.ENABLED=.T. MANDGROUP1.CMDADD.ENABLED=.F. MANDGROUP1.CMDEDIT.ENABLED=.T. MANDGROUP1.CMDDELETE.ENABLED=.F. MANDGROUP1.CMDFIND.ENABLED=.F. MANDGROUP1.CMDPRINT.ENABLED=.F. MANDGROUP1.CMDEXIT.ENABLED=.F. THISFORM.TEXT1.READONLY=.F.THISFORM.TEXT2.READONLY=.F.THISFORM.OPTIONGROUP1.ENABLED=.T. THISFORM.TEXT3.READONLY=.F.THISFORM.TEXT4.READONLY=.F.THISFORM.TEXT5.READONLY=.F.THISFORM.CHECK1.READONLY=.F.THISFORM.EDIT1.READONLY=.F.ELSETHIS.CAPTION="编辑"MANDGROUP1.CMDTOP.ENABLED=.t.MANDGROUP1.CMDPREV.ENABLED=.t.MANDGROUP1.CMDNEXT.ENABLED=.t.MANDGROUP1.CMDBOTTOM.ENABLED=.t.MANDGROUP1.CMDADD.ENABLED=.t.MANDGROUP1.CMDEDIT.ENABLED=.t.MANDGROUP1.CMDDELETE.ENABLED=.t.MANDGROUP1.CMDFIND.ENABLED=.t.MANDGROUP1.CMDPRINT.ENABLED=.t.MANDGROUP1.CMDEXIT.ENABLED=.t.THISFORM.TEXT1.READONLY=.t.THISFORM.TEXT2.READONLY=.t.THISFORM.OPTIONGROUP1.ENABLED=.f.THISFORM.TEXT3.READONLY=.t.THISFORM.TEXT4.READONLY=.t.THISFORM.TEXT5.READONLY=.t.THISFORM.TEXT6.READONLY=.t.THISFORM.CHECK1.READONLY=.t.THISFORM.EDIT1.READONLY=.t.ENDIF(6)、“删除“按钮的click事件SELECT RSBXH=RSB.学号sel=messagebox("该记录学号为:"+XH+chr(13)+"真的要删除吗?",4+32+256,"提示") if sel=6deleteendif(7)“查询“按钮的click事件bel11.visible=.t.thisform.text7.visible=.t.thisform.text7.value=""thisform.text7.setfocus()(8)“打印“按钮的click事件report form .\menu1\rsb_bb1.frx preview for rsb.学号=alltrim(thisform.text1.value)八.参考文献Visual FoxPro 及其应用系统开发(第二版)史济民主编汤观全张露编著。