当前位置:文档之家› 网上购物系统UML建模

网上购物系统UML建模

网上购物系统UML建模
网上购物系统UML建模

本科生课程设计—网上购物系统的分析及设计

广西科技大学

Guangxi University of Scienceand Technology 课程作业

专业:计算机科学与技术

班级学号:

学生姓名:

班级学号:

学生姓名:

指导教师:

二〇一三年十二月

摘要 ..................................................................................................................................................... III 1 引言 . (3)

1.1选题背景 (3)

1.2 选题意义和目的 (3)

1.3 研究方法 (3)

2 可行性分析 (4)

2.1 技术可行性分析 (4)

2.1.1与现有系统比较的优越性 (4)

2.1.2 技术可行性评价 (4)

2.2 经济可行性分析 (4)

2.2.1 支出 (4)

2.2.2 投资回收周期 (4)

3 网上购物系统的分析 (5)

3.1 网上购物系统的需求分析: (5)

3.2 用例分析 (5)

3.2.1确定用例: (5)

3.2.2 创建用例 (5)

3.2 用例分析 (6)

3.2.3创建用例图 (6)

3.3 类图分析 (7)

3.3.1 当前系统的类 (7)

3.4 时序图分析 (8)

3.4.1 时序图描述 (8)

3.4.2 顾客的时序图 (8)

3.4.3客户删除订单的时序图 (9)

3.4.4 管理员处理订单的时序图 (10)

3.4.4 管理员处理订单的时序图 (10)

3.5 系统的协作图分析 (11)

3.5.1 顾客订购协作图 (11)

3.5.2 顾客删除订单的协作图 (11)

3.5.3 管理员处理订单协作图 (12)

3.6 系统的状态图分析 (13)

3.6.1 管理员状态图 (13)

3.6.2 用户状态图 (13)

3.7 系统的构件图分析 (14)

3.7.1 网上购物系统构件图 (14)

3.8 系统的部署图分析 (15)

3.8.1 网上购物系统部署图 (15)

4 参考书籍 (17)

结论 (17)

本科生课程设计—网上购物系统的分析及设计

摘要

本论文共分三部分,分别介绍了统一建模语言(UML)、面向对象程序分析与设计以及通过一个简易电子商务系统的例子介绍如何应用UML进行项目需求分析、结构规划和生成框架代码,以及如何从现有系统逆向转出代码,生成Uml模型。

该设计的主要目的是对统一建模语言的学习过程,并在学习中,通过一个简单的例子来理解UML语言的建模思想。本设计是通过一个购物车的例子来理解UML语言的。通过面向对象程序设计方法与UML思想的结合,对系统进行建模。即设计UML中的类图、对象图、用例图、协作图、顺序图、状态图、构件图和部署图。通过这些UML框图生成代码。然后,根据生成的代码框架及UML模型来完善整个程序。

这个网上购物系统,主要是实现向购物车中添加和删除商品及对商品进行结帐的功能。系统是用JSP语言实现的,它的主要功能都是通过Servlet控制的。该程序的设计思想都是通过UML语言体现的,论文详细描述了整个设计及学习的全过程。

关键词:

统一建模语言

面向对象分析

ABSTRACT

This paper is divided into three parts and introduces separately Unified Modeling Language, OOA and OOD . By a piece of easy E-business system , It shows how to apply UML to carry on Requirement Analysis and Structure plan and to turn into project code, and how to transfer to project code reversely and produce U M L model from a existing system.

The main purpose of this design is to study course of Unified Modeling Language. During studying, the modeling thought of UML can be understood through a simple example. In order to understand the thought of UML, an example of shopping cart is citinged. Through the combination of the method of OOD and the thought of UML, the model of the system is realized. Namely, it is to design Class Diagram、Use Case Diagram、Sequence Diagram、State Diagram、Component Diagram and Deployment Diagram. The code is produced by using these UML block diagrams. Then, the whole program is perfected according to code frame that are produced and UML model.

The online shopping system mainly realizes functions of adding goods to shopping cart and deleting goods from shopping cart and checking out . The system is developed by JSP language, and the main functions of it are controlled through Servlet. The design philosophy of this procedure was all embodied through UML language. The paper has described in detail the design and whole studying processes.

Key Word:

Unified Modeling Language

1 引言

1.1选题背景

它主要是通过在网页上进行简单的对商品进行选购。

1.2 选题意义和目的

该案例的目的主要是:一,学习UML在面向对象技术中的应用。二,演示在一个完整的应用中如何使用UML:从分析到设计模型到真正的代码和可运行的应用。三,学习使用UML建模工具Visio。本案例遵循的是一种顺序过程。

1.3 研究方法

一个成功的系统开发项目的成功之处在于它能够在想象者和实现这些想象的系统开发人员之间建立起沟通的桥梁。统一建模语言(Unified Modeling Language,UML)就是一种建立桥梁的工具。它能帮你捕捉住对系统所发挥的想象力,并是你能够用这些想象出来的东西来和项目的风险承担人(在这里可以理解为用户)进行交流。UML借助与一套符号和图形来帮助我们完成这些工作。每种图形在开发过程中都发挥其各自不同的作用。

