学生成绩信息管理系统概要设计等文档格式.docx

上传人:b****5 文档编号:19381486 上传时间:2023-01-05 格式:DOCX 页数:38 大小:577.31KB
下载 相关 举报
学生成绩信息管理系统概要设计等文档格式.docx_第1页
第1页 / 共38页
学生成绩信息管理系统概要设计等文档格式.docx_第2页
第2页 / 共38页
学生成绩信息管理系统概要设计等文档格式.docx_第3页
第3页 / 共38页
学生成绩信息管理系统概要设计等文档格式.docx_第4页
第4页 / 共38页
学生成绩信息管理系统概要设计等文档格式.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

学生成绩信息管理系统概要设计等文档格式.docx

《学生成绩信息管理系统概要设计等文档格式.docx》由会员分享,可在线阅读,更多相关《学生成绩信息管理系统概要设计等文档格式.docx(38页珍藏版)》请在冰豆网上搜索。

学生成绩信息管理系统概要设计等文档格式.docx

数据库建设是硬件、软件和干件的结合三分技术,七分管理,十二分基础数据技术与管理的界面称之为“干件”,数据库设计应该与应用系统设计相结合,结构(数据)设计:

设计数据库框架或数据库结构,行为(处理)设计:

设计应用程序、事务处理等结构和行为分离的设计

4.2.1概念结构设计

概念结构设计的任务是在需求分析阶段产生的需求说明书的基础上,按照特定的方法把它们抽象为一个不依赖于任何具体机器的数据模型,即概念模型。

概念模型使设计者的注意力能够从复杂的实现细节中解脱出来,而只集中在最重要的信息的组织结构和处理模式上

对用户要求描述的现实世界(可能是一个工厂、一个商场或者一个学校等),通过对其中诸处的分类、聚集和概括,建立抽象的概念数据模型。

这个概念模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系以及各部门对信息储存、查询和加工的要求等。

所建立的模型应避开数据库在计算机上的具体实现细节,用一种抽象的形式表示出来。

以扩充的实体联系模型方法为例,第一步先明确现实世界各部门所含的各种实体及其属性、实体间的联系以及对信息的制约条件等,从而给出各部门内所用信息的局部描述(在数据库中称为用户的局部视图)。

第二步再将前面得到的多个用户的局部视图集成为一个全局视图,即用户要描述的现实世界的概念数据模型。

设计概念结构通常有四种方法:

自顶向下、自底向上、逐步扩张和混合策略(即将自顶向下和自底向上相结合)。

本系统采用的是自底向上的方法,即自顶向下进行需求分析,然后再自底向上的设计概念结构。

数据库的概念设计如图4.6所示,其反映的是数据库表的关系,具体的表有课程计划表()表依赖于课程基本表()学生选课表()操作表()。

图4.6数据库关系图

4.6

4.2.2逻辑结构设计

1.可发布课程(编号,名称,状态,授课教师,课序号,学分,课程类别,说明)

主键:

编号

函数依赖{编号->

其他所有属性}

由函数依赖可知,依赖左端为候选码,所以采购项目属于

2.已发布课程(编号,名称,授课教师,课序号,学分,课程类别,开课单位,上课时间,上课地点,选课人数,说明)

由函数依赖可知,依赖左端为候选码,所以采购物资属于

3.删改课程操作(编号,操作课程,操作时间,操作教师,说明)

由函数依赖可知,依赖左端为候选码,所以投标表属于

4.学生选课信息表(学生编号,所选教师编号,院系编号,所选课程编号,学期)

联合主键:

学生编号,所选教师编号,院系编号,所选课程编号

函数依赖{(学生编号,所选教师编号,院系编号,所选课程编号)->

其他非主属性}

由函数依赖可知,不存在传递依赖,但是依赖左端不都为候选码,所以评标表满足第三范式。

 

4.2.3物理结构设计

为给定的逻辑数据模型选取一个最合适应用要求的物理结构的过程就是数据库的物理设计。

物理设计时要确定数据库的存储路径,数据规模等,在数据库管理系统中创建数据库,建立数据库的所有数据模式。

本系统数据库在设计过程中参考逻辑结构设计,充分考虑了数据表的划分及其之间的联系,在保障数据流向简明、查询效率较高的前提下,设计了如下数据库表结构:

1.可发布课程表()

表4.1可发布课程表

4.1

字段名

字段解释

类型

是否可空

课程编号(主键)

课程名称

(50)

概述

课程操作

考试

评论

课程发布

课程表

学生选课

说明:

