收藏 分享(赏)

作业管理系统-需求分析与数据库设计报告.doc

上传人:ddeeee 文档编号:16098871 上传时间:2023-09-15 格式:DOC 页数:21 大小:1.08MB
下载 相关 举报
作业管理系统-需求分析与数据库设计报告.doc_第1页
第1页 / 共21页
作业管理系统-需求分析与数据库设计报告.doc_第2页
第2页 / 共21页
作业管理系统-需求分析与数据库设计报告.doc_第3页
第3页 / 共21页
作业管理系统-需求分析与数据库设计报告.doc_第4页
第4页 / 共21页
作业管理系统-需求分析与数据库设计报告.doc_第5页
第5页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、需求分析与数据库设计报告一、 设计的目的与要求目的1. 学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,对数据库做进一步的了解,掌握相关知识;2. 进一步加强对数据库运用能力和熟练掌握数据库中的重要知识,了解如何从数据库中读写有关数据;3. 培养分析问题、解决问题的能力。要求1. 完成数据库系统的安装与设置。2. 根据具体的课题完成需求分析。3. 完成数据库应用系统的逻辑设计。4. 创建数据库、数据表。5. 完成设计报告。二、设计正文1.需求分析1.1 调查用户需求本系统的最终用户为系统管理员,全体老师学生。根据我们日常生活中的经验,结合对自己学校任课老师的咨询

2、和对北京各个高校学生的调查,得出用户的下列实际要求:1.1.1基本功能需求在学生的日常学习活动中,每个课程每节课都会有老师负责管理学生的作业收发。日常管理包含以下几方面的信息。 学生的基本信息入校时,每位同学都有唯一的学号,并被分配到指定的专业班级,也会有一个班号,其入校时间就是他的注册时间。另外,同一院系的学生的专业课程可能相同,不同专业的学生,部分专业课程不同。相应地会有其所在的院系名称,专业班级名称。 教师的基本信息在校教师在任教期间都有唯一的教工号,并被分配到指定的院系和指定的教研室,注册后拥有登陆作业管理系统的身份ID和密码,一个教师可以教多门课程,一个教师所教的一门课程可以对应多个

3、班级。 发布作业基本信息教师对其任教的课程具有发布作业的功能,教师对指定的课程发布相对应的作业,发布的作业具有作业索引号、作业名称、作业发布时间,以及教师对发布作业的预留信息等基本属性。 上交作业基本信息学生上交的每一份老师要求完成的作业都有一个作业名称,上交时候有一个时间,上交的作业唯一的内容,这份作业老师所给的分数,这个分数对应的等级,还有老师根据学生的各个方面的表现(书面,考勤的)给出的修正分。 课程的基本信息每门课程对应有自己的课程名和课程号,并属于唯一的一个院系。 班级基本信息每个班级都有唯一的班级号和班级名称,每个班级对应所属的院系。 院系基本信息每个院系都有唯一的院系号和院系名称

4、。1.1.2用户对系统的要求 系统管理员a.信息要求系统管理员能查询上面提到的所有相关信息,包括某一学号的学生的个人信息,某一名字的老师的个人信息,某一教师所教的课程信息,某一学生的班级,课程的基本信息,班级的基本信息。b.处理要求当学生基本信息发生变化时,系统管理员能对其进行修改。比如,某些同学的院系班级信息发生改变,他们在本院系和班级中相应的记录就应做相应改变;或者,同学退学后,该学生的所有记录应该删除等等。当老师或者学生的密码丢失时,管理员能够根据教工号或者学号给予找回。系统管理员能够对所有学生教师的信息进行合法的操作。c安全性与完整性要求安全性要求n 系统应设置访问用户的标识以鉴别是否

5、是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;n 系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;n 系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生,教师),管理员。完整性要求n 各种信息记录的完整性,关键信息记录内容不能为空;n 各种数据间相互的联系的正确性;n 相同的数据在不同记录中的一致性。 学生 a.信息要求学生能够查询当前所有老师给其下发的作业信息,能查询已交作业信息,能查询老师的基本联系信息,能查看评优区作业信息,能查询任课教师信息。b.处理要求学生可以修改自己上传未批改的作业,可以下载老师发布的作业附件信息,可以

