宠物店管理系统.docx

上传人:b****8 文档编号:8948636 上传时间:2023-02-02 格式:DOCX 页数:16 大小:143.12KB
下载 相关 举报
宠物店管理系统.docx_第1页
第1页 / 共16页
宠物店管理系统.docx_第2页
第2页 / 共16页
宠物店管理系统.docx_第3页
第3页 / 共16页
宠物店管理系统.docx_第4页
第4页 / 共16页
宠物店管理系统.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

宠物店管理系统.docx

《宠物店管理系统.docx》由会员分享,可在线阅读,更多相关《宠物店管理系统.docx(16页珍藏版)》请在冰豆网上搜索。

宠物店管理系统.docx

宠物店管理系统

大连理工大学数据库原理大作业(论文)

宠物店管理系统数据库设计

姓名:

陈娟专业:

软件工程班级:

0913学号:

姓名:

陈才峰专业:

网络工程班级:

0913学号:

姓名:

徐洋专业:

软件工程班级:

0911学号:

姓名:

刘东洋专业:

软件工程班级:

0913学号:

姓名:

王肖朴专业:

软件工程班级:

0913学号:

指导教师:

****************

评阅教师:

丁锋

完成日期:

2011年10月日

大连理工大学

DalianUniversityofTechnology

1.业务规则1

1.1背景分析1

1.2前期工作1

1.3业务需求概述1

1.3.1宠物店的体系结构1

1.3.2系统应具备的功能2

1.3.3四个功能子模块2

2.业务流程5

2.1系统的业务过程描述5

2.2系统的数据流程设计6

3.概念设计8

4.逻辑设计10

4.1实体—关系属性10

4.2关系模式10

5.规范化分析14

5.1任务和目标14

5.2具体关系表的设计与优化14

6.物理设计16

7.SQL部分19

1.业务规则

1.1背景分析

谈到宠物,人们通常会将其与猫、鱼、鸟等许多小动物联系起来。

随着人们日常生活的丰富多彩,人们对新事物的不断追求,使得各种各样的个性宠物不断出现。

最近,宠物市场上新现了例如蜥蜴、变色龙、蛇、蜘蛛、蜈蚣、老鼠等与我们日常生活中或惯常思维所理解的宠物不一样的“另类宠物”,不断满足着人们喂宠物的需要。

当然随着这一发展驱趋势,提供给人们各个种类宠物的宠物店则如雨后春笋般涌现。

宠物店是专门为宠物提供宠物用品零售、宠物美容、宠物寄养、宠物活体销售的场所。

其经营项目一般包括宠物用品超市、活体销售、宠物美容、宠物寄养、宠物医疗、宠物乐园、宠物摄影、待产养护。

有时宠物店又等同于宠物用品店、宠物美容店、宠物寄存、宠物医院等。

本系统专门为实体宠物店设计,主要包括了宠物用品销售、宠物店人员管理、宠物售后管理、宠物管理、宠物交易等多种业务管理,汇集了商业pos前台销售,解决宠物店进销存繁琐问题,建立丰富的宠物资料,顾客资料;还包含了丰富的营业汇总报表,让宠物店营业情况一目了然。

宠物销售过程中利用信息技术,数据库技术运行需求、价格等发布与收集,为实体宠物店提升形象,方便宠物店销售管理,增进顾客关系,改善顾客服务,开拓销售渠道等,最终方便管理以及扩大销售。

1.2前期工作

在编写该需求之前,首先对各大宠物管理系统(比如汉思宠物店管理系统)进行了调查,其中包括宠物前台管理、宠物后台管理、管理员操作等进行了详细的研究,并总结出了自己简洁独特、操作方便、适合于小型宠物实体店的设计思路。

1.3业务需求概述

1.3.1宠物店的体系结构

宠物店管理可以划分为以下4个子模块:

人员管理、交易管理、售后管理和库存管理这4个子模块。

其中交易管理子模块是核心,因为它是整个宠物店的经济来源支柱,下有订单管理和顾客信息管理两个子功能模块,其余三个子模块为这个模块提供服务。

交易管理功能部分负责管理顾客信息和订单信息,其中订单主要涉及与顾客的宠物和宠物物品的交易,宠物管理管理为其提供资金来源,库存管理子模块管理宠物店宠物和宠物物品资源,保证宠物店正常地进行交易。

