软件工程课程设计.docx

上传人:b****4 文档编号:4237022 上传时间:2022-11-28 格式:DOCX 页数:55 大小:576.29KB
下载 相关 举报
软件工程课程设计.docx_第1页
第1页 / 共55页
软件工程课程设计.docx_第2页
第2页 / 共55页
软件工程课程设计.docx_第3页
第3页 / 共55页
软件工程课程设计.docx_第4页
第4页 / 共55页
软件工程课程设计.docx_第5页
第5页 / 共55页
点击查看更多>>
下载资源
资源描述

软件工程课程设计.docx

《软件工程课程设计.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计.docx(55页珍藏版)》请在冰豆网上搜索。

软件工程课程设计.docx

软件工程课程设计

t

华科学院计算机科学与技术专业

《软件工程课程设计》报告

——办公用品管理系统

(2010/2012学年第一学期)

 

学生姓名:

许世华

学生班级:

计算机082201H

学生学号:

200822030107

指导教师:

赵淑芳

2011年12月26日

第一章系统概述

办公用品管理系统是为各个企、事业单位做铺设计服务的,是企、事业不可或缺的一个软件。

本系统具有界面清晰、操作简易、存储数据安全性高等特点,考虑到人们的一些操作习惯,提高了其的可操作性,完全能够满足你的需求。

这是一款针对中小企业设计的程序。

有了它,您可以轻松管理您的数据库,方便的进行用品管理,灵活的搜索和查询功能使您完全摆脱传统管理模式下经营者面对庞大的办公用品,不知道有哪些用品,缺哪些物品,数量有多少。

随着科学技术的不断提高,计算机科学的日渐成熟,计算机的强大功能已被人们深刻地认识,它已经和现代社会的发展隔离不开了。

越来越多的人用计算机来处理日常事务,使计算机的应用得到普及,这样就创造出以计算机为基础的一系列生活方式。

不仅如此,计算机还被广泛的应用到商业上,越来越多的人们意识到计算机给自己带来的方便以及他所创造的巨大财富。

人们开始把计算机应用到现代的各个领域中,可以不客气地说,现代社会是一个计算机时代,如果没有计算机的应用,我们的发展就不会如此之快!

现如今,每个企业经营者,都在利用规范的管理流程来提高企业的效益。

可这一切仅靠人是很难及时准确地完成包括统计在内的工作。

针对这些企业办公用品管理存在的缺陷,我开发了这个办公用品管理系统,目的是要做到科学化、自动化、系统化、规范化,用电脑管理来替代原来以手工、简单、繁琐的办公用品管理,为广大企、事业单位提高管理效益助一臂之力。

办公用品管理系统将成为每个企、事业的小当家,在理清家务的同时,减少浪费,花出该花的,省下可省的弥补企业管理上的漏洞,提高管理员的工作效率,为公司带来经济效益。

第二章需求分析

2.1系统需求分析

需求分析是对用户需求的真正明确,是对要解决的问题的彻底理解。

需求分析也是一个建模的过程,与在概要设计中建模不同在需求分析中建模是面向用户的过程。

这个阶段的任务仍然不是具体地解决问题,而是准确地确定目标系统必须做什么,主要是确定目标系统必须具备哪些功能。

2.1.1理解需求

本系统的实现为管理人员提供办公用品的库存、采购、库存报警、以及库存、采购、领用查询统计等功能,以实现办公室办公用品管理的系统化、规范化、网络化、自动化。

2.1.2分析需求

为了实现系统以上功能我对该系统做出如下功能需求分析:

1.管理员对各种基本信息的录入

包括对用户信息、用户权限信息、供应商信息、计量单位信息、部门信息、员工信息、库位信息、库存上下限等信息的录入,这些信息是这个系统运行的基础数据。

2.用户登陆

为使系统中数据不被不是本企业的人员访问,需对用户进行合法性验证。

3.用户管理

由于企业人员变动大,需要时常对用户进行增加、删除、修改用户信息。