6、在合法的时间内下载自己上交的作业,可以修改自己的某些个人信息,可以上传自己的作业。 教师a.信息要求教师能够查询相关课程信息,能够查询相关课程作业上交信息,能够查询学生个人信息,能够查询下发的作业信息,能够查询所教班级信息,可以按分数段查询班级作业成绩,可以查看班级(或课程)作业统计信息。b.处理要求教师可以修改自己的联系信息,可以插入相应课程作业的成绩,表示作业已经批改。教师可以发布作业信息,可以修改已经下发作业的信息,可以给予课程作业修正分,可以下载自己发布的作业附件信息,可以按需求格式批量下载班级(或课程)作业,可以下载班级(或课程)统计图表,可以批量批改作业,可以将学生作业放入评优区。

7、1.2 系统功能的设计和划分根据如上得到的用户需求,我们将本系统按照所完成的功能划分为以下几个功能模块:图1.2 系统功能模块划分图又分为以下两块管理部分:第一部分:用户管理部分第二部分:管理员管理部分各部分完成的功能如下:1.2.1用户管理部分学生n 处理用户登录。n 学生用户可以查询本学期任课教师信息。n 学生用户可以根据名字查询到教师信息。n 学生用户可以查询到自己班级的信息。n 学生可以查询自己的信息。n 学生用户可以查询到自己所学课程的信息。n 学生用户可以查询已经批改的作业信息。n 学生用户可以查询与修改待批改作业信息。n 学生用户可以查询到评优区当前评优的作品信息。n 学生用户可

8、以查询自己待完成的作业信息。n 学生用户可以修改自己的某些个人信息(密码等)。n 学生用户可以提交自己的作业。n 学生用户可以下载教师发布的作业信息。n 学生用户可以下载评优区的作业。教师n 处理用户注册。n 处理用户登录。n 教师用户可以查询自己的个人信息。n 教师用户可以查询当前所教授课程信息。n 教师用户可以查询所下发的作业信息。n 教师用户可以查询上交作业信息。n 教师用户可以查询所教学生的个人信息。n 教师用户可以查询未交作业的学生信息。n 教师用户可以查询所教班级信息。n 教师用户可以查询评优区信息。n 教师用户可以按分数段查询班级作业成绩。n 教师用户可以查看班级(或课程)作业统

9、计信息。n 教师用户可以修改自己的某些信息。n 教师用户可以发布作业任务。n 教师用户可以下载自己发布作业的附件。n 教师用户可以修改所下发的作业信息。n 教师用户可以修改课程作业的修正分。n 教师用户可以批改学生上交的作业。n 教师用户可以按需求格式批量下载班级(或课程)作业。n 教师用户可以下载班级(或课程)统计图表。n 教师用户可以批量批改作业。n 教师用户可以将学生作业放入评优区。n 教师用户可以提醒未交作业的学生。n 教师用户可以下载评优区的作业。1.2.2管理员管理部分n 处理管理员登录n 管理员可以查询、修改教师所教课程信息。n 管理员可以查询、修改班级与院系信息。n 管理员可以

10、删除、插入、修改与查询学生的个人信息。n 管理员可以删除、插入、修改与查询教师的个人信息。n 管理员可以查看学生和教师的登陆密码。n 管理员可以修改管理员密码。1.3 数据流图登陆数据流图图 1-3-1 登陆数据流图学生个人信息数据流图图 1-3-2 学生个人信息数据流图教师个人信息数据流图图 1-3-3 教师个人信息数据流图班级信息数据流图图 1-3-4 班级信息数据流图课程信息数据流图图 1-3-5 课程信息数据流图教师发布作业信息数据流图图 1-3-6 教师发布作业信息数据流图学生上交作业信息数据流图图 1-3-7 学生上交作业数据流图评优区作业信息数据流图图 1-3-8 评优区作业信息

