软件工程课程设计学生信息管理系统.docx

上传人:b****8 文档编号:29422571 上传时间:2023-07-23 格式:DOCX 页数:32 大小:189.90KB
下载 相关 举报
软件工程课程设计学生信息管理系统.docx_第1页
第1页 / 共32页
软件工程课程设计学生信息管理系统.docx_第2页
第2页 / 共32页
软件工程课程设计学生信息管理系统.docx_第3页
第3页 / 共32页
软件工程课程设计学生信息管理系统.docx_第4页
第4页 / 共32页
软件工程课程设计学生信息管理系统.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

软件工程课程设计学生信息管理系统.docx

《软件工程课程设计学生信息管理系统.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计学生信息管理系统.docx(32页珍藏版)》请在冰豆网上搜索。

软件工程课程设计学生信息管理系统.docx

软件工程课程设计学生信息管理系统

《软件工程》课程实验

综合报告

实验项目名称:

学生信息管理系统

所属院系名称:

计算机科学与技术学院

所在专业班级:

软件132003班

实验小组成员:

实验报告日期:

2015年7月5日

《学生信息管理系统详细设计》

第一章学生信息管理系统简介

1.1系统概述(编写目的)

由于Excel的操作复杂,需要一定的软件知识,所以导致学生信息管理随着社会信息化的脚步加快,个人的信息也呈现出多样性,这便给信息管理者造成了巨大的压力和难度,也给传统的文件信息管理模式提出了挑战。

现有的学生信息

(1)学生信息管理缺乏安全、便捷性。

(2)工作效率低。

(3)无法实现不同学院数据的复合使用。

为了提高学校学生信息管理的效率和准确性,我们团队决定开发一个学生信息管理系统,希望通过信息化手段管理学生信息,实现提高效率和准确性的目的。

学生成绩管理系统在提高学生成绩信息处理的效率的同时,又能为广大师生提供及时准备的学生成绩信息。

可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理。

同时,可以减少劳动力的使用,加快查询速度以及国家各部门关于信息化的步伐,使各项管理更加规范化,提高了传统教师的工作任务量。

1.2项目背景

开发软件名称:

学生信息管理系统

项目任务提出者:

太原科技大学软件工程系

项目开发者:

谷晓荣(组长)郝园园王震

软件使用者:

学校学生管理处

开发环境:

vc++6.0Windows7数据库开发软件等

参考文献:

《软件工程导论》清华大学出版社第六版

第二章可行性研究

2.1可行性分析的目的

该系统的目标是在学生信息管理中,使用计算机的网络技术、通讯技术和信息处理技术,是学生信息得以加工,依次传达及保存。

系统要对使用要求不相同的用户群体设置不同的功能。

管理员能有效地管理学生的信息,同事,学生可以随时大量的检索查询多种信息。

本系统为管理者提供了完整的管理平台,其主要功能有:

(1)通过已有的学生信息库,管理学生的信息,还可以管理教师的信息,管理课程的信息,管理班级的信息;

(2)可以修改学生的信息,选择课程,检索成绩等;(3)修改教师的信息,检索学生的成绩,登记授课的学生情况。

可行性分析就是为了确定该系统从各个方面确定该系统在经济上、技术上、法律上的可否实现。

2.2可行性分析的内容

从技术可行性、资源分析、法律道德分析和效益分析来判分析一下学生信息

管理系统能否实现。

2.3可行性分析过程

A.建议开发软件运行的最短寿命:

五年

B.B.进行系统方案选择比较的期限:

一周

C.C.经费来源和使用限制 :

经费来源由学校提供;使用时应定期维护,防止系统出现高漏洞而带来些复杂问题。

D.D.法律和政策方面的限制:

此软件设计合法,不存在于法律、政策相违背的现象。

E.E.硬件环境:

若干台计算机

F.F.工作站:

每个部门至少有一台作为工作站的PC机

G.G.操作系统:

windows win7 win8等操作系统

H.H.数据库:

SQL Server 2005

2.3.2可行性研究方法

1、初步分析,构想所有必须完成的功能;

2、初步需求分析:

可行性分析报告、数据流图、数据字典、可行性分析报告;

3、建立系统原型:

修改规格说明;

4、管理员,教师,学生,完善模型,明确功能和实现方法;

