设计概念2

设计概念

一、设计工程

  1. 四种设计
  • data/class design

数据/类设计创造一个模块和信息代表着高水平模块抽象
data/class design creates a module and information that is represented at a high level abstraction

  • architecture design

is equivalent to the floor plan(平面图) of house

  • interface design

is equivalent to detailed drawings for doors windows and extern uilitity of house

  • component design

a set of detailed for each room of house

  1. 良好的设计
  • 设计必须实现分析模型中的需求
  • 对于代码生成人员、测试人员,设计必须是可读、可理解的
  • 设计提供软件的全貌,从实现角度说明数据域、功能域、行为域
  1. 质量属性(FURPS)
  • functionality
  • usability
  • reliability
  • performance
  • supportalitity
  1. 信息隐蔽
    模块应当精心设计,以使得模块包含的信息不被不需要这些信息的其他模块访问
  2. 内聚(cohesion)和耦合(couping)

    内聚显示某个模块内部相关的程度
    耦合表示不同模块依赖程度
    好的设计应该高内聚低耦合

  3. 良好的设计应该有以下几个特征
  • 完整性和充分性
  • 原始性
  • 高内聚
  • 低耦合

    二、 体系结构设计

  1. 数据设计目标:将分析模型中的数据对象转化为软件构建中的数据结构,在必要时转化为应用程序级的数据库系统
  2. 软件体系结构 软件体系结构是指系统中的一个或多个结构,结构中包括构件、构件的可见外部属性和他们之间的联系,体系构建不是可运行的程序
    体系结构包含
  • a set of components
  • a set of connectors
  • constraints
  • semantic models(语义模型)
  1. 与目标系统交互的软件为:上级系统、下级系统、同级系统、参与者
  2. 原始模型(archetype):是一个类或者一个模式,是软件体系结构设计的核心抽象,但是随着软件体系结构的进行,这些抽象需要进一步精化

    三、 构件级设计

  3. 面向对象工程环境中,构件包含一系列协作类
  4. 传统构件中包含
  • 控制构件
  • 问题域构件
  • 基础基础问题域
  1. 构件开发原则
  • OCP对修改关闭,对扩展开放,无需对构件修改就可以实现功能的扩展
  1. 那些体现出层、功能、通信的内聚性的类和构件相对来说易于实现、测试和维护
  2. 结构化编程是局限于逻辑流的设计技术有三种构造:顺序型 条件型 重复型,优点是减少复杂性,可读性,可测试性,易维护性
  3. 面向对象观点注重细化来自问题域和基础设施的设计类,传统观念细化三种不同的构建

    四、 用户接口设计

  4. 黄金法则:控制用户,减少用户记忆,界面一致
  5. 四种模型:用户模型、设计模型、心理模型、实现模型
  6. 用户界面分析框架活动:用户、任务环境分析和建模,接口设计,接口构建,接口确认。

猜你喜欢

转载自www.cnblogs.com/HannahLihui/p/10205896.html