11、数据流图院系信息数据流图图 1-3-9 院系信息数据流图班级课程信息数据流图图 1-3-10 班级课程信息数据流图1.4 数据字典 14.1数据项在校教师数据字典:属性名存储代码类型长度备注取值和含义教工号Idchar15在校教师教工号-姓名Namenchar20在校学生姓名10个字以内中文性别Sexnchar2在校教师性别“男”或“女”密码Passwordchar20教师登陆系统密码数字、字符、下划线的组合,区分大小写办公室Officenchar20教师办公室10字以内中文院系DeptIdint所在院系号整数联系电话Telchar11教师联系方式11位电话号码邮箱Emailchar40教师邮

12、箱邮箱标准格式宣言Declarationnchar100教师教学宣言50字以内中文在校学生数据字典:属性名存储代码类型长度备注取值含义学号Idchar15学生学号-姓名Namenchar20学生姓名10字以下中文性别Sexnchar2学生性别“男”或“女”密码Passwordchar20学生登陆系统密码同上表签名Signnchar100学生个性签名50字以下中文班级ClassIdint学生所在班级号-院系 DeptIdint学生所在院系号-联系电话Telchar11学生联系方式11位数字邮箱Emailchar40学生邮箱-学生作业数据字典:属性名存储代码类型长度备注取值含义课程号CourseI

13、dint学生上传作业课程号-学号StudentIdchar15学生学号-附件索引SEnclosureIndexchar5学生上传附件索引5为字符上传时间SubmitDatedate作业上传时间-成绩Gradefloat学生作业成绩-1-100间数字等级Levelint学生作业等级0-5间数字存储路径SEnclosurePathnchar100学生上传附件存储路径服务器存储路径名称Namenchar50附件名称25字以下中文修正分CorrectGradefloat学生作业修正分系统或老师给出对学生作业的主观评价分评语Remarknchar100教师对学生作业的评语50字以下中文是否作业完成IsO

14、verbit学生是否完成作业-教师发布作业数据字典:属性名存储代码类型长度备注取值含义教工号TeacherIdchar15教师教工号-课程号CourseIdInt教师所教某一课程号-附件索引TEnclosureIndexchar5教师发布作业索引-发布时间AssigenDatedate教师发布作业日期-截止日期Deadlinedate作业上交截止日期-名称Namenchar 50附件名称-存储路径TEnclosurePathchar100教师发布作业存储路径-备注Messagenchar1000教师对发布作业的备注500字以下中文专业班级数据字典:属性名存储代码类型长度备注取值含义班级号Idi

15、nt班级号-名称Namenchar30班级名称15字以下中文班主任HeadTeacherIdchar15班级班主任教工号-院系DeptIdint院系号-院系数据字典:属性名存储代码类型长度备注取值含义院系号Idint院系号-名称Namenchar30院系名称15字以下中文课程数据字典:属性名存储代码类型长度备注取值含义课程号Idint课程号-院系DeptIdint开课院系-名称Namenchar30课程名称15字内中文班级课程数据字典:属性名存储代码类型长度备注取值含义课程号CourseIdint课程号-班级号ClassIdint班级号-教工号TeacherIdchar15教工号-用户数据字典

16、:属性名存储代码类型长度备注取值含义用户IDIdchar15用户ID-用户密码Passwordchar20用户密码-用户类型Typetnyint 1普通用户或超级用户-评优区作业数据字典:属性名存储代码类型长度备注取值含义学号StudentIdchar15学生学号-附件索引SEnclosureIndexint5学生作业附件索引-课程号CourseIdint学生作业所属课程-1.4.2 数据结构数据结构名组成用户信息用户ID,用户密码,用户类型(普通用户,管理员)在校学生信息学号,姓名,性别,班级,密码,是否完成作业,个性签名,院系,联系电话,邮箱在校教师信息教工号,性别,姓名,密码,院系,办公