人员管理子模块为其调度必要的工作人员,保证各个交易环节的人力资源能满足工作的需要。

售后管理子模块提供了顾客对于宠物和宠物物品的反馈信息,这些信息用来指导宠物采购员进行采购和为交易中顾客提供方便。

1.3.2系统应具备的功能

详细记录宠物店每天的交易情况,比如交易数量、交易金额数目、日期、顾客信息等;

宠物店的每个员工的信息都有存根,具有不同权限的用户可以查询到的员工信息的完整度也是不同的;

宠物店每次的交易后都会及时去获取顾客的反馈信息,通过顾客及时电话反馈或者宠物店专门人员打电话询问获取;

宠物店的库存涉及到宠物和宠物物品,库存信息每天都会得到及时更新,采购人员根据库存量和顾客的反馈信息以及销售情况进行及时采购;

数据库的信息可以随时更新。

1.3.3四个功能子模块

交易管理

Ø顾客信息管理

每位顾客对应一个顾客号,每个顾客号只标识一个顾客;

每个顾客号有一个固定电话,每个固定电话标识一个顾客;

一位顾客可以购买多项商品呢,每项商品仅有一位顾客购买;

每位顾客可以提供给宠物店多条反馈信息,每条反馈信息只能由一位顾客提供。

Ø订单管理

✓宠物订单管理

每张订单可以显示多项每个宠物实体,具有相应的属性,如购买时间、总价钱和数量。

✓宠物物品订单管理

每张订单可以显示多项宠物物品信息,具有相应的属性,如购买时间、总价钱和数量。

人员管理

Ø人员信息管理

每个员工有一个职员号,每个职员号标识一个员工;

每个员工领取一份工资,每份工资由一个员工享有;

一名应聘者可以应聘多家宠物店,一个宠物店可以考核多名应聘者;

一名培训师可以培训多名新员工,一个新员工只能由一名培训师培训;

一个工作模块只有一名负责人,一名负责人只能管理一个工作模块;

一个负责人可以领导多名员工,一名员工只能被一个负责人管理;

一名员工只能负责一项工作,一个工作有多名员工;

Ø人员工资管理

每份工资只属于一名员工,每名员工只能得到一份工资;

每份工资和每个职位对应,每个职位上有多名员工因此对应多份工资‘

Ø管理员身份验证

每个宠物店只有一个管理员,一个管理员只能管理一个宠物店;

管理员具有更高权限,可以查看普通员工无法查看到的信息。

库存管理

Ø宠物信息管理

每个宠物对应一个宠物种类,每个宠物种类对应多个宠物;

每个宠物对应一个商品项,每个商品项对应多个宠物;

每个宠物只有一个宠物号,每个宠物号由一个宠物拥有;

每个宠物有一个宠物名,每个宠物名由一个宠物拥有。

Ø宠物物品信息管理

每件宠物物品有一个宠物用品号,每个宠物用品号标识一件宠物物品;

每件宠物物品属于一个用品种类,每个物品种类有多件宠物物品;

每件物品对应一个商品项,每个商品项对应多件宠物物品。

售后管理

Ø售后反馈信息管理

每个顾客可以提供多条反馈信息,每条反馈信息只能由一名顾客反馈;

每条反馈信息可以对应多项商品,每项商品只能在一条反馈信息中出现。

图1.1宠物管理系统功能图

经过总结归纳我们得到图1.1需求功能图:

功能层次图在系统的需求分析的阶段是不可缺少的,它主要描述了系统层次结构,从大的功能点出发,每个功能点下面又可以分为小的功能结构,这样的话,系统的每个分支都可以清晰的表达出来,对后期子工程的划分起到启发作用。

2.业务流程

2.1系统的业务过程描述

现在用例图已经是面向对象软件的基础建模语言,已经成为了规范化,所以这里采用用例来描述。

在用例方法中,主要纪录的是参与者与系统每一次交互的轨迹,针对用例的设计可以覆盖系统中每个CASE的路径,也就是细化到每一条代码语句的执行。

引入用例也有多多好处:

(1)方便系统分析人员和业务人员的沟通;

(2)方便系统分析人员对系统范围和规模有大概认识;

