软件工程设计报告

软件工程课程设计报告

课 题: 学生学籍管理系统 专业班级: 电子商务(技术方向)1班 小组成员: 叶忠妮 / 杨鸿淇 学 号: [1**********] / [1**********] 指导教师:

目录

一.引言................................................................................................................... 1

(一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2

1.调查对象 ................................................................................................ 3

2.调查方法 ................................................................................................ 3

二.关于书籍购买渠道的概述 ................................................................................... 6

(一)参与调查中广东各高校在校学生选择书籍购买渠道的情况........................ 1 (二)各在校学生对于渠道选择的原因 .............................................................. 2 (三)对于目前书籍购买渠道处在的不足和建议 ................................................ 2 三、书籍购买渠道的调查结果及其分析 ....................................................................11

(一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2 (一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2 (一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2 四、相关建议和措施 ............................................................................................... 18

(一)从网上书店的发展来看 ............................................................................ 1 (二)从传统书店的应对方式来看 ..................................................................... 2 (三)综合两者的情况来看................................................................................ 1

一.学生学籍管理系统可行性分析报告

1.引言

信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,学籍管理系统软件将会为教学办公室带来了极大的方便。

1.1编写目的

可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解

经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。明确开发风险及其所带来的经济效益。本报告经审核后,交软件经理审查。

1.2项目背景

开发软件名称:学生学籍管理系统

项目与其他软件,系统的关系:本项目采用客户机/服务器原理,客户端的程序是建立在Windows NT 系统上以Microsoft Visual C++为开发软件的应用程序,服务器端采用Linux 为操作系统的工作站,是采用Oracle 8的为开发软件的数据库服务程序。

1.3定义

学生信息管理系统: 学生信息管理是帮助教学人员、行政人员对人事档 案的管理软件。使用汉语编程语言,独立完成其功能。

1.4参考资料

《软件工程导论》,张海藩、倪宁 人民邮电出版社。 《实用软件工程》,郑人杰等,清华大学出版社。

2.任务概述

2.1要求

主要功能:为学生提供学籍管理服务,方便学生对其基本信息和成绩的查询,加强学校对学生基本信息的管理。

性能要求:学籍管理系统提供的信息必须准确的反应在相应的查询平台上。学籍系统的定单必须无差错的存储在机场的主服务器上。对服务器上的数据必须进行及时正确的刷新。

输出要求:数据完整,详实。 输出要求:简捷,快速,实时。

安全与保密要求:服务器的管理员享有对学生基本信息库及机票信息库和成绩信息库的管理与修改。管理员只享有对订票信息库的部分修改(写入与读出)。 完成期限:预计六个月,即截止2021年12月25日。

2.2目标

高校学生学籍管理系统以计算机为工具,通过对教学管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。软件开发的意图为便于学校的管理,方便查看有关学校及学生的情况。如教务处对学生成绩的修改、删除、查找、添加等。

2.3运行环境

操作系统:Windows 2000 ,Windows XP,Windows 2003,Windows Vista 支持环境:Microsoft Visual Studio 2005 数 据 库:Microsoft SQL Server 2000

2.4条件与限制

1.建议开发软件运行的最短寿命为3年 2.进行系统方案选择比较的期限为2个月 3.本系统无法律和政策方面的限制;

4.用Visual studio作前端的应用开发工具 ,利用SQL sever作为 后台的数据 库,充分利用了Visual studio和SQL sever的优点,利用WINDOWS_XP

作为系统平台;

5.建议开发软件投入使用的最迟时间为3

个月。

3.技术可行性分析

3.1系统简要描述

在学校系统中的终端是安装了Windows NT的PC机,主要目的是向请求查询的服务器传递数据。当终端向服务器发出查询请求时,服务器根据学生信息库的实时数据,向终端发送数据,显示在终端的屏幕上。 3.2处理流程和数据流程

4.系统分析

这章主要讲的是学生成绩管理系统的逻辑分析,系统分析在整个系统中具有重要作用为系统的设计打下基础。

4.1背景分析

学院在教学这一部分主要是由教务处对课程、对学生、对学生成绩进行合理地安排,以期让教务处中最短的时间内把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生、学生成绩进行各种查询。

4.2组织机构分析

学生信息管理组织机构主要是由:学生管理,成绩管理,等组成。图2-1为组织机构图。

图2-1组织机构图 职责:

学生管理:管理一些学生的资料,具体是学生的学号、姓名、班级、专业, 所学科目,。

成绩管理:管理学生的成绩录入、删除、排序、查询、检索等。

4.4业务流程分析

主要的业务是:学生的资料的输入,学生综合资料的查询、修改、删除、统计等造作的实现,然后是将结果可以显示出来。业务流程图如图2-4

图2-4

4.5数据流程的分析

数据流程图是描述系统逻辑模型的主要工具,通过几个特定的符号,可以综合 反映出信息在系统中的使用、加工处理、传递、存储的整体情况。

数据流程图是系统结构化分析行之有效的工具,它抽象地描述了系统数据处理的情况,担却无法表达各个处理的详细内容,因此还要对数据流程图中出现的数据流和处理等做进一步的补充说明,这就是数据字典和变换逻辑说明。 数据字典的任务就是对数据流程图中的出现的所有被命名的图形元素在数据字典中作为一个条目加以定义,便得每一个图形元素的名字都有一个确切的解释。

数字是对数据流程图的补充说明,它的编制和维护是一项非常繁重的工作,一旦建立起来,从系统分析直至系统运行都用到它。

由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。流程图如下图2-5

学生成绩管理系统0层数据流程图

4.6数据存储分析

数据模型设计。首先来做出学生成绩管理系统的E-R图,分析这个问题的实体,从系统分析可以知道,学生的成绩是由任课教师按照课程给出的,学生、课程、教师组成了这个系统的三个实体。

再分析三个实体之间的联系。首先,这三个实体不是一个统一体,学生成绩与教师没有内在联系,教师必须通过课程实体才能与学生建立联系,因而先不考虑。课程与学生这两个实体是多对多联系;一位学生要学习多门课程,一门课程有多位学生共同学习。而学习成绩是这两个实体“学生”和“成绩”共有的属性,应填在二者的联系“学习”边。因为成绩既不是学生独有的,也不是课程独

有的;“学生甲70分”或“英语70分”是不完全的,说“学生甲英语70分”才是正确的,因为70分是学生甲和英语课二者共有的。这个E-R图可画成下图。

二.学生学籍管理系统需求分析

1.学生学籍管理系统的功能要求

学生学籍管理系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的学生学籍管理,为同学的的查询提供准确、精细、迅速的基本信息。

1.1信息录入功能

在这个功能里包括学生基本信息,班级课程信息,学生学期成绩单及成绩单表格和班级名单的录入。

1.2浏览功能

浏览功能包括浏览学生成绩,浏览班级课程,浏览课程名称和专业信息。

1.3查询功能

查询功能包括按班级和学号查询成绩,按班级查询课程设置。

另外,我们为了保证个人信息不外泄,在进入本系统之前我们必须输入下确的密码。这样可以防止非法用户越权操作损害数据库而造成损失。

2学生学籍管理系统的性能需求

2.1数据精确度

查询时应保证查全率,通过唯一的关键可以查询到记录,例如学号。

2.2时间特性

一般操作的响应时间应在2-3秒内,对软磁盘和打印机的操作也要在这个时间段完成。

2.3适应性

可以处理大量数据

3.学生学籍管理系统的数据需求

学生学籍管理系统的数据需求包括如下几点:

3.1数据录入和处理的准确性和实时性

数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。

3.2数据的一致性与完整性

由于系统的数据是共享的,在不同的终端中,信息是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。

对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据。

3.3数据的共享与独立性

整个学籍查询系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。这样,也能提供系统的强壮性。

4.学生学籍管理系统的数据字典

系统中的数据元素:

5.学生学籍管理系统的逻辑模型

学生学籍管理系统的逻辑模型如下图所示:

6.学生学籍管理系统的运行要求

学生学籍管理系统中的各个子系统的硬件和软件的配置如下:

6.1服务器端子系统的运行要求:

系统软件: Window NT Server 数据库管理系统:SQL Server

硬件要求:Pentium III 450以上, 258M RAM, 14G HD

6.2客户端子系统的运行要求:

系统软件: Window NT Workstation 数据库管理系统:SQL Server

硬件要求:Pentium 133以上, 32M RAM, 4.3G HD

三、总体设计说明书

1.概要设计

1.1数据流的设计

系统方案确定。通过对系统的调研与分析,系统主要应完成的功能如下:学生信息的录入、修改、删除,成绩的查询、排序、统计等功能。

本系统在执行时,先根据操作人员的基本需要来进行相应的模块,然后可以输入数据或者进行其它的查询或浏览等操作;总体来说,本系统属于一个事务型管理系统。所以其数据流图应该是事物型的。其数据处理流程图如下3.1.

图3.1.1

1.2系统物理结构设计

根据系统业务要求的分析,数据关系的分析以及数据流程的分析可以设计出此事务型系统的结构。

本系统内所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取

单位、存取的物理关系(设备、存储区域)。此系统的结构层次图如下3.1.2 图3.1.2

1.3系统维护设计

由于系统较小没有外加维护模块,因为维护工作比较简单,仅靠一些基本维护措施即可。但为便于维护,应该设计了三种日志:系统运行日志、操作日志、出错日志。三种日志根据不同的重要程度采取存放在文件和数据库的方式,系统管理员可以很轻松地监控系统运行情况。

2.代码设计

2.1学生模块的设计

此模块主要是用来学生查询自己的信息,首先调用shjk类中的lijie方法,实现数据库的链接和相关功能(查找、获取记录)。

2.2老师模块的设计

此模块的设计思路和学生的是一致的,首先调用shjk类中的lijie方法。但是和学生模块不同时的是登陆身份不同所以执行的功能也不同,这个模块可以进行(添加、删除、修改、获取记录)。

2.3登陆界面模块的设计

根据的系统的要求要做出友好界面,首先设置窗体formborderstyle属性为None,然后插入窗体的背景图片。

3.详细设计

详细设计说明书是对系统架构进行详细直观描述,从而完成详细设计,作为软件实现的基础。

在概要设计中已经对系统进行了基本划分,而每个基本模块又可划分成多个小模块,下面对各模块中的一些基本功能函数进行分析和设计。

3.1添加学生信息模块设计

程序描述

添加新学生信息。 功能

添加新学生的信息,包括姓名、学号等信息。

输入项

姓名char 学号char

班级char 专业char

3.2查询学生信息模块设计

程序描述

对学生信息做查询操作。 功能

根据输入的学生查询条件查询并显示相应学生的信息,并且可以对其进行查

询操作。 输人项

班级:字符串型 专业:字符型 学号:字符型 输出项

合法:显示出查询学生的信息页面 非法:重新查询

3.3修改,删除学生信息模块设计

程序描述

对学生信息做修改删除操作。 功能

根据输入的学生条件对其进行修改,删除操作。 输人项

学号:字符型 输出项

合法:显示出查询学生的信息页面 非法:显示没有

4.数据库设计

4.1逻辑结构设计

经过对学生成绩管理的分析,本系统中的实体类型有:学生、教师、成绩、班级。

(1)班级和学生之间存在联系“拥有”,它是一对多。 (2)学生和成绩之间存在联系“记录”,它是一对多。 (3)老师和学生之间存在联系“管理”,它是一对多。

4.2物理结构

本系统采用的为SQL server2000数据库命名StuMaySys,里面有若干个表,其表名称对照见下表:

2.1表的详细物理结构 1.Student

2.Student_course

3.Course

4.Class

5. 运行控制

运行控制将严格按照各模块间函数调用关系来实现。在各事务中心模块中,需对运行控制进行正确的判断,选择正确的运行控制路径。

在网络传方面,客户机在发送数据后,将等待服务器的确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认。服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认。

6.运行时间

在软体的需求分析中,对运行时间的要求为必须对作出的操作有较快的反应。网络硬件对运行时间有最大的影响,当网络负载量大时,对操作反应将受到很大的影响。所以将采用高速ATM 网络,实现客户机与服务器之间的连接,以减少网络传输上的开销。其次是服务器的性能,这将影响对数据库访问时间即操作时间的长短,影响加大客户机操作的等待时间,所以必须使用高性能的服务器,建议使用 Pentium III 处理器。硬件对本系统的速度影响将会大于软件的影响。

7.出错处理设计

7.1 出错输出信息

程序在运行时主要会出现两种错误:1、由于输入信息,或无法满足要求时产生的错误,称为软错误。2、由于其他问题,如网络传输超时等,产生的问题,称为硬错误。

对于软错误,须在定票/领票操作成功判断及输入数据验证模块由数据进行数据分析,判断错误类型,再生成相应的错误提示语句,送到输出模块中。

对与硬错误,可在出错的相应模块中输出简单的出错语句,并将程序重置。返回输入阶段。

出错信息必须给出相应的出错原因,例: 《全部班机座位已满!》 《查无此定位信息!》等。

7.2出错处理对策

所有的客户机及服务器都必须安装不间断电源以防止停电或电压不稳造成的数据丢失的损失。若真断电时,客户机上将不会有太大的影响,主要是服务器上:在断电后恢复过程可采用 SQL SERVER 的日志文件,对其进行ROLLBACK 处理,对数据进行恢复。

在网络传输方面,可考虑建立一条成本较低的后备网络,以保证当主网络断路时数据的通信。

在硬件方面要选择较可靠、稳定的服务器机种,保证系统运行时的可靠性。

8.安全保密设计

由于数据的传输上需要通过网络传输,为了客户资料进行保密,需要在网络的传输过程中对数据进行加密。

这个工作主要是在准备网络包,及解开网络包这两个模块完成,它们各对数据进行加密及解密还原工作。

在加密算法选择上将使用RSA 加密算法。具体算法可参照参考资料中《Computer Network》p.598。

9.维护设计

维护方面主要为对服务器上的数据库数据进行维护。可使用 SQL SERVER 的数据库维护功能机制。例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性等。

四、测试分析报告

1.系统测试说明

1.1系统相关内容测试

1.1.1信息录入的测试

信息录入包括班级名单录入,学生基本情况录入,学生注册登记录入。 (1)班级名单录入窗口的测试

该测试的目的是保证添加班级信息窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过在添加班级窗口中输入空的班级号,已存在的班级号,来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。

(2)学生基本情况录入窗口的测试

该测试的目的是保证添加学生信息窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过在添加记录框中输入重复的学生名,空用学生名等来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。

1.2数据查询窗口的测试

该测试的目的是保证数据查询窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过在查询成绩信息的查询方式窗口中输入空的班级编号,空的学期,来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。

1.3系统执行测试

1.3.1信息录入的测试结果

(1)班级名单录入窗口的测试

在班级输入表单中如果没有填写班级编号,系统应该出现班级编号不能为空的提示,但是在系统测试中出现即便不输入班级编号系统仍能执行命令操作的错误,因此对系统进行修改,加入语句:

IF EMPTY(THISFORM.班级编号1.VALUE)

=MESSAGEBOX("班级编号不能为空,请重新输入!",48+0+0,"警告")

THISFORM.班级编号1.SETFOCUS。

这样系统就可以按照预期的设计弹出错误提示对话框。

当输入的班级编号已经存有记录时,系统会提示已有次记录,请重新输入班级编号。

图4-1出错提示窗口2

(2)学生基本情况录入窗口的测试

在输入界面中如果没有输入身份证号码,会提示身份证号不能为空,请重新输入。当输入的身份证号码位数不足是系统也会出现相应的错误提示:身份证号不足位,请重新输入。通过测试即便身份证号位数不足系统也没有出现错误提示,因此加入语句:

IF LEN(ALLTRIM(THISFORM.身份证号1.VALUE))

=MESSAGEBOX("身份证号不足位,请重新输入!",48+0+0,"警告") THISFORM.身份证号1.SETFOCUS

这样系统才能正常运行。

图4-2出错提示窗口3

1.3.2数据查询窗口的测试

在学生考试成绩查询窗口中,如果没有输入相应的班级编号,系统会提示:请输入班级编号。没有输入学期,系统会提示:请输入学期。通过测试,系统,没能给出错误提示加入语句:

MESSAGEBOX("请输入班级编号!",48+0+0,"信息窗口")

系统在没有输入班级编号的情况下才会给出错误提示。

图4-4出错提示窗口9

以上所有的模块测试过程都要求系统能在用户输入出错时给出正确并不影响到数据的安全与完整性的提示。通过测试系统基本达到设计要求,系统功能完整,用户界面良好,错误处理基本正确。

但是在测试中也发现系统的一些不足与缺陷,通过加语句使系统基本上运行正常。

总的来说,软件通过测试,基本上达到需求分析阶段所提出的要求。

五、总结性报告

通过两星期的课程设计实习,我们从中受益匪浅,并且对软件这一门课程有了更深一步的认识。我们把这学期所学的理论知识和实践联系起来,在所开发的项目中渐渐成长。虽然我们对这些新的知识运用得还不是很熟练,但是相信我们也在滴水穿石地成长起来。发现问题,提出问题,解决问题,使我们从不足之处出发,寻找新的学习方向。将其中调用的那些我看不懂的函数一一查清楚,逐渐弄懂它的设计思路,思考它有哪些不足,有哪些地方还须要改进,有什么更好的方法、更简单的方法去实行。

这次学习使我克服了偷懒的毛病,这在我以后的学习和工作中的心理定位与调节有很大的帮助。我感受到了做系统是一项非常烦琐周密的学习活动,它不但需要一个人周密的思考问题的能力,处理问题的能力,还需要有足够的耐心和严谨治学的作风,来不得半点马虎。在实习中,我们设计了一组对学生学籍进行管理的系统,它基本满足了界面友好,易于操作的要求,因此更利于用户操作方便,运行简易,从而达到对学生学籍更加有效系统的管理,并且速度更快内容更直接地达到用户所想要的效果。在该软件中我们实现了对学生信息的输入和存取、读取,对学生相关信息的删除和插入,并且可以按学号查询学生的相关信息,以及按平均分的高低对学生成绩进行排序等的功能。但软件中仍然存在一些不足,例如在输入有关学生的数据时名字没有限定,插入新的学生信息的程序还有待完善,删除后没有把新的学生信息列表进行保存,菜单不美观等。

学好计算机要重视实践操作,不仅仅是学习数据结构,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以在以后的学习过程中,我会更加注视实践操作。我们一边实习一边探索,发现理论和实践要充分地结合,是需要扎实的基本功的,这就表明学好基础知识是理论付诸实践的前提。在实习中我们学到了很多,希望在以后我们能充分利用实习的机会充实自己,并希望这样的机会能被更好更多地提供。

参考文献:

[1] 刘振安、刘燕君、孙忱.C++语言课程设计-北京:机械工业出版社,2007.1

[2] 陈维兴,林小茶.C++面向对象程序设计教程-北京:清华大学出版社,2004.8

[3] 网站:www.baidu.com

[4]王珊,萨师煊. 数据库系统概论(第四版) [M]. 北京:高等教育出版社, 2008. 120-125

[5] 萨师煊. 数据库系统和系统分析 [J]. 计算机工程与设计, 1984, 16(2): 18-20

[6] 韩朝军,梁冰,刘莹. SQL Server管理与开发技术大全 [M].北京:人民邮电出版社, 2007.

170-172

[7] 萨师煊. 数据库的理论与实践 [J]. 计算机科学, 1983, 17(3): 36-39

[8]杨湖,李凤蕾,王斌. SQL Server 2005 数据库系统开发案例精选 [M].北京:人民邮电

出版社,2007.91-139

[9]钱雪忠.数据库原理及应用(第二版)[M]. 北京:北京邮电大学出版社,2007.67-110

软件工程课程设计报告

课 题: 学生学籍管理系统 专业班级: 电子商务(技术方向)1班 小组成员: 叶忠妮 / 杨鸿淇 学 号: [1**********] / [1**********] 指导教师:

目录

一.引言................................................................................................................... 1

(一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2

1.调查对象 ................................................................................................ 3

2.调查方法 ................................................................................................ 3

二.关于书籍购买渠道的概述 ................................................................................... 6

(一)参与调查中广东各高校在校学生选择书籍购买渠道的情况........................ 1 (二)各在校学生对于渠道选择的原因 .............................................................. 2 (三)对于目前书籍购买渠道处在的不足和建议 ................................................ 2 三、书籍购买渠道的调查结果及其分析 ....................................................................11

(一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2 (一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2 (一)调查背景 ................................................................................................. 1 (二)调查内容 ................................................................................................. 2 四、相关建议和措施 ............................................................................................... 18

(一)从网上书店的发展来看 ............................................................................ 1 (二)从传统书店的应对方式来看 ..................................................................... 2 (三)综合两者的情况来看................................................................................ 1

一.学生学籍管理系统可行性分析报告

1.引言

信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,学籍管理系统软件将会为教学办公室带来了极大的方便。

1.1编写目的

可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解

经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。明确开发风险及其所带来的经济效益。本报告经审核后,交软件经理审查。

1.2项目背景

开发软件名称:学生学籍管理系统

项目与其他软件,系统的关系:本项目采用客户机/服务器原理,客户端的程序是建立在Windows NT 系统上以Microsoft Visual C++为开发软件的应用程序,服务器端采用Linux 为操作系统的工作站,是采用Oracle 8的为开发软件的数据库服务程序。

1.3定义

学生信息管理系统: 学生信息管理是帮助教学人员、行政人员对人事档 案的管理软件。使用汉语编程语言,独立完成其功能。

1.4参考资料

《软件工程导论》,张海藩、倪宁 人民邮电出版社。 《实用软件工程》,郑人杰等,清华大学出版社。

2.任务概述

2.1要求

主要功能:为学生提供学籍管理服务,方便学生对其基本信息和成绩的查询,加强学校对学生基本信息的管理。

性能要求:学籍管理系统提供的信息必须准确的反应在相应的查询平台上。学籍系统的定单必须无差错的存储在机场的主服务器上。对服务器上的数据必须进行及时正确的刷新。

输出要求:数据完整,详实。 输出要求:简捷,快速,实时。

安全与保密要求:服务器的管理员享有对学生基本信息库及机票信息库和成绩信息库的管理与修改。管理员只享有对订票信息库的部分修改(写入与读出)。 完成期限:预计六个月,即截止2021年12月25日。

2.2目标

高校学生学籍管理系统以计算机为工具,通过对教学管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。软件开发的意图为便于学校的管理,方便查看有关学校及学生的情况。如教务处对学生成绩的修改、删除、查找、添加等。

2.3运行环境

操作系统:Windows 2000 ,Windows XP,Windows 2003,Windows Vista 支持环境:Microsoft Visual Studio 2005 数 据 库:Microsoft SQL Server 2000

2.4条件与限制

1.建议开发软件运行的最短寿命为3年 2.进行系统方案选择比较的期限为2个月 3.本系统无法律和政策方面的限制;

4.用Visual studio作前端的应用开发工具 ,利用SQL sever作为 后台的数据 库,充分利用了Visual studio和SQL sever的优点,利用WINDOWS_XP

作为系统平台;

5.建议开发软件投入使用的最迟时间为3

个月。

3.技术可行性分析

3.1系统简要描述

在学校系统中的终端是安装了Windows NT的PC机,主要目的是向请求查询的服务器传递数据。当终端向服务器发出查询请求时,服务器根据学生信息库的实时数据,向终端发送数据,显示在终端的屏幕上。 3.2处理流程和数据流程

4.系统分析

这章主要讲的是学生成绩管理系统的逻辑分析,系统分析在整个系统中具有重要作用为系统的设计打下基础。

4.1背景分析

学院在教学这一部分主要是由教务处对课程、对学生、对学生成绩进行合理地安排,以期让教务处中最短的时间内把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生、学生成绩进行各种查询。

4.2组织机构分析

学生信息管理组织机构主要是由:学生管理,成绩管理,等组成。图2-1为组织机构图。

图2-1组织机构图 职责:

学生管理:管理一些学生的资料,具体是学生的学号、姓名、班级、专业, 所学科目,。

成绩管理:管理学生的成绩录入、删除、排序、查询、检索等。

4.4业务流程分析

主要的业务是:学生的资料的输入,学生综合资料的查询、修改、删除、统计等造作的实现,然后是将结果可以显示出来。业务流程图如图2-4

图2-4

4.5数据流程的分析

数据流程图是描述系统逻辑模型的主要工具,通过几个特定的符号,可以综合 反映出信息在系统中的使用、加工处理、传递、存储的整体情况。

数据流程图是系统结构化分析行之有效的工具,它抽象地描述了系统数据处理的情况,担却无法表达各个处理的详细内容,因此还要对数据流程图中出现的数据流和处理等做进一步的补充说明,这就是数据字典和变换逻辑说明。 数据字典的任务就是对数据流程图中的出现的所有被命名的图形元素在数据字典中作为一个条目加以定义,便得每一个图形元素的名字都有一个确切的解释。

数字是对数据流程图的补充说明,它的编制和维护是一项非常繁重的工作,一旦建立起来,从系统分析直至系统运行都用到它。

由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。流程图如下图2-5

学生成绩管理系统0层数据流程图

4.6数据存储分析

数据模型设计。首先来做出学生成绩管理系统的E-R图,分析这个问题的实体,从系统分析可以知道,学生的成绩是由任课教师按照课程给出的,学生、课程、教师组成了这个系统的三个实体。

再分析三个实体之间的联系。首先,这三个实体不是一个统一体,学生成绩与教师没有内在联系,教师必须通过课程实体才能与学生建立联系,因而先不考虑。课程与学生这两个实体是多对多联系;一位学生要学习多门课程,一门课程有多位学生共同学习。而学习成绩是这两个实体“学生”和“成绩”共有的属性,应填在二者的联系“学习”边。因为成绩既不是学生独有的,也不是课程独

有的;“学生甲70分”或“英语70分”是不完全的,说“学生甲英语70分”才是正确的,因为70分是学生甲和英语课二者共有的。这个E-R图可画成下图。

二.学生学籍管理系统需求分析

1.学生学籍管理系统的功能要求

学生学籍管理系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的学生学籍管理,为同学的的查询提供准确、精细、迅速的基本信息。

1.1信息录入功能

在这个功能里包括学生基本信息,班级课程信息,学生学期成绩单及成绩单表格和班级名单的录入。

1.2浏览功能

浏览功能包括浏览学生成绩,浏览班级课程,浏览课程名称和专业信息。

1.3查询功能

查询功能包括按班级和学号查询成绩,按班级查询课程设置。

另外,我们为了保证个人信息不外泄,在进入本系统之前我们必须输入下确的密码。这样可以防止非法用户越权操作损害数据库而造成损失。

2学生学籍管理系统的性能需求

2.1数据精确度

查询时应保证查全率,通过唯一的关键可以查询到记录,例如学号。

2.2时间特性

一般操作的响应时间应在2-3秒内,对软磁盘和打印机的操作也要在这个时间段完成。

2.3适应性

可以处理大量数据

3.学生学籍管理系统的数据需求

学生学籍管理系统的数据需求包括如下几点:

3.1数据录入和处理的准确性和实时性

数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。

3.2数据的一致性与完整性

由于系统的数据是共享的,在不同的终端中,信息是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。

对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据。

3.3数据的共享与独立性

整个学籍查询系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。这样,也能提供系统的强壮性。

4.学生学籍管理系统的数据字典

系统中的数据元素:

5.学生学籍管理系统的逻辑模型

学生学籍管理系统的逻辑模型如下图所示:

6.学生学籍管理系统的运行要求

学生学籍管理系统中的各个子系统的硬件和软件的配置如下:

6.1服务器端子系统的运行要求:

系统软件: Window NT Server 数据库管理系统:SQL Server

硬件要求:Pentium III 450以上, 258M RAM, 14G HD

6.2客户端子系统的运行要求:

系统软件: Window NT Workstation 数据库管理系统:SQL Server

硬件要求:Pentium 133以上, 32M RAM, 4.3G HD

三、总体设计说明书

1.概要设计

1.1数据流的设计

系统方案确定。通过对系统的调研与分析,系统主要应完成的功能如下:学生信息的录入、修改、删除,成绩的查询、排序、统计等功能。

本系统在执行时,先根据操作人员的基本需要来进行相应的模块,然后可以输入数据或者进行其它的查询或浏览等操作;总体来说,本系统属于一个事务型管理系统。所以其数据流图应该是事物型的。其数据处理流程图如下3.1.

图3.1.1

1.2系统物理结构设计

根据系统业务要求的分析,数据关系的分析以及数据流程的分析可以设计出此事务型系统的结构。

本系统内所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取

单位、存取的物理关系(设备、存储区域)。此系统的结构层次图如下3.1.2 图3.1.2

1.3系统维护设计

由于系统较小没有外加维护模块,因为维护工作比较简单,仅靠一些基本维护措施即可。但为便于维护,应该设计了三种日志:系统运行日志、操作日志、出错日志。三种日志根据不同的重要程度采取存放在文件和数据库的方式,系统管理员可以很轻松地监控系统运行情况。

2.代码设计

2.1学生模块的设计

此模块主要是用来学生查询自己的信息,首先调用shjk类中的lijie方法,实现数据库的链接和相关功能(查找、获取记录)。

2.2老师模块的设计

此模块的设计思路和学生的是一致的,首先调用shjk类中的lijie方法。但是和学生模块不同时的是登陆身份不同所以执行的功能也不同,这个模块可以进行(添加、删除、修改、获取记录)。

2.3登陆界面模块的设计

根据的系统的要求要做出友好界面,首先设置窗体formborderstyle属性为None,然后插入窗体的背景图片。

3.详细设计

详细设计说明书是对系统架构进行详细直观描述,从而完成详细设计,作为软件实现的基础。

在概要设计中已经对系统进行了基本划分,而每个基本模块又可划分成多个小模块,下面对各模块中的一些基本功能函数进行分析和设计。

3.1添加学生信息模块设计

程序描述

添加新学生信息。 功能

添加新学生的信息,包括姓名、学号等信息。

输入项

姓名char 学号char

班级char 专业char

3.2查询学生信息模块设计

程序描述

对学生信息做查询操作。 功能

根据输入的学生查询条件查询并显示相应学生的信息,并且可以对其进行查

询操作。 输人项

班级:字符串型 专业:字符型 学号:字符型 输出项

合法:显示出查询学生的信息页面 非法:重新查询

3.3修改,删除学生信息模块设计

程序描述

对学生信息做修改删除操作。 功能

根据输入的学生条件对其进行修改,删除操作。 输人项

学号:字符型 输出项

合法:显示出查询学生的信息页面 非法:显示没有

4.数据库设计

4.1逻辑结构设计

经过对学生成绩管理的分析,本系统中的实体类型有:学生、教师、成绩、班级。

(1)班级和学生之间存在联系“拥有”,它是一对多。 (2)学生和成绩之间存在联系“记录”,它是一对多。 (3)老师和学生之间存在联系“管理”,它是一对多。

4.2物理结构

本系统采用的为SQL server2000数据库命名StuMaySys,里面有若干个表,其表名称对照见下表:

2.1表的详细物理结构 1.Student

2.Student_course

3.Course

4.Class

5. 运行控制

运行控制将严格按照各模块间函数调用关系来实现。在各事务中心模块中,需对运行控制进行正确的判断,选择正确的运行控制路径。

在网络传方面,客户机在发送数据后,将等待服务器的确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认。服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认。

6.运行时间

在软体的需求分析中,对运行时间的要求为必须对作出的操作有较快的反应。网络硬件对运行时间有最大的影响,当网络负载量大时,对操作反应将受到很大的影响。所以将采用高速ATM 网络,实现客户机与服务器之间的连接,以减少网络传输上的开销。其次是服务器的性能,这将影响对数据库访问时间即操作时间的长短,影响加大客户机操作的等待时间,所以必须使用高性能的服务器,建议使用 Pentium III 处理器。硬件对本系统的速度影响将会大于软件的影响。

7.出错处理设计

7.1 出错输出信息

程序在运行时主要会出现两种错误:1、由于输入信息,或无法满足要求时产生的错误,称为软错误。2、由于其他问题,如网络传输超时等,产生的问题,称为硬错误。

对于软错误,须在定票/领票操作成功判断及输入数据验证模块由数据进行数据分析,判断错误类型,再生成相应的错误提示语句,送到输出模块中。

对与硬错误,可在出错的相应模块中输出简单的出错语句,并将程序重置。返回输入阶段。

出错信息必须给出相应的出错原因,例: 《全部班机座位已满!》 《查无此定位信息!》等。

7.2出错处理对策

所有的客户机及服务器都必须安装不间断电源以防止停电或电压不稳造成的数据丢失的损失。若真断电时,客户机上将不会有太大的影响,主要是服务器上:在断电后恢复过程可采用 SQL SERVER 的日志文件,对其进行ROLLBACK 处理,对数据进行恢复。

在网络传输方面,可考虑建立一条成本较低的后备网络,以保证当主网络断路时数据的通信。

在硬件方面要选择较可靠、稳定的服务器机种,保证系统运行时的可靠性。

8.安全保密设计

由于数据的传输上需要通过网络传输,为了客户资料进行保密,需要在网络的传输过程中对数据进行加密。

这个工作主要是在准备网络包,及解开网络包这两个模块完成,它们各对数据进行加密及解密还原工作。

在加密算法选择上将使用RSA 加密算法。具体算法可参照参考资料中《Computer Network》p.598。

9.维护设计

维护方面主要为对服务器上的数据库数据进行维护。可使用 SQL SERVER 的数据库维护功能机制。例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性等。

四、测试分析报告

1.系统测试说明

1.1系统相关内容测试

1.1.1信息录入的测试

信息录入包括班级名单录入,学生基本情况录入,学生注册登记录入。 (1)班级名单录入窗口的测试

该测试的目的是保证添加班级信息窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过在添加班级窗口中输入空的班级号,已存在的班级号,来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。

(2)学生基本情况录入窗口的测试

该测试的目的是保证添加学生信息窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过在添加记录框中输入重复的学生名,空用学生名等来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。

1.2数据查询窗口的测试

该测试的目的是保证数据查询窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过在查询成绩信息的查询方式窗口中输入空的班级编号,空的学期,来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。

1.3系统执行测试

1.3.1信息录入的测试结果

(1)班级名单录入窗口的测试

在班级输入表单中如果没有填写班级编号,系统应该出现班级编号不能为空的提示,但是在系统测试中出现即便不输入班级编号系统仍能执行命令操作的错误,因此对系统进行修改,加入语句:

IF EMPTY(THISFORM.班级编号1.VALUE)

=MESSAGEBOX("班级编号不能为空,请重新输入!",48+0+0,"警告")

THISFORM.班级编号1.SETFOCUS。

这样系统就可以按照预期的设计弹出错误提示对话框。

当输入的班级编号已经存有记录时,系统会提示已有次记录,请重新输入班级编号。

图4-1出错提示窗口2

(2)学生基本情况录入窗口的测试

在输入界面中如果没有输入身份证号码,会提示身份证号不能为空,请重新输入。当输入的身份证号码位数不足是系统也会出现相应的错误提示:身份证号不足位,请重新输入。通过测试即便身份证号位数不足系统也没有出现错误提示,因此加入语句:

IF LEN(ALLTRIM(THISFORM.身份证号1.VALUE))

=MESSAGEBOX("身份证号不足位,请重新输入!",48+0+0,"警告") THISFORM.身份证号1.SETFOCUS

这样系统才能正常运行。

图4-2出错提示窗口3

1.3.2数据查询窗口的测试

在学生考试成绩查询窗口中,如果没有输入相应的班级编号,系统会提示:请输入班级编号。没有输入学期,系统会提示:请输入学期。通过测试,系统,没能给出错误提示加入语句:

MESSAGEBOX("请输入班级编号!",48+0+0,"信息窗口")

系统在没有输入班级编号的情况下才会给出错误提示。

图4-4出错提示窗口9

以上所有的模块测试过程都要求系统能在用户输入出错时给出正确并不影响到数据的安全与完整性的提示。通过测试系统基本达到设计要求,系统功能完整,用户界面良好,错误处理基本正确。

但是在测试中也发现系统的一些不足与缺陷,通过加语句使系统基本上运行正常。

总的来说,软件通过测试,基本上达到需求分析阶段所提出的要求。

五、总结性报告

通过两星期的课程设计实习,我们从中受益匪浅,并且对软件这一门课程有了更深一步的认识。我们把这学期所学的理论知识和实践联系起来,在所开发的项目中渐渐成长。虽然我们对这些新的知识运用得还不是很熟练,但是相信我们也在滴水穿石地成长起来。发现问题,提出问题,解决问题,使我们从不足之处出发,寻找新的学习方向。将其中调用的那些我看不懂的函数一一查清楚,逐渐弄懂它的设计思路,思考它有哪些不足,有哪些地方还须要改进,有什么更好的方法、更简单的方法去实行。

这次学习使我克服了偷懒的毛病,这在我以后的学习和工作中的心理定位与调节有很大的帮助。我感受到了做系统是一项非常烦琐周密的学习活动,它不但需要一个人周密的思考问题的能力,处理问题的能力,还需要有足够的耐心和严谨治学的作风,来不得半点马虎。在实习中,我们设计了一组对学生学籍进行管理的系统,它基本满足了界面友好,易于操作的要求,因此更利于用户操作方便,运行简易,从而达到对学生学籍更加有效系统的管理,并且速度更快内容更直接地达到用户所想要的效果。在该软件中我们实现了对学生信息的输入和存取、读取,对学生相关信息的删除和插入,并且可以按学号查询学生的相关信息,以及按平均分的高低对学生成绩进行排序等的功能。但软件中仍然存在一些不足,例如在输入有关学生的数据时名字没有限定,插入新的学生信息的程序还有待完善,删除后没有把新的学生信息列表进行保存,菜单不美观等。

学好计算机要重视实践操作,不仅仅是学习数据结构,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以在以后的学习过程中,我会更加注视实践操作。我们一边实习一边探索,发现理论和实践要充分地结合,是需要扎实的基本功的,这就表明学好基础知识是理论付诸实践的前提。在实习中我们学到了很多,希望在以后我们能充分利用实习的机会充实自己,并希望这样的机会能被更好更多地提供。

参考文献:

[1] 刘振安、刘燕君、孙忱.C++语言课程设计-北京:机械工业出版社,2007.1

[2] 陈维兴,林小茶.C++面向对象程序设计教程-北京:清华大学出版社,2004.8

[3] 网站:www.baidu.com

[4]王珊,萨师煊. 数据库系统概论(第四版) [M]. 北京:高等教育出版社, 2008. 120-125

[5] 萨师煊. 数据库系统和系统分析 [J]. 计算机工程与设计, 1984, 16(2): 18-20

[6] 韩朝军,梁冰,刘莹. SQL Server管理与开发技术大全 [M].北京:人民邮电出版社, 2007.

170-172

[7] 萨师煊. 数据库的理论与实践 [J]. 计算机科学, 1983, 17(3): 36-39

[8]杨湖,李凤蕾,王斌. SQL Server 2005 数据库系统开发案例精选 [M].北京:人民邮电

出版社,2007.91-139

[9]钱雪忠.数据库原理及应用(第二版)[M]. 北京:北京邮电大学出版社,2007.67-110


相关文章

  • 军品阶段文件
  • 军品阶段文件: 1. 立项阶段 a. 项目可行性报告: b. 研制任务书初稿: c. 项目团队成员任命文件. 2. 方案阶段 a. 产品用户需求分析: b. 软件需求规格说明: c. 产品基线分析报告: d. 关键物料选型论证报告: e. ...查看


  • 某公司跨部门客户需求管理制度(三版)
  • 跨部门客户需求管理规范 □总 则 第一条:目的 为保证公司医保软件部的医保客户提出的需求能够及时.准确的得到医药软件部解决,并能提前发现异常.迅速处理改善,借以确保及提高客户满意度及市场需要,特制定此规范. 第二条:范围 客户包括: (一) ...查看


  • 软件项目开发工作流程
  • 软件项目开发工作流程 一.简述 对于一个新项目,从可行性研究到产品交货整个生存阶段将经历如下十大流程: 1.项目可行性研究阶段 2.立项阶段 3.需求分析阶段 4.开发策划阶段 5.设计阶段 6.编码实现阶段 7.测试阶段 8.验收阶段 9 ...查看


  • 软件开发项目可行性研究报告
  • 软件开发项目可行性研究报告 核心提示:软件开发项目投资环境分析,软件开发项目背景和发展概况,软件开发项目建设的必要性,软件开发行业竞争格局分析,软件开发行业财务指标分析参考,软件开发行业市场分析与建设规模,软件开发项目建设条件与选址方案,软 ...查看


  • 安全保护软件项目可行性研究报告
  • 安全保护软件项目可行性研究报告 核心提示:安全保护软件项目投资环境分析,安全保护软件项目背景和发展概况,安全保护软件项目建设的必要性,安全保护软件行业竞争格局分析,安全保护软件行业财务指标分析参考,安全保护软件行业市场分析与建设规模,安全保 ...查看


  • 网络维护软件项目可行性研究报告
  • 网络维护软件项目可行性研究报告 核心提示:网络维护软件项目投资环境分析,网络维护软件项目背景和发展概况,网络维护软件项目建设的必要性,网络维护软件行业竞争格局分析,网络维护软件行业财务指标分析参考,网络维护软件行业市场分析与建设规模,网络维 ...查看


  • 软件设计和开发控制程序
  • 公司软件设计和开发控制程序 1目的 对软件设计和开发全过程进行控制,确保产品设计和开发能满足顾客和有关标准.法令.法规的要求. 2范围 适用于软件产品设计和开发的全过程,包括软件产品的升级. 3职责 3.1软件研发部负责组织编制<项目 ...查看


  • 软件开发实施方案
  • 1 软件开发实施方案 系统开发严格按照软件工程的方法进行组织,系统的开发过程按照需求分析.系统分析与设计要求.系统编码.系统测试几个过程有序推进.下表所示系统开发流程图,采用原型及迭代方式开发,根据用户需求持续改进,直到最终用户确认满意. ...查看


  • 产品测试流程
  • 1目的 本流程旨在有效地规范产品测试过程,提高测试的有效性和文档管理质量,明确测试工作各阶段的任务.步骤.关键评审点和与开发流程的关系及接口,充分体现开发与测试的并行,缩短产品开发周期,降低产品开发成本,保证测试过程的规范性和继承性,快速. ...查看


  • 软件需求分析模板
  • 项目名称 (The English Name) 软件需求分析报告 XXX项目组 修订表 审批记录 目 录 1. 引言.............................................................. ...查看


热门内容