17、室,教学宣言,联系电话,邮箱学生作业信息作业号,课程号,学号,上传日期,存储路径,分数,等级,修正分,附件名称,评语教师发布作业信息教工号,课程号,发布时间,截止日期,作业号,备注信息,存储路径,附件名称专业班级信息班级号,院系号,班主任教工号院系信息院系号,院系名称班级课程信息班级号,课程号,教工号评优区作业信息作业号,学号,课程号课程信息课程号,开课院系号,课程名1.4.3 数据流数据流名数据流来源数据流去向组成教师下发作业信息教师教师发布作业表学生作业表教师下发作业信息查询教师下发作业信息教师下发作业信息学生教师教师下发作业信息学生上传作业信息学生学生作业表学生作业信息查询学生上传作业信

18、息学生作业表教师学生学生作业信息下载(统计)学生作业信息学生作业表学生个人信息表班级信息表课程信息表教师学生作业信息作业评优信息教师评优作业表学生作业信息查询(下载)评优作业信息评优作业表教师学生学生作业信息查询学生个人信息学生个人信息表教师学生管理员学生个人信息查询教师个人(联系)信息教师个人信息表教师学生管理员教师个人信息修改学生固有信息管理员学生个人信息表学生信息修改教师固有信息管理员教师个人信息表教师信息修改学生个人信息学生学生个人信息表学生个人信息修改教师个人信息教师教师个人信息表教师个人信息1.4.4数据存储数据存储名输入的数据流输出的数据流组成学生作业表教师发布作业信息学生上交作

19、业信息教师批改作业信息学生作业信息学生上交作业信息教师批改作业信息评优区作业表学生上传作业表教师选定评优区作业信息评优区作业信息教师发布作业表教师发布作业信息教师发布作业信息教师发布作业信息1.4.5 处理过程处理过程名输入数据流输出数据流学生上交作业学生上交作业信息学生上交作业信息教师批改作业作业成绩信息学生作业成绩信息查询学生作业信息学生作业信息学生作业信息教师发布作业教师发布作业信息教师发布作业信息查询教师发布作业信息教师发布作业信息教师发布作业信息学生作业评优学生作业信息学生作业信息查询个人信息学生、教师个人信息学生、教师个人信息评优区作业查询评优区作业信息评优区作业信息2.概念设计根

20、据需求分析说明书设计ER图,设计完成的ER图为:图 2-1 学生属性图 2-2 教师属性图 2-3 教师下发作业属性图 2-4 学生作业属性 图2-5 院系、班级、评优区作业属性 图 2-6 班级课程、课程属性图 2-7 系统E-R设计3.逻辑设计3.1 关系表设计将ER图转换为关系模式、要求设计出数据库所有关系表表3.1.1 在校学生(T_student)属性中文名称属性名类型长度完整性约束学号Idchar15主键姓名Namenchar20非空性别Sexnchar2值为“男”或“女”签名Signnchar100无班级ClassIdint 外键院系DeptIdint外键联系电话Telchar1

21、1无邮箱Emailchar40无密码Passwordchar20非空表3.1.2 在校教师(T_teacher)属性中文名称属性名类型长度完整性约束教工号Idchar15主键姓名Namenchar20非空性别Sexnchar2值为“男”或“女”宣言Declarationnchar100无办公室Officenchar20非空院系DeptIdint外键联系电话Telchar11无邮箱Emailchar40无密码Passwordchar20非空表3.1.3 学生作业(T_enclosureFS)属性中文名称属性名类型长度完整性约束课程号CourseIdint主键学号StudentIdchar15主键

22、附件索引SEnclosureIndexchar5主键上传时间SubmitDatedate无成绩Gradefloat值为-1100等级SLevelint值为05存储路径SEnclosurePathnchar100无名称Namenchar50非空是否完成作业IsOverbit值为0或1评语Remarknchar100无修正分CorrectGradefloat值为数字表3.1.4 教师发布作业(T_enclosureFT)属性中文名称属性名类型长度完整性约束教工号TeacherIdchar15主键课程号CourseIdint主键附件索引SEnclosureIndexchar5主键发布时间Assign

23、Datedate无截止日期Deadlinedate值大于发布时间名称Namenchar50非空存储路径SEnclosurePathnchar100无备注Messagenchar100无表3.1.5 专业班级(T_class)属性中文名称属性名类型长度完整性约束班级号Idint主键名称Namenchar30非空班主任HeadTeacherIdchar15外键院系DeptIdint外键表3.1.6 院系(T_dept)属性中文名称属性名类型长度完整性约束院系号Idint主键名称Namenchar30非空表3.1.7 课程(T_course)属性中文名称属性名类型长度完整性约束课程号Idint主键院

