软件工程导论设计报告13号.docx

上传人:b****1 文档编号:14949504 上传时间:2023-06-28 格式:DOCX 页数:25 大小:747.35KB
下载 相关 举报
软件工程导论设计报告13号.docx_第1页
第1页 / 共25页
软件工程导论设计报告13号.docx_第2页
第2页 / 共25页
软件工程导论设计报告13号.docx_第3页
第3页 / 共25页
软件工程导论设计报告13号.docx_第4页
第4页 / 共25页
软件工程导论设计报告13号.docx_第5页
第5页 / 共25页
软件工程导论设计报告13号.docx_第6页
第6页 / 共25页
软件工程导论设计报告13号.docx_第7页
第7页 / 共25页
软件工程导论设计报告13号.docx_第8页
第8页 / 共25页
软件工程导论设计报告13号.docx_第9页
第9页 / 共25页
软件工程导论设计报告13号.docx_第10页
第10页 / 共25页
软件工程导论设计报告13号.docx_第11页
第11页 / 共25页
软件工程导论设计报告13号.docx_第12页
第12页 / 共25页
软件工程导论设计报告13号.docx_第13页
第13页 / 共25页
软件工程导论设计报告13号.docx_第14页
第14页 / 共25页
软件工程导论设计报告13号.docx_第15页
第15页 / 共25页
软件工程导论设计报告13号.docx_第16页
第16页 / 共25页
软件工程导论设计报告13号.docx_第17页
第17页 / 共25页
软件工程导论设计报告13号.docx_第18页
第18页 / 共25页
软件工程导论设计报告13号.docx_第19页
第19页 / 共25页
软件工程导论设计报告13号.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

软件工程导论设计报告13号.docx

《软件工程导论设计报告13号.docx》由会员分享,可在线阅读,更多相关《软件工程导论设计报告13号.docx(25页珍藏版)》请在冰点文库上搜索。

软件工程导论设计报告13号.docx

软件工程导论设计报告13号

 

软件工程课程设计报告

 

班级:

软件Xxxx

姓名:

XXXXX

学号:

XXXXXX13

指导教师:

郭鹏XX

 

XXXXX技术大学软件学院

目 录

1.设计内容1

1.1设计功能1

1.2需求文档1

1.2.1业务流图1

1.2.3E-R图2

1.2.4数据描述3

1.2.5数据字典4

2概要设计5

2.1编写目的5

2.2概要设计思路5

2.3概要设计说明书5

2.3.1需求规定5

2.3.2运行环境5

2.2.3基本设计概念和处理流程5

2.2.4系统结构6

2.2.6系统流程图7

2.2.6尚未问决的问题7

2.3接口设计8

2.3.1用户接口8

2.3.2外部接口8

2.3.3内部接口8

2.4运行设计8

2.4.1运行模块组合8

2.4.2运行控制8

2.4.3运行时间9

2.5系统数据结构设计9

2.5.1系统逻辑结构设计9

