科技: 人物 企业 技术 IT业 TMT
科普: 自然 科学 科幻 宇宙 科学家
通信: 历史 技术 手机 词典 3G馆
索引: 分类 推荐 专题 热点 排行榜
互联网: 广告 营销 政务 游戏 google
新媒体: 社交 博客 学者 人物 传播学
新思想: 网站 新书 新知 新词 思想家
图书馆: 文化 商业 管理 经济 期刊
网络文化: 社会 红人 黑客 治理 亚文化
创业百科: VC 词典 指南 案例 创业史
前沿科技: 清洁 绿色 纳米 生物 环保
知识产权: 盗版 共享 学人 法规 著作
用户名: 密码: 注册 忘记密码?
    创建新词条
科技百科
  • 人气指数: 2219 次
  • 编辑次数: 1 次 历史版本
  • 更新时间: 2009-03-11
admin
admin
发短消息
相关词条
Intel Smart Connect
Intel Smart Connect
THX
THX
电容式触摸屏
电容式触摸屏
USB 3.0
USB 3.0
超速计算机芯片
超速计算机芯片
相变存储技术
相变存储技术
超级计算机模拟图
超级计算机模拟图
笔记本常见接口
笔记本常见接口
UEFI
UEFI
WebP
WebP
推荐词条
希拉里二度竞选
希拉里二度竞选
《互联网百科系列》
《互联网百科系列》
《黑客百科》
《黑客百科》
《网络舆情百科》
《网络舆情百科》
《网络治理百科》
《网络治理百科》
《硅谷百科》
《硅谷百科》
2017年特斯拉
2017年特斯拉
MIT黑客全纪录
MIT黑客全纪录
桑达尔·皮查伊
桑达尔·皮查伊
阿里双十一成交额
阿里双十一成交额
最新词条

热门标签

微博侠 数字营销2011年度总结 政务微博元年 2011微博十大事件 美国十大创业孵化器 盘点美国导师型创业孵化器 盘点导师型创业孵化器 TechStars 智能电视大战前夜 竞争型国企 公益型国企 2011央视经济年度人物 Rhianna Pratchett 莱恩娜·普莱契 Zynga与Facebook关系 Zynga盈利危机 2010年手机社交游戏行业分析报告 游戏奖励 主流手机游戏公司运营表现 主流手机游戏公司运营对比数据 创建游戏原型 正反馈现象 易用性设计增强游戏体验 易用性设计 《The Sims Social》社交亮 心理生理学与游戏 Kixeye Storm8 Storm8公司 女性玩家营销策略 休闲游戏的创新性 游戏运营的数据分析 社交游戏分析学常见术语 游戏运营数据解析 iPad风行美国校园 iPad终结传统教科书 游戏平衡性 成长类型及情感元素 鸿蒙国际 云骗钱 2011年政务微博报告 《2011年政务微博报告》 方正产业图谱 方正改制考 通信企业属公益型国企 善用玩家作弊行为 手机游戏传播 每用户平均收入 ARPU值 ARPU 游戏授权三面观 游戏设计所运用的化学原理 iOS应用人性化界面设计原则 硬核游戏 硬核社交游戏 生物测量法研究玩家 全球移动用户 用户研究三部曲 Tagged转型故事 Tagged Instagram火爆的3大原因 全球第四大社交网络Badoo Badoo 2011年最迅猛的20大创业公司 病毒式传播功能支持的游戏设计 病毒式传播功能 美国社交游戏虚拟商品收益 Flipboard改变阅读 盘点10大最难iPhone游戏 移动应用设计7大主流趋势 成功的设计文件十个要点 游戏设计文件 应用内置付费功能 内置付费功能 IAP功能 IAP IAP模式 游戏易用性测试 生理心理游戏评估 游戏化游戏 全美社交游戏规模 美国社交游戏市场 全球平板电脑出货量 Facebook虚拟商品收益 Facebook全球广告营收 Facebook广告营收 失败游戏设计的数宗罪名 休闲游戏设计要点 玩游戏可提高认知能力 玩游戏与认知能力 全球游戏广告 独立开发者提高工作效率的100个要点 Facebook亚洲用户 免费游戏的10种创收模式 人类大脑可下载 2012年最值得期待的20位硅谷企业家 做空中概股的幕后黑手 做空中概股幕后黑手 苹果2013营收 Playfish社交游戏架构

?? ? ?包图是在 UML 中用似于文件夹的符号表示的模型元素的组合。系统中的每个元素都只能为一个包所有,一个包可嵌套在另一个包中。使用包图可以将相关元素归入一个系统。一个包中可包含附属包、图表或单个元素。

一个"包图"可以是任何一种的UML图组成,通常是UML用例图或UML类图。 包是一个UML结构,它使得你能够把诸如用例或类之类模型元件组织为组。 包被描述成文件夹,可以应用在任何一种UML图上。 虽然包图并非是正式的UML图,但实际上他们是很有用处的, 创建一个包图是为了∶

描述你的需求高阶概述。
描述你的设计的高阶概述。
在逻辑上把一个复杂的图模块化。
组织Java源代码。
指南∶
类包图