4.入库管理

即是对入库信息进行管理、存储。

5.领用管理

即是对领用信息进行管理、存储。

6.库存统计

即是随时对所有办公用品数量进行统计。

7.库存报警

当库存超过库存上限或者低于库存下限则产生库存报警信息

8.用品类别维护

对办公室的办公用品种类进行管理

2.2数据流图

数据流图是SA方法中用于表示系统逻辑模型的一种工具。

它以图形的方式描述数据在系统中流动和处理的过程,它只反映系统必须完成的逻辑功能,所以它是一种功能模型。

数据流图有四种基本图形符号:

“→”箭头表示数据流;“○”圆或椭圆表述加工;“=”双杠表示数据存储;方框表示数据的源点或终点。

[6]为实现本系统设计的所有数据流图如下图2-1所示

图2.1系统数据流图

2.3数据字典

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

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

数据项、文件(数据结构)、数据流、数据存储、加工和外部项等给以定义和说明;它主要由数据流描述、加工描述和文件描述三部分组成。

从上面数据流图可知,本系统包含以下数据流、数据存储、数据加工。

1、数据流

 

 

 

 

 

 

 

 

 

 

 

 

2、数据存储

数据存储名称:

用户信息

别名:

简述:

对各部门使用系统的人员进行存储管理。

组成:

用户名+密码

组织方式:

索引文件,用户名为关键字

查询要求:

要求能立即查询

数据存储名称:

权限信息

别名:

简述:

对用户权限信息进行存储管理。

组成:

用户名+权限

组织方式:

索引文件,用户名为关键字

查询要求:

要求能立即查询

数据存储名称:

员工信息

别名:

简述:

对各部门员工基本信息进行存储管理。

组成:

员工编号+姓名+所属部门+电话

组织方式:

索引文件,员工编号为关键字

查询要求:

要求能立即查询

数据存储名称:

部门信息

别名:

简述:

对部门信息进行存储管理。

组成:

部门编号+名称+负责人+部门办公室电话

组织方式:

索引文件,部门编号为关键字

查询要求:

要求能立即查询

 

数据存储名称:

供应商信息

别名:

简述:

对供应商信息进行存储管理

组成:

供应商名称+负责人+电话+详细地址

组织方式:

索引文件,供应商名称为关键字

查询要求:

要求能立即查询

数据存储名称:

计量单位信息

别名:

简述:

对计量单位信息进行存储管理。

组成:

办公用品名称+计量单位

组织方式:

索引文件,以办公用品名称为关键字

查询要求:

要求能立即查询

数据存储名称:

库位信息

别名:

简述:

对仓库库位信息进行存储管理。

组成:

库位编号+仓库号+位号+库位描述

组织方式:

索引文件,以库位编号为关键字

查询要求:

要求能立即查询

数据存储名称:

库存上下限信息

别名:

简述:

对库存上下限信息进行存储。

组成:

用品类别编号+上限+下限

组织方式:

索引文件,以为用品类别编号关键字

查询要求:

要求能立即查询

数据存储名称:

办公用品类别信息

别名:

简述:

对所有办公用品类别信息进行存储。

组成:

办公用品类别编号+名称+规格+供应商

组织方式:

索引文件,以办公用品类别编号为关键字

查询要求:

要求能立即查询

数据存储名称:

办公用品价格信息

别名:

简述:

对所有办公用品价格数据进行存储。

组成:

办公用品类别编号+价格+生效日期+失效日期

组织方式:

索引文件,以办公用品类别编号为关键字

查询要求:

要求能立即查询

 

数据存储名称:

入库信息

别名:

简述:

对入库信息进行存储。

组成:

入库单编号+用品类别编号+计量单位+数量+入库日期+库位编号

组织方式:

索引文件,以入库单编号,用品类别编号为关键字

查询要求:

要求能立即查询

数据存储名称:

领用出库信息

别名:

简述:

对所有领用出库信息数据进行存储。