5、系统的整体测试和修改完善。

2.3.3技术可行性

  学生信息管理系统的开发需要对管理的需求进行分析,最终通过简单的界面按钮操作实现对学生数据的增、删、改和查询操作,并将这些操作反应到数据库的操作。

完成以上功能需要采用以下几个关键的技术:

(1)数据库数据显示技术

通过什么方式和形式把数据库中的学生数据显示到界面上供管理者查阅,目前的基本技术都是基于Sql语言的混合编程实现遍历数据库,对数据的提取,然后通过GUI编程在界面上显示。

目前的界面编程和Sql语言的混合编程已经比较成熟,比如用于界面编程的有C、Java、Qt、C++等等,并且他们基本都是开源的,不会存在侵权和成本的问题。

(2)数据库数据修改技术

对数据库的操作基本的还是离不开Sql语言的混合编程,主要是通过对按钮事件的捕捉,通过对应的Sql代码实现对数据库相关操作。

(3)系统在运行和维护面临的问题

系统在运行过程中,系统的用户主要是学校的信息管理人员,用户对系统使用的熟练程度会影响系统应用的效果,增加系统维护的压力。

这个问题可以通过一份简单的管理人员使用说明文档来解决。

在系统运行的初级阶段,可以由开发方的系统维护人员提供现场的使用指导。

系统维护面临的主要问题是系统存储的学生数据量比较大,数据备份和数据安全十分重要。

数据备份与恢复需要程序化、智能化。

由于数据涉及到学生个人信息秘密,数据备份与恢复工作需要有信息管理人员专职负责。

根据《软件工程》课程对学生信息管理系统期待提交运行的时间,开发小组的现有人力物力,以及队员对开技术的掌握情况,可以在《软件工程》课程要求的时间内完成开发任务,具体分析如下。

时间段

里程碑

4月25日-5月1日

项目启动、需求分析

5月4日-5月11日

系统的概要设计

5月-12日-5月17日

系统详细设计

5月17日-5月24日

编码实现

5月-24日-5月30日

测试、使用

(1)开发方

(2)开发方在人员上已经做好准备,为项目开发人员划分了具体任务,有具有项目管理经验的老师作为开发指导,组成了具有开发人员和测试人员的开发和测试明确分工的团队。

(3)在技术、资源方面,开发团队已经具备数据库、和基本开发工具(如VC)的相关知识,而且能够从指导老师那获取的全面技术指导和支持。

(4)

(5)2.3.6 法律道德分析

(6)该项目为独立开发,开发环境和开发工具是使用开源的免费合法的工具,在法律方面不会存在侵犯专利权、侵犯版权等问题。

(7)

(8)2.3.7 效益分析

(9)1.经济效益分析

(10)

(1)提高管理者的工作效率后,使得信息管理人员需求的减少,减少了额外的开支。

(11)

(2)提高信息管理的便捷性,降低信息管理的要求。

(12)2.社会效益分析

(13) 

(1)节省了管理者的时间,降低了劳动输出量。

(14) 

(2)提高了学校信息化程度的形象。

2.4可行性分析结果

通过分析,在学生信息管理中,使用计算机的网络技术,通讯技术和信息管理技术,使学生的信息得以加工,依次传达及保存。

系统要对使用要求不相同的用户群体设置不同的功能。

从必要性、技术、资源、时间、社会法律等几角度的分析,学生信息管理系统项目是可行的,是可以设计的。

《学生信息管理系统详细设计》

第三章需求分析

3.1编写目的

为学生管理系统的开发提供可行性分析的结论,为项目是否正式立项、启动提供依据,为项目启动后的需求分析、设计、开发、测试等工作提供基础依据。

该系统的编写目的是提高学生成绩管理的工作效率,使人们从乏味的数据登记和统计工作中解脱出来,保证工作的准确率,为老师及同学提供充足的信息和快捷的查询手段。

数据库作为计算机应用的一部分,对学生成绩查询进行管理具有手工管理无法比拟的优点,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长等。

这些优点能够极大地提高学生成绩查询和管理的效率。

学生管理系统在提高学生成信息处理的效率的同时,又能为广大师生提供及时准备的学生信息。

可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理。

同时,可以减少劳动力的使用,加快查询速度以及国家各部门关于信息化的步伐,使各项管理更加规范化,提高了传统教师的工作任务量。