2.5.2依据ER图进行数据库表的逻辑设计(O/RMapping10

2.6系统出错处理设计11

2.6.1出错信息11

2.6.2补救措施11

3详细设计11

3.1编写目的11

3.2程序流程图12

3.3软件详细设计说明书12

3.3.1登录模块12

3.3.2学生学籍管理模块13

3.3.3学生成绩管理模块13

3.3.4学生选课管理模块13

3.3.5教师信息管理模块13

3.3.6教师授课管理模块14

3.3.7教师工资管理模块14

3.4程序模块设计说明14

3.4.1登录模块14

3.4.2添加学生信息模块15

3.5数据库设计说明书16

4程序源码17

4.1控制类studentServlet17

4.2登入控制类loginServlet17

5程序运行与调试18

5.2登入页面19

5.3查询页面20

5.4显示页面20

6总结20

7参考文献21

1.设计内容

1.1设计功能

为了更好的管理学生的信息,更好的完善教务系统的完整性和建设性,设计一个小型的教务管理系统对学生的个人信息和成绩管理,系统有以下最基本的功能:

(1)学生信息管理

(2)教师信息管理

(3)课程管理

(4)信息公布

整个系统的基本功能图如下:

图1-1基本功能结构图

1.2需求文档

1.2.1业务流图

(1)学生选课:

图1-2学生选课数据流程图

(2)选教师:

图1-3学生选教师图

1.2.2对数据的需求

教务管理系统的数据需求包括如下几点:

(1)数据录入和处理的准确性和实时性,数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。

数据的输入来源是手工输入。

手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。

在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。

(2)数据的一致性与完整性,由于系统的数据是共享的,在不同的客户端中,教务文件是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。

要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。

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

(3)数据的共享与独立性,整个教务管理系统的数据是共享的。

然而,从系统开发的角度上看,共享会给设计和调试带来困难。

因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。

这样,也能提供系统的强壮性。

1.2.3E-R图

图1-4E-R图

1.2.4数据描述

(1)完整的学生信息表

字段

字段名

类型

宽度

1

2

3

4

5

6

7

8

9

10

11

学号

姓名

性别

班级

担任职位

出生日期

民族

家庭住址

联系电话

家长姓名

照片

VARChar

VARChar

VARChar

VARChar

VARChar

Data/time

VARChar

VARChar

VARChar

VARChar

VARChar

10

10

2

10

10

20

2

50

15

10

50

表1-1学生信息表

(2)学生成绩信息表

主要存放学生的考试成绩情况

字段

字段名

类型

宽度

1

2

3

4

5

学号

姓名

班级

考试科目

考试成绩

VARChar

VARChar

VARChar

VARChar

Number

10

10

10

50

3

表1-2学生成绩表

(3)班级信息表

字段

字段名

类型

宽度

1

2

3

4

班级编号

班级

人数

班主任

VARChar

VARChar

Number

VARChar

10

10

3

10

表1-3班级信息表

(4)课程表

字段

字段名

类型

宽度

1

2

3

课程名

班级

专业

VARChar

VARChar

VARChar

20

10

10

表1-4课程信息表

1.2.5数据字典

数据字典是描述数据流图中数据的信息的集合。

它对数据流图上每一个成分:

数据项、文件(数据结构)、数据流、数据存储、加工和外部项等给以定义和。

说明:

它主要由数据流描述、加工描述和文件描述三部分组成。

(1)

数据存储名称:

教师信息

别名:

简述:

对老师的信息进行存储管理

组成:

职工号+密码+教师基本信息

组织方式:

索引文件,职工号为关键字

查询要求:

要求能立即查询

(2)

数据存储名称:

学生信息

别名:

简述:

对学生的信息进行存储管理

组成:

学号+密码+学生基本信息+成绩

组织方式:

索引文件,学号为关键字

查询要求:

要求能立即查询

(3)

数据存储名称:

课程信息

别名:

简述:

对班级的课程信息进行存储管理

组成:

班级+课程

查询要求:

要求能立即查询

(4)

数据存储名称:

班级信息

别名:

2概要设计

2.1编写目的

本文档是整个教育系统下的教师学生信息管理子系统(教务管理系统)的一个总体的把握,以便在下一步的开发设计中更好的控制开发,并且对其他教育系统有良好的接口。

设计系统的架构、类图,以便使系统的开发能有效进行。

2.2概要设计思路

分别从学生,教师,课程对象,将教务管理系统搭建起来一个框架。

2.3概要设计说明书

2.3.1需求规定

说明对本系统的主要的输入输出项目、处理的功能性能要求。

本系统可分为学生信息管理系统和教师管理信息系统,系统开发的整体任务是实现学校教师学生信息管理的系统化、规范化、自动化和智能化,从而达到提高学校管理效率的目的。

该阶段目的在于明确系统的数据结构和软件结构,此外总体设计还将给出内部软件和外部系统部件之间的接口定义,各个软件模块的功能说明,数据结构的细节以及具体的装配要求。

2.3.2运行环境

软件基本运行环境为Windows环境。

2.2.3基本设计概念和处理流程

该文档目的在于明确系统的数据结构和软件结构,设计外部软件和内部软件的接口,说明各个软件模块的功能说明,数据结构的细节等。

系统的总体处理流程如图2-1所示:

图2-1系统处理流程图

2.2.4系统结构

用一览表及框图的形式说明本系统的系统元素(各层模块、子程序、公用程序等)的划分,扼要说明每个系统元素的标识符和功能,分层次地给出各元素之间的控制与被控制关系.

本系统体系结构大致可以定义为:

客户机层上的表示层主要是通过Struts框架实现的,由显示视图产生一个请求。

请求被ActionServlet(控制器)接收,它在struts-config.xml文件中寻找请求的URI,找到对应的Action类后,Action类执行相应的业务逻辑。

Action类执行建立在模型组件基础上的业务逻辑,模型组件是和应用程序关联的。

一旦Action类处理完业务逻辑,它把控制权返回给ActionServlet。

,Action类提供一个键值作为返回的一部分,它指明了处理的结果。

ActionServlet使用这个键值来决定在什么视图中显示Action的类处理结果。

当ActionServlet把Action类的处理结果传送到指定的视图中,请求的过程也就完成了。

中间业务层是通过Spring框架实现的,首先建立一个BaseAction,它继承了Action类,而其他定义的Action都要继承这个BaseAction。

这个BaseAction需要导入AppContext工具类,这个AppContext需要导入Spring中org.springframework.context.support.*;这样一个继承BaseAction的Action,就可以getXXXService()的方法得到某一个service的实例-----服务定位器的设计模式。

持久(PO)层是由hibernate架构实现的,它包括关于整体数据库的hibernate.cfg.xml文件、每个表的JavaBean类和每个表的hbm.xml文件,通过Spring集成模板HibernateTemplate提供DAO来使用PO。

在Spring的配置文件(applicationContext.xml)中配置sessionFactory的bean 来管理hibernate。

2.2.6系统流程图

图2-2辽宁工程技术大学教务管理系统流程图

2.2.6尚未问决的问题

说明在概要设计过程中尚未解决而设计者认为在系统完成之前必须解决的各个问题。

2.3接口设计

2.3.1用户接口

用户接口

语法结构

软件回答信息

管理员登录

以英文和汉字开头,不超过6个字符

进入主界面

信息管理相关操作

后台有用户数据库

进行相应的操作

2.3.2外部接口

本部分是在第二阶段(整合阶段)进行的,故不在此介绍。

2.3.3内部接口

由于系统的各种内部接口是通过借助数据库开发软件来实现的,是完全在数据库内部操作的,故在此略过此内容。

2.4运行设计

2.4.1运行模块组合

具体软件的运行模块组合为程序多窗口的运行环境,各个模块在软件运行过程中能较好的交换信息,处理数据。

2.4.2运行控制

软件运行时有较友好的界面,基本能够实现用户的数据处理要求。

2.4.3运行时间

系统的运行时间基本可以达到用户所提出的要求。

2.5系统数据结构设计

2.5.1系统逻辑结构设计

根据系统需求,把系统分为登录模块,学生管理模块和教师管理模块等

(1)系统总体设计如下:

图2-3系统概要设计图

(2)系统的数据库表关系图(ER图):

图2-4数据库表关系图

2.5.2依据ER图进行数据库表的逻辑设计(O/RMapping

(1)Managerinfo管理员信息表

列名

数据类型

可否为空

说明

manager_ID

password

manager_Name

on_Time

CHAR(10)

CHAR(10)

CHAR(10)

DATETIME(8)

NOTNULL

NOTNULL

NULL

NULL

管理员登录账号

管理员登录密码

管理员真实姓名

管理员登录时间

(2)Studentinfo学生学籍信息表

列名

数据类型

可否为空

说明

student_ID

student_Name

student_Gender

born_Date

peoples

INT(10)

CHAR(10)

CHAR

(2)

DATETIME(8)

VARCHAR(10)

NOTNULL

NOTNULL

NULL

NULL

NULL

学生学号(主键)

学生姓名

学生性别

出生日期

民族

status

Class_No

Tele_Number

Ru_Date

address

comment

Tuition

VARCHAR(10)

INT(4)

CHAR(10)

DATETIME(8)

VARCHAR(50)

VARCHAR

Boolean

NULL

NULL

NULL

NULL

NULL

NULL

NULL

政治面貌

班号

联系电话

入校时间

家庭住址

注释

学费是否已交

2.6系统出错处理设计

2.6.1出错信息

错误登录信息

输入错误的数据

打印不成功

系统提示错误登录信息

系统提示数据错误信息

系统提示打印不成功信息

系统返回登录界面

提示重新输入数据

进行重新打印操作

2.6.2补救措施

由于数据在数据库中已经有备份,故在系统出错后可以依靠数据库的恢复功能,并且依靠日志文件使系统再启动,就算系统崩溃用户数据也不会丢失或遭到破坏。

但有可能占用更多的数据存储空间,权衡措施由用户来决定。

3详细设计

3.1编写目的

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

预期的读者为本项目开发人员和将来对本项目进行扩展和维护的人员。

3.2程序流程图

图3-1程序流程图

3.3软件详细设计说明书

3.3.1登录模块

如图所示:

图3-2登入界面

3.3.2学生学籍管理模块

(1)添加学生信息

(2)查询学生信息

3.3.3学生成绩管理模块

(1)添加学生成绩

(2)查询学生成绩

3.3.4学生选课管理模块

3.3.5教师信息管理模块

(1)添加教师信息

(2)查询教师信息

3.3.6教师授课管理模块

(1)添加教师授课信息

(2)查询教师授课信息

3.3.7教师工资管理模块

(1)添加教师工资信息.

(2)查询教师工资信息

3.4程序模块设计说明

3.4.1登录模块

(1)程序描述

验证登录到系统的管理员的身份。

(2)功能

接受用户登录请求,验证用户输入的用户名和密码,转到管理页面。

(3)性能

对用户登录请求在2秒钟之内做出响应。

(4)输人项

用户名:

字符串型

密码:

字符串型

(5)输出项

合法:

进入管理界面。

非法:

重新登陆。

(6)算法

表示层接收数据,控制层将数据转到数据持久层保存(到数据库)。

(7)流程逻辑

图3-2判断图

3.4.2添加学生信息模块

(1)程序描述

添加新学生信息。

(2)功能

往数据库中添加新学生的信息,包括姓名、学号等信息。

(3)性能

无特殊要求。

(4)输人项

学号:

整型

姓名:

字符串型

性别:

系统选项

出生日期:

系统选项

民族:

字符串型

政治面貌:

字符串型

院系及班级:

系统选项

联系电话:

字符串型

家庭住址:

字符串型

是否已交学费:

系统选项

(5)输出项

(6)算法

表示层接收数据,控制层将数据转到数据持久层保存(到数据库)。

(7)流程逻辑

3.5数据库设计说明书

数据库表如下:

图3-3系统的数据库表

4程序源码

4.1控制类studentServlet

packagecom.control;

importjava.io.IOException;

importjava.io.PrintWriter;

importjava.util.List;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importcom.Dao.studentDao;

publicclassshowAllstudentsServletextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

this.doPost(request,response);}

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

studentDaodao=newstudentDao();

Listlist=dao.getAllStudents();

request.setAttribute("show",list);

request.getRequestDispatcher("/showAllStudents.jsp").forward(request,response);

}