这里的课程状态为课程是否被发布,课序号是对应一门课程来说的比如数据库这门课有很多老师在上这门课程的课程号都是一样的但是对应不同的老师和上课时间会给一个课序号。

2.发布课程表()

表4.2发布课程表

4.2

授课教师(主键)

单位

学分

课程类别

开课单位

上课时间

上课地点

选课人数

说明

这里的课程编号与授课老师是主键,授课单位为学院名称,相比课程表增加的上课时间根据课程安排的情况而定,在此注意的是不同的老师可能会教授同一门课程,因此在此处使用了课程编号与授课教师的联合主键。

3,删改课程操作()

表4.3投标表

4.3

操作编号(主键)

操作课程

操作时间

操作教师(主键)

()

这里的课程编号与授课老师是主键,与发布课程表一致,原理与其相同,主要是老师对发布的课程进行的删改操作。

4.学生选课信息表()

表4.4学生选课信息表

4.4

学生编号(主键)

所选教师编号(主键)

院系编号(主键)

所选课程编号(主键)

学期

该表是体现学生所选课程的信息,由于选课的人数众多,易混乱,因此采用的是多属性联合主键的形式。

第五章详细设计

详细设计是软件工程中软件开发的一个步骤,就是对概要设计的一个细化,就是详细设计每个模块实现算法,所需的局部结构。

在详细设计阶段,主要是通过需求分析的结果,设计出满足用户需求的嵌入式系统产品。

详细设计必须遵循概要设计来进行。

详细设计方案的更改,不得影响到概要设计方案;

如果需要更改概要设计,必须经过项目经理的同意。

详细设计,应该完成详细设计文档,主要是模块的详细设计方案说明。

和概要设计一样,每个模块的详细设计文档都应该独立成册。

5.1类图

类图():

类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。

类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。

类图一般在详细设计过程中出现,主要用来描述系统中各个模块中类之间的关系,包括类或者类与接口的继承关系,类之间的依赖、聚合等关系。

在画类图的时候,理清类和类之间的关系是重点。

类的关系有泛化()、实现()、依赖()和关联()。

其中关联又分为一般关联关系和聚合关系(),合成关系()。

它还描述每一个类的详细信息,包括变量,和方法。

在化类图之前,首先应对类有一定的了解,类一般包含3个组成部分。

第一个是类名;

第二个是属性();

第三个是该类提供的方法(类的性质可以放在第四部分;

如果类中含有内部类,则会出现第五个组成部分)。

类名部分是不能省略的,其他组成部分可以省略。

通过类图,就能实际的把系统中的各个类,即对象描述清楚,下一步就是按照这个详细的设计编码了。

1.系统整体类图

在画系统总体类图时,考虑到整体项目庞大,各类间的属性繁多,且相互间的关系比较复杂,因此将各类的属性省略。

图5.1系统总体类图

5.1

说明:

系统总体类图如上所示,其大体展示出了本项目各类之间的关系,之后的编码也会建立在此类关系之上。

2.学生子系统类图

画完系统总体类图后,便该完成子系统的类图,两个子系统的关系大体一致,在此仅画出学生子系统的类图,学生子系统下有四个表,由于表个数较少,此处将类图的属性及关系都画出来,已体现子系统的完整性。

图5.2选课子系统类图

5.2

上图是选课子系统的类图,在中根据表间的关系绘出,图中的四个表依次为课程、课程表、选课、学生选课,表内的属性如上图所示,在往后的编程中,实体类间的关系也由上图给出。

5.2时序图

时序图(),亦称为序列图或循序图或顺序图,是一种交互图。

它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。

它可以表示用例的行为顺序,当执行一个用例行为时,时序图中的每条消息对应了一个类操作或状态机中引起转换的触发事件。

1.课程查看

首先教师进入可发布课程界面,控制器会执行查询全部操作,从数据库中查出所有的可发布课程,然后将这些课程信息发送到网页上,教师便可观察到全部的课程信息。

图5.3课程信息查看时序图

5.3

2.可发布课程操作

首先教师进入可发布课程界面,可得到所有可选课程的信息,教师可对这些课程进行增、删、改操作,操作之后可将操作保存到数据库中。

图5.4可发布课程操作时序图

5.4

3.发布课程

首先教师进入可发布课程界面,可得到所有可选课程的信息,之后教师可以点击发布课程按钮,后台会根据该课程查询到该课程的信息,教师编辑好此课程所需的其他信息即可完成发布。

图5.5发布课程时序图

5.5

4.发布后的课程操作

