软件工程课程设计说明书

更新时间:2024-05-08 14:49:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

燕山大学

软件工程课程设计说明书

题目:

学院(系): 年级专业: 学 号: 学生姓名: 学 号: 学生姓名: 指导教师: 教师职称:

燕山大学课程设计(论文)任务书

院(系): 基层教学单位: 学 号 学 号 设计题目 根据设计题目完成如下设计任务: 设 计 内 容 设 计 要 求 1、 软件的需求分析。给出软件需求的描述,建立模型; 2、 软件的总体设计。给出软件结构设计的结果,并给出说明;进行数据库设计,并给出设计的表单等结果;根据需要可以进行界面设计。 3、 软件的详细设计。给出各模块内部算法和处理流程。 1、 第十八周—第十九周以组为单位进行软件需求的调研; 2、 第二十周完成课程设计报告的撰写和验收; 3、 课程设计根据模板给出的模式撰写; 4、 报告的正文的撰写参照毕业设计论文规范要求。 工 作 计 划 1. 第一天进行软件需求的调研,进行可行性分析。 2. 第二天完成需求分析,设计模块和总体结构框架。 3. 第三天按照小组分工,各自完成负责部分的内容 4. 第四天整合完成详细设计,撰写课程设计报告。 5. 第五天完善报告,进行项目答辩。 1. [1] 张海藩,《软件工程导论(第五版)》,清华大学出版社,2007 2. [2] 张娜,《Java web开发技术教程》,清华大学出版社,2010 3. [3] 施伯乐《数据库系统教程》,高等教育出版社,2008 基层教学单位主任签字 学生姓名 学生姓名 专业(班级) 专业(班级) 参 考 资 料 指导教师签字 说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。

年 月 日

燕山大学课程设计评审

工作分工: 姚远(组长): 梁作超: 姓名 姚远 梁作超 学号 110104010139 110104010120 成绩

年 月 日

摘 要

企业的进销管理往往是很复杂,繁琐的,根据当前的企业管理体制,一般商品的进销存管理系统总是根据所掌握的物资类别,相应分成几个科室进行物资的计划,订货,核对入库,根据企业各个部门的需要来发送物资设备,并随时近期进行库存盘点,作帐,根据企业领导和自身管理的需要进行统计分析,产生相应报表,为了加强关键物资,设备的管理,要定期掌握其储备消耗情况,根据计划定额和实际消耗定额的比较,进行定额管理。所以一个完整的企业进销存管理系统应包括基本信息管理,库存管理,系统管理,查询管理,商品管理,往来管理等到模块。

使用myeclipse作为开发工具,mysql作为数据库。使用JSP语言处理请求。

关键词 企业进销管理系统,基本信息管理,库存管理,系统管理,

查询管理,商品管理

第一章 绪论 ............................................................................................................................... 6

1.1课题背景 ....................................................................................................................... 6 1.2课题目的 ....................................................................................................................... 6 1.3课题意义 ....................................................................................................................... 6 1.4开发环境 ....................................................................................................................... 6 第二章 可行性分析 ................................................................................................................... 7

2.1经济可行性 ................................................................................................................... 7 2.2技术可行性 ................................................................................................................... 7 2.3操作可行性 ................................................................................................................... 8 2.4法律可行性 ................................................................................................................... 8 第三章 需求分析 ....................................................................................................................... 8

3.1系统需求分析 ............................................................................................................... 8

3.1.1用户(前台)功能 .......................................................... 错误!未定义书签。 3.1.2管理员(后台)功能 ...................................................... 错误!未定义书签。 3.2数据流程分析 ............................................................................................................. 10 3.3业务流程分析 ............................................................................................................. 11 3.4用例图分析 ................................................................................................................. 11

3.4.1管理者用例 ...................................................................... 错误!未定义书签。 3.4.2客户用例图 ...................................................................... 错误!未定义书签。 3.5数据字典 ..................................................................................................................... 11 第四章 总体设计 ..................................................................................................................... 12