(3)方便构建测试用例,方便分析人员明确系统功能;

(4)方便接口设计人员尽早介入设计开发过程。

图2.1宠物管理系统用例图

通过对宠物市场进行查询和了解,现行的一些网上宠物店规模庞大,业务繁琐,则相应

的管理系统也十分复杂。

但是考虑到人们在购买宠物和宠物物品这一方面的消费习惯,大多数消费者还是选择去实体店进行挑选和购买,那么这时候负责的宠物店管理系统略显大材小用,则面向小型实体宠物店管理的简单快捷的宠物店管理系统应该走向市场,本宠物店管理系统则主要面向小型实体宠物店。

本系统只涉及宠物店管理者,通过与宠物店管理者进行交互完成一系列功能。

通过图2.1宠物管理系统用例图描述本系统与管理员之间的交互:

2.2系统的数据流程设计

当信息在软件中移动时,它将被一系列“变换”所修改。

数据流图(DFD)是过程模型的体现,它描述数据如何在系统变化,也就是说经过每次不同功能点的处理,数据被加工后传递到下一个流向,数据从哪里获取,又最终会存取在那里,这就是数据流图体现的技术。

数据流图主要包括过程,数据流,数据存储,外部实体。

画数据流图的基本目的是利用它作为交流信息的工具。

我们把对现有系统的认识或对目标系统的设想用数据流图描绘出来,如图2.2宠物管理系统数据流。

图2.2宠物店管理系统数据流图

由该数据流图我们可以发现5种数据流:

订信信息、职工信息、宠物物品信息、宠物信息、反馈信息。

下面就5种数据流进行说明:

(1)订单信息面向公司管理员,用户在选择好商品后,可以去收银台进行支付,然后由收银员进行收费和登记订单信息。

那么对于宠物店的订单信息,由公司管理员进行更新和处理。

(2)职工信息是面向公司管理员和职员,每个职员的信息都存有信息档案,公司管理员和职员都可以登录查看自己的信息,但是查看的级别略有不同,而且在登录的时候还需要进行登录时信息的验证。

(3)宠物物品信息面向公司管理员和顾客,在宠物店进货或者卖出货后,公司管理员及时更新宠物物品信息,然后这些信息将面向顾客,顾客可以及时了解宠物物品信息,是有货还是缺货,还可以关注自己喜欢的宠物物品。

(4)宠物信息同样面向公司管理员和顾客,宠物店购进宠物或者卖出宠物后,公司管理员会对这些信息进行及时更新,以达到实时更新给顾客,为顾客提供便捷。

(5)当用户购买宠物或者宠物物品等商品后会对商品、宠物店职员服务态度等进行评价,这时评价信息会录入商品评价信息库中,然后公司管理员可以从信息库中获取用户的反馈信息,及时做调整

3.概念设计

根据需求分析中的图2.2宠物店管理系统数据流图以及分析报告可以得到职员、工资和职位之间的E-R图,如图3.1所示:

图3.1职员-工资-职位的E-R图

根据需求分析中的图2.2数据流图以及分析报告可以得到种类、宠物和顾客之间的E-R图,如图3.2所示:

图3.2种类-宠物-顾客的E-R图

4.逻辑设计

4.1实体—关系属性

在概念设计的基础上,根据设计得到系统总的E-R图,按照概念模式与关系表转化的一般规则,结合实际的需要进行逻辑设计,E—R图中的实体、实体的属性和实体之间的联系转化为关系模式,相应的实体-关系属性如下:

✧宠物(宠物号,宠物名,性别,图片,零售价,宠物种类号)

✧宠物种类(宠物种类号,宠物种类名,库存数量,进货单价)

✧宠物用品(宠物用品号,用品种类号,售价)

✧商品(商品号,零售价,商品种类)

✧订单(顾客号,商品号,数量,价钱,购买时间)

✧顾客(顾客号,姓名,性别,地址,固定电话,手机号,邮箱)

✧反馈信息(编号,反馈种类,顾客号,反馈内容,反馈时间)

✧职员(职员号,姓名,性别,固定电话,手机号,职位号,工资单号)

✧工资项(工资项号,基本工资,奖金,福利,职位津贴,职位号,其他)

