广告管理系统的UML分析与设计[3] UML模型
关键字:广告管理系统 UML分析
广告管理系统拥有大量广告信息资源,这些资源包括各种用户、广告、合同以及版面信息。其数据量大、信息变化快,非结构化信息与结构化信息共存。使用UML对广告管理系统进行基于面向对象的分析和实现,可以从开发的第一步开始,从系统的底层就把握住广告信息资源的特征,为下一步具体实现打好基础。在广告管理系统建立模型时要涉及到处理大量的模型元素,如类、进口、组件、节点、图等,可以将语意上相近的模型元素组织在一起,这就构成了UML的包,包从较高的层次来组织管理系统模型。
系统主要有以下四个包:
• 用户接口包(U ser Interface Package)
用户接口包在其他包的顶层次,为系统用户提供访问信息和服务。要注意一点,由于开发工具使用不同,该接口描述也是有区别的。如果采用java开发,就要以java AWT(Abstract Window Toolkit)为基础,如果采取Microsoft的Asp.net开发,其基础就是标准化控件组。
• 业务逻辑包 (Business Rule Package)
该包是广告管理系统业务的核心实现部分,包括广告、合同、客户等,其他包可以通过访问该包提供的接口,实现业务逻辑,如执行广告预订业务等。
• 数据持久访问包 (Data Persistence Package)
该包实现数据的持久化,也就是与数据库交互,实现数据的存取、修改等操作。
• 通用工具包(U til Package)
该包主要包括应用程序安全检查的类,可以为上面三个包提供安全检查,如客户端检查和服务器端业务规则检查等,同时包括一些系统异常检查与抛出处理以及系统日志服务等。
2.2.2系统详细设计
详细设计主要是描述在系统分析阶段产生的类,与分析阶段类的区别就是偏重于技术层面和类的细节实现。广告管理系统提供的各种服务都是建立在分布、开放的信息结构之上,依托高速、可靠的网络环境来完成的。每项服务都可以看作一个事件流,由若干相关的对象交互合作来完成。对于这种系统内部的协作关系和过程行为,可以通过绘制顺序(Sequence)框图和协作(Collaboration)框图来帮助观察和理解。此外,描述工作流和并发行为还可以通过活动框图,表达从一个活动到另一个活动的控制流。同时,可以在理解这些图的基础上,抽象出系统的类图,为系统编码阶段继续细化提供基础。 软件开发网
顺序图和协作图适合描述多个对象的协同关系,而状态图适合描述一个对象穿越多个Use Case的行为。状态图和活动图的区别在于,状态图描述的是对象类响应事件的外部行为,而活动图描述的是响应内部处理对象类的行为。
一个普通客户预订广告业务的顺序框图例子。用户向预订子系统的用户接口登陆,经用户合法性验证后,向预订子系统的客户信息数据库提交查询请求,客户信息需要经过验证,保证该广告记录到该客户数据集中。比如一个客户曾经到该报刊订过 5条广告,通过该新广告同客户历史广告信息添加操作,为决策支持客户信息统计分析提供数据源。如果该客户是新客户,则需要对客户信息执行记录操作,该步操作为客户关系管理提供数据源。