软件工程课程设计报告.doc_第1页
软件工程课程设计报告.doc_第2页
软件工程课程设计报告.doc_第3页
免费预览已结束,剩余17页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件工程课程设计报告 题 目: 学生信息管理系统 学 号:_姓 名:_指导教师: 计算机科学与应用系目 录第1章 学生信息管理系统可行性研究.31.1项目概述.31.2支持条件.31.3开发意义.31.4可行性分析.31.4.1经济可行性.31.4.2技术可行性.41.4.3运行可行性.4 1.5人员组织及分工.4第2章 学生信息管理系统需求分析说明书.42.1 任务概述.4 2.1.1 系统名称.4 2.1.2 系统主要功能.42.2 用户对系统的需求.52.2.1 功能需求.52.2.2 性能需求.52.2.3 接口需求.62.2.4 用户界面需求.62.3 系统的数据流图.62.4 系统的数据库分析.62.4.1 数据字典.62.4.2 数据分析.82.4.3 E-R图.8 2.4.4 运行可行性.9 第3章 学生信息管理系统概要设计说明书.93.1系统模块划分.93.2 系统层次结构图.10第4章 学生信息管理系统详细设计说明书.104.1 数据库设计.104.2 算法描述.11 4.3 模块划分.124.4 主要界面设计.14第5章 详细设计说明书.155.1 转化为关系数据模型.155.2 数据库表的结构.15第6章 测试.16 6.1 测试实例选择.16 6.2 性能分析.17第7章 总结与体会.17第一章 学生信息管理系统可行性研究1.1 项目概述:当今时代是一个信息化的时代,计算机更是被广泛的应用在各行各业,科研、教育、工作、生活,各方面都有计算机的踪迹。但是一直以来人们都是靠传统人工的方式管理学生信息,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来了不少的困难。随着计算机技术的日渐成熟,其强大的功能已为人们所接受并将广泛应用于各个领域.作为计算机应用的一部分,使用计算机对学生信息进行管理,是手工管理所无法比拟的。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成绩管理的效率,因此,开发这样的一套成绩管理系统是很有必要的。1.2 支持条件: 学生信息管理系统,是一个由人、计算机等组成的能进行信息的收集、储存、维护和使用的系统,主要提供学生基本信息查询与管理、学生成绩查询与管理、学生课程查询与管理。学生信息管理系统利用ACCESS或SQL数据库为后台,可以使用PowerBuilder9.0、VB、JAVA、VC+等高级语言来实现系统的编程。学生对全部信息只有查询权限,系统管理员拥有最高权限,利用本系统,可以快速、准确、方便地进行学生基本信息的查询、添加、修改、删除和浏览,节约大量的人力和物力资源;。1.3开发意义在各大中小学校,用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。提高了学校的管理能力,为学生提供优质的可视服务,家长也可以远程访问。为此,用计算机来管理学校的成绩信息,是非常必要的。1.4 可行性分析可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。1.4.1 经济可行性现在,计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开发,为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:第一,本系统的运行可以代替人工进行许多繁杂的劳动;第二,本系统的运行可以节省许多资源;第三,本系统的运行可以大大的提高学校的工作效率;第四,本系统可以使敏感文档更加安全。所以,本系统在经济上是可行的。1.4.2 技术可行性本系统的开发利用Microsoft SQL sever作为本系统的数据库,适用于大中规模的数据量需求,而且操作简单方便。学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。使用PowerBuilder9.0作为系统开发的开发环境,它提供完善的指令控制语句的支持及丰富的数据类型,更加界面化的操作,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。1.4.3 运行可行性本系统为一个小型的学生信息管理系统,所耗费的资源非常的小,学校的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。 1.5 人员组织及分工: 第2章 学生信息管理系统需求分析说明书2.1 任务概述2.1.1 系统名称 本系统为“学生信息管理系统”,分为高级用户和普通用户两级用户,高级用户享有包括浏览、查询、添加、修改和删除在内的所有权限,可以对学生信息进行管理。普通用户只有基本的浏览功能。在登录界面,如不选择用户类型,则默认为普通用户。2.1.2 系统主要功能学生信息管理系统,主要对学生的基本信息、课程信息和学生成绩进行查询和管理,系统主要功能如下:普通用户(学生),根据自己的姓名和学号进行登录后,只能够对自己的相关信息,如学生基本信息、课程信息和成绩进行查询,但不具有查询其他同学成绩的权限。高级用户(管理员或教师),登录的用户名为“hss”,密码为“1234”,高级用户登录后,可以拥有以下权限:(1)学生基本信息管理用来管理学生基本信息,包括浏览、查询、添加、修改和删除。学生基本信息包括:学号、姓名、性别、班级、系别和联系方式。(2)课程信息管理一门课程有一个上课班级,也可能有几个上课班级,因此课程信息里的授课教师是不确定的,所以把授课教师添加到了成绩信息中。课程信息管理包括:浏览、查询、添加、修改和删除。课程基本信息包括:系别、班级、科目、学分和教师。(3)成绩信息管理用来管理学生成绩,包括浏览、查询、添加、修改和删除。成绩基本信息包括:学号、姓名、班级、科目、成绩、系别、学分和教师。(4)权限管理学生信息管理系统,可以对于不同层次的使用者应该开放不同的权限。针对此项要求,该系统设计了两层使用权限:高级用户和普通用户,来使得学生信息的管理更加的方便和安全。使用者权限分类如下:高级用户(管理员或教师):维护、录入、修改学生基本信息,享有最高权限(包括浏览、查询、添加、修改和删除)。除此之外还拥有管理用户的权限普通用户(学生):可以查询自己的基本信息、课程信息和相关课程成绩,但只有查询的权限,不能对信息进行修改。 2.2 用户对系统的需求2.2.1 功能需求对于学生信息管理系统,应包括:系统登录与操作功能,满足对学生信息的查询、更改和删除以及保存。系统应包括四大模块:一.登录管理,二.系统管理,三.信息管理,四.信息查询。这四大模块是对学生信息的全面了解,可以满足教师和学生对学生信息管理系统的基本需求。管理功能系统具有动态的权限分配功能,可按用户权限对用户进行分组。可分为学生用户、教师用户、管理员用户。学生用户只是查询不能修改,老师用户只能对授权范围内进行相应修改及删除,管理员用户能修改、删除所有信息(除管理员管理)。2.2.2 性能需求(1)时间需求:每项操作的处理时间在2s之内;(2)可靠性:设置错误判断,错误跟踪,错误处理功能,使得程序错误减少;(3)易用性和可理解性:符合windows界面风格;2.2.3 接口需求硬件:服务器:CPU:P4 2.0G以上 内存:512M 硬盘:60G以上 客户机:CPU:500Mz 内存:128M以上 硬盘:1G以上2.2.4 用户界面需求用户界面:体现美观、简约、现代、友好易用等设计元素。 2.3 数据流图 学生信息管理系统的数据流图如图1.1所示用户信息用户登录系统高级用户信息普通用户信息浏览自己的基本信息教师学生信息处理系统管理普通用户的基本信息管理用户登录信息图1.1 系统的数据流图 退出系统分析模型:2.4 系统的数据库分析2.4.1 数据字典 普通用户:根据管理员提供的用户名和密码登录,浏览自己的信息,不可修改自己的信息。定义:普通用户=普通用户名+普通用户密码。高级用户:负责管理普通用户的用户名和密码,可以对普通用户的信息进行添加、修改、删除等操作。定义:高级用户=高级用户名+高级用户密码。学生基本信息:包含学生的一些基本信息,高级用户可以对这些信息进行一系列管理操作。定义:学生基本信息=学号+姓名+性别+系别+联系方式学生表课程基本信息:包含课程的一些基本信息,高级用户可以对这些信息进行一系列管理操作。定义:学生课程基本信息= 系别+班级+科目+学分+教师成绩基本信息:包含学生成绩的一些基本信息,高级用户可以对这些信息进行一系列管理操作。定义:成绩基本信息= 学号+姓名+班级+科目+成绩+系别+学分+教师表2.1 学生课程数据字典 名字:course描述:开设的课程定义:course=course_no+user_id+course+course_type_no+course_year+course_term_no+course_hour+credit+remarks主键:课程号别名:课程描述:唯一地标识课程表中开设的科目定义:课程号=char(10)位置:课程表、选修表 成绩表表2.2 班级数据字典 名字:class定义:class=class_no+class+subject_no+register_year+remarks主键:班级号别名:班级描述:唯一地标识班级表中的内容定义:班级号=char(10)位置:班级表、用户表表2.3 用户信息数据字典 名字:user_information描述:对用户信息的定义定义:user_information=user_id+user_password+type_no+name+nationality_no+sex_no+department_no+subject_no+class_no+register_year+birth_place+birthday+political_experier+remarks主键:帐号别名:用户描述:唯一地标识用户表中的用户定义:用户号=char(10)位置:用户表、选修表表2.4 选修数据字典 名字:major描述:所选的课程定义:major=user_id+course_no+score_orignal+score_reexam+remarks主键:帐号、课程号别名:选修描述:唯一地标识选修表中开设的科目定义:账号、课程号=char(10)位置:课程表、用户表 成绩表2.4.2 数据分析 学生信息管理系统主要用于学生信息管理,据分析学生信息管理系统的数据表可浓缩为:班级信息表、选修信息表、课程信息表和用户信息表。根据学校的情况,可按下面的步骤来分析:(1) 确定学生所在的院系、所学的专业以及所在的班级;(2) 确定学生所在班级的课程以及该课程学生的成绩,另外还需要知道学生所在班级、学号和学期;(3) 分析学生的基本信息,如姓名、性别、出生年月、籍贯、政治面貌;(4) 用户信息分析,通常包括用户名和密码。可以同过对以上各个表来查询所需数据,从而得到查询的学生信息。2.4.3 系统E-R图 学生信息管理系统中,主要涉及实体有三个:学生实体、课程实体和成绩实体,这三个实体之间存在以下关系。 学生实体与课程实体存在选课的联系,在学校中的每一个学生可以根据自己的兴趣爱好和学校的安排选修多门课程,而每门课程也可以被多个学生自由选修,所以它们之间存在多对多联系(m:n), 学生实体与成绩实体存在属于的关系,每个学生有唯一的成绩,每项成绩对应于一个学生,所以学生实体和成绩实体存在一对多联系(1:n),如图2.2所示(实体的部分属性省略):属于用户(教师)选修用户(学生)课程增删改授课增删改用户(教务处)专业增删改开设班级用户(管理员)权限设置权限设置权限设置1n1nn1mn11开设院系图1.2 学生实体、课程实体与成绩实体E-R图关系2.4.4 运行环境系统利用ACCESS或SQL数据库为后台,可以使用PowerBuilder9.0、VB、JAVA、VC+等高级语言来实现系统的编程。第3章 学生信息管理系统概要设计说明书3.1 系统模块划分本系统可划分为四个模块,分别为:(1)登录管理:对用户权限的验证,根据验证结果系统转向相应界面;(2)系统管理:包括用户管理、密码修改、系统的注销和退出;(3)信息管理:包括院系管理、专业管理、班级管理、课程管理、成绩 管理,它可以对相应信息进行增、删、改操作;(4) 信息查询:包括课程、成绩、专业等的查询。3.2 系统层次结构图学生信息管理系统学生登陆教师登录教务处登录管理员登录用户管理修改密码数据库备份成绩查询学籍查询课程查询院系管理课程管理成绩管理学籍管理班级管理登陆管理系统管理信息查询信息管理添加班级删除班级修改班级添加院系删除院系修改院系添加用户删除用户修改用户添加课程删除课程修改课程添加成绩删除成绩修改成绩添加学籍删除学籍修改学籍概要设计说明书:(、接口设计、运行设计、系统数据结构设计及出错处理等)第4章 学生信息管理系统详细设计4.1 数据库设计4.1.1 各个表结构系统数据库中主要包含以下4个表:(用户信息表)user_information:用于保存用户的账号,姓名,,密码,性别号,系号,民族号,籍贯,出生日期,入学年份,班级号,政治面貌号,职称号等信息;(课程表)course:用于保存课程号,课程名,授课教师工号,授课年份,授课学期,学分,课时等信息; (选修表)major:用于保存学生学号,课程号,成绩等字段;(班级表)class:用于班级号,系号,班级名,专业号等信息.表4.1 用户信息表列名数据类型长度允许空主键备注账号char10否是密码char10否用户类型号int4否姓名char10是性别号int4是系号int10是民族号int10是籍贯char10是出生日期char20是入学年份char10是班级号int10是政治面貌号int4是职称号int4是表4.2 课程表列名数据类型长度允许空主键备注课程号char10否是用户名char10否课程char20否授课教师工号int4否授课年份int4否授课学期int4否学分float8否课时int4否表4.3 选修表列名数据类型长度允许空主键备注用户名char10否是课程号char10否是成绩float8是列名数据类型长度允许空主键备注班级号char10否是系号char10否班级char10否注册年份char10否4.2 算法描述信息查询模块包括成绩查询(按班级查询、按所授科目查询、个人成绩查询),学籍查询(按院系查询、按专业查询、按班级查询、个人学籍查询),课程查询(按班级查询、按教师查询、个人课程查询),个人、教师信息查询。1、成绩查询:开始选择或输入学号、选修学年、选修学期学号是否为空?选修学年是否为空?选修学期是否为空?错误提示:学号为空错误提示:学号为空错误提示:学号为空查询数据库学号是否存在?错误提示:查询失败显示查询结果结束YYYYNNNN图4.1 信息查询模块成绩查询流程图2、个人信息查询:开始全局变量记录登陆用户账号登陆从数据库查询个人信息查询是否成功?显示个人信息错误提示:查询失败请注销系统结束YN图4.2 信息查询模块个人信息查询流程图4.3 模块划分学生信息管理系统的总体设计,按照模块进行划分,主要包括以下四个主要管理模块和一个系统模块设计:(1)权限管理模块 本模块主要实现对学生登录信息的处理,包括根据用户类型的不同,进入不同的用户界面和用户的管理。(2)学生信息管理模块本模块主要实现对学生基本信息的查询和管理,包括浏览、查询、添加、修改和删除等功能。 (3)学生课程模块本模块主要实现对学生课程信息的查询和管理,包括浏览、查询、添加、修改和删除等功能。 (4)学生成绩模块本模块主要实现对学生成绩信息的查询和管理,包括浏览、查询、添加、修改和删除等功能。数据管理模块如图3.1所示:数据管理模块查询数据添加数据修改数据删除数据浏览数据图4.3 数据管理模块学生信息管理系统模块如图4.4所示:学生信息管理系统退出系统成绩信息管理模块学生信息管理模块课程信息管理模块权限管理模块登录系统权限处理信息查询信息管理信息查询信息管理信息查询信息管理4.4 主界面设计(1)成绩查询:a、通过班级查询:选择班级,选择学年,选择学期,选择课程类型对成绩进行查询,提交后得到查询结果; b、通过所授科目进行查询:选择授课年份,授课学期,待查科目来进行成绩查询,提交后得结果; c、通过个人成绩查询:选择学年,学期来进行查询,得结果。(2)学籍查询:通过选择学号来进行查询,提交后得到结果。(3)课程查询:通过对班级,学年,学期的选择来进行课程的查询,提交后可得到所查结果。(4)个人信息查询:只要是用自己的账号登陆点击个人信息查询就可直接得到自己的信息。(5)教师信息查询:同个人信息查询。 学生信息管理系统,在界面的设计上遵循简洁、大方的原则,主要设计了包括登录界面、主界面、学生基本信息查询界面、学生基本信息管理界面、学生基本信息查询条件界面、课程信息查询界面、课程信息管理界面、课程查询条件界面、成绩信息查询界面、成绩信息管理界面和成绩查询条件界面在内的11个界面。登录界面设计为了维护系统的安全性,保证系统不被破坏,在登录系统之前,设置登陆界面,需要用户正确输入用户名和密码,才能进入系统进行操作,没有权限的人无法进行更改。其流程图如图4.5所示:用户名、密码是否正确开始主界面、开始使用提示检查退出程序是否是否图4.5 登陆界面流程图主界面设计:为了保证不同权限的使用者可以进入不同的界面,在主界面中可以加以区分。高级用户(管理员或教师)则可以使用所有选项按钮;而普通用户(学生)进入该界面以后,所有管理选项按钮均为不可用状态。第五章 详细设计说明书详细设计阶段的主要任务,是把E-R图转化为所选用DBMS产品支持的数据模型,画出程序流程图及伪代码的实现。由于该系统采用Access 2003数据库系统,因此,应将概念设计的E-R模型转化为关系数据模型。5.1 转化为关系数据模型学生实体和课程实体之间的联系是多对多的联系型(m:n), 学生实体和成绩实体存在一对多联系(1:n),所以可以用下面的关系模式来表示, 并设置主键(下划线为主键标记)。学生表(学号,姓名,性别,系别,联系方式)课程表(系别,班级,科目,学分,教师)成绩表(学号,姓名,班级,科目,成绩,系别,学分,教师)5.2 数据库表的结构得出数据表的各个关系模式后,需要给出是各数据表结构。考虑系统的兼容性及编写程序的方便性,可将关系模式的属性对应为表字段的英文名。以学生表为例,学生表设计如表4.1所示: 表4.1 学生表说明数据类型字段大小默认值必填字段允许空字符串主键学号文本10是否是姓名文本10否是否性别文本2男否是否班级文本2007计本3班否是否系别文本30计算机系否是否联系方式文本11否是否 通过以上几个表的建立,我设计的系统的表格基本上是全面了。根据实际情况,我在这些表里输入了一些07计本的有关信息,来配合我的数据库的正常运行。在输入数据严格按照数据库定义完整性和数据库应用的要求,保证我以后在调用库时不会出错。 第六章 系统测试与分析系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案。它的的任务是近可能彻底的检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统做得怎样?。这阶段又可分为三个步骤:模块测试,测试每个模块的程序是否有错误;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。该阶段结束应交付测试报告,说明测试数据的选择,测试用例以及测试结果是否符合预期结果。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正,是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。6.1 测试实例选择本系统是管理软件,主要是对数据库中数据的读取和存入进行测试。测试实例如下,(1)进行学生基本信息的查询、添加、删除、修改测试学号:081006101 姓名:张强 性别:男 班级:08计本2 系别:计算机系 联系方式果:测试成功(2)进行学生成绩的查询、添加、删除、修改测试学号:081006201 姓名: 班级:08计本2班 科目:软件工程成绩:78

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论