首先教师进入可已发布课程界面,可得到所有已发布课程的信息,之后教师可以点击发布课程后的增、删、改按钮,亦可进行单独查询,后台会根据该课程及信息进行相应操作,教师编辑好此课程所需的其他信息即可完成操作。

图5.6发布后的课程时序图

5.6

第六章系统实现与代码编写

系统实现与代码编写阶段是将前边所有的逻辑设计转换成用户可操作的系统,这一阶段主要的任务是代码编写,从而产生物理文件。

这个阶段中将通过项目结构图,从软件架构的角度来描述一个系统的主要功能。

6.1项目结构

项目由三层架构开发而成,项目的组织结构图见图6.1至6.4,项目的详细组织结构表见表6.1

图6.1项目组织总结构图

.6.1

图6.2项目组织部分数据访问层结构图

.6.2

图6.3项目组织部分业务层

6.3

图6.4项目组织表示层结构图

.6.4

项目类文件结构:

表6.1项目组织结构表

6.1

分类

类名

描述

文件

(前台)

登录界面

失败界面

教师登录成功界面

所有课程界面

已发布课程界面

发布考试界面

考试信息界面

(后台)

操作业务层

评论业务层

选课业务层

课程业务层

考试业务层

学生业务层

教师业务层

文件(前台)

用户数据层

操作数据层

课程表数据层

评论数据层

学科数据层

课程数据层

文件(后台)

插入成绩数据层

考试数据层

学生数据层

学生选课层

老师数据层

业务逻辑层

课程控制器

考试控制器

选课控制器

学生控制器

教师控制器

测试控制器

6.2功能代码

本项目功能代码详见附录一

第七章测试

软件测试是软件项目的质量控制中最常用的手段之一,也是在软件开发过程中比较容易被忽略和执行得不怎么完善和彻底的工作。

7.1测试的目的

软件测试的目的是尽可能发现并改正被测试软件中的错误,提高软件的可靠性。

包括以下几个方面:

验证软件需求和功能是否得到完整实现。

测试首先必须用来验证软件的需求和功能是否得到完整实现。

其次是验证软件在正常和非正常情况下的功能和特性。

测试不仅要验证软件在正常情况下的功能和特性是否可以使用和达到期望值,更多的是验证在非正常情况下功能和特性能否达到期望的要求。

软件是否可以发布使用需要经过测试来验证,未经测试的软件是不能发布的。

即使是内部使用的软件也同样需要测试,软件的发布需要经过验收测试。

7.2测试的过程

在整个测试的过程中包含了单元测试,集成测试,确认测试,验收测试,验证测试和系统测试。

本系统的测试,主要是通过手动操作该系统,主要查看的是是否存在异常或操作的结果是否按照设计初衷来完成的,主要分竞价采购模块,询比价采购模块以及招标采购模块来测试。

7.2.1课程发布模块

1.测试界面

教师登录后的首界面即为所有考试信息界面,教师亦可点击上方菜单选择其他功能。

图7.1全部可发布课程的关键字查询

7.1

图7.2显示全部课程的分页效果

7.2

图7.3发布课程信息表

7.3

图7.4已发布课程信息表

7.4

图7.5修改删除已发布课程信息表

7.5

2.测试过程描述

首先教师登录进入课程发布下所有可发布课程界面,教师可以通过关键字查询需要发布的课程也可以在所有课程中选择需要发布的课程,点击发布按钮,填写完所需发布的课程信息后点击确定即完成发布,完成发布后的课程信息可在已发布课程的界面中查找到相关课程,并对自己发布过的信息进行修改、删除等操作。

7.2.2考试信息发布模块

教师可以对已发布的课程进行考试信息发布,其操作与课程发布模块大体一致,以下是考试信息发布测试界面。

图7.6发布考试界面

7.6

图7.7发布考试信息表

7.7

图7.8所有考试信息界面

7.8

图7.8修改考试信息表

图7.9删除考试信息操作界面

7.9

教师在发布完课程后,可对自己发布的课程进行操作,之后便可对其进行考试发布的操作,教师在发布考试信息时,需要录入考试的地点、状态等信息,之后点击确定按钮,便可进行发布操作,与发布课程的操作类似,之后教师亦可对考试的状态等数据进行修改或直接删除考试信息。

第八章总结

8.1心得结论

的出现对于学生选课乃至教务管理、教务系统的发展有重大的意义,它致力于创建一个通用的平台,以简单而有效的方式构建特定的分布服务与应用,使得开发者不需要过多的考虑如何解决计算机的技术问题,从而专注于如何实现与完善具有良好扩展性和简装性以及经济实用的应用。