学生管理系统的功能主要分为:

前台管理和后台管理两大功能。

3.2系统功能

学生管理系统的功能主要分为:

前台管理和后台管理两大功能。

3.2.1总目标

●实现学生信息进入系统的自动化,提高学生信息统计的实时性,减轻人工劳动强度从而节省人力成本。

●实现学生信息查询的实时性,规避信息孤岛。

●提高学生信息的畅通度,为学生以及教师提供方便。

3.2.2具体目标

1)前台管理系统必须具备以下功能:

●信息的录入:

根据学校的特点制定相关功能,可以通过唯一的学号将学生信息录入,该功能可以充分保证各种电脑操作层次的人员均能通过学生管理系统快速的录入该学生,并为后续的功能提供技术上的支持。

●信息的删除:

根据学校的相关条律,将辍学或者劝退的学生的信息从学生管理系统中删除,该功能可以充分保证各种电脑操作层次的人员操作,同时也是达到系统空间的充分利用。

●信息的修改:

根据学生在校期间的表现,有些许挂科,重修的科目,都会实时性的进行更新,该功能必须充分保证各个电脑操作层次的人员都能进行操作,达到学生信息更改的迅速的效率。

●信息的查询:

在学生需要知道自己的信息时,可以通过学生管理系统,进行查询。

如:

成绩,课程表,报名等等。

2)后台管理系统必须具备以下功能:

●人员管理:

教师,学生,游客,管理员等基本信息的登记管理。

该功能将不同阶级的人分层,以便更好的管理,达到管理的高效率。

●权限管理:

各个人员的权限是不同的,教师可以登记学生成绩,学生可以浏览自己的信息或者修改一些基本信息,游客只能浏览信息,管理员可以修改各个信息。

该功能充分保证了信息的安全性。

3.2.3性能目标

●系统的操作人员需要进行一定的培养,不可盲目的修改,导致学生信息混乱。

●系统的运行的可靠性要求较高,必须保证信息不可轻易丢失,损害学生个人利益。

●系统必须可进行实时性处理,其效率比人工处理效率要高出70%。

系统总体结构

信息录入:

信息录入系统能够准确的录入各种信息。

(1)关系图

(2)状态转换图

信息删除:

信息删除系统能够删除不再在学校的学生及教师信息。

(1)关系图

(2)状态转换图

信息修改:

信息修改系统能够根据学生的活动修改学生信息。

(1)关系图

(2)状态转换图

信息查询:

学生信息查询系统能够准确的查询某个学生的学生信息。

(1)关系图

(2)状态转换图

成员信息及权限管理:

用户进入POS系统界面,输入ID号码,检测是管理员,学生还是教师。

如果是管理员,则有增加、删除、修改、查询信息的功能;如果是学生,则有查询学生成绩、修改基本信息的功能;如果是教师,则有登记授课学生情况,查询学生成绩,修改教师信息的功能。

(1)关系图

(2)状态转换图

《学生信息管理系统详细设计》

第四章总体设计

4.1总体设计的目的

本系统采用面向对象方法进行分析和设计,在SQLServer2005数据库上实现数据操作。

使用纯面向对象的JAVA语言作为开发语言,使用Windows7作为开发平台,能够很好的实现系统的开发及测试。

通过这个阶段的设计将划分出组成《学生信息管理系统》的物理元素——程序、文件、数据库、人工过程和文档等,但是在这个过程中每个物理元素仍然处于黑盒子级。

同时还要在这个阶段设计软件的结构,也就是要确定系统中有那些模块组成,以及模块之间的关系。

4.2总体设计的内容

(1)设计并选取合适的实现《学生信息管理系统》的方法

(2)设计高效率的软件结构

(3)设计必要的数据库

(4)书写文档

(5)制定测试计划

4.3设计过程

(1)选取合理的方案

在SQL2005的基础上先建立一个学生数据库,然后用c++程序设计语言嵌套SQL语言设计一个合理的软件程序实现对学生数据库的管理。

最后要对操作界面进行优化,以及软件的操作流程和软件结构进行优化。

在后期我们还要配备专业的人士为此系统进行长期的管理和维护。

(2)推荐最佳的方案

省略

(3)功能分解