组成:

商品编码+商品名称+规格+计量单位+库存上限+库存下限

组织方式:

索引文件,以商品编码为关键字

查询要求:

要求能立即查询

数据存储名称:

采购信息

别名:

简述:

将采购信息进行存储。

组成:

采购表单号+用品类别编号+采购单价+采购数量+采购费用+采购员+

采购日期

组织方式:

索引文件,以采购表单号,用品类别编号为关键字

查询要求:

要求能立即查询

数据存储名称:

库存统计信息

别名:

简述:

对所有库存统计信息进行存储。

组成:

办公用品类别编号+数量+计量单位+统计日期

组织方式:

索引文件,办公用品类别编号,统计日期为关键字

查询要求:

要求能立即查询

数据存储名称:

库存报警信息

别名:

简述:

对所有库存报警信息进行存储。

组成:

报警信息编号+办公用品类别编号+报警信息+报警日期

组织方式:

索引文件,报警信息编号,办公用品类别编号为关键字

查询要求:

要求能立即查询

 

2.4系统E-R图

通过对本系统的分析主要包含以下实体

图2.2供应商实体

图2.3用户实体

图2.4库存办公用品实体

图2.5入库办公用品实体

图2.6领用办公用品实体

第三章总体设计

3.1系统的主要功能

1、仓库各种信息的输入,包括入库,借出,归还,需求信息的输入等

2、办公用品管理系统的各种信息查询,修改和维护

3、在库存管理中加入最高储备和最低储备字段,对仓库的设备实现监控和报警

4、对仓库用品的进货管理,对需求人员的用品需求管理

5、操作日志的管理

6、仓库用品管理系统的使用帮助

3.2系统结构图及系统流程图

图3.1系统机构图

图3.2系统流程图

 

第四章详细设计

4.1数据库设计

数据库结构设计是总体设计阶段非常重要的环节,好的数据库结构可以简化开发过程,使系统功能更加清晰明确。

因为数据库结构的变化会造成编码的改动,所以必须认真设计数据结构后再进行编码,从而避免无谓的重复工作。

本系统数据库文件为“Office.mdb”,数据库中包含8个表,部门信息表Department、分类信息表Types、供应商信息表Supplier、库存信息表Store、入库信息表StoreIn、领用信息表Draw、领用信息明细表DrawList、用户信息表Users

1.部门信息表Department

表Department用来保存部门信息信息,结构如下:

 

Department

DepId

DepName

1

技术中心

2

销售中心

3

办公室

4

人力资源部

2.分类信息表Types

表Types用来保存办公用品分类信息

Types

TypeId

TypeName

UpperId

1

公文包

0

2

签字笔

0

3

打印纸

0

4

A4纸

3

5

A3纸

3

6

帕克签字笔

2

7

软牛皮包

1

8

计算器

0

9

胶水

0

10

大胶水

9

11

剪刀

0

12

日历

0

14

小规格

12

15

中规格

12

16

普通签字笔

2

 

3.供应商信息表Supplier

表Supplier用来保存办公用品的供应商信息,结构:

Supplier

SId

SName

Tel

Address

Contact

Memos

1

北京七七贸易公司

3333

亮马河

往昔

2

宁夏网和技术公司

55555

宁夏

王明

4.库存信息表Store

表Store用来保存办公用品的库存信息,结构:

Store

OId

OName

OStyle

TypeId

OAmount

OMin

Memos

1

999

kkk

7

99

20

2

帕克签字笔

B1

6

9

5

3

dayinzhi

A4

4

30

10

5.入库信息表StoreIn

表StoreIn用来保存办公用品的入库信息

StoreIn

InId

OId

InDate

SId

InAmount

InSum

Memos

Flag

1

1

2005-3-4

1

10

200

1

2

2

2005-4-4

1

8

30

30

1

3

2

2006-3-2

1

20

200

1

4

1

2006-3-7

2

80

900

1

5

1

2006-3-9

