- 1、本文档共88页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.4.10 设计类 有五种不同类型的设计类,每一种都表示了设计体系结构的一个不同层次: 用户接口类:定义人-机交互(Human-Computer Interaction, HCI)所必需的所有抽象。在很多情况下,HCI出现在隐喻的环境(例如,支票簿、订单表格、传真机),而接口的设计类可能是这种隐喻元素的可视化表示。 业务域类:通常是早期定义的分析类的精化。这些类识别实现某些业务域元素所必需的属性和服务(方法)。 过程类:实现完整的管理业务域类所必需的低层业务抽象。 * 5.4.10 设计类 持久类:表示将在软件执行之外持续存在的数据存储(例如,数据库)。 系统类:实现软件管理和控制功能,使得系统能够运行,并在其计算环境内与外界通信。 随着体系结构的形成,每个分析类转化为设计表示,抽象级就降低了。也就是说,分析类使用业务域的专门用语描述对象(以及对象所用的相关服务);设计类更多地表现技术细节,用于指导实现。应该评审每个设计类,以确保设计类是“组织良好的”。 * 5.4.10 设计类 组织良好的设计类具有4个特征: 完整性与充分性。设计类应该完整地封装所有可以合理预见到的(根据对类名的理解)存在于类中的属性和方法。例如,为视频编辑软件定义的Scene类,只有当它包含与创建视频场景相关的所有合理的属性和方法时,才是完整的。充分性确保设计类只包含那些“对实现这个类的目的足够”的方法,不多也不少。和一个设计类相关的方法应该关注于实现类的某一个服务。例如,视频编辑软件的VideoClip类,可能用属性start-point和end-point指定剪辑的起点和终点(注意,加载到系统的原始视频可能比要用的部分长)。方法setStartPoint()和setEndPoint()为剪辑提供了设置起点和终点的唯一手段。 * 5.4.10 设计类 高内聚性。一个内聚的设计类具有小的、集中的职责集合,并且专注于使用属性和方法来实现那些职责。例如,视频编辑软件的VideoClip类可能包含一组用于编辑视频剪辑的方法。只要每个方法只关注于和视频剪辑相关的属性,内聚性就得以维持。 低耦合性。在设计模型内,设计类之间相互协作是必然的。但是,协作应该保持在一个可以接受的最小范围内。如果设计模型高度耦合(每个设计类和其他所有设计类都有协作关系),那么系统就难以实现和测试,并且维护也很费力。通常,一个子系统内的设计类对其他子系统中的类应仅有有限的了解。该限制被称作Demeter定律 ,该定律建议一个方法应该只向周边类中的方法发送消息。 * 第5讲 设计的概念 软件工程中的设计 设计过程 关注点分离 关于设计的概念 设计模型 * 5.5 设计模型 在软件设计过程中,包含体系结构、接口、构件级和部署表示的设计模型是主要的工作产品。随着每个元素的开发,逐渐形成更全面的设计视图。体系结构元素使用各种信息以获得软件、软件子系统和构件的完整的结构表示,这些信息来自于应用域、需求模型和模式与风格的分类。接口设计元素为外部和内部的接口以及用户接口建模。构件级元素定义体系结构中的每一个模块(构件)。最后,部署级设计元素划分体系结构、构件和容纳软件的物理配置的接口。 * 5.5 设计模型 可以从两个不同的维度观察设计模型,如图5-3所示。过程维度表示设计模型的演化,设计任务作为软件过程的一部分被执行。抽象维度表示详细级别,分析模型的每个元素转化为一个等价的设计,然后迭代求精。图中,虚线表示分析模型和设计模型之间的边界。在某些情况下,分析模型和设计模型之间可能存在明显的差别;而有些情况下,分析模型慢慢地融入设计模型而没有明显的差别。 * 5.5 设计模型 设计模型的元素使用了很多UML图,有些UML图在分析模型中也使用了。差别在于这些图被求精和细化为设计的一部分,并且提供了更多具体的实施细节,突出了体系结构的结构和风格、体系结构中的构件、构件之间以及构件和外界之间的接口。 * 图5-3 设计模型的维度 * 5.5 设计模型 然而,要注意到:沿横轴表示的模型元素并不总是顺序开发的。大多数情况下,初步的体系结构设计是基础,随后是接口设计和构件级设计(并行进行)。通常直到设计全部完成后才开始部署模型的工作。在设计过程中的任何地方都可以应用设计模式。这些模式能够使设计人员将设计知识应用到他人已经遇到并解决了的特定领域问题。 * 5.5.1 数据设计元素 和其他软件工程活动一样,数据设计(有时也称为数据体系结构)创建在高抽象级上(以客户或用户的数据观点)表示的数据模型和(或)信息模型:之后,数据模型被逐步求精为特定于实现的表示,亦即基于计算机的系统能够处理的表示。在很多软件应用中,数据体系结构对必须处理该数据的软件的体系结构有深远的影响。 * 5.5.1 数据设计元素
您可能关注的文档
- 《新》第3章-软件工程基础.doc
- 《新》第04章软件工程的详细设计.ppt
- 《新》第4课 工业化的起步.doc
- 《新》第4课 工业化的起步_于课件.ppt
- 《新》第4课《工业化的起步》课件.ppt
- 《新》第4课工业化的起步课件.ppt
- 《新》第4课工业化的起步优秀课件.ppt
- 《新》第4章 计算机软件.ppt
- 《新》第4章 IT项目实施.ppt
- 《新》第4章 M文件程序设计基础.ppt
- 半导体材料性能提升技术突破与应用案例分析报告.docx
- 半导体设备国产化政策支持下的关键技术突破与应用前景报告.docx
- 剧本杀市场2025年区域扩张策略研究报告.docx
- 剧本杀行业2025人才培训体系构建中的市场需求与供给分析.docx
- 剧本杀行业2025年人才培训行业人才培养模式创新与探索.docx
- 剧本杀行业2025年内容创作人才需求报告.docx
- 剧本杀行业2025年区域市场区域剧本市场消费者满意度与市场竞争力研究报告.docx
- 剧本杀市场2025年区域竞争态势下的区域合作策略分析报告.docx
- 剧本杀行业2025人才培训与行业人才培养模式创新.docx
- 剧本杀行业剧本创作人才心理素质培养报告.docx
文档评论(0)