在这次软件设计中,首先我们深入了解了学生选课系统的功能、逻辑结构等信息,明白了其全部的业务关系,锻炼了设计能力,并深入了解了框架的使用过程及功能,最重要的是进行了一次团队合作的经历,积累了实战经验。

作为一个软件系统,做的过程中我们不能只是单纯的做成单表的信息的增删查改,在画数据流图的过程中,我们应该在理解组织的业务流程的基础上,体现出“过程”,即所做的系统要符合实际应用的业务流程,要有所操作的记录的过程

其次,在数据库设计的过程中,每一个关系模式要最好满足第三范式,这样就能避免插入删除修改异常,减少数据冗余。

统的过程中,要以系统的观点去看待项目,每个人做的模块要留有一定的接口与其他人进行衔接,设计的软件功能要相互都考虑到且要全面。

其次作为本项目的组长,更要有一种全局的观念,统筹大局,对时间进度要有合理地控制,懂得协调人与人之间的矛盾,对整个项目的发展以及每一个模块所要达成

的目标有深刻认识。

由于能力有限,此学生系统实现了用户权限分治、操作分离;

数据库的插入、查询、更新、删除,但是还有很多的缺陷。

对于以后的发展,可以对以下几个方面进行改进;

提供数据库的日志管理和恢复。

8.2展望

我们经过对系统进行的需求分析、设计直到系统的最终实现,大体上可以满足学生选课平台的功能上的需要了,但是出于各种原因,系统还可以再做更进一步的优化:

1.在课程表的设计方面,模块间有些许冲突,在设计阶段我们没有考虑到它的实用问题,因此会给老师的发布造成不便,所以最后我们舍弃了这一功能,在接下来的优化中,我们会继续完善此功能。

2.在考试发布模块中,由于先前设计中把院系与课程作为了联合主键,忽略了同一院系不同老师教授同一课程的情况,也为系统留下了隐患。

3,本系统是基于进行开发的,前台使用获取后台数据的方式,完成了前后台解耦,优化了系统性能,增加了开发速度,提高了维护性,但没有控件概念,对没有封装。

所以可以尝试在之前的详细设计的基础上改用进行开发,这样可以在某些程度提高系统的性能。

参考文献

[1] 

冯燕奎, 

赵德奎. 

实用案例教程[M] 

清华大学出版社, 

2004 

[2] 

王家华 

软件工程[M] 

东北大学出版社2001年3月

[3] 

王宜贵 

北京:

机械工业出版社,2002

[4] 

孙卫琴 

精通[M]电子工业出版社 

2004年8月 

[5] 

2005年4月 

[6] 

张洪斌 

2高级程序设计[M]中科多媒体出版社 

2001年11月

[7] 

2.0 

[M]机械工业出版社 

2006年6月

[8] 

林信良 

2.0技术手册[M]电子工业出版社 

2006年6月 

[9] 

熊节、林仪明、张凯峰、陈玉泉等主编[《社区电子杂志——杂志》创刊号] 

[10]《程序员》杂志 

2007 

年第4期 

[11] 

耿祥义编著.基础编程[M].清华大学出版社,2004

[12]徐建波,周新莲.设计原理于编程技术[M].中南大学出版社,2005.

[13] 

孙鑫编著. 

开发详解[M].电子工业出版社,2006.

[14] 

林上杰,林康司编著.2.0技术手册[M].电子工业出版社,2004.

[15] 

萨师煊,王珊.数据库系统概论(第三版)[M].北京:

高等教育出版社,1998. 

[16] 

蔡剑,景楠 

应用开发:

J2和[M].北京:

清华大学出版社,2004.

[17王海涛,-贾宗璞.基于和的应用开发[J].计算机工程,2011 

[18鹏,殷旻昊.基于技术的科研管理系统设计[J].软件导刊,2009

[19瑜江,红黄永.基于的开发[J].计算机与数字工程,2009[4]李峰,刘彦隆. 

基于框架与技术的 

开发应用[J].科技情报开发与经济,2010

附录

1.实体类的代码

;

.*;

(="

"

{

<

>

(="

(){

}

(){

=;

(o){

(o);

(o()());

=()o;

(?

():

);

=?

0;

=31*+(?

0);

()

(<

){

}

2.实体类的代码

="

0选修,1必修

课时

学分

学期(1-8)

();

=31*+();

=

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

当前位置:首页 > PPT模板 > 卡通动漫

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

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