2

6

60

df

1

6

2

2006-3-7

2

1

2

1

6.领用信息表Draw

表Draw用来保存办公用品的领用信息,结构

Draw

Id

CreateDate

DepId

Flag

1

2005-12-27

1

1

3

2006-2-3

2

1

4

2006-3-7

3

1

7.领用信息明细表DrawList

表DrawList用来保存家庭成员信息,结构

DrawList

Id

DId

OId

OAmount

2

1

1

1

3

1

2

1

5

3

2

2

6

4

1

2

7

3

1

3

8.用户信息表Users

表Users用来保存系统用户信息,结构

Users

UserName

UsePwd

Admin

111111

Users

111111

4.2入库管理模块

入库管理模块就是对入库信息进行管理、存储。

在入库时

IF入库单中要入库办公用品的数量<=库存上限-当前库存THEN

可入库的数量为入库单要入库办公用品的数量

    ELSE

可入库数量为库存上限-当前库存

     ENDIF

其流程图如下图4.1所示

图4.1入库流程图

4.3领用出库管理

领用出库管理模块就是对领用信息进行管理、存储。

在出库时

IF领用清单中要领用办公用品的数量<=当前库存-库存下限THEN

可领用的数量为领用清单中要领用办公用品的数量

    ELSE

可领用的数量为当前库存-库存下限

     ENDIF

其流程图如下图4.2所示

图4.2领用出库流程图

4.4库存报警的详细设计

库存报警模块实现当办公用品库存超过库存上限或者低于库存下限产生报警信息。

也即是:

IF当前库存<库存下限THEN

产生“当前库存低于库存下限”

    

ENDIF

IF当前库存>库存上限THEN

产生“当前库存已经超过库存上限”

    

ENDIF

其流程图如下图4.3所示

图4.3库存报警流程图

第五章编码实现

办公用品管理系统是一个数据库应用程序,由启动窗体、登录模块、系统主界面、基本信息管理模块、办公用品信息管理模块、数据统计管理模块等组成,具体的功能模块如下:

5.1基本信息管理模块设计:

5.1.1分类管理模块

分类信息管理窗体的名称为Frmtypeman,窗体布局如图所示

可以看到,分类信息可以分为一级分类和二级分类两种,每个二级分类必须有对应的一级分类作为其上级分类。

窗体主要代码如下:

PublicOriT1NameAsString

PublicOriT2NameAsString

PrivateSubCmd_Add_Click()

IfLen(Trim(txtName))=0Then

MsgBox"请输入分类名称"

txtName.SetFocus

ExitSub

EndIf

'判断当前选择按钮值

IfOption1.Item(0).Value=TrueThen'选择一级分类

'判断一级分类名称是否已存在

IfMyType.In_DB(Trim(txtName))Then

MsgBox"分类名称已存在"

ExitSub

Else

MyType.TypeName=Trim(txtName)

MyType.UpperId=0

MyType.Insert

MsgBox"添加成功"

LoadTypes

txtName=""

EndIf

Else'选择二级分类

'首先判断是否选择了一级分类名称

IfDataList1.SelectedItem>0Then

'判断二级分类名称是否已存在

IfMyType.In_DB(Trim(txtName))Then

MsgBox"分类名称已存在"

ExitSub

Else

MyType.TypeName=Trim(txtName)

MyType.UpperId=DataList1.BoundText()

MyType.Insert

MsgBox"添加成功"

LoadTypes

SetDataList2.RowSource=Nothing

DataList1.Enabled=True

DataList2.Enabled=False

txtName=""

Option1.Item(0).Value=True

Option1.Item

(1).Value=False

EndIf

Else

MsgBox"请选择上级分类"

ExitSub

EndIf

EndIf

EndSub

PrivateSubCmd_Back_Click()

UnloadMe

EndSub

PrivateSubCmd_Del_Click()

'判断当前选择按钮值

IfOption1.Item(0).Value=TrueThen'选择一级分类