创建类包图,以在逻辑上组织你的设计

创建UML组件图,以在物理上组织你的设计

把子包放置在母包的下面

垂直地分层类包图

用例包图

创建用例包图,以组织你的需求

在用例包图上包含角色

水平地排列用例包图

包的命名要简单、具有描述性

应用包是为了简化图

包应该连贯

在包上用版型注明架构

避免包间的循环依赖

包依赖应该反映内部关系

一、类包图
1.创建类包图,以在逻辑上组织你的设计

??图1描述了一个组织成包的UML类图。 除了以下介绍的包原则之外,应用下列的规则来把UML类图组织到包图里:

?

把一个框架的所有类放置在相同的包中。 一般把相同继承层次的类放在相同的包中。 彼此间有聚合或组合关系的类通常放在相同的包中。 彼此合作频繁的类,信息能够通过UML顺序图和UML合作图反映出来的类,通常放在相同的包中。
图1.一个类包图。

包图


2.创建UML组件图,以在物理上组织你的设计。

??如果你的组件比较接近技术,例如那些通过Enterprise Java Beans ( EJB)或Visual Basic的组件,你应该优先选择UML组件图来描述物理设计,而不是包图。 图1的版本源自于组件图章节中。就像你看到的,这个图最适用于物理设计。 永远记住遵循敏捷建模(AM) ( Ambler 2002)的实践--应用合适的Artifact,为工作挑选最好的模型。

3.把子包放置在母包的下面。

??图1描述了包间的继承,你可以看到,继承的包显示在母包支下。 这和UML类图中的在超类下面放置子类的指南是一致的。

4.垂直地分层类包图。

??包间的依赖表明,从属的包的内容依赖于另一个包的内容,或结构上依赖于其它包的内容。 在图1中你可以看到图中的??类交互,领域类又使用基础结构类,基础结构类访问数据库。传统的,这种分层的顺序是以从上到下的方式描述的。

二、用例包图
??用例通常是面向对象开发方法学中的最主要的需求artifact,当你的方法是统一过程(Kruchten 2000; Ambler 2000)实例是尤其如此。而且对于大的项目包图来说,通常是创建用来组织使用需求的。

1.创建用例包图,以组织你的需求

??除了以下介绍的包原则之外,应用下列的规则来把UML用例图组织到包图里:

??把关联的用例放在一起∶included、extending、和inheriting的用例放在相同的包中,就像base/parent用例一样。

??组织用例应该以主要主角的需要为基础。 例如,在图2中,Enrollment包包含与登记班级的学生有关的用例,一个大学提供的重要服务集合。

图2.一个包含主要的包的UML用例包图。

包图


2.在用例包图上包含角色

??图2包含包图上的角色,这有助于把包放在上下文中理解,这样包图就会更容易为读者所理解。

3.水平地排列用例包图

??用例包图的主要受众是项目干系人。因此图的组织应该能够反映他们的需求。 图2中的包是水平放置的,从左到右画出的依赖关系反映了西方文化的阅读习惯。

三、包
??本节中出现的建议可应用到任何一种UML图的包应用上,并非只是包图上。

1.包的命名要简单、具有描述性

??在图1和图2中,包都有简单的、描述性的名称,例如Shipping、Customer、Enrollment和Manage Student Loans和Grants,这样包包含了些什么就非常的清楚了。

2.应用包是为了简化图

??通常在一个图变得笨重,单一页中打印不下的时候引入包。换句话说,遵循通用指南--把大的图重新组织为较小的图,你需要对模型使用分而治之的方法。

3.包应该连贯

??你插入包中的任何东西都应该有意义,都需要考虑包中的其余内容。 为了确定一个包是否连贯,一个好的经验法则是你是否能够用一个短的,描述性的名称为包命名。 如果你做不到这一点,你或许就已经把几个不相关的事务放到包中了。

4.在包上用版型注明架构层

??我们通常会把设计组织到架构层次中,例如user interface、business/domain、persistence/data、和infrastructure/system。 在图1中你可以看到例如user interface、domain、infrastructure和database的版型应用包中,以反映通用的层。

5.避免包间的循环依赖

??包A依赖于包B,包B依赖于包C,而包C依赖于包A,这就形成了一个循环:A-B-C- A, Knoernschild ( 2002)建议尽量避免出现这种情况。 因为包之间彼此紧密耦合,将来的维护和改进将变得困难。 循环依赖是一个很好的信号,意味着你需要重构一个或多个的包,把导致循环依赖的因素从包中除掉。

6.包依赖应该反映内部关系

??当一个包依赖于另一个是,这意味着两个包的内容间存在着一个或多个的关系。 例如:如果是一个用例包图,那么就有可能两个用例之间存在includes、 extends、或继承关系,而两个用例分别处于不同的包中。

→如果您认为本词条还有待完善,请 编辑词条

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。
0

标签: 包图

收藏到: Favorites  

同义词: 暂无同义词

关于本词条的评论 (共0条)发表评论>>

对词条发表评论

评论长度最大为200个字符。