24、系DeptIdint外键名称Namenchar30非空表3.1.8 班级课程(R_course_class)属性中文名称属性名类型长度完整性约束课程号CourseIdint主键班级号ClassIdint主键教工号TeacherIdchar15外键表3.1.9 评优区作业(T_excellent)属性中文名称属性名类型长度完整性约束学号StudentIdchar15主键课程号CourseIdint主键作业索引SEnclosureIndexchar5主键表3.1.10 用户(T_user)属性中文名称属性名类型长度完整性约束用户号Idchar15主键用户密码Passwordchar20非空用户类型

25、Typebit值为0或13.2视图设计为了方便程序查询,建立了如下用户视图:学生信息视图(学号,姓名,性别,院系,班级,个性签名,联系电话,邮箱,密码)定义:CREATE VIEW CS_Student(Id,Name,Sex,DeptName,ClassName,Signs,Tel,Email,Password) AS SELECT s.Id,s.Name,Sex,d.Name,c.Name,Sign,Tel,Email,Password from T_student s,T_class c,T_dept d WHERE s.ClassId = c.Id AND s.DeptId = d.I

26、d教师信息视图(教师名,性别,办公室,院系,联系电话,邮箱,宣言,密码) 定义:CREATE VIEW CS_Teacher(Name,Sex,Office,DeptName,Tel,Email,Declaration,Password) AS SELECT t.Name,Sex,Office,d.Name,Tel, Email,Declaration,Password from T_teacher t,T_dept d WHERE t.DeptId = d.Id班级信息视图(班级名称,班级人数,班主任,院系)定义:CREATE VIEW CS_Class(Name,number,HeadTe

27、acher,DeptName)AS SELECT c.Name,COUNT(*),t.Name,d.Name from T_class c,T_teacher t,T_dept d where c.DeptId = d.Id AND c.HeadTeacherId = t.Id GROUP BY c.Id,c.Name,t.Name,d.Name教师发布作业信息视图(课程名,作业名,班级名,存储路径,教师名,截止日期,发布日期,备注)定义:CREATE VIEW CS_TEnclosure(CourseName,EnclosureName,ClassName,EnclosurePath,Tea

28、cherName,Deadline,AssignDate,Message) AS SELECT ,e.Name,c.Name,TEnclosurePath,t.Name,Deadline,AssignDate,Message FROM T_enclosureFT e,T_course course,T_class c,R_course_class cc,T_teacher t WHERE e.courseId = AND e.TeacherId = t.Id AND cc.ClassId = c.Id AND cc.CourseId = e.courseId AND cc.TeacherId

29、= t.Id学生作业信息视图(班级名,课程名,学生名,学号,作业名称,存储路径,是否完成,分数,等级,修正分,评语)定义:CREATE VIEW CS_SEnclosure(ClassName,CourseName,StudentName,StudentId,EnclosureName,EnclosurePath,IsOver,Grade,SLevel,CorrectGrade,Remark) AS SELECT c.Name,s.Name,e.StudentId,e.Name,SEnclosurePath,IsOver,Grade,SLevel,CorrectGrade,Remark fro

30、m T_class c,T_course course,T_enclosureFS e,T_teacher t,T_student s WHERE e.StudentId = s.Id AND e.CourseId = AND s.ClassId = c.Id评优区作业信息视图(学生名,学号,课程名,作业名称,存储路径,班级名,分数,等级,修正分,评语)定义:CREATE VIEW CS_Excellent(StudentName,StudentId,CourseName,SEnclosureName,EnclosurePath,ClassName,Grade,SLevel,CorrectGr

31、ade,Remark) AS SELECT s.Name,s.Id,e.Name,SEnclosurePath,c.Name,Grade,SLevel,CorrectGrade,Remark FROM T_student s,T_enclosureFS e,T_class c,T_course course WHERE s.Id = e.StudentIdAND e.CourseId = AND s.ClassId = c.Id班级课程信息视图(班级名称,课程名称,教师)定义:CREATE VIEW dbo.CS_Course_ClassASSELECT dbo.T_, dbo.T_ AS E

