
java学生成绩管理系统分析报告.docx
50页java学生成绩管理系统报告作者:日期:2重庆邮电大学计算机科学与技术学院设计名称: Java程序设计报告设计题目: 学生成绩管理系统学生学号:专业班级:学生姓名:-5 -目录-3-一、需求分析1.1 功能需求分析 -4-1.2 性能需求分析 -4-1.3 数据库需求分析一一数据流图 -5-1.3.1 数据结构 -5-1.3.2 数据流: -5-二、概要结构设计 -6-2.1 系统功能结构设计 -6-2.1.1 模块的功能设计 -6-2.2 概要结构设计 -7-三、详细设计及实现 83.1 用户登陆模块 83.1.1 代码实现 83.2 管理员界面 133.2.1 代码实现: 133.3 用户界面 163.3.1 代码实现: 163.4 添加模块 243.4.1 添加模块代码实现: 243.5 删除模块 303.5.1 代码实现: 3134心得体会:参考文献35、需求分析编写目的:学生成绩管理系统模块是为了实现学校人力资源的优化和学生成绩管理的科学管理而设计的, 通过使用本系统,可以更加有效的管理学生信息,其大包括学生的基本信息,成绩信息并且具有信息的增加,查询,修 改等功能。
需求分析说明书是为软件的开发者能更好的理解开发的需求, 避免由于对问题认识的不清或错误理解而增加更多的开发成本需求分析是软件系统生存期中定义阶段的最后一个步骤;是作为整个软件开发范围的指 南,是软件开发人员开发出正确的符合用户要求的软件的重点;是为明确软件需求、安排项目规划与进度、组织软件 开发与测试,撰写本文档该文档将最终交给软件具体开发人员进行具体的开发,其针对的对象是软件开发人员解决了实现该系统需求的程序模块设计问题 包括如何把该系统划分成若干个模块、 决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等在以下的概要设计报告中将对在本阶段中 对系统所做的所有概要设计进行详细的说明详细设计中,程序设计员可参考此概要设计报告,在概要设计对学生信 息管理系统所做的模块结构设计的基础上,对系统进行详细设计在以后的软件测试以及软件维护阶段也可参考此说 明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误此需求规格说明书是对用户需求分析的结果,明确系统应具有的功能及性能与界面方面的需求,使系统分析员及软件开发组成员能清楚地了解用户的需求, 并在此基础上完成后续工作和开发工作。
学生信息管理系统将由两部分组成:置于学生信息的前台程序,以及置于管理员的数据库服务器1.1功能需求分析该学生成绩管理系统具备三方面的功能:一方面是学生用户,学生通过输入学号和密码进下该系统后,可以进行一些基础查询(学生信息查询、班级信息查询、课程信息查询) 、成绩管理(成绩查询、计算平均分)重新登陆系统;一方面老师进入该系统则比学生多一些权限:成绩输入、成绩查询具体功能:1'选择[学生基本维护]菜单命令,即可进入[学生基本维护]功能窗体,在其中输入学生的相关信息,如 果需要添加或修改学生信息,则单击相应的按纽,输入新信息后单击 [添加]就可以了需要删除一条信息,则只要选择这条信息再点击 [删除]在搜索条件中输入相关的条件,单击[查询]就可查找信息2、选择[学生信息查询]菜单命令,即可进入[学生信息查询]功能窗体,在其中的下拉列表中选择你要看 的信息,则在下面的表格中显示你要的信息3、选择[成绩管理][添加成绩]菜单命令,即可进入 [添加成绩]功能窗体,此功能权限只有管理员和教师4、选择[成绩管理][输入成绩]菜单命令,即可进入[输入成绩]功能窗体,此功能权限只有管理员和教师5、选择[成绩管理][修改成绩]界面,此功能规管理员所有。
6、选择[成绩管理][查询成绩]界面此界面对学生也是可见的,它的权限规所有用户所有7、选择[登陆][重新登陆]则会返回登陆界面,为用户提供方便选择[退出]将退出整个系统1.2 性能需求分析时间特性要求:在软件方面,响应时间有点慢,因为是用 Eclipse做的,它占用内存比较大,更新处理时间比较快而且迅速安全性:设立口令号和密码验证方式,防止非法用户登录进行操作也就是用户只有管理员、学生和教师才能进入这 个系统,用户凭口令号和密码进入此系统,系统会自动判断用户是那种类型,分-11 -别拥有不同的权限°1.3 数据库需求分析一一数据流图1.3.1 数据结构在系统中功能模块主要牵涉到的信息包括:是学生信息( Student)、课程信息(Course)、成绩表(SC).学生信息:包含学号(STNO)、姓名(SNAME)、年龄(SAGE)、性别(SSEX)、系别(SDEPT)课程信息:包括课程编号(Cn课程名称(Cname)、先行课(Cpn成绩表;学号(STNO)、课程号(Cn成绩(Grade)132数据流:1)数据流名:口令号说明:根据这个口令号定位到用户管理数据库,以便进行身份验证数据流来源:登陆界面输入的口令号和密码。
数据流去向:其中用户口令信息将存在于整个操作过程中,防止非法登陆数据流组成:口令号(文本);密码(文本)2)数据流名:寻找信息说明:根据用户在学生信息维护的时候所填写的信息数据流来源:学生信息维护界面学生输入包含学号、班级编号、名称等数据流去向:学号将存在整个操作,其它的存入数据库数据流组成:学号(文本);姓名(文本)等3)数据流名:寻找信息说明:根据用户在成绩管理的时候所填写的信息数据流来源:成绩输入、修改、添加等界面用户输入包含课程编号、课程名称、成绩、教师数据流去向:学号、班级编号、课程编号将存在整个操作,其它的存入数据库数据流组成:课程编号(文本)、课程名称(文本)、教师(文本)等4)数据流名:返回信息说明:根据用户在学生信息维护的时候所填写的信息存入了数据库之后数据流来源:由学生信息维护界面学生输入的包含学号、姓名、性别等存入数据库的数据流去向:学生信息维护界面数据流组成:学号(文本)、姓名(文本)、班级名称(文本)、性别(文本)等5)数据流名:返回信息说明:根据用户在成绩管理的时候所填写的信息存入数据库后数据流来源:由成绩管理输入的包含班级名称、教师、课程名、成绩存入数据库的。
数据流去向:成绩管理的各子界面数据流组成:班级编号(文本);班级名称(文本);教师(文本)等;二、概要结构设计2.1 系统功能结构设计2.1.1 模块的功能设计根据需求分析阶段得到的功能需求,管理员、学生和教师用户通过输入口令号和密码进下该系统后,可以进行一些学生基础信息查询(学生信息查询、班级信息查询、课程信息查询) 、学生信息维护、成绩管理(成绩查询、计算平均分)重新登陆系统、退出模块功能大概可以分为如下 4个方面:这几个模块学生基础维护、成绩管理、登陆、退出其中基础维护还要包括学生信息维护、班级信息维护、课程信息维护成绩管理包括成绩查询、添加成绩、成绩输入等综上所述,得到客户端功能模块图如下 2.2所示2.2概要结构设计.7.三、详细设计及实现3.1用户登陆模块311代码实现package stu_ma nager;import java.awt.*;import java.awt.eve nt.*;import javax.swi ng.*;public class Logi n exte nds JFrame {private static fin al Io ng serialVersio nUID = 4949257312955311099L;TextField f1;TextField f2;JButton b1;JButton b2;JButton b3;Stri ng power;// 表示权限Logi n(){Container cp=getC onten tPa ne();cp.setLayout (new GridLayout(4,1));Label 11= new Label(H 用户名”);Label I2=new Label。
密 码)Panel p1= new Pan el();Panel p2=new Pan el();Panel p3=new Pan el();f1= new TextField(IO);f2=new TextField(IO);f2.setEchoChar('*');b1 = new JButton(n 登录");b2=new JButton重置)b3=new JButton退出");p1 .add(l1);p1 .add(f1);p2.add(l2);p2.add(f2);p3.add(b1);p3.add(b2);p3.add(b3);cp.add(pl);cp.add(p2);cp.add(p3);bLaddAct ion Liste ner(new En ter());b2.addActio nListe ner(new ReWrite()); b3.addAct ion Liste ner(new Close());)public static void main( Stri ng[] args) {Logi n log=new Logi n();log.setTitle(M 系统登录)log.setBounds(200, 200, 300, 300); log.setBackgro un d(Color.blue); log.setVisible(true);class En ter impleme nts Actio nListe ner{public void action Performed(Acti onEvent e)(if((f1 .getText()).equals("ta ng") &&( f2.getText()).equals(n051141"))(JOptio nPa ne.showMessageDialog( null,n 登录成功!用户权限是管理员)power=" 管理员”;XueShe ng framel = new XueShe ng();framel.setResizable(true);)elseif((f1 .getText()).equals(Hta ng")&&( f2.getText()).equals("123456"))(JOptionPane.showMessageDialog(null, ”登录成功!登录成功! 用户权限是游客”);power』' 游客";Find f2 = new Find();f2.setVisible(true);)else JOptio nPan e.showMessageDialog( null," 登录失败,请重新登录! ’);))class ReWrite impleme nts Actio nListe ner{public void action Performed(Acti onEvent e){f1.s。
