yangsirgo / softwareTest

软件设计师考试
6 stars 2 forks source link

软件设计 #28

Open yangsirgo opened 4 years ago

yangsirgo commented 4 years ago

考法分析

  1. 软件设计的任务是解决怎么做的问题。软件设计包括:
    • 过程设计:系统结构部件转换成软件的过程描述。
    • 结构设计:定义软件系统主要部件之间的关系。
    • 接口设计:软件内部,软件与操作系统间以及软件和人之间如何通信。
    • 数据设计:将模型转换成数据结构的定义。
  2. 系统方案设计包括:
    • 系统总体设计:系统的总体架构方案设计,总体架构设计,存储的总体设计,计算机和网络系统的方案设计。
    • 系统详细设计:代码设计,数据库设计,人/机界面设计,处理过程设计等。
  3. 软件设计的原则:
    • 高内聚:各种内聚。
    • 偶然聚合:模块完成的动作之间没有任何关系,或者仅仅是一种非常松散的关系。
    • 逻辑聚合:模块内部的各个组成在逻辑上具有相似的处理动作。但是功能用途上彼此无关。
    • 时间聚合:模块内部的各个组成部分所包含的处理动作必须在同一时间内执行。
    • 低耦合:各种耦合。
    • 内容耦合:一个模块需要设计到另一个模块的内部信息。
    • 控制耦合:两个模块彼此之间传递的信息中有控制信息。
    • 标记耦合:一组模块通过参数表传递记录信息,这个记录是某一个数据结构的子结构,而不是简单的变量。
    • 数据耦合:两个模块彼此间通过数据参数交换信息。