学生信息管理系统”主要分为登录、权限管理、学生信息管理、教师信息管理、课程信息管理、账户管理等6个模块。

系统主模块功能树如图所示:

系统概述图(第一层)

权限管理(管理员)模块学生信息管理模块

教师信息管理模块课程信息管理模块

账户管理模块课程信息更新模块

学生信息更新模块教师信息更新模块

(4)设计软件结构

(5)设计数据库

概念结构设计就是E-R方法的分析与设计,概念结构设计是整个数据库设计的关键。

在此,将使用实体—联系(E-R)模型来描述系统的概念结构,同时设计出能够满足用户需求的的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。

这也实体包括各种具体的实际信息,通过相互之间的作用形成数据的流动。

本程序根据上面的设计规划出的实体有:

学籍实体、班级实体、年级实体、课程实体与成绩实体,学生信息管理系统数据库E-R模型,如下图所示:

(5.1)数据库和数据表的建立

学生信息表

表名称标识:

Student表

数据来源:

新生信息录入模块进行录入

教师信息表

表名称标示:

teacher表

教师信息录入

课程信息表

表名标示:

course表

课程信息录入

学生课程信息表

表名称标识:

Student—course表

学生成绩录入表

教师-课程信息表

表名称标示:

teacher-course表

教师和所授课程信息

(6)审查和复查

省略

4.4总体设计的结果

通过本阶段的设计,得到一个较为合理的软件结构。

模块化分的合适,同时本结构有清晰的层次结构,各个层次的人士都能理解本软件的结构。

各个模块有较好的独立性,软件由一组完成相对独立的子功能的模块组成,这些模块之间接口的关系较为简单。

我们运用了自顶向下逐步求精方法。

同时我们运用在数据库设计方面的知识,对我们需要的数据库进行了设计。

设计步骤:

(1)概念设计

(2)逻辑设计(3)物理设计(4)数据库实施。

我们得到一个初步的学生信息关系系统的数据库。

《学生信息管理系统详细设计》

第五章详细设计

5.1详细设计的目标

详细设计阶段的根本目标是确定应该怎样具体地实现所要求的《学生信息管理系统》,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。

详细设计不是具体的编写程序,而是要设计出程序的“蓝图”,以后程序员将要根据这个“蓝图”写出实际的程序代码。

总体设计是面向数据流的设计方法,根据数据流确定软件结构的方法。

为了使其系统结构更加明确,采用详细设计来更加具体的达到目的,即面向数据结构的设计方法,根据数据结构设计程序处理过程的方法。

详细设计的目标不仅仅是逻辑上正确的地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能的简明易懂。

详细设计的最总结果将影响程序代码的质量。

结构程序设计技术是实现上述目标的关键技术,因此是详细设计的逻辑基础。

5.2详细设计的内容

(1)设计并选取合适的实现《学生信息管理系统》的详细设计方法

(2)详细设中运用到的工具

(3)详细设中运用到的设计方法

5.3设计过程

1:

过程设计方法

(1)结构程序设计:

尽可能少的使用GOTO语句,最好仅在检测出错时才使用GoTO语句,一般采用顺序结构,选择结构,循环结构的一种程序设计方法。

其中《学生信息管理系统》的设计也采用这三种最基本的结构。

(2)人机界面设计:

作为接口设计的一个重要组成部分,是一个迭代的过程,通常先创建设计模型,再用原型实现这个设计模型,并由用户试用和评估,

然后根据用户意见进行修改。

人机界面的设计质量直接影响到用户对软件产品的评价,从而影响软件产品的竞争力和寿命,必须对人机界面设计给予足够重视。

对于《学生信息管理系统》也要注意人机界面设计的过程。

2:

过程设计工具

描述程序处理过程的工具。

(1)程序流程图:

使用最广泛的描述过程设计方法。

优点:

对控制流程的描绘很直观,便于初学者掌握。

 

学生信息管理系统程序流程图

缺点:

(a)程序流程图本质上不是逐步求精的好工具,它诱使程序员过早的考虑程序的控制流程,而不去考虑程序的全局结构。

(b)程序流程图中用箭头代表控制流,因此程序员不受任何拘束,可以完全不顾结构程序设计的精神,随意转移控制。

(c)程序流程图不易表示数据结构。

5.4设计结果

