网购物系统UML的分析与设计 [当文网提供]络

上传人:jin****ng 文档编号:190258256 上传时间:2023-02-27 格式:DOCX 页数:20 大小:619.56KB
返回 下载 相关 举报
网购物系统UML的分析与设计 [当文网提供]络_第1页
第1页 / 共20页
网购物系统UML的分析与设计 [当文网提供]络_第2页
第2页 / 共20页
网购物系统UML的分析与设计 [当文网提供]络_第3页
第3页 / 共20页
点击查看更多>>
资源描述
网络购物系统的UML分析与设计摘要:论文简单的描述了 UML 的基本概念和发展历史,并且分析了 目前运用 UML 存在的一些问题,通过在实际的设计开发中,运用UML对网络购物系统的开发例子来阐述UML的一些实现原理。关键词:UML 系统分析 面向对象设计1. UML 简介和背景:UML 是有世界著名的面向对象技术专家 G.BOOCH,J.RUMBAUGH, 和I.JACOBSON发起,在BOOCH方法,OMT方法和OOSE方法的 基础上,汲取其他面向对象方法的优点,广泛征求意见,几经修改而 完成的。目前UML得到了诸多大公司的支持,已经成为面向对象技 术领域内占主导地位的标准建模语言。目前最新的UML规范说明是2003年3月发布的1.5版本。OMG在 同时进行两个UML版本的工作,一个是对1.X版本的改进工作,一 个是有较大改动的版本2.0的工作。OMG从2001年开始UML2.0的 工作,由于UML2.0是一个比较大的升级工作,其发布时间也一再的 推迟。经过对 2.0 版本草案的多次征求意见和修改, 2003 年 8 月, OMG发布了最后的征求意见版本。正式的版本将很快发布。在UML 建模语言成为标准之前,有很多的OO方法,每种方法都说自己是最 好的,出现了所谓的方法学大战。随着UML被OMG采纳为标准, 面向对象领域的方法学大战也随之结束。 UML 在学术界和工业界越 来越受到重视。2. 目前运用UML存在的一些问题: 自从OMG提出UML以来,随着它的不断完善发展,UML逐渐被很多 企业接受认可,在很短的时间内,UML已经成为软件工业中占支配 地位的建模语言。但目前在国内外UML的运用情况却不是很好。2002 年6月底,BZ公司对226个个体进行了调查,结果是有34%的开发人员 运用 UML 进行系统开发的建模,62%的开发人员不用 UML 进行开 发,4%的开发人员不太确定1究其原因是UML1.4还存在以下几个方 面的不足:1目前UML很多地方运用难以解释的字符来描述系统的功能、系统 的行为和计算,不易于理解。并且没有对数据操作进行定义,很多对象 之间的行为过程没有加以说明,如:对象之间关系的操作(relationship manipulation),这些都迫切需要一个标准化的行为描述语言(Action Specification Language)来对系统的行为进行精确的描述。2 UML 虽然是一种面向对象的软件系统设计的标准描述语言,但是 在其状态图中用状态和迁移表示对象行为关联时用到了大量的不易 于理解的注释字符,因此,系统的UML模型既不是可以执行的也是 不和用编程语言开发的可执行程序相协调。3 在不同的技术实现平台上(如:实现语言,软件环境)对同样需求 的系统建模时细节差别很大,系统构建模型的重用性就很低。这样在 计算机技术正在向各个方向快速发展的今天,老的遗留系统必须和新 技术的实施平台,开发技术相协调,使得新旧系统之间的集成或系统 的演化面临不同的实现技术,老的遗留系统在运用新技术进行重构 时,必然要浪费很多财力,人力进行系统模型的更新甚至完全重建系 统。3. 网络购物系统的分析: 3.1网络购物系统的需求分析:1:普通用户可以登陆系统,成为登陆后用户。2:普通用户只具有搜索产品、查看产品分类、查看产品项目、 查看产品等几个基本权限。3:除提供一般权限外,本系统还可为登陆后用户提供编辑帐号 购物车、定单、结算的功能和服务。4:登陆后用户可修改购物数量。3.2 用例分析: 确定参与者:1 谁使用系统的主要功能?2 谁需要从系统获得对日常工作的支持和服务?3 需要谁维护管理系统的日常运行?4 公司的哪个部门使用系统?5 系统需要与其它哪些系统交互?6 谁需要使用系统产生的结果? 针对网上购物系统的前台系统,通过回答以上问题,可以得到执 行者有三类,顾客,管理员和一般员工。确定用例:1 系统需要哪些输入 /输出?这些输入/输出从何而来?到哪里 去?2 执行者是否需要对系统中的信息进行读、创建、修改、删除或存储?创建用例(1)订单处理(2)订单维护(3)订单状态查询(4)个人信息维护(5)订购(6)接收发货(7)库存查询(8)缺货拒绝(9)商品查询(10)商品信息维护(11)销售查询(12)员工信息维护(13)报表维护(14)订单增加(15)订单删除创建用例图系统管理的用例图如下图1商品信息錐护销售查園摇表錐护订单处理uq畑n心摇收发货库存查询员工信息堆护管理员1股扇工*已血门日冷WExtEnd;i沁图 1 系统管理用例图系统用户的用例图如下图2 所示伞人信息錐护订购5exte n.订单錐护状态坯VW已垃已门口冷图 2 系统用户的用例图3.3类图分析:画类图和理解类图时都应采用三个层次的观点。这些观点也适用于其它模型。三个层次的观点不是 UML 的组成部分, 但对建造模型或评价模型都非常有用,且都可应用于 UML.(1)概念层描述应用域中的概念,是对现实世界的直接描 述,与实现它们的类有关但与实现方案和实现语言无关。(2) 说明层描述软件的接口,而不是软件的实现。一个类型描述 一个接口,但可能有多种实现。(3)实现层从实现的角度定 义类及其实现,揭示了软件实现体的构成情况。针对当前系统1产品类(Product)的主要操作:设置和获取每 个属性值的方法。2产品类别类(Category)的主要操作:设置和获取每个属性值 的方法。3产品项目类(Item)的主要操作:设置和获取每个属性值的方 法4订单类(Order)的主要操作:设置和获取每个属性值的方法、 初始化订单(initOrder)、增加产品项目(addLineltem)等。5购物车类(Cart)的主要操作:设置和获取每个属性值的方法、 增加产品项目(additem)、删除产品项目(removeltemByld)等。6购物车项目类(Cartitem)的主要操作:设置和获取每个属性值 的方法、统计金额(calculateTotal)等。下面是系统的类图,见图3图3网上购物系统的类图3.4系统的时序图分析:顺序图可描述几个对象间的动态协作关系,它非常直观的展示了 对象之间传递消息的时间顺序。反映了系统执行过程中某个特定时刻 所发生的事情。在系统分析时,可对主要对象类绘制顺序图,以便分 析系统的行为,验证和修改系统的静态结构,满足用户的需求,达到 系统的目标。顾客订购的时序图如下图4 所示: 顾客首先使用自己的帐号和密码进行登陆系统,登陆模块会将客户的 ID 保存在系统缓存中,并提交给商品查询模块。商品查询模块提示客户输入查询条件,客户输入适当的查询条件后,查询模块将显示商 品列表。客户得到商品列表后,提交自己想要购买的商品ID,订购 模块得到商品ID。生成订单并提交给数据库模块进行保存,保存成 功后,提示用户订购商品成功。图 4 顾客订购时序图客户删除订单的时序图如图5 所示客户在提交订单后可以对订单进行维护(添加,删除,修改)。 客户首先输入自己的帐号和密码登陆系统,登陆模块会将客户的 ID 保存在系统缓存中,并提交给订单查询模块。订单查询模块会显示当 前所有的订单,顾客得到该列表后,选择要删除商品的ID,订单处 理模块把删除信息提交给数据模块,数据模块保存信息。订单处理提示用户删除成功。图5 客户删除订单的时序图管理员处理订单的时序图如图6 所示管理员使用其帐号和密码登陆后,登陆模块会将管理员的ID保 存在系统缓存中并提交给订单处理模块。订单处理模块提交给管理员 未处理的列表,管理员提交某商品的ID得到该商品的库存情况,如 果库存充足则接收订单,并把接收信息提交给数据模块,数据模块更 新改客户的订单信息并返回成功信息给订单处理模块,订单处理模块 提示改操作成功。图 6 管理员处理订单的时序图3.5系统的协作图分析:顾客订购协作图如图 7 所示图7 顾客订购协作图顾客删除订单的协作图如图8 所示图 8 顾客删除订单的协作图管理员处理订单协作图如图9 所示1:输入帐号密码05:提示订腐成功0提交用户心0巳提示处理成功0 ,8:更新成功0广更新客尸订单伏态04:提交商品IDO6:接受订单0M未处理订单列表0订单处理棋致库存查谊管理员登陆模块数据棋快图 9 管理员处理订单协作图3.6系统的活动图分析:购买商品的活动图如图10 所示3.7 系统的配置图分析:配置图可以显示节点以及它们之间的必要连接,也可以显示这些连接 的类型,还可以显示组件和组件之间的依赖关系,但是每个组件必须 存在于某些节点上。配置图用于对系统的实现视图建模。绘制这些视 图主要是为了描述系统中各个物理组成部分的分布、提交和安装过 程。在实际应用中,并不是每一个软件开发项目都必须绘制配置图的。 如果项目开发组所开发的软件系统只需要运行于一台计算机并且只 需使用此计算机上已经由操作系统管理的标准设备,这种情况下就没 有必要绘制配置图了。另一方面,如果项目开发组所开发的软件系统 需要使用操作系统管理以外的设备(例如数码相机、路由器等)、或 者系统中的设备分布在多个处理器上,这时就有必要绘制配置图,用 其来帮助开发人员理解系统中软件和硬件的映射关系。下面的本系统 的配置图,见图 11。图 11 网络购物系统的配置图4. 系统采取的设计模式分析4.1系统中的类,如下图 12所示图 12 系统的类图关于图 11有几点说明如下:1. Person 类是所有类的父类,它的属性包括用于标示不同身份人的ID,姓名和地址。它的方法包括根据ID搜索,根据姓名搜索,设置 某人的姓名,地址等。2. Customer 继承了父类的方法和属性,并添加了自己的方法和属性。 Reg_date 表 示 改用 户 注 册 的 日 子 , password 表 示登 陆 密 码 , Search_goods()用于搜索商品,maintain_order()用于维护客户订单。3. employee继承了 person,它的属性dateHired表示雇佣日期,right 表示使用权限,salary表示该员工的薪水,password表示登陆密码。Handle_Order()用于搜处理订单,这是所有员工共有的操作。系统管理员中还增加了查询分析和报表打印的方法。4.2系统中的其他类,如下图 13所示:图 13 系统中的其他类4.3 模式的使用1简单工厂模式:简单工厂模式又称静态工厂方法模式,它就是由一个工厂对象决定创建出哪一产品类的实例。简单工厂模式的策略图如下14 所示:图 14 简单工厂的策略模式图简单工厂模式是由一个工厂类根据传入的参量决定创建哪一类 产品的实例。由上图可以看出它有三个角色:工厂类:担任这个角色的是工厂方法模式的核心,含有与应用紧 密相关的商业逻辑。工厂类在客户端的直接调用下创建产品的对象, 它往往由一个具体的 java 类实现。抽象产品角色:担任这个角色的类是由工厂方法模式所创建的类 的父类,或者他们有共同的接口。抽象产品可以是一个 java 接口或 者抽象类的实现。具体产品角色:工厂方法模式所创建的任何对象都是这个类的实例, 由一个具体的 java 类来实现。在系统中,我们抽象出一个员工的类,它有连个子类:一般员工和系 统管理员。有个一个工厂类 factory 负责具体实例的创建。具体的类 图如下图15 所示:图 15 系统中使用的简单工厂模式2 策略模式:策略模式的用意:策略模式的用意是针对一组算法,将每一个算法封装到具有共同 接口的独立的类里面去,从而使得它们可以相互替换。它是对算法的 包装,是把使用算法的责任和算法本身分割开,委派给不同的对象管 理。策略模式的结构:策略模式的结构图如下图16 所示:图 16 策略模式的结构图在这个模式里面设计到三个角色:环境角色:它持有一个抽象策略的引用抽象策略角色:这是一个抽象角色,通常由一个接口或者抽象类 实现。此角色给出所有的具体策略类所需要的接口。具体策略角色:包装了相关的算法和行为在系统中设计到多种查询,它们大都类似,我们可以采用策略模 式提高程序的灵活性和适应性。具体的策略模式的使用见下图 17 所示:I员工商品查询订单袱态查询销售杳询库存查询图 17 策略模式在系统中的使用3 享元模式:由于只使用到单享元模式,故在这里只给单享元模式给与介绍。在单纯享元模式中,所有的享元对象都是可以共享的,如下图17 所示。它涉及到如下的四种角色:客户端:它需要一个对所有享元对象的一个引用,同时它需要自 行存储所有享元的外蕴状态享元工厂:本角色负责创建和管理享元角色。它必须保证享元对 象可以被系统适当的共享。当一个客户端对象调用一个享元对象的时 候,享元工厂会检查系统中是否已近有一个已符合要求的享元对象, 如果有的话,享元工厂就提供这个已有的享元对象;如果没有的话, 享元工厂就创建一个合适的享元对象。抽象享元角色:它是所有具体享元类的超类,为它们提供一个公 共接口,当需要外蕴状态的操作,可以提供参数传入。具体享元:它实现了抽象享元所规定的接口。如果有内蕴状态的 话,它必须为内蕴状态提供空间,使得享元对象在系统内可以共享。图 18 单纯享元的模式结构图在系统中所有的用户拥有同样的用户类型,因此对他们我们 只需保存一个,这样可以很大程度上节省系统运行的开销以及提高运 行的效率。享元模式在系统中的使用如下图19 所示:用尸字7E十皈用户类型-set: HashMap#类型:int 护笔记:String 护有敷期:int十用户孚兀0 : void+ factorv(型:irit,笔记:String,有效期:int): void图 19 享元模式在系统中的使用5结束语:UML在软件工程中的运用是与OMG组织提出的MDA 是相一致的,随着它的不断发展和完善,并且随着OMG使UML实 现的标准化、统一化,最终基于UML的MDA软件开发过程将变为 一个更加重用,更加快速,更加有效的软件开发方法,使软件开发方 法向更高抽象层,更加可重用发展。6.参考文献:1 面向对象程序设计高级教程,陈奇,高等教育出版社,20012 标准建模语言UML极其支持环境,周伯生,张莉等,北京:计算机世界,19983 UML 和模式应用面向对象分析和设计导论, Craig Larman 等,姚淑珍, 李虎译,机械工业出版社, 20024 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,科学出版社
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 毕设全套


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!