✧工资表(工资单号,职员号,工资项号,发放时间,工资总和)

✧职位号(职位号,职位名称)

4.2关系模式

宠物:

宠物种类:

宠物用品:

商品:

订单:

顾客:

反馈信息:

职员:

工资项:

工资表:

职位号:

5.规范化分析

5.1任务和目标

以规范化理论为指导对关系模式进行合理的优化,得到为MSSQLServer2005以上版本所支持的数据表。

5.2具体关系表的设计与优化

1)第四部分中的关系模式都满足第一范式和第二范式,即所有关系的属性都是原子属性并且不存在非主属性对码的部分函数依赖。

但并非所有的关系都满足第三范式。

工资项和工资表不满足第三范式通过修改可以满足第三范式

修改前:

工资项(工资项号,基本工资,奖金,福利,职位津贴,职位号,其他)

修改后:

工资项(工资项号,职位号,其他)

职位工资(职位号,基本工资,奖金,职位津贴)

修改前:

工资表(工资单号,职员号,工资项号,发放时间,工资明细)

修改后:

工资表(工资单号,职员号,工资项号)

职员工资表(职员号,工资项号,发放时间,工资明细)

此时关系也满足了BC范式。

2)规范化工作总结:

从第一范式到第二范式的规范化实际上是消除非主属性对码的部分函数依赖;从第二范式到第三范式的规范化实际上是消除非主属性对码的传递函数依赖;

3)从第三范式到BC范式的规范化消除了主属性对码的部分和传递函数依赖。

经过了规范化后关系变成:

宠物(宠物号,宠物名,性别,图片,零售价,宠物种类号)

宠物种类(宠物种类号,宠物种类名,库存数量,进货单价)

宠物用品(宠物用品号,用品种类号,售价)

商品(商品号,零售价,商品种类)

订单(顾客号,商品号,数量,价钱,购买时间)

顾客(顾客号,姓名,性别,地址,固定电话,手机号,邮箱)

反馈信息(编号,反馈种类,顾客号,反馈内容,反馈时间)

职员(职员号,姓名,性别,固定电话,手机号,职位号,工资单号)

工资项(工资项号,职位号,其他)

职位工资(职位号,基本工资,奖金,职位津贴)

工资表(工资单号,职员号,工资项号)

职员工资表(职员号,工资项号,发放时间,工资明细)

职位号(职位号,职位名称)

4)鉴于系统的效率考虑,最终决定仍然采用第四部分的关系模式,从这一点可以看出。

并不是规范化程度越高越好,要根据实际情况,考虑多方面因素决定最后的关系模式。

6.物理设计

用DDL语言实现所选课题的相关设计,过程如下所示:

createtable

宠物(

宠物号char(30),

宠物名char(30),

性别char(30),

图片char(30),

零售价char(30),

宠物种类号char(30)

);

createtable

宠物种类(

宠物种类号numeric,

宠物种类名char(30),

库存数量int,

进货单价char(30)

);

createtable

宠物用品(

宠物用品号char(30),

用品种类号char(30),

售价char(30)

);

createtable

商品(

商品号char(30),

零售价char(30),

商品种类char(30)

);

createtable

订单(

顾客号char(30),

商品号char(30),

数量char(30),

价钱char(30),

购买时间datetime

);

createtable

顾客(

顾客号char(30),

姓名char(30),

性别char(30),

地址char(30),

固定电话int,

手机号char(30),

邮箱char(30)

);

createtable

反馈信息(

编号char(30),

反馈种类char(30),

顾客号char(30),

反馈内容char(30),

反馈时间datetime

);

createtable

职员(

职员号char(30),

姓名char(30),

性别char(30),

固定电话char(30),

手机号char(30),

职位号char(30),

工资单号char(30)

);

createtable

工资项(

工资项号char(30),

基本工资char(30),

奖金char(30),

福利char(30),

职位津贴char(30),

职位号char(30),

其他char(30)

);

createtable

工资表(

工资单号char(30),

职员号char(30),

工资项号char(30),

发放时间datetime,

工资总和char(30)

);

createtable

职位号(

职位号char(30),

职位名称char(30),

);

7.SQL部分

陈娟:

(1)查询工资总和为3100的职员信息:

select*from职员,工资表where职员.职员号=工资表.职员号and工资表.工资总和='3100'