4.1模块设计 ..................................................................................................................... 12

4.1.1前台功能分模块设计 ...................................................................................... 12 4.1.2后台功能分模块设计 ...................................................................................... 13 4.2系统功能结构设计 ..................................................................................................... 14

4.2.1系统结构设计的原则 ...................................................................................... 15 4.2.2系统安全性设计 .............................................................................................. 15 4.2.3系统的保密性设计 .......................................................................................... 15 4.3数据库设计 ................................................................................................................. 16

4.3.1 数据库概念结构设计 ..................................................................................... 16 4.3.2 数据库逻辑结构设计 ..................................................................................... 19 4.3.3 数据库物理结构设计 ..................................................................................... 20

第五章 详细设计 ..................................................................................................................... 23

5.1前台功能分模块详细设计 ......................................................................................... 23 5.2后台功能分模块详细设计 ......................................................................................... 24 第六章 心得体会 ..................................................................................................................... 25 第七章 参考资料 ..................................................................................................................... 27

第一章 绪论

1.1课题背景

在进销存管理系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立资料一致性和完整性强、资料安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。随着科学技术的不断提高,计算机科学日渐成熟,强大的功能已为人们深刻认识,进销存管理系统的开发的环境越来越优越,同时功能也变得越来越强大。企业使用进销存管理系统即有宏观上的意义,那就是顺应时代信息化、现代化潮流,提高效益;也有微观上的意义,那就是可以提高管理的现代化程序,加强管理的信息化手段,提高工作效率。

1.2课题目的

随着社会的进步和计算机的不断普及,各行各业的管理、控制都越来越离不开计算机的辅助。“某进销存管理系统”的开发就是为了辅助大多数企业的基本管理,实现信息管理的系统化、规范化和自动化。

1.3课题意义

简化人们日常工作中的大量机械重复的操作,使一些过程繁琐且数据量大的工作得已高效的进行,进销存管理系统还可以通过对数据的有效控制,实现对工作流层的控制、协调,从而提高企业的竞争力。

1.4开发环境

操作系统:XP或WIN 7

浏览器:IE 6.0及以上版本或Firefox浏览器 开发工具:Myeclipse和Mysql数据库

6

开发语言:JSP

软件文档的开发和编制:WPS

第二章 可行性分析

可行性分析是依据初步调查的结果作出系统开发可行性与否的结论的过程。可行性分析是从经济可行性、技术可行性、操作可行性和法律可行性三个方面考虑的,论证系统开发是否可行。

2.1经济可行性

本系统开发在软件方面主要使用了JSP网站设计技术、MyEclipse10、MySQL后台数据库等软件,在在windows平台下也可以运行,这些均可在网上下载获得,注册码且不涉及商业盈利问题,因此,在经济方面可行。

2.2技术可行性

本系统基于JSP技术以及Mysql进行联合开发。JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。就构成了JSP网页java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可以访问JSP网页。

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发

7

都选择MySQL作为网站数据库。

鉴于以上分析,系统开发在技术上是完全可行的。

2.3操作可行性

本系统由于使用JSP开发,开发完成是网页界面友好,操纵起来方面简单,只要用户详细阅读开发者对该系统制定的使用说明手册,用户很快便能上手,方便简单,且又不失实用。该系统主要基于Win7操作系统,用户基本上能够轻松的操作,这对于用户操作该系统也提供了一定的便利。用户可以通过系统直接完成各项操作,进行动态更新,而且可以比较直观的看到操作的效果。由于该系统开发工具具有的优点,使该系统在维护等其他方面的开销大大减少了。企业进销管理系统系统是一个小型的管理系统,所耗费的资源不大,用户的计算机无论是硬件还是软件都能够满足条件,因此,本系统在用户运行上是可行的。

2.4法律可行性