4.2登入控制类loginServlet

packagecom.control;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.RequestDispatcher;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassloginServletextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

this.doPost(request,response);

}

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

Stringusername=request.getParameter("username");

Stringpassword=request.getParameter("password");

if(username.equals("")||password.equals("")){

}

elseif(username.equals("tcz")&&password.equals("0904")){

RequestDispatcherrdt=request.getRequestDispatcher("/studentShow.jsp");

rdt.forward(request,response);

}

else{

}

}

5程序运行与调试

5.1运行页面

图5-1帮助页面

5.2登入页面

图5-2登入页面

5.3查询页面

图5-3查询页面

5.4显示页面

图5-4显示学生页面

6总结

通过此次课程设计,将我本学期所学的软件工程知识得到巩固和应用,在设计的过程中我遇到了很到问题,不过在老师和同学们的帮助和自己的思考下还是很好的完成了。

这此课程设计还让我懂得了写程序不能闭门造车,要努力拓宽知识面,开阔视野,拓展思维。

它还让我学会了在网上查阅那些无限的资源。

在设计的过程中我们不可能做到面面俱到,但一定要扎实一定要保持自己的头脑清醒,以现实为依据,让自己的每一行代码都能实现自己的意义。

同时,自己还要加深学习,深入体会像jsp开发语言的优越性和与软件工程有关的一些方法,多了解之后才能做出功能更加强大的程序。

虽然这次的课程设计仍然存在不足的地方,但是通过这次的课程设计,加深了我对Java这门语言的了解和认识,也对面向对象这种方法有更深的印象,使我这学期所学的Java知识得到巩固和应用,在设计的过程中我遇到了很到问题,例如怎样使用图形界面,最初的设计只能够在命令栏中显示而不弹出图形界面,不过在老师和同学们的帮助以及自己的研究下还是顺利的完成此次的课程设计,非常感谢老师和同学给我的支持和帮助。

7参考文献

[1]《软件工程导论》(第5版)张海藩编著清华大学出版社

[2]《C程序设计》(第三版)谭浩强著清华大学出版社

 

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

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2