(2)输出普通职员人数

selectcount(*)from职员where职位号=(select职位号from职位where职位名称='普通职员')

(3)输出男职工的职工信息

select*from职员where性别='男'

(4)输出订单总数

selectsum(数量)from订单

(5)输出赵四购买的宠物种类号

select宠物种类号from宠物,订单,顾客where顾客.姓名='赵四'and顾客.顾客号=订单.顾客号and订单.商品号=宠物.宠物号

陈才峰:

(1).输出所有售价小于100的宠物用品号

select宠物用品号from宠物用品where售价<100

(2).输出每个宠物的宠物名和卖出该宠物所挣的钱

select宠物名,零售价-进货单价from宠物,宠物种类where宠物.宠物种类号=宠物种类.宠物种类号

(3).输出反馈退货的顾客姓名,所定商品号和手机号

select姓名,商品号,手机号from订单,顾客,反馈信息where订单.顾客号=顾客.顾客号and顾客.顾客号=反馈信息.顾客号and反馈信息.反馈内容='退货'

(4).输出所有订单总价钱

selectsum(价钱)from订单

(5).输出购买'乐事'的顾客姓名和反馈时间

select顾客.姓名,反馈信息.时间from顾客,反馈信息,宠物,商品where宠物.宠物名='乐事'

and宠物号=商品.商品号and商品.商品号=订单.商品号and订单.顾客号=顾客.顾客号and顾客.顾客号=反馈信息.顾客号

徐洋:

(1).查询性别为女的宠物名

select宠物名from宠物where性别='女'

(2).查询进货单价低于600的宠物名

select宠物名from宠物,宠物种类where宠物.宠物种类号=宠物种类.宠物种类号and宠物种类.进货单价<600

(3).查询反馈内容为退货的顾客姓名

select顾客.姓名from反馈信息,顾客where反馈信息.顾客号=顾客.顾客号and反馈信息.反馈内容='退货'

(4).查询所有职员的信息

select*from职员

(5).查询职员小昭的工资总和

select工资总和from工资表,职员where职员.姓名='小昭'and职员.职员号=工资表.职员号

刘东洋:

(1).输出所有零售价在700到900之间的宠物名

select宠物名from宠物where零售价between700and900

(2).输出库存数量<3的所有宠物种类的宠物名和性别

select宠物名,性别from宠物,宠物种类where宠物.宠物种类号=宠物种类.宠物种类号

and库存数量<3

(3).输出张无忌的职位名称和工资总和

select职位名称,工资总和from职员,工资表,职位号where职员.姓名='张无忌'and职员.职位号=职位号.职位号and职员.职员号=工资表.职员号

(4).输出最高价商品的商品号

select商品号from商品where零售价>=ALL(select零售价from商品)

(5).输出与王小蒙性别相同的所有顾客姓名和购买的宠物种类名

selectg1.姓名,宠物种类名from顾客g1,顾客g2,宠物种类,订单,商品whereg1.性别=g2.性别andg2.姓名=‘王小蒙’and订单.顾客号=g1.顾客号and商品.商品号=订单.商品号and宠物种类.宠物种类号=商品种类

王肖朴:

(1).输出所有宠物信息

select*from宠物

(2).输出和奶茶性别相同的所有宠物的宠物号和零售价

selectc1.宠物号,c1.零售价from宠物c1,宠物c2wherec1.性别=c2.性别andc2.宠物名='奶茶'

(3).输出所有购买价钱大于500的商品的顾客姓名

select姓名from顾客,订单where订单.顾客号=订单.顾客号and订单.价钱>500

(4).输出所有性别为男的职员的手机号,奖金,工资总和

select手机号,奖金,工资总和from职员,工资项,工资表where性别='男'and职员.职员号=工资表.职员号and工资表.工资项号=工资项.工资项号

(5).输出所有购买性别为女的宠物的顾客的邮箱和反馈内容

select反馈内容from反馈信息,商品,订单,顾客,宠物where宠物.性别='女'and宠物.宠物号=商品.商品号and商品.商品号=订单.商品号and订单.顾客号=顾客.顾客号and顾客.顾客号=反馈信息.顾客号

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

当前位置:首页 > 成人教育 > 自考

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

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