'判断是否选择了一级分类

IfDataList1.SelectedItem>0Then

'如果此一级分类存在下级分类,则不允许删除

IfMyType.HaveSon(DataList1.BoundText())Then

MsgBox"存在二级分类,不能删除"

ExitSub

Else

MyType.Delete(DataList1.BoundText())

MsgBox"删除成功"

LoadTypes

txtName=""

EndIf

Else

MsgBox"请选择一级分类"

ExitSub

EndIf

Else

'判断是否选择了二级分类

IfDataList2.SelectedItem>0Then

'判断办公用品表中是否已经使用了此分类编号

IfMyStore.HaveTId(DataList2.BoundText())Then

MsgBox"办公用品表中存在此分类,不能删除"

ExitSub

Else

MyType.Delete(DataList2.BoundText())

MsgBox"删除成功"

LoadTypes

SetDataList2.RowSource=Nothing

DataList1.Enabled=True

DataList2.Enabled=False

txtName=""

Option1.Item(0).Value=True

Option1.Item

(1).Value=False

EndIf

Else

MsgBox"请选择二级分类"

ExitSub

EndIf

EndIf

EndSub

PrivateSubCmd_Modi_Click()

IfLen(Trim(txtName))=0Then

MsgBox"请输入分类名称"

txtName.SetFocus

ExitSub

EndIf

'判断当前选择按钮值

IfOption1.Item(0).Value=TrueThen'选择一级分类

'判断是否选择了一级分类

IfDataList1.SelectedItem<1Then

MsgBox"请选择一级分类"

ExitSub

EndIf

'判断是否修改了一级分类名称

IfTrim(txtName)<>Trim(OriT1Name)Then

'判断新的一级分类名称是否存在

IfMyType.In_DB(Trim(txtName))Then

MsgBox"分类名称已存在"

ExitSub

Else

MyType.TypeName=Trim(txtName)

MyType.Update(DataList1.BoundText())

MsgBox"修改成功"

LoadTypes

txtName=""

EndIf

EndIf

Else'选择二级分类

'首先判断是否选择了二级分类名称

IfDataList2.SelectedItem>0Then

'判断是否修改了一级分类名称

IfTrim(txtName)=Trim(OriT2Name)Then

ExitSub

EndIf

'判断新的二级分类名称是否存在

IfMyType.In_DB(Trim(txtName))Then

MsgBox"分类名称已存在"

ExitSub

Else

MyType.TypeName=Trim(txtName)

MyType.Update(DataList2.BoundText())

MsgBox"修改成功"

LoadTypes

SetDataList2.RowSource=Nothing

DataList1.Enabled=True

DataList2.Enabled=False

txtName=""

Option1.Item(0).Value=True

Option1.Item

(1).Value=False

EndIf

Else

MsgBox"请选择二级分类"

ExitSub

EndIf

EndIf

EndSub

PrivateSubDataList1_Click()

'当选择一级分类名称时,将分类编号和名称赋给变量,同时将二级分类变量置为空,并装入二级分类名称

IfDataList1.SelectedItem>0Then

OriT1Name=Trim(DataList1.Text)

txtName=OriT1Name

LoadTypes2

EndIf

EndSub

PrivateSubDataList2_Click()

IfDataList2.SelectedItem>0Then

OriT2Name=Trim(DataList2.Text)

txtName=OriT2Name

EndIf

EndSub

PrivateSubForm_Load()

LoadTypes

DataList2.Enabled=False

EndSub

'装入一级分类名称

PrivateSubLoadTypes()

Adodc1.ConnectionString=Conn

Adodc1.RecordSource="Select*FromTypesWhereUpperId=0OrderByTypeId"

Adodc1.Refresh

SetDataList1.RowSource=Adodc1

DataList1.ListField="TypeName"

DataList1.BoundColumn="TypeId"

EndSub

'根据一级分类编号装入二级分类名称

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

当前位置:首页 > 法律文书 > 判决书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1