本系统完全自主开发,同时均采用正规出版社授权的正版书籍,不存在侵犯他人知识产权的行为,同时也没有损害国家、集体和他人的利益,各项工作的开展均按照国家法律规定的范围内进行,在系统设计的相关信息以及功能均没有超出法律的限制,在采用开发该系统的软件(MySQL和Myeclipse)也是经过软件研制方授权使用,且开发过程中使用的相关资源均是在法律上允许使用。因而,开发该系统不存在任何的违法行为,在法律上是可行的。

第三章 需求分析

3.1系统需求分析

企业进销存系统,包括1.用户登录、2.基本信息管理、3.进货管理、4.销售管理、5.查询管理、6.库存管理7.系统管理。

8

一、用户登录

输入用户名和密码,并进行验证,输出验证是否通过的信息。 二、基础信息管理

客户信息管理:客户信息添加(包括:客户名称、地址、电话、联系人、邮箱、银行账号、客户简称、邮政编码、传真、联系电话、开户银行)以及查询功能 。 商品信息管理:商品信息添加(包括:商品名称、产地、规格、数量、单位、备注)以及查询功能。

供应商信息管理:供应商信息添加(包括:供应商名称、地址、联系人、邮箱、联系人电话、银行账号)以及查询功能。 三、库存管理包括:

商品入库添加(包括:选择商品名称、数量、单价、操作员、入库时间、金额、应付价钱、未付价钱、经手人、结算方式) 。

商品入库退货:在入库退货单数据添加,同时库存数据添加或修改(包括:商品名称、数量、实付、操作员、退货日期、金额、应付、经手人、结算方式)。 库存查询。

商品价格修改(包括:商品名称、库存数量、库存金额、单价)。

四、商品销售管理

商品销售:在商品销售单添加数据,同时更新库存数据和在销售排行添加数据(包括:销售商品名称、销售票号、简称、产地、规格、包装、进价、库户全称、库存数量、单价、数量、金额、应收、实收、未收、操作员、经手人、销售日期、结算方式)。

商品退货:在商品退货单添加数据,同时更新库存数据(包括:退货商品名称、销售票号、简称、产地、规格、包装、进价、库户全称、库存数量、单价、数量、金额、应收、实收、未收、操作员、经手人、销售日期、结算方式)。

五、查询管理

销售信息查询;销售退货查询;商品入库查询;商品入库退货查询;销售排行查询。

六、出入库管理

9

商品销售结账信息查询和修改(输入商品名称和日期进行查询),可对查询出的每一条记录修改。

入库退货结账信息查询和修改(输入商品名称查询,),可对查询出的每一条记录可以进行修改。

销售结账查询(输入客户名称和日期进行查询, 或全部查询)。

商品入库结账单查询和修改(输入供应商名称查询, 或全部查询),可对查询出的每一条记录可以进行修改。

销售退货结账单查询和修改(输入货物名称,编号),查询出的一条记录可以进行修改。

入库结账单查询(输入入库票号、选择日期查询,或查询全部)。

七、系统管理

操作员管理;个人密码修改;权限修改。

3.2数据流程分析

10

4.2系统流程图

操作员 基础信息管理 库存管理 商品销售 查询统计 往来管理 管理员 系统管理 图4-2系统流程图

3.3业务流程分析 3.4用例图分析 3.5数据字典

(1)图书基本信息=编号+书名+作者+装帧+出版日期+积分+详细介绍+目录+用户评级分数+市场价+会员价+推荐+订购次数+查看次数+折扣+小类ID+大类ID+缩略图+添加日期+评级次数+VIP价格+出版社+ISBN+页数+开本+版次+简介

(2)评论信息=编号+对应产品编号+标题+日期时间+评论内容+是否通过

审核

(3)大类分类信息=编号+大类名+是否在首页显示+顺序

(4)小类分类信息=编号+小类名+是否在首页显示+顺序+对应大类编号 (5)管理员=编号+用户名+密码+权限