2 可行性分析

2.1 技术可行性分析

2.1.1与现有系统比较的优越性

简单性:在实现平台的功能的同时,尽量让平台操作简单易懂,这对于一个网站来说是非常重要的。

针对性:该平台设计是网上购物系统及后台管理的定向开发设计,所以具有专业突出和很强的针对性。

实用性:该平台能完成商品展示和管理员管理的基本信息,具有良好的实用性。

2.1.2 技术可行性评价

技术可行性:目前,公司的管理工作和服务工作存在盲目性、随意性、和无效消耗,不能保证营销部门的工作质量,影响商品的销售,给公司带来实际的和潜在的经济损失。虽然系统开发初期投资较大,但是,若开发成功本系统,将有助于公司更好地预测市场,更好的开发客户及时调整经营销售策略,在激烈的市场竞争中把握主动。因此,从长远利益考虑,本项目若能开发成功,它所带来的效益将远高于系统投入。

2.2 经济可行性分析

2.2.1 支出

经济可行性:由于实体店铺对电子购物商城系统开发项目达成了共识,并拨出专项资金,用以购置建立网络中心所需的网络设备和软件,具备了开发Web平台系统的基本条件。

为了今后的系统维护,开发团队准备联合具有丰富经验的软件开发人员共同研究,这为今后系统的顺利开发提供了有力的技术条件。

2.2.2 投资回收周期

资本周转速度快,回收期短,风险小,盈利多。不足的是,投资回收期没有全面地考虑投资方案整个计算期内的现金流量,即:忽略在以后发生投资回收期的所有好

处,对总收入不做考虑。只考虑回收之前的效果,不能反映投资回收之后的情况,即无法准确衡量方案在整个计算期内的经济效果。

3 网上购物系统的分析

3.1 网上购物系统的需求分析:

1:普通用户可以登陆系统,成为登陆后用户。

2:普通用户只具有搜索产品、查看产品分类、查看产品项目、查看产品等几个基本权限。

3:除提供一般权限外,本系统还可为登陆后用户提供编辑帐号、购物车、定单、结算的功能和服务。

4:登陆后用户可修改购物数量。

3.2 用例分析

3.2.1确定用例:

1系统需要哪些输入/输出?这些输入/输出从何而来?到哪里去?

2执行者是否需要对系统中的信息进行读、创建、修改、删除或存储?

3.2.2 创建用例

1 订单处理

2 订单维护

3 订单状态查询

4 个人信息维护

5 订购

6 接收发货

7 库存查询

8 缺货拒绝

9 商品查询

10商品信息维护

11销售查询

12员工信息维护

13报表维护

14订单增加

15订单删除

3.2 用例分析

3.2.3创建用例图

系统管理的用例图如图3-1所示:

系统用户的用例图如图3-2所示:

3.3 类图分析

3.3.1 当前系统的类

当前系统的类:

1 产品类(Product)的主要操作:设置和获取每个属性值的方法。

2 产品类别类(Category)的主要操作:设置和获取每个属性值的方法。

3 产品项目类(Item)的主要操作:设置和获取每个属性值的方法。

4 订单类(Order)的主要操作:设置和获取每个属性值的方法、初始化订单

(initOrder)、增加产品项目(addLineItem)等。

5 购物车类(Cart)的主要操作:设置和获取每个属性值的方法、增加产品项

目(addItem)、删除产品项目(removeItemById)等。

6 购物车项目类(CartItem) 的主要操作:设置和获取每个属性值的方法、统计

金额(calculateTotal)等。

网上购物系统的类图如图3-3所示:

图3-3 网上购物系统的类图

3.4 时序图分析

3.4.1 时序图描述

顺序图可描述几个对象间的动态协作关系,它非常直观的展示了对象之间传递消息的时间顺序。反映了系统执行过程中某个特定时刻所发生的事情。在系统分析时,可对主要对象类绘制顺序图,以便分析系统的行为,验证和修改系统的静态结构,满足用户的需求,达到系统的目标。

3.4.2 顾客的时序图

顾客首先使用自己的帐号和密码进行登陆系统,登陆模块会将客户的ID保存在系统缓存中,并提交给商品查询模块。商品查询模块提示客户输入查询条件,客户输

入适当的查询条件后,查询模块将显示商品列表。客户得到商品列表后,提交自己想要购买的商品ID,订购模块得到商品ID。生成订单并提交给数据库模块进行保存,保存成功后,提示用户订购商品成功。顾客订购的时序图如图3-4所示:

图3-4 顾客订购的时序图

3.4.3客户删除订单的时序图

客户在提交订单后可以对订单进行维护(添加,删除,修改)。客户首先输入自己的帐号和密码登陆系统,登陆模块会将客户的ID保存在系统缓存中,并提交给订单查询模块。订单查询模块会显示当前所有的订单,顾客得到该列表后,选择要删除商品的ID,订单处理模块把删除信息提交给数据模块,数据模块保存信息。订单处理提示用户删除成功。客户删除订单的时序图如图3-5所示:

