1、陕西师范大学远程教诲学院课程名称 软件工程 学习中心(点): 陕西咸阳高等职业技术培训学院 专 业 : 计算机科学与技术 层 次 : 专科起点本科 姓 名 : 王琪 批 次 : 161 软件工程考查作业设计一、规定通过该课程设计要使学生树立起强烈工程化意识,用工程化思想和办法开发软件。切实体会出用软件工程办法开发系统与普通程序设计办法不同之处,学生在对所开发系统进行软件筹划、需求分析、设计基本上,实现并测试实际开发系统。通过一系列规范化软件文档编写和系统实现,使学生具备实际软件项目分析、设计、实现和测试基本能力。二、重要内容规定学生掌握软件工程基本概念、基本办法和基本原理,为将来从事软件研发和
2、管理奠定基本。每个学生选取一种小型软件项目(内容参照计算机综合实践指引,宋雨等编著,清华大学出版社出版),按照软件工程生命周期,完毕软件筹划、需求分析、软件设计、编码实现、软件测试及软件维护等软件工程工作,并按规定编写出相应文档。详细办法可以选用老式软件工程办法或者面向对象办法,开发环境和工具不限。三、进度筹划序号设计(实验)内容完毕时间备注1软件筹划、软件需求分析、软件设计,制定出软件测试筹划,软件测试用例第1周共5天2各模块录入、编码、编译及单元测试第2周共5天3联调及整体测试,第3周共5天4验收,学生解说、演示、回答问题第2周共3天四、设计成果规定1. 题目完毕后,要上交一种设计报告,涉
3、及下列内容:1)需求分析依照选定题目进行业务需求分析、顾客需求、功能需求、非功能需求分析,编写需求规格阐明书(含数据流图);2) 概要设计 依照系统逻辑模型,与详细计算机技术结合,进行架构,接口,界面,数据库以及模块等设计,完毕概要设计阐明书;3) 详细设计详细设计阐明书;4)软件编码源程序;5) 测试文档软件测试筹划及测试用例,详细测试数据、详细测试环节以及测试成果;6) 其她顾客操作手册,其她与本课程设计关于需要阐明事项;7)设计体会五、考核方式(一)理论某些占考查成绩30%(二)实践某些占考查成绩70%1 问题描述学籍管理系统能对学生学籍及成绩进行基本管理,涉及:学生基本信息和学科成绩存
4、储、输入、删除、修改、查询,以及升留级管理。学生基本信息应涉及:学号、姓名、出生年份、籍贯、性别、专业、班级、家庭住址、本校住址、个人联系电话、家庭联系电话;成绩信息应涉及:学号、课号、课名、成绩、上学时间、教师号。查询可以按照:学号、课号、班级、时间等进行查询。2 需求分析需求分析是数据库信息管理系统开发第一步也是着重要一步。需求分析是描述系统需求,通过定义系统中核心域类来建立模型。分析主线目是在开发者和提出需求人之间建立一种理解和沟通机制,下面从三个方面(市场需求分析、功能需求分析、技术可行性分析)来进行系统需求分析:2.1 功能需求分析这个是一种学生管理系统,咱们目的是提高学籍管理工作效
5、率,具备对学生个人信息,课程信息,所选课程信息进行管理及维护功能。学生可以通过此系统进行个人信息,考试成绩查询。系统开发总体任务是实现学生信息管理系统化,规范化和自动化。总之,学籍管理系统功能需求涉及管理员对功能需求和学生对功能需求,教师对功能需求三大某些,如下所列:(1)管理员对功能需求管理员权限最大,可以对学生,课程,教师管理,管理员对功能需求细分如下: 关于学生信息浏览,涉及学生姓名,入学日期,所在班级,学制,家庭住址,联系电话。 学生添加,本系统由管理员对学生进行添加。 学生信息修改,删除。 教师信息添加,本系统管理员对教师基本信息进行添加。 学校基本课程浏览,涉及课程名,学时,学分,
6、任课教师和课程详细描述。 学校基本课程添加。 学校基本课程修改,删除。 (2) 学生对功能需求 学生只是运用此系统进行与自己关于信息查询,输入等,不必关怀其她内容,学生对功能需求如下: 浏览个人基本信息,详细内容涉及姓名,入学日期,所在班级,学制,家庭住址,联系电话。 学生登陆系统后,修改个人信息,为了保证系统安全性,只规定学生修改个人密码。 浏览课程信息,详细内容涉及课程名,课程类型,学分和课程详细描述。 浏览个人选课状况。 浏览个人成绩。(3) 教师对功能需求 教师运用该系统对学生和课程进行管理,教师对功能需求如下: 浏览个人基本信息,详细内容涉及教师姓名和信息简介。 教师登陆系统后,修改
7、个人信息,为了保证系统安全性,只规定教师修改个人密码。 浏览课程信息,详细内容涉及课程名,课程类型,学分和课程详细描述。 管理学生成绩,涉及对学生成绩修改。 查看学生留言。2.2 技术可行性分析当前,全国计算机越来越普及,几乎每个学校都配有计算机,为我这套软件提供了硬件环境。数据库是60年代末浮现一门计算机软件技术,到当前虽然只有三十近年历史,但在理论和时间上都已经趋于成熟,使咱们可以以便使用。数据库技术是信息系统核心和基本,它浮现极大地增进了计算机应用向各行各业渗入数据库建设规模、数据库信息量大小和使用频度已成为衡量一种国家信息化限度重要标志。Access数据库是我比较熟悉数据库,这使我可以
8、完毕实验。本系统重要采用基于JAVA语言JSP技术和SERVLET技术,以及HTML、CSS等语言和技术,因而该系统具备JAVA所有长处,移植性能比较好。2.3 性能分析 系统应具备高可靠性系统在功能完整同步,应具备较好可靠性。作为支撑学生学籍管理工作基本环境,系统浮现故障将直接影响学校正常工作进程,因此系统必要具备高可靠性。系统应具备良好可操作性系统使用者大多为普通操作人员,因而系统界面操作应以便简朴、使顾客可以易学易。系统应具备较强安全保密性。系统应提供安全可靠数据操作权限,特定人员只能对特定信息进行炒作。3系统分析与设计3.1 系统整体模块分析学籍管理系统是一种教诲单位不可或缺某些,它内
9、容对于学校决策者和管理员来说都是至关重要,因此学籍管理系统应当可觉得顾客提供充分信息和快捷查询手段。学生学籍管理系统重要涉及学生信息模块、课程管理模块、成绩管理模块、教师管理模块,详细模块图如图2.1所示。学籍管理系统成绩管理模块课程管理模块学生管理模块教师管理模块查看分数学生课程给分修改分数查看学生修改学生删除学生增长学生 查询信息删除信息更新信息增长教师查看课程修改课程删除课程增长课程 图2.1 系统模块图3.11 学生管理模块该模块重要负责管理所有在校学生个人信息。学生通过这个模块,可以查询自己在校学籍信息,打印自己学籍信息以及修改自己登陆密码等等。管理者通过这个模块,可以添加、更新、删
10、除、查询学生学籍信息。3.12 课程管理模块该模块重要功能是管理全校课程信息。重要功能涉及添加,删除,修改,查询课程信息。其中只有管理员才具备对课程信息进行维护权限(增长、删除、更新)。课程管理模块是选课管理模块基本,只有在课程管理中添有选修课信息,学生才干进行选课5。针对选课模块。该功能行使者是学生,学生通过浏览所有课程信息,选取自己符合自己规定课程。3.13 成绩管理模块该模块功能重要由教师所拥有。对于选取自己所专家课程同窗,教师具备给定该同窗专业分数,以及修改该同窗专业分数权限。3.14 教师管理模块该模块功能也为管理员所拥有。管理员重要负责新教师信息增长,教师信息整顿以及教师信息打印。
11、除此之外还可以查看每个教师所专家课程。系统登录3.2 系统用例分析管理学生 管理教师管理课程系统退出 (admin) 图3.21 管理员用例图 管理员用例图,管理员(admin)可以实现功能重要有:系统登陆、对学生管理(增长、删除、更新、查看)、对学生管理(增长、删除、更新、查看)、对课程管理(增长、删除、更新、查看)以及对新闻管理(增长、删除、更新、查看)。查看信息修改密码查看课程学生选课 (Student) 图3.22学生用例图学生用例图,学生(Student)可以实现功能有:系统登陆、个人学籍信息查询、个人登陆密码修改、学院课程查询、个人课程选修、刊登留言、以及新闻(公示)浏览。查看信息
12、修改密码查看课程发布分数 (Teacher)图3.23教师用例图教师用例图,教师(Teacher)可以实现功能有:系统登陆、教师个人信息查询、个人登陆密码修改、查看学院所有课程、学生成绩发布、查看学生留言、查看学院新闻(公示)。3.3 业务流程图系统流程图是描绘物理系统老式工具。它基本思想是用图形符号以黑盒子形式描述系统里面每个部件(程序,文献,数据库,表格,人工过程等等)。系统流程图表达是信息在系统各部件之间流动状况,而不是对信息进行加工解决控制过程,因而尽管系统流程图使用某些符号和程序流程图中使用符号相似,但是它确是物理流程图而不是程序流程图。3.31 系统登录流程图: 开始输入顾客名、密
13、码选取登录角色顾客名密码与否对的N Y 角色鉴定更新登录信息初始化顾客信息成功登陆到指定页面 图3.24 管理员登陆流程图3.32 管理员信息管理流程图:更新数据库新信息基本数据库添加信息添加成功信息需要修改管理员登陆更新数据库修改、更新信息修改成功更新数据库信息列表删除信息删除信息 图3.25 管理员信息管理流程图3.4 系统数据分析 数据流图表达了数据和解决关系,数据流图是构造化系统分析重要工具,它表达了系统内部信息流向,并表达了系统逻辑解决功能,描述了系统构成某些及各某些之间联系。发布成功发布成绩教师 学生课程表 教师信息表 显示学生成绩 图3.4-2 教师发布成绩数据流图 管理员选取课
14、程课程信息学生 查看 提交审核 显示选课信息 图3.4-3 学生选课数据流图4 数据库设计4.1 数据库需求分析数据库要尽量满足顾客提出各项规定。由于在学籍管理系统中,需要采集大量信息,涉及学生信息,班级信息,课程信息,成绩信息,教师信息等,需要合理有效组织数据库构造,合理设立数据库,这样就能在后期开发中减少难度,提高程序效率,依照学生基本信息及其有关信息特点归纳一下规律:(1)一种专业包括各种班级(2)一种班级相应一种入年份及学制(3)一种班级包括各种学生名字(4)每一种学生均有不同窗号(5)一种班级相应持续各种学期(6)一种班级在一种学期内开设多门课程(7)每一门课程需要记录每一门学生成绩
15、(8)一种角色相应一种或各种顾客依照以上数据之间相应及依赖关系,可以拟定数据库中所必备信息应当有一下几方面:(1)专业信息类别信息,包括院校所开设专业名称及详细简介、描述。(2)学生信息,包括学生学号、姓名、性别及所属班级等基本信息。(3)课程信息,包括开设课程班级、课程及学期。(4)成绩信息,包括学生学号、课程、学期及成绩信息。(5)顾客信息,包括用名称、口令及角色。(6)角色信息,包括角色名称、与该角色关于权限。4.2 数据库概念构造设计依照上面对系统需求分析、模块设计,就可以做出可以满足顾客需求各种实体以及她们之间关系。本系统依照上面设计规划出:顾客信息实体、学生信息实体、课程信息实体、
16、教师信息实体、学生-课程状况实体、教师-课程状况实体。以及整个系统E-R图。 密码姓名编号 管理员4.21 管理员实体属性图入学时间住址年制 电话名字编号性别所属学院学生422 学生实体属性图分数学分名称编号课程 4.23 课程实体属性图所属学院备注职称编号名字年龄性别联系电话教师4.24 教师实体属性图 编号编号编号编号学生-课程 4.27 学生-课程实体属性图下面给出整个系统E-R图: 管理员nn11管理1学生课程学习成绩专家教师1nnm班级属于n1 图4.28 系统E-R图4.3 数据库逻辑构造设计一方面是系统登录表(login),存储可以登录系统学生、管理员、教师有关信息。有关列名有登
17、陆ID号(loginID)、角色类型(roleID)、登陆姓名(loginName)、登陆密码(loginPWD)。 表1 顾客登录表(login)列名数据类型大小约束字段描述loginIDInt11主键(主键)编号roleIDInt11只有1、2顾客类型loginNameVarchar50NOT NULL顾客名loginPWDVarchar50NOT NULL登录密码 学生表(表2),保存学生基本信息,重要要学生学号、名字、入学时间、家庭住址、家庭联系电话以及所在班级等等。有关列名有ID号(ID)、学生ID号(stuID)、学生姓名(stuName)、入学时间(enterTime)、年(st
18、uYear)、地址(address)、联系电话(tellphone)、班级(stuclass)。列名数据类型大小约束字段描述IDInt11NOT NULL(主键)编号stuIDVarchar50NOT NULL学号stuNameVarchar50NOT NULL学生姓名enterTimeDatetimeNULL入学时间stuYearVarchar20NULL学制addressVarchar50NULL住址tellphoneVarchar20NULL电话stuclassVarchar10NULL班级remarkVarchar50NULL备注stusexint21,2性别stuschoolVarc
19、har20NULL所属学院表2 学生信息数据表 (student)教师表(表3),存储教师某些基本信息,涉及教师编号、教师姓名、教师职称以及其她某些备注信息。表3 教师信息表(teacher)列名数据类型大小约束字段描述tIDint11NOT NULL(主键)编号teacherIDVarchar20NOT NULL职工号teacherNameVarchar20NOT NULL名字teacherInfoVarchar50NULL详细信息remarkVarchar50NULL备注Teasexint20(男) 1(女)性别teaschoolVarchar20Not null所属学院tellphone
20、int15NOT null电话teaageint5Not Null年龄教师课程表(表4)是把教师表和课程联系在一起信息表,重要涉及课程编号、教师编号。表4 教师-课程表(teacourse)列名数据类型大小约束段描述tcidInt 11NOT NULL(主键)编号tIDInt11NULL教师编号courseIDInt11NULL课程编号学生课程表(表5)是把学生表和课程表联系在一起信息表,重要涉及学生ID号、课程ID号、以及所获得相应分数。表5 学生-课程表(stucourse)列名数据类型大小约束字段描述scidInt11NOT NULL(主键)编号IDInt11NULL学生编号course
21、IDInt11NULL课程编号scoreInt11NULL分数课程信息表(stu_course)包括了课程某些有关信息,重要有课程ID(courseID)、课程名称(courseName)、课程学分(courseCredit)、备注(remark)。表6 课程信息表(course)列名数据类型大小约束字段描述courseIDInt11NOT NULL(主键)课程编号courseNameVarchar50NOT NULL课程名称courseCreditInt11NULL学分remarkVarchar50NULL备注CourseteacherVarchar20NULL任课教师Coursecount
22、Int5Null选课人数5 可视化界面连接数据库:package junling.java;import java.sql.*;public class DataBase public static Connection getConn() Connection conn = null;try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);conn= DriverManager.getConnection(jdbc:odbc:Driver=Microsoft Access Driver (*.mdb);DBQ=F:/access/software.md
23、b);catch (ClassNotFoundException e) System.out.println(无类); catch (SQLException e) System.out.println(sql error);if (conn = null) System.out.println(无conn);return conn;public static Statement getStat(Connection conn)Statement stat=null;trystat=conn.createStatement();/System.out.println(连接数据库成功);catc
24、h(SQLException e)e.printStackTrace();return stat; public static ResultSet getRs(Statement stmt,String sql)ResultSet rs = null;try rs = stmt.executeQuery(sql); catch (SQLException e) e.printStackTrace();return rs;public static void close(Connection conn)if (conn != null)try conn.close(); catch (SQLEx
25、ception e) e.printStackTrace();conn = null;public static void close(ResultSet rs)if (rs != null)try rs.close(); catch (SQLException e) e.printStackTrace();rs = null;public static void close(Statement stat)if (stat != null)try stat.close(); catch (SQLException e) e.printStackTrace();stat = null;登陆界面:
26、代码:软件161王琪 欢 迎 登 陆 学 生 信 息 管 理 系 统 顾客名: 密码: 顾客类型: 学生 教师 管理员 学生界面:代码: student1.html 欢迎登陆学生信息管理系统 请选取您需要操作 个人信息 修改密码 已选课程 退出系统 教师界面:代码: teacher11.html 欢迎登陆学生信息管理系统 请选取您需要操作 th
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100