(6)用户信息=编号+用户名+e-mail+密码+身份证号+手机+QQ+注册日期+密码提示+密码答案+登录次数+最后一次登录时间+收货人姓名+城市+地址+邮编+电话+送货方式编号+汇款方式编号+性别+姓名+是否VIP用户+系统广播+用户积分

(7)汇款/送货信息=编号+送货/汇款方式名+价钱+送货/汇款方式编号 (8)订单表信息=编号+订单用户名+日期+产品编号+产品订购数量+订单编号+收货人+收货地址+邮编+留言信息+汇款方式编号+送货方式编号+性别+总金额+姓名+E-mail+电话+用户ID

第四章 概要设计

4.1模块设计

4.1.1前台功能分模块设计

1) 用户浏览:查看所有的书籍信息,可以分类查看,选择要购买的书籍。 2) 用户登录:输入用户名、密码登录,然后才能购买书籍。 3) 用户注册:新用户需要注册之后才能登录购买书籍。

12

图4.1前台功能模块

4.1.2后台功能分模块设计

1) 商品管理:添加新书、管理书籍、订单管理和评论管理; 2) 分类管理:大类管理和小类管理;

3) 用户管理:客户管理、用户管理、送货/汇款方式; 4) 注销退出:退出后台管理系统

图4.2后台功能模块

13

网上书城的总体层次图如下:

用户系统网上书店注册登陆图书订购订单管理用户注册用户登陆安全退出个人管理图书查询购物车管理查看详细信息查看订单修改订单撤销订单选购图书查看详细信息修改数量生成订单清空购物车管理员系统登陆用户管理订单管理图书管理查询用户删除用户查询订单确认订单删除订单查询图书添加图书修改图书删除图书 图4.3总体层次图

4.2系统功能结构设计

系统功能结构设计的主要任务就是根据系统的总体目标和功能,将整个系统合理地划分成若干个功能模块,正确处理模块之间的调用关系和数据关系,并根据评价标准对模块结构进行优化。

14

4.2.1系统结构设计的原则

(1)子系统要有相对的独立行

(2)子系统划分的结果应使数据冗余较小 (3)子系统的设置应考虑管理发展的需要 (4)子系统的划分应便于系统分阶段实现 (5)子系统的划分应考虑到各类资源的充分利用4.2.2系统安全性设计

(1)系统环境安全设计 (2)数据安全设计 (3)运行于维护的管理规范 (4)审计与跟踪

4.2.3系统的保密性设计

(1)利用系统环境提供的管理软件 (2)有选择的隔离和限制对资源的使用 (3)对一般用户采用伪藏措施 (4)制定系统保密管理的规章制度 (5)逻辑访问控制 (6)用户标识与认证

15

4.3数据库设计

4.3.1 数据库概念结构设计

(1)图书信息的E-R图

图4.4图书信息的E-R图

(2)评论信息的E-R图

16

图4.3评论信息的E-R图

(3)大类分类信息的E-R图

图4.4大类分类信息的E-R图

(4)小类分类信息的E-R图

图4.5小类分类信息的E-R图

17

(5)管理员信息的E-R图

图4.6管理员信息的E-R图

(6)用户信息的E-R图

(7)汇款/送货信息的E-R图

18

(8)订单表信息的E-R图

4.3.2 数据库逻辑结构设计

(1)图书基本信息表(编号,书名,作者,装帧,出版日期,积分,详细介绍,目录,用户评级分数,市场价,会员价,推荐,订购次数,查看次数,折扣,小类ID,大类ID,缩略图,添加日期,评级次数,VIP价格,出版社,ISBN,页数,开本,版次,简介)

(2)评论信息表(编号,对应产品编号,标题,日期时间,评论内容,是否通过审核)

(3)大类分类信息表(编号,大类名,是否在首页显示,顺序) (4)小类分类信息表(编号,小类名,是否在首页显示,顺序,对应大

19

类编号)

(5)管理员信息表(编号,用户名,密码,权限)

