销售管理系统的UML分析与设计_第1页
销售管理系统的UML分析与设计_第2页
销售管理系统的UML分析与设计_第3页
销售管理系统的UML分析与设计_第4页
销售管理系统的UML分析与设计_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

销售管理系统的销售管理系统的 UML 分析与设计分析与设计 作者 王文豪 摘摘 要要 销售管理系统是现代企业管理系统的一个重要组成部分 传统的系统分析设计方法已经难以保证软件开发的效率和质量 通过将 UML 应 用于销售管理系统建模 可以加速软件开发进程 提高软件质量 支持动态的业务需求 并方便地集成已有的企业管理资源 关键词关键词 销售管理系统 UML 分析 实现 1 引言引言 当前社会对信息系统的需求日益增长 需求变化也越来越快 软件开发的技术发展方向已经从 提升被开发系统的执行效率 转变为 提升开发效 率 面向对象 OO 技术降低了解决方法域与问题域的差别 提供了良好的复用机制 能够更加有效提高软件开发效率 完全顺应了软件开发技 术的发展方向 UML The Unified Modeling Language 即统一建模语言 是一个通用的标准建模语言 可以对复杂的系统建立可视化系统模型 目前已经被工业 标准组织 OMG Object Management Group 接受 一经推出便得到许多著名计算机厂商如 Microsoft HP IBM Oracle 等支持 在国际上应用日益广泛 本文通过一个销售管理系统的分析与设计 阐述如何通过 UML 降低开发难度和提高开发效率 2 销售管理系统的基本特征和功能模块销售管理系统的基本特征和功能模块 本系统以 订单 为核心 构建出了以 客户 为中心的管理模式 该系统具有以下一些特征 1 先进的系统结构 面向销售流程 能适应原有销售工作流程并进行合理的改进 从而更贴近实际的应用 2 针对大型企业销售管理人员多 销售管理复杂的特点 通过系统提供的灵活的人员权限设置和全面的财务核算方式 实现真正的销售网 络化办公 3 在实现订单的电子化 工作流程的数字化同时 帮助公司领导提高决策的科学化水平 4 通过对客户信息的管理 实现对客户广告走势和重要客户情况统计和分析 整个系统操作业务人员包括 销售员 销售经理 仓库管理员 审计员 公司销售主管 和系统管理员 各个角色承担不同的系统任务 通过 网络和通信系统 连接到销售管理系统 使用统一的访问界面 进行日常的销售业务操作 最终实现销售部门业务的正常运转 3 系统的系统的 UML 分析与实现分析与实现 UML 概述及特点 UML 是一种编制系统蓝图的标准化语言 可以对大型复杂系统的各种成分可视化说明并构造系统模型 以及建立各种必要的文档 UML 通过 三类图形建立系统模型 Use Case 图 静态结构图 类图 对象图 组件图 配置图 和动态行为图 顺序图 协同图 状态图 活动图 这些 图可以从不同抽象角度使系统可视化 UML 具有面向对象 可视化 独立与开发过程和程序设计语言以及易于掌握使用等特点 UML 适用于各种 规模的系统开发 能促进软件复用 方便地集成已有的系统并有效减少开发中的各种风险 UML 在销售管理系统中的实际应用 UML 是一种建模语言 是系统开发的一个组成部分 本身并没有关于开发过程概念的定义和表示符号 UML 的创始人 booch Jacobson 和 Rum Baugh 在 rational 公司的支持下综合了多种系统开发过程的长处 提出新的面向对象的开发过程 称为 Rational 统一过程 Rational Unified Process RUP RUP 过程的核心工作流程包括 业务建模 需求分析 系统分析与设计和实现 实现 测试和系统部署 下面通过 UML 来分析并 构造销售管理系统模型 并结合 Rational 统一过程加以描述 图形使用 Rational Rose 工具软件绘制 3 1 销售管理系统的业务建模和需求分析销售管理系统的业务建模和需求分析 业务模型和需求分析的目的是对系统进行评估 采集和分析系统的需求 理解系统要解决的问题 重点是充分考虑系统的实用性 结果可以用 一个业务用例 Business Use Case 框图表达 根据销售系统的基本特征和功能可得到 本系统的用例图 如图 2 图 1 销售管理系统业务用例框图 模型中的活动者代表外部与系统交互的单元 包括销售员 销售经理 仓库管理员 审计员 公司销售主管 和系统管理员 业务用例框图是 对系统需求的描述 表达了系统的功能和所提供的服务 包括客户管理子系统 订单管理子系统 销售统计子系统 产品管理子系统系统管理子系 统 图 2 是销售管理系统层次的用例模型 只包含了最基本的 Use Case 模型 是系统的高层抽象 在开发过程中 随着对系统需求认识的不断加深 用例模型可以从顶向下不断细化 演化出更加详细的 Use Case 模型 根据系统的用例图 可以对系统的持久对象进行设计 下图是本系统持久对 象类及类之间关系图 图 2 核心业务对象类及类之间关系 3 2 销售管理系统设计销售管理系统设计 系统分析与设计是研究欲采用的实现环境和系统结构 结果是产生一个对象模型 也就是设计模型 设计模型包含了 Use Case 的实现 可以表 现对象如何相互通信和运作来实现 Use Case 流的 对于系统的静态结构 可以通过类图 对象图 组件图和配置图来描述 对于系统的动态行为 可以通过顺序图 协同图 状态图 活动图描述 这些图在加上说明文档就构成一个完整的设计模型 3 2 1 系统架构设计 销售管理系统拥有大量销售信息资源 这些资源包括各种客户 订单 和产品等信息 其数据量大 信息变化快 非结构化信息与结构化信息 共存 使用 UML 对销售管理系统进行基于面向对象的分析和实现 可以从开发的第一步开始 从系统的底层就把握住销售信息资源的特征 为下 一步具体实现打好基础 在销售管理系统建立模型时要涉及到处理大量的模型元素 如类 进口 组件 节点 图等 可以将语意上相近的模型元 素组织在一起 这就构成了 UML 的包 包从较高的层次来组织管理系统模型 系统主要有以下四个包 1 用户接口包 ser Interface Package 用户接口包在其他包的顶层次 为系统用户提供访问信息和服务 要注意一点 由于开发工具使用不同 该接口描述也是有区别的 如果采用 Java Web 开发 就要以 JSP Java Server Pages 为基础 如果采取 Microsoft 的 A 开发 其基础就是标准化控件组 本系统在此将使用 Java Web 开发 下面有关代码的描述都是基于 Java 的 2 业务逻辑包 Business Rule Package 该包是销售管理系统业务的核心实现部分 包括客户管理 订单管理 产品管理等 其他包可以通过访问该包提供的接口 实现业务逻辑 如 客户管理业务等 3 数据持久访问包 Data Persistence Package 该包实现数据的持久化 也就是与数据库交互 实现数据的存取 修改等操作 4 通用工具包 til Package 该包主要包括应用程序安全检查的类 可以为上面三个包提供安全检查 如客户端检查和服务器端业务规则检查等 同时包括一些系统异常检 查与抛出处理以及系统日志服务等 3 2 2 系统详细设计 详细设计主要是描述在系统分析阶段产生的类 与分析阶段类的区别就是偏重于技术层面和类的细节实现 销售管理系统提供的各种服务都是 建立在分布 开放的信息结构之上 依托高速 可靠的网络环境来完成的 每项服务都可以看作一个事件流 由若干相关的对象交互合作来完成 对于这种系统内部的协作关系和过程行为 可以通过绘制序列 Sequence 框图和协作 Collaboration 框图来帮助观察和理解 此外 描述工作 流和并发行为还可以通过活动框图 表达从一个活动到另一个活动的控制流 同时 可以在理解这些图的基础上 抽象出系统的类图 为系统编码 阶段继续细化提供基础 下面以 Java Web 开发为例 介绍客户管理子系统的详细设计 1 客户管理子系统的基本结构建模 下图是客户管理子系统主要类极其关系的详细设计 图 3 客户关系子系统类的详细设计及类之间关系 2 序列图 序列图是一种对象交互图 着重强调了时间序列 而不是静态对象的关系 通过序列图可以清楚地看到 谁在什么时间对谁说了写什 么 图 4 客户管理的序列框图 图 5 销售人员对客户管理的顺序框图 图 4 是一个客户管理的序列框图例子 描述了先加载某个客户 显示某些状态 再更改某些属性值 最后更新数据库状态的一次执行过程 此 图可设计 Customer 类的 loadCustomer int 和 updateCustomer 方法实现 通过序列框图可以清晰看出系统用户 客户管理子系统的用户接口 数据库连接模块之间以时间为顺序的消息交换 这对于把握系统的控制流 顺序行为和交互行为是非常有益的 建立在分布网络环境下的销售管理系统的事件流和控制流是非常复杂的 需要从顶层到底层进行一步步分解 用多幅能反映动态结构的图来分析与说明 图 5 反映了销售人员对客户管理的顺序框图 3 状态图适合描述一个对象穿越多个 Use Case 的行为 类的状态图表示类的对象可以呈现的状态和这个对象从一种状态到另一种状态的转换 图 6 Customer 对象状态图 图 6 描述了 Customer 对象的生命期中可能的状态及状态变化 从创建 更新到消亡的转变过程 其中 insertOrder deleteOrder 不是直接作用于 当前 customer 对象 而是指当前 customer 对象所涉及的订单操作 此例说明其他对象的操作可能改变当前对象的状态 4 协作图 协作图和序列图相似 两种图所表达的是同一种信息 可以将序列图转换为协作图 反之也然 但两者是有区别的 序列图强调的是 交互的时间序列 协作图强调的是交互的语境和参与交互的对象的整体组织 下图描述的是查询一个客户信息消息传递的过程 图 7 查询客户信息的协作图 5 活动图 用于描述业务过程和类的操作 类似与旧流程图 是对业务处理工作流建模 在活动图中可以增加角色的可视化的维数 下图是增加 了 Customer Saleman Warehouse 三个角色的系统活动图 反映了在业务处理过程中 每个角色执行的过程 图 8 活动图 通过框图 设计和开发人员可以确定需要开发的类 类之间的关系和每个类操作和责任 序列框图按照时间排序 用于通过情境检查逻辑流程 协作框图用于了解改变后的影响 可以很容易看出对象之间的通信 状态图描述了对象在系统可能中的状态 如果要改变对象 就可以方便地看到 受影响的对象 6 软件系统一般由一组部件组成 换句话说 部件是相对独立的部分软件实施 有自己特有的功能 并可在系统中安装使用 系统中各部件是相 互协作合作 给系统提供完整的功能 下图是本系统运行时的主要部件 图 9 运行的部件图 3 2 3 销售管理系统的实现 测试和系统配置 系统采用五层逻辑结构 客户端只需中文浏览器 表示层用 12 个 JSP Java Server Page 文档实现动态页面以创建 操作业务对象 核心对象层用 6 个 Java 类以 JavaBean 形式构成业务处理的核心对象 连接层采用 JDBC2 提供两种连接方式 一种是基于 DriverManager 主要支持 Java 应用和 测试 另一种基于 DataSource 资源层即数据库服务器 经过系统分析和设计后 就可以根据设计模型在具体的环境中实现系统 生成系统的源代码 可执行程序和相应的软件文档 建立一个可执行 系统 进而需要对系统进行测试和排错 保证系统符合预定的要求 获得一个无错的系统实现 测试结果将确认所完成的系统可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论