图3-5 客户删除订单的时序图

3.4.4 管理员处理订单的时序图

管理员使用其帐号和密码登陆后,登陆模块会将管理员的ID保存在系统缓存中并提交给订单处理模块。订单处理模块提交给管理员未处理的列表,管理员提交某商品的ID得到该商品的库存情况,如果库存充足则接收订单,并把接收信息提交给数据模块,数据模块更新该客户的订单信息并返回成功信息给订单处理模块,订单处理模块提示改操作成功。管理员处理订单的时序图如图3-6所示:

3.4.4 管理员处理订单的时序图

图3-6 管理员处理订单的时序图3.5 系统的协作图分析

3.5.1 顾客订购协作图

顾客订购协作图如图3-7所示:

图3-7 顾客订购协作图3.5.2 顾客删除订单的协作图

顾客删除订单的协作图如图3-8所示:

图3-8 顾客删除订单的协作图

3.5.3 管理员处理订单协作图

管理员处理订单协作图如图3-9所示:

图3-9 管理员处理订单协作图

3.6 系统的状态图分析

3.6.1 管理员状态图

管理员状态图如图3-10所示:

图3-10 管理员状态图3.6.2 用户状态图

用户状态图如图3-11所示:

图3-11 用户状态图

3.7 系统的构件图分析

3.7.1 网上购物系统构件图

构件之间存在的唯一关系是构件的依赖性。构件依赖性指一个构件依赖于另一个构件。构件依赖性画成构件之间的虚线箭头。如下图箭头指的构件表示被依赖,也就是说,Cart、Eshop、Checkout都依赖于ShoppingServlet。下图描述的是在网上购物系统中几个构件之间的依赖关系。网上购物系统构件图如图3-12所示:

图3-12 构件图

3.8 系统的部署图分析

3.8.1 网上购物系统部署图

部署图可以显示节点以及它们之间的必要连接,也可以显示这些连接的类型,还可以显示组件和组件之间的依赖关系,但是每个组件必须存在于某些节点上。部署图用于对系统的实现视图建模。绘制这些视图主要是为了描述系统中各个物理组成部分的分布、提交和安装过程。在实际应用中,并不是每一个软件开发项目都必须绘制部署图的。如果项目开发组所开发的软件系统只需要运行于一台计算机并且只需使用此计算机上已经由操作系统管理的标准设备,这种情况下就没有必要绘制部署图了。另一方面,如果项目开发组所开发的软件系统需要使用操作系统管理以外的设备(例如数码相机、路由器等)、或者系统中的设备分布在多个处理器上,这时就有必要绘制部署图,用其来帮助开发人员理解系统中软件和硬件的映射关系。下面是本系统的部署图,如图3-13所示:

Desktop ...

RegistrationS

erver

buyingSystem saleSystem

MaintainSystem

Desktop ...

WebBrowser

Desktop PC (saler)

Internet

LAN

LAN

图3-13 网络购物系统的配置图

4 参考书籍

[1] 面向对象程序设计高级教程,陈奇,高等教育出版社,2001

[2] 标准建模语言UML极其支持环境,周伯生,张莉等,北京:计算机世界,1998

[3] UML和模式应用——面向对象分析和设计导论,Craig Larman等,姚淑珍,李虎译,机械工业出版社,2002

[4] UML ASL Reference Guide ASL Language Level 2.5;Ian Wilkie, Adrian King, Mike Clarke, Chas Weaver and Chris Rastrick;

[5] Stephen J. Mellor, Marc J. Balcer,Executable UML :A Foundation for Model-Driven Architecture, ,2003,科学出版社

结论

本次课程设计将UML建模应用到构建系统设计上,并通过八种框图,从各种角度观察系统来进行需求分析、系统设计。通过一个完整的简单例子来说明UML在整个系统设计所发挥的作用。

通过这次的课程设计,使我对UML全新的理解,使我对UML产生了更加浓厚的兴趣,在程序的设计过程中,我发现自己的软件知识尤其是对软件的整体设计不是完全理解,对于一些细节不够了解,对知识的了解不全面,有待学习和提高。

通过这次的设计,知道自己的不足,我相信自己会在一定时间内通过不断的学习和实践提高自己的能力,设计给我带来很大的帮助,同时开阔了我的眼界,使我明白只有自己亲自实践,才能了解自己所做的东西,如果没有实践,恐怕就不会有电流的产生,地球为什么是圆的,以及现在的一切。勤于实践不仅能锻炼自己,还能够提高

自己的能力,增强自己的自信心。在面对困难时要勇敢的面对才有能力、有把握去克服它,征服它。虽然我现在还有所欠缺,但我相信在以后的工作和生活中,我会不断提高自己,完善自己。

相关主题
文本预览
相关文档 最新文档