(6)用户信息表编号(编号,用户名,e-mail,密码,身份证号,手机,QQ,注册日期,密码提示,密码答案,登录次数,最后一次登录时间,收货人姓名,城市,地址,邮编,电话,送货方式编号,汇款方式编号,性别,姓名,是否VIP用户,系统广播,用户积分)

(7)汇款/送货信息表(编号,送货/汇款方式名,价钱,送货/汇款方式编号)

(8)订单表信息表(编号,订单用户名,日期,产品编号,产品订购数量,订单编号,收货人,收货地址,邮编,留言信息,汇款方式编号,送货方式编号,性别,总金额,姓名,E-mail,电话,用户ID)

4.3.3 数据库物理结构设计

(1)管理员信息表的实现:

字段名称 id admin password rank 数据类型 自动编号 文本 文本 数字 说明 编号 用户名 密码(MDS加密) 权限 (2)大类分类信息表的实现:

字段名称 categoryid catagory first categoryorder 数据类型 自动编号 文本 数字 文本 说明 编号 大类名 是否在首页显示 顺序 (3)小类分类信息表的实现:

字段名称 sortsid 数据类型 自动编号 说明 编号 20

sorts sortsorder categoryid first 文本 数字 数字 数字 小类名 顺序 对应大类编号 是否在首页显示 (4)汇款/送货方式表的实现:

字段名称 deliveryid subject fee methord deliveryidorder 数据类型 自动编号 文本 数字 数字 数字 说明 编号 送货/汇款方式名 价钱 0为送货方式 1为汇款方式 顺序 (5)订单信息表的实现:

字段名称 actionid username actiondate id productnum goods state recepit address postcode comments paymethord deliverymethord sex paid realname useremail usertel userid 数据类型 自动编号 文本 日期/时间 数字 数字 文本 数字 文本 文本 数字 备注 数字 数字 数字 数字 文本 文本 文本 数字 说明 编号 订单用户名 日期 产品编号 产品订购数量 订单编号 状态:1到5表示步骤,6表示在购物篮 收货人 收货地址 邮编 留言 汇款方式编号 送货方式编号 性别 总金额 姓名 Email 电话 用户ID (6)图书信息表的实现:

21

字段名称 id name author introduce productdate score detail content rank price1 price2 recommend solded viewnum discount sortsid categoryid pic adddate ranknum vipprice mark type pagenum productnum format design 数据类型 自动编号 文本 文本 文本 日期时/间 数字 备注 备注 数字 数字 数字 数字 数字 数字 数字 数字 数字 文本 日期/时间 数字 数字 文本 文本 数字 数字 数字 文本 说明 编号 书名 作者 简介 出版日期 积分 详细信息 目录 用户评级分数 市场价 会员价 推荐 订购次数 查看次数 折扣 小类id 大类id 缩略图 添加日期 评级次数 Vip价格 出版社 ISBM 页数 版次 开本 装帧 (7)评论信息表的实现:

字段名称 reviewid id title reviewdate reviewcontent audit

22

数据类型 自动编号 数字 文本 日期/时间 备注 数字 说明 编号 对应产品编号 标题 日期时间 评论内容 是否通过审批

(8)用户信息表的实现:

字段名称 userid username useremail password identify mobile userqq adddate question answer loginnum lastvst recepit city address postcode usertel shippingnum remittancenum ifvip userscore sex broadcast 数据类型 自动编号 文本 文本 文本 数字 数字 数字 日期/时间 文本 文本 数字 日期时间 文本 文本 文本 文本 文本 数字 数字 文本 数字 文本 文本 说明 编号 用户名(登录时用) Email 密码(MD5加密) 身份证号 手机 QQ 注册日期 密码提示 密码答案 登陆次数 最后一次登录时间 收货人姓名 城市 地址 邮箱 电话 送货方式编号 汇款方式编号 是否是Vip 用户积分 性别 系统广播 第五章 详细设计

5.1前台功能分模块详细设计

流程图如下:

23