通过本阶段的设计,利用程序流程图将学生信息管理系统的过程明确的表示出来,为下一步编程提供了一个明确的模版。

《学生信息管理系统详细设计》

第六章编码实现

6.1编码实现的目的

编码是将软件设计结果翻译成用某种程序设计语言书写的程序,是对设计的进一步具体化。

编码为计算机中的数据与实际处理的信息之间建立联系,提高信息处理的效率。

编码风格是指编程遵循的基本原则。

良好的编码风格有利于弥补语言的缺陷,编写出高质量的软件。

包括程序内部的文档、数据说明、语句构造、输入/输出、效率等方面的问题。

 选择一种编程语言的理论标准:

(这里选择Java)

   1)有理想的模块化机制;

   2)可读性好的控制结构和数据结构;

   3)便于调试和提高软件可靠性;

   4)编译程序发现程序错误的能力强;

   5)有良好的独立编译机制。

6.2编码的工具

使用java编写程序,Eclipse

6.3编码过程

根据详细设计中的程序流程图分模块编写程序,然后再组装起来。

编码过程中涉及到的类:

SimpleStudentManager主函数类

DLFrame登陆界面类

ManagerFrane管理员界面类

StudentFrame学生界面类

SM学生信息管理的类

SAdd用于学生信息管理中增加或修改某条记录的界面的类

SSelect用于学生基本信息管理中查询时输入学号的界面的类

(1)登录界面模块:

学生信息管理系统可由管理员和学生两种身份的人使用。

管理员和学生身份登录所能操作的功能有很大的区别。

mportjavax.swing.*;

importjava.awt.*;

importjava.sql.*;

classDLFrameextendsJFrameimplementsActionListener,ItemListener{//登录界面

JPanelp1=null;

JPanelp2=null;

JPanelp3=null;

JLabeluserName=newJLabel("用户:

");

JTextFieldtxtUser=newJTextField();

JLabelpassword=newJLabel("密码:

");

JPasswordFieldtxtPwd=newJPasswordField(6);

JLabelrole=newJLabel("角色:

");

JComboBoxcbrole=newJComboBox();

JButtonbtnLogin=newJButton("登录");

JButtonbtncz=newJButton("重置");

JButtonbtnCancel=newJButton("取消");

JLabelimageLabel;

Iconimage;

staticintOK=1;

staticintCANCEL=0;

intactionCode=0;

Connectioncon=null;

Statementstmt=null;

ResultSetrs=null;

intqxian=0;

publicDLFrame(){//构造方法

super("登录界面");

p1=newJPanel();

p2=newJPanel();

p3=newJPanel();

cbrole.addItem("管理员");

cbrole.addItem("学生");

image=newImageIcon("picture\\st.jpg");

imageLabel=newJLabel(image);

p1.add(imageLabel);

this.setLayout(newFlowLayout());

this.setBounds(100,100,246,345);

p2.setLayout(newGridLayout(4,2));

p2.add(userName);

p2.add(txtUser);

p2.add(password);

p2.add(txtPwd);

p2.add(role);

p2.add(cbrole);

p3.add(btnLogin);

p3.add(btncz);

p3.add(btnCancel);

this.add(p1);

this.add(p2);

this.add(p3);

this.setResizable(false);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.show();

btnLogin.addActionListener(this);

cbrole.addItemListener(this);

btncz.addActionListener(this);

btnCancel.addActionListener(this);

}

publicvoidconnDB(){//连接数据库

try{

}catch(ClassNotFoundExceptione){

e.printStackTrace();

}

try{

con=DriverManager.getConnection(

"sa","123");

stmt=con.createStatement();

}catch(SQLExceptione){

e.printStackTrace();

}

}

publicvoidcloseDB()//关闭连接

{

try{

stmt.close();

con.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

publicvoiditemStateChanged(ItemEvente){

if(e.getStateChange()==ItemEvent.SELECTED){

JComboBoxjcb=(JComboBox)e.getSource();

qxian=jcb.getSelectedIndex();

}

}

publicvoidactionPerformed(ActionEvente){

Objectsource=e.getSource();

Stringun=null;

Stringpw=null;

booleansuccess=false;//用于判断是否登录成功

if(source==btnLogin){

if(txtUser.getText().equals("")||txtPwd.getText().equals("

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1