32、xpr1, dbo.T_ AS Expr2FROM dbo.R_course_class INNER JOIN dbo.T_course ON dbo.R_course_eId = dbo.T_ INNER JOIN dbo.T_teacher ON dbo.R_course_erId = dbo.T_ INNER JOIN dbo.T_class ON dbo.R_course_Id = dbo.T_班级作业统计信息视图(作业名,班级名,最高分,平均分,最低分,及格率,优秀率,不及格人数)定义:CREATE VIEW dbo.CS_StaASSELECT dbo.T_ AS taskName

33、, dbo.T_ AS className, derivedtbl_1.max, derivedtbl_1.min, derivedtbl_1.avgFROM dbo.T_enclosureFS CROSS JOIN dbo.T_class CROSS JOIN (SELECT dbo.T_Id, MAX(T_enclosureFS_1.Grade) AS max, MIN(T_enclosureFS_1.Grade) AS min, AVG(T_enclosureFS_1.Grade) AS avg FROM dbo.T_enclosureFS AS T_enclosureFS_1 INNE

34、R JOIN dbo.T_student ON T_enclosureFS_1.StudentId = dbo.T_ GROUP BY dbo.T_Id) AS derivedtbl_14.物理设计确定数据库物理结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。1、系统自动在每个表的主码上建立索引。2、在T_class表Name列上建立IX_T_class_Name索引,因为查询操作很多都使通过班级名进行的。3、在 T_course表Name列上建立IX_T_course_Name索引,因为查询操作很多通过课程名进行的。4、在T

35、_enclosureFS表Grade列上建立IX_T_enclosureFS_Grade和IX_T_enclosureFS_Name索引,因为查询很多操作通过作业分数和作业名进行。5、在T_enclosureFT表Name列上建立IX_T_enclosureFT_Name索引,因为查询操作很多通过附件名来进行的。6、在T_student表Name列上建立IX_T_student_Name索引,因为查询操作很多通过学生姓名来进行的。7、在T_teacher表Name列上建立IX_T_teacher_Name索引,因为查询操作很多通过教师姓名来进行的。5、课程设计总结课程设计是培养学生综合运用所学

36、知识,发现、提出、分析和解决实际问题,锻炼实践能力的的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新月异,数据库应用到计算机应用的各个领域。因此作为二十一世纪的大学生来说掌握数据库技术是十分重要的。回顾起这次数据库课程设计,我感慨颇多。的确,从选题到定稿,从理论到时间,在接近一周的时间里,可以说是苦多于甜,但是同时也学到了很多的东西,并巩固了很多以前学过的知识,也接触到了很多书本上没有的东西,在实践过程中,遇到的困难也是很多的,比如说设计数据字典这一环节,由于对数据字典的概念了解的不够深刻,在书写数据项、数据结构、数据存储等时觉得很抽象,以及后来的概念设计和视图设计

37、过程,都觉得不太熟悉,但是通过查阅资料等手段都把这些问题一一解决了。通过这次课程设计使我懂得了理论与实践相结合是很重要的,只有理论知识是远远不够的,只有把理论知识与实践结合起来,才能提高自己的动手能力和独立思考能力,很多问题看似简单,思路也很清晰,但是当真正动手设计的时候才发现其中的难度,这次课设中印象最深的是经常突然发现自己一开始的设计有问题,然后又回去翻工,在各种反复中不断完善数据库的设计。总而言之,这次数据库课程设计让我学到了很多在书本上学不到的东西,也从中学到了许多解决实际问题的经验,也让我明白无论遇到怎么的难题,只要有耐心并坚持,就一定能解决好问题。四、参考文献1 萨师煊,王珊.数据库系统概论. 高等教育出版社, 第3版. 2000年2月 2 黄维通. SQL Server 2000简明教材. 清华大学版社, 第1版. 2002年3月

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报