开始是否注册过注册登录是否成功是否成功NOYESYESNO修改个人信息查询图书YESNO修改个人信息购物车是否成功提交订单NOYES是否成功交易成功结束图 5.1

5.2后台功能分模块详细设计

流程图如下:

24

开始管理员登录NO是否成功YES增加图书分类增加图书结算订单用户修改NO处理YES修改图书类型YES修改图书处理NO处理YES修改订单NO处理YESNO删除用户NO处理YES删除图书信息NO处理YES处理处理YES删除图书NO处理YES删除订单NO处理YESNONOYES停止YESNO处理 图5.2

第六章 心得体会

本次软件工程课程设计我们小组选择的课题是“网上书店”,在不到一周的时间里,我们小组成员从无从下手毫无思路到后来反复翻阅课本,按照《软件工程导论》所学的知识从可行性研究开始一步步地完成了开发“网上书店”管理系统所必要的软件工程学方法设计内容。

万事开头难,虽然课题说明上只有简单的四条要求,这让之前没有接触过

25

软件工程学设计的我们一头雾水不知该如何下笔,最后只有回归课本,按照软件导论课上老师所讲过的方法进行分析研究。小组成员通过体验现有的网上书城是如何在前台实现顾客注册登录、购书等一系列行为操作的。并结合实际情况设计后台管理模块。

遗憾的是,由于我们水平有限,我们小组只研究到详细设计环节,没能编码做出网上书店成品来。致使后面的软件测试和维护也就只好不了了之。

课程设计是快乐和痛苦并存的过程,小组成员起初总是为了概念的问题而产生分歧,为了某个模块具体的操作流程而捉襟见肘,暴露出知识上的不足。我们也会因为些许的进展而高兴,因为解决了一个简单的但是困扰多时的阻碍点而兴奋。克服困难、获得知识是让人快乐的,它所产生的快乐也让当初的痛苦更有价值。

在课设过程中,我们收获的不仅是这单纯的快乐,还深深的体会到团队精神的重要性,一个人的知识是有限的,但是一个团队可以取长补短,互相学习。每个人都有自己的长处,合理的分工和默契的配合让我们在磨合中成长,我们的课题进度也在一次次针锋相对的讨论中稳步向前。团队合作永远比单枪匹马的重逢更高效更容易成功。

不懂得坚持的人不会体验到最后成功时刻的甜蜜,当面对课题一筹莫展的时候我们想到了放弃,当辛苦半天一无所获得时候我们想到了放弃,但最终这也只是一时的念头,我们互相鼓励互相支持坚持到最后。要是当初一遇到困难我们就选择逃跑的话,我们终将一事无成一败涂地。

更重要的是,课程设计提高了我们的动手实践能力。以前对于课本上的内容只是机械的记忆并不能完全真正理解。学到最后也没有明白软件工程的重要性,背过的东西考完也就全忘光了。通过这短短的一周课设,我们相当于把软件工程导论从头到尾彻底重新学习了一遍,并且把每一个知识点都实际演练过。对各环节之间循序渐进的关系也有了较为深刻的认识。以前总是异想天开的认为开发软件只要写好代码就万事大吉了,现在才明白软件工程方法学的重要性,没有科学的运用软件工程方法学,所写的代码可能会杂乱冗长,质量不高。编好的软件错误不断,运行维护成本高昂,不能满足用户需求成为没有实际意义的废品。第一次感知到了,原来需求分析,前期设计都是那么重要,第一次感觉到了,原来一个程序的灵魂不一定是算法和数据结构。最关键的是前

26

期的需求,加之对于需求的分析。程序只是一种实现方式,是决定易用性和友好性的关键,但符不符合客户的需求,才是一个工程最核心,最关键,也是最基础的部分。

最后要感谢老师和同学们的悉心指导和帮助,谢谢!

第七章 参考资料

[1] 张海藩,软件工程导论(第五版),清华大学出版社,2007

27

本文来源:https://www.bwwdw.com/article/ibwg.html

Top