回到首页 / 上级目录

软件设计工具

软件设计阶段需要输出设计文档、流程图、伪代码等。

以下是一些常用的设计工具。

1. 伪代码

伪代码描述的算法结构清晰,可以容易地以任何一种编程语言实现。

使用伪代码, 不用拘泥于具体实现。

如打印斐波那契数列的伪代码:

intput n
a = 0
b = 1
for (i = 1; i <= n; i ++)
  if a > b then
    b += a
    print b
  else
    a += b
    print a

2. 时序图

描述信息交互,常用于网络请求描述。

sequenceDiagram Client-->>Server: Request Server-->>Client: Response Client-->>Server: Confirm

3. 实体关系图

表示实体类型、属性之间的联系,常用于数据库设计。

erDiagram CAR ||--o{ NAMED-DRIVER : allows PERSON ||--o{ NAMED-DRIVER : is

4. 类图

通过对象之间的关系来描述系统的结构,常用于面向对象编程中。

classDiagram Animal <|-- Duck Animal <|-- Fish Animal : +int age Animal : +String gender Animal: +isMammal() Animal: +mate() class Duck{ +String beakColor +swim() +quack() } class Fish{ -int sizeInFeet -canEat() }

5. 数据流图

以图形方式来表达系统的逻辑功能和数据流动,常用于函数式编程中。

数据流图有四种元素:

flowchart LR id1[外部实体]--数据流-->id2((数据加工))-->id3[(数据存储)]

数据流图按层次进行:

实体和数据加工需要编号,例如第 0 层的编号是 1、2、3 等,第 1 层的编号则是 1.1、1.2、1.3 或 2.1、2.2、2.3 等。