面向对象的设计与分析网上商城的建模设计.docx
《面向对象的设计与分析网上商城的建模设计.docx》由会员分享,可在线阅读,更多相关《面向对象的设计与分析网上商城的建模设计.docx(25页珍藏版)》请在冰豆网上搜索。
面向对象的设计与分析网上商城的建模设计
本文所要进行建模分析的系统是学校小型电子商务系统,以欲构
建的江西师范大学的便利店和生活超市“网上商城”为例,是满足校园客户(主要在校学生)网购要求的综合性的应用系统,本文以
Rationalrose2003为建模工具,并应用第三章提出的基于UML的电子商务系统建模过程,完成该系统的详细分析和设计。
对系统进行需求分析,建立系统需求模型、静态结构视图、动态结构视图、数据库模型、物理模型。
4.1系统的需求分析
4.1.1系统的设计背景
江西师范大学瑶湖校区江西师范大学新校区,地处南昌市昌东镇,
在校学生3万余人,由于学校占地面积很大,离市区比较远,周围设施还不是很齐全,该校区为解决师生日常生活需要,建设了商业街并且每个宿舍区都有便利超市,这些店是一个小型的生活用品采购区,在校学生平时的大部分消费都是在这些地方,包便利店和小型超市等生活服务的实体商店,满足了师生不出校门就能买到自己想要的东西。
近些年,随着高校的扩招,该校区学生和老师的数量也不断增加,新的问题也随之而来,高校学生由于社会发展带来的的巨大压力,生活
节奏也日益加快,空闲时间也越来越少。
所以如果他们每次生活消费都要到实体店购买,就给他们的生活带来不便,因而如果能够网上购
物就解决了这个矛盾。
另外,据数据显示,该校学生80僱网民,该
群体的素质较高,接受新事物速度快,而且他们的消费兴趣和倾向也有高度的相似性。
该校区学生居住地也比较集中,大都住在学校统一安排的公寓或者学校周围的小区,使物流配送更加方便和及时。
目前学校的实体商店很多,但是大多数商店还没有自己的电子商务系统,所以如果通过一个统一的网上购物平台,商店将这些商品都发布在网上商城上,师生就可以足不出户选购商品,非常方便。
只要授予他们可以在平台上销售自己的商品,提高了商店的知名度,也提高了他们的服务能力和影响力。
该网上商城具有一般网上购物系统的功能:
1.师生可以通过该网上商城注册为商城用户,浏览商品订购商品放入购物车;客户可以通过该商城发布评论信息;客户可以查看自己订单;客户可以支付商品货款。
2.商户可以通过该商城发布自己的商品信息、供师生购买;可以通过该商城管理自己的商品信息和员工信息;可以进行订单处理。
3.系统管理员对商户申请信息进行审核;对评论信息管理:
对系统日常的维护和数据备份;对用户信息管理。
除了以上三个一般购物系统的功能商城的系统管理员可以通过对历史订单信息进行数据挖掘,找出顾客购买商品间的关联关系,建议商户对其营销策略进行调整或者绑定销售一些商品,以提高商户的
销售利润,达到在线交易和实体店双重赢利。
该功能模块的设计将在第五章详细说明。
4.1.2系统的模块设计
根据以上背景,本文欲构建一个具有上述功能的江西师范大学
“网上商城”。
该商城可以满足师生网上购物的要求,注册该商城用户都可以直接登录到该商城。
该商城为校园的客户提供了一个统一的网上交易平台,该网上商城的业务流程图,如图4.1所示。
▼
他划斶M列悄协审
■■
1M1J*1*IMIi*liJ
匸44L
图4网上奇城业务流裸谢
通过以上背景分析和业务流程的设计,根据一般网上购物系统的功能,并结合该“网上商城”的特殊功能需求,根据商城所涉及到的主要参与者将该商城主要功能描述如下:
1,商城维护:
管理员可以对商城日常维护和数据备份。
2.商户信息管理:
管理员对申请加盟的商户等级管理和商户信息
修改,添加等操作。
3.商城用户信息管理:
对商城注册用户信息的管理,以及其应用权限
4.评论管理:
管理员可以对评论信息进行处理,对于不符合要求的评论可以删除。
5.收集数据:
系统管理员可以根据数据库中一段时间的订单历史记录查询分析,收集到分析数据。
6.订单分析:
管理员可以对收集到的数据进行分析,得出商品之间的关联性。
建议商户调整销售策略,从而提高商店利润。
7.商城注册:
非家园网或非商城用户的客户可以注册为商城用户。
8.修改个人资料:
注册用户可以修改自己的注册资料。
包括地址,电话等基本信息。
9.商城登录:
系统管理员、用户、商户都可以登录商城相应的模块在相应权限内操作。
10.查看商品信息:
进入商城的师生都可以浏览商品信息,该商品信息包括商品的基本信息和商品的库存。
11.购物:
如果商品有库存则客户可以购买,如果缺货则不能购买,客户将商品放入购物车,进行购物。
客户可以对购物车里的商品随时修改,删除,添加和清空。
12.下订单:
客户将商品加入购物车后,可以填写订单,对于订单,在未处理之前,客户也可以随时登录系统修改并提交。
13.支付:
订单提交以后,客户可选择支付方式,如选择货到付款则订单完成,如选择网上支付,则客户要登录网上银行支付,支付完成则该订单完成。
14.订单查看:
客户可以随时登录系统查看自己的历史订单信息,可以删除历史订单,可以查看订单状态,订单在未处理之前都可以修改然后再提交,也可以对取消未处理的订单。
15.评论:
收到商品以后客户对商品和商户的服务是否满意可以对此订单进行评论。
16.申请加盟商城:
商户申请加盟商城,资格审核通过后可以在商城建立自己的网上商店,拥有该商店的管理权限,可以进行网上交易。
17.商品信息维护:
商户可以随时添加、修改、删除商品的信息。
18.配送员信息管理:
商户可以对商店里的配送员信息进行添加、修改、删除,以更好的管理商店的配送工作。
19.订单处理:
客户提交订单以后,商户接收订单并与客户确认订单以后对订单进行处理,根据订单所购买的商品,商户查询库存,确认库存中有该商品,对订单进行审批,审批完了后则打印配送订单,安排送货。
20.派遣配送员:
商户点击相关功能,将输出配送员编号,商户把送货单和商品交予该配送员负责,配送员把商品送到客户指定的地点,如果无人收货,则在订单回执中填写“无人接货”,如果收货成功,则填写“收货成功”,如收货人推迟收货则填写“推迟收货”。
并将订单回执交予商户。
21.库存管理:
商户可以对商品库存进行定期清点,并修改商品信息中的库存信息。
22.配送订单管理:
对已经处理的订单,商户打印出配送订单,并安排配送员配送,对配送订单的完成情况进行管理。
23.查看商品销售记录:
商户可以对本商店的商品信息随时查看。
24.查询分析结果:
商户可以登录商城查询商品的关联分析结果,通过结果设置相应的销售捆绑包或交叉销售。
25.设置销售捆绑包:
对分析到的关联商品,通过后台输入设置到捆绑包中。
满足上述需求的系统主要包括以下几个模块:
系统管理模块:
该模块是系统提供给系统管理员的接口模块。
主要包括对校园商户的加盟审核,对商店申请信息的管理,根据商户等级和信誉来决定删除和添加商户,另外对网站用户信息的管理。
该模块可以对系统日常维护和数据备份,并且通过对订单信息进行数据分析,以帮助商户制定营销策略,赢得更大的利润。
用户接口模块:
该模块为想购买该网站商品的学生提供的了入口,所有校园的师生都可以通过浏览器浏览该网站商品,可以注册为该系统用户并登录该系统订购自己喜爱的商品。
商户操作模块:
该模块是“网上商城”的核心模块。
主要包括接受客户完成的订单需求,指派特定的配送员,配送员根据订单所需提货,配送员送货上门,客户签收商品并生成回执单,商户可以查看最近一段时间某商品的销售记录,根据查看的商品订单分析结果制定相应的捆绑销售或者交叉销售策略。
盘取I"羯上咼集-映決期怨分出
農忧轍快
切能抽述
商户OPEJ
膚户申G蓿思轴普理.間户耶出曲芒班
曲坯阳户牯息甘底
世用用户信息皆淫,也挥甲户的埜鸟佑息柯用户揽閨
时客户时评龙址行规押
尚城维护
再沽2折敛克IV收堆数拆
订单廿祈
应用餐狂探财対客户仙单佶息进打廿桶
r真石画閘的思「
客户戕口植尿
邇过注膺戒为离确發规
楼&僅入的注册侑必
mr
樹侨爺面冊胡人聃樹唯
卜订專
mA门单昇咄着息
r讦绘
对简高和商率』星券评伦
幻口处卜单附订華腦息11H1吒石•「:
JMIT以联初订眠
川户耳压选幵芟/*7式进厅商爲货歎支忖
叩谄住iS塑开网隔
炜莊据佇息猗修战.讯除和逛HH答蔓本推榨
皓加配送园莊亭信制
iT单业理
对克威R?
订单邊肓业鯉+駅冬fK"血订車苦
配送订虹警理
証远订单的冋执寺玮,配迟叮韋車囂信更辛乓
锻逍伽負
佥击加用*撤山配送吃讪吁
啊看狂品常出工录
籽屈商骷劉偉记最数晶
时沖招的FF祁借皑更新
爭戟扫尿金种分忻的SA黠
|超詈曲拈祁裁攜海氧
时相茂底融咼陆百柑应胁幅脾包
4.2需求建模
该系统需求建模描述系统用户使用一个系统的方式,描述系统应该具备什么功能,是系统用户或者另一个系统与系统之间的一次交互过程,是系统分析和设一计的第一步,以系统全局的功能作为参考,把系统所涉及的参与者和他们从外部观察到的系统的功能描述出来,而并不描述这些功能在系统功能的实现形式。
这个过程使用UML建立系统的用例图,分离出系统执行者和用例,以及用例之间的关系。
421系统参与者
参与者是系统外部的一个实体,可以是系统用户、与所建造的系统交互的其他系统或者是一些可以运行的进程。
第一,在每一个系统中,几乎都存在着最常用的参与者一真实的人(用户);第二,需要建立联系的其他外部应用程序,即其他系统;第三,一些可运行的进程,如时一间;通过上面对该系统的功能分析和系统功能模块的设计,系统参与者主要有:
系统管理员、客户、商户和支付系统。
422识别用例
确定用例最常用的方法是从分析系统参与者开始,把每个系统
参与者如何使用系统的行为都考虑进来。
根据上一节系统的需求分析功能模块,可以确定系统参与者有系统管理员、客户、商户和支付系统。
根据上一小节的功能模块分析,得出系统的顶层用例图,如图4.20
F面分别对三个用例细化,系统管理所涉及到的用例有:
商城登录,
商户信息管理,用户信自、管理,评论管理,商城日常维护和订单分
析。
涉及到的参与者是系统管理员,系统管理的用例图如4.3所示
4.3系统竹児用例图
用户接口用例细化有:
商城注册,商城登录,查看商品信息,修改个人资料,购物,下订单,支付,评论,订单查看。
用户接口的用例图如图4.4所示。
o
品,添加商品到购物车,查看购物车信息,删除购物车中的商品
l皿册r;;:
!
.
■e~~■
w
審门
图4.4出八播门屮例阁
其中“购物”用例细化的用例有:
清空购物车,修改购物车商
细化后的用例图如图4.5
TI户絵口裡说
00(JW行議〕
4.5购物用例图
“订单查看”用例细化的用例有:
修改订单,提交订单•,删除订
单,查看历史订单,订单状态查询,取消订单。
细化后用例图如图4.6所示。
694,6订单査理用他国
商户操作的细化用例有:
申请加盟商城,商城登录,商品信息维护,
配送信息管理,订单处理,配送订单管理,派遣配送员,查看商品销
售记录,库存管理,查看订单分析结果,设置商品销售捆绑包。
商户
操作用例细化图,如图4.7所示
图4-7商户操ft用例国
商品信息维护的细化的用例有:
增加商品信息,删除商品信息,修改商品信息。
细化后的用例图如图4.8所示。
图4圧商品信息维护用例團
订单处理的细化用例有:
确认订单,接收发货,查询商品库存。
如
图4.9
国4H订单处與出恻圏
支付系统用例有:
支付,网上支付,货到支付。
支付系统的用例图,如图4.10所示。
图4-10比付系统用例图
根据以上对系统参与者的用例图分析与建模,得出系统的完整的
用例图,如图4.11所示
圏4」1系统屮例国
4.3静态结构建模
静态结构模型是对有关系统实现内部和应用领域的概念进行建模,本文通过分析上述需求建模中的用例和问题域,抽取相关的类,并将这些类之间的关系表示出来,以及类的内部结构,最后完成类图,反应了系统的一种静态关系。
(1)抽取系统中的类
系统中存在三种类,一种是系统与外界的交界处,包括各种窗体
和接口(与报表、打印机和扫描仪等硬件的接口或者与其他系统的接口);另一种是负责协调其他类工作的控制类,是控制使用事件的顺序的类;第三种是保存放入永久存储体的数据信息类,即实体类。
本文将以“下订单”举例说明分析类的整个流程。
下订单用例的主要功能是:
客户登录商品信息查看页面,系统验证客户注册信息,系统打开下订单页面,填写订单并提交订单信息,根据以上描述,该用例涉及到的类如下:
边界类:
商品信息查看页面,填写订单页面。
控制类:
下订单。
实体类:
客户信息类,商品详细信息类,订单信息类。
据以上方法分析系统其它用例并经过整理合并,得出网上商城的类如下:
1.边界类:
用户注册界面,用户登录界面,商品详细信息界面,商品查看界面,下订单界面,评论界面,支付界面,个人资料修改界面,订单查看界面,商品信息维护界面,查看订单分析结果界面,派遣配送员界面,设置商品销售捆绑包界面,订单处理界面,配送订单管理界面,配送员信息管理界面,库存管理界面,查看商品销售记录界面,商户信息管理界面,用户信息管理界面,商城维护界面,审核界面,评论管理界面,收集数据界面,订单分析界面。
2.控制类:
用户注册,用户登录,浏览商品,下订单,评论,支付,个人资料修改,订单查看,商品管理,配送员管理,查看订单分析结果,派遣配送员,设置商品销售捆绑包,订单处理,配送订单管理,库存管理,查看商品销售记录,用户管理,商户管理,商城维护
审核,评论管理,收集数据,订单分析
3.实体类:
用户信息类,商品信息,订单信息,配送员信息类,购物车信息类,配送订单信息类,商户信息类,商品销售记录信息类,评论信息类。
管理员和客户都属于系统的非商业用户,所以将它们统称为用户信息类。
电子商务配送系统在Internet中使用,所以为了
安全起见,在分析实体类中,将经常使用的类所涉及操作和基本信息分别设计一个类。
例如,客户信息类,客户涉及到的信息设计到客户信息类中,而客户所涉及到的方法操作则归为客户信息操作类。
这样
体现了而向对象的封装性和安全性,能更好的满足系统运作要求。
(2)生成类图
通过上述类的分析,要生成类图还需要弄清楚类与类之间的关系,并且要确定类的属性和方法。
上文分析了与“下订单”用例相关的类,下面接着讨论类的属性和方法,并生成相关类图。
边界类:
商品详细信息界面(GoodsDetailsInteface)填写订单
页面(OrdersInteface),主要是打开新的界面。
控制类:
下订单COrder)。
协作类之间的工作,起到“中介”的作用。
实体类:
用户信息类(ClientInformations),商品信息类
(GoodsInformations)订单信息类(OrderInformations),用户信息操
作类(ClientOP),商品信息操作类(GoodsOP,订单信息操作类(OrderOP)。
Clientlnfornlations类的重要属性有:
用户ID号,用户名,注册日期,登录密码,电子邮件;ClientOP类的主要操作有
系统注册,系统登录,查看商品,订购商品,支付;Goodslnformations
类主要属性有:
商品ID号,商品名称,商品描述,商品价格,商品库存,商品类别;GoodsOP类的主要操作有:
获取商品ID号、商品名称和价格;OrderInformations类主要属性有:
订单ID号,商品ID号,
商户ID号,用户ID号,客户姓名,订购日期,订购者地址,商品数量,商品价格;OrderOP类涉及的操作有:
搜索订单,查看订单,处理订单,添加订单,删除订单。
根据以上分析,下订单的类图如图4.12。
实线箭头表示的是关
联关系,虚线箭头表示的是依赖关系
图4」2篥下订单via
由于电子商务配送系统涉及到类图比较庞大,而分析类图的过程可以通过上述方法一一得出用例的类图,本文只对系统中的实体类图进行建模。
运用上文方法分析实体类所涉及到的信息类,实体类图4.13a
4.4动态结构建模
用例图和类图描述了系统的静态结构,接下来建立系统的动态行
为模型,动态行为模型主要是建立系统的顺序图和活动图,川页序图
主要来表示对一象之间的关系和对象之间传送消息的时间顺序。
活动图则是描述活动的顺序的一种流程图,是从一个活动到另一个活动的控制流。
(1)顺序图
该商城系统涉及到的顺序图有很多,比如用户登录顺序图,下订单顺序图,删除订单顺序图,增加订单顺序图,订单处理顺序图。
本文将通过“系统登录”顺序图和“下订单”顺序图建模为例来说明系统动态结构建模。
“商城登录”用例涉及到参与者是用户,包括管理员和其他用户,这里以客户登录系统为例,涉及到的对象有“登录界面”,“服务器”和“数据中心”,根据ROS中的顺序图的建模方法,本文得到“商城登录”用例的顺序图如图4.14。
1魅人
3战対贬丐切星碍.,
C
-6:
汕齐厲帛状静
■
5:
画冋
-舌
W4.14商城帶录血图
根据上文分析的“下订单”用例类图,“下订单”用例的顺序图参与者是客户,所涉及到的对象有“登录界面(login)”“商品信息查看界面(GoodsDetailsInteface)"“下订单界面(Orderslnteface
“订单信息操作(OrderOP)”,用ROSE*模得出的“下订单”顺序图如图4.15所示。
«ptan二二
1:
帕_\吐弓闻帯閣
2惶乂刑尸ID
<
4:
揣人在层甚样
;<—F见示*和砂言
&ft
|H>
T:
■灿単
■^―--
弋a^^UJU;
fM甲2
nw—4"--“・・沟1二,itt—亍y—"■
W1.15"下订单円噸序阳
(2)活动图
活动图表示一个事件正在运行的状态,事件是系统中某个对象的一个操作,主要表现一个活动到另一个活动控制流,是系统内部的驱
动流程。
一个系统涉及到的活动图很多,本文提到的系统活动图有客户下订单的活动图,商城用户登录活动图,派遣配送员的活动图等,本文将以“下订单”活动图为例。
根据活动图的组成元素,“下订单”包括很多活动状态,比如
查看商品,提交订单,订单处理等一系列状态,“下订单”就是从一个活动状态转换为另一个活动状态,直至完成该动作,活动图中涉及两个对象,客户和商户,根据以上描述,在ROS中建模的“下订单”
4.5数据库建模
在以上小节本文成功建立了江西师范大学网上商城的业务流程图、需求模型、静态模型和动态模型,接下来就要介绍如何通过已建立L1ML静态结构模型中的类图转换为数据库模型。
在类图转换为数据库模型,控制类和边界类不需要转换为系统数据库模型,这些类是为
了实现用例的流程而产生的类,所以只有那些持久存储信息的实体类
需要转换为数据库模型。
转换过程由于篇幅问题不再一一叙述,如图
4.17系统实体类图转换的数据库模型图
系统的数据库模型图建立之后,将模型图映射为数据表,此处数
据库模型中的属性映射为数据表的列,系统的数据结构表如下表所示
射2川户我
列名
Iffl类翹
迭否梵讦丸空值
ttw
甩户ID号
tan
4
无
主饉
用户名
nvarchar
50
无
注册廿期
datetime
H
1无
狂录密叫
nvarct^ar
50
无
电碱ft
nvnrchnr
50
i
表4・3「策屆信也找
数期嬰矍
是否允许为皇fR
默认值
说叨
商简1D
Im
4
否
无
主就
裔品药称
nvarchar
50
无
两品描述
nvarchar
4000
无
float
8
无
商酗存
(nt
4
I
商吊类别
nvarchar
JO
否
无
表4.4商厂信息袁
数据类皑
堆普尤许为空徂
默认值
说明
曲户ID
ini
4
晋
无
lift
商户名称
nvarchar
50
否
无
商户电话
nvarchar
50
否
无
电子邮卅;
nyarchar
50
无
昼录帝码
nvarchar
50
否
无
nvarchar
50
否
无
i
开店日期
datetime
g
无
商厂僭级
ini
4
否
1
表必购物T表
是否允许为空谊
默认垃
说明
购钩年ID
inf
4
否
无
主键
商nnID
ini
4
无
商品数熄
im
A
否
无
我4.6订单衷
长度
崔否允许为空值
「豔认值
说明
订单山
ini
4
|无
主铤
商朋山
Ini
4
否
无
主谜
衙户ID
im
4
JE
Tig
用户2
int
4
无
客卢娃名
nvarehar
SO
无
订购n期
daactinw
9
否
无
订闕者地址
nvarcltar
50
否
无
帝晶救母
if>t
4
无
衣4.7配送订单我
数据类甲
圧否无许为空值
默认值
说明
配送订琳tD
int
4
—否
无
订单ID
irtl
4
否
无
配送员ID
int
4
L无
配送日恤期
dstetline
3
否
无
陀送伏态
int
4
无
列名
甑据类醴
氏度
是百允许刃空值
KUffi
说明
配送员U)
int
4
否
主雜
电話JD
Mil
斗
卷.\
电子堀杵
nvarchar
50
)善1
无
农4一9由黑忙上记杲获
列名
悅度
默认偵
记最ID
ini
4
无1
簡晶ID
ini
4
否
无
商户ID
im
4
否
无
dalctinic
否
无
程410商為评论表
卿名
世雪允许为它值|
默认値
说明
崭论ID
ini
4
S|
无
卞锻
用户宏
nvartlw
50]
否I
无
W户电
nvareIieit
50
否无
nvarcliar
50
否]
无
4.6物理建模
完成系统的逻辑设计后,下一步要定义设计的物理实现,为了将逻辑设计图转化成实际的事物,面向对一象系统的物理建模有两种图组件图和配置图。
组件图是