识别解决方案
通常,编码被认为是任何软件开发过程中最核心的部分。然而,编码只是流程的一部分,如果系统设计正确,它实际上可能花费最少的时间。在设计系统之前,必须为手头的问题确定一个解决方案。
关于系统设计,首先需要注意的是,最初系统分析师可能会提出不止一个解决方案。但最终的解决方案或产品只能是一个。在需求收集阶段收集到的数据的深入分析可以帮助得出唯一的解决方案。正确定义问题对于获得解决方案也至关重要。
当面临多个解决方案的问题时,分析师会使用流程图、数据流图、实体关系图等视觉辅助工具来深入了解每个解决方案。
流程图
流程图是通过符号和图表来说明系统中工作流程和数据流的过程。它是帮助系统分析师识别问题解决方案的重要工具。它以可视化的方式描绘了系统的组件。
以下是流程图的优点:
可视化表示有助于理解程序逻辑
它们充当实际程序编码的蓝图
流程图对于程序文档很重要
流程图是程序维护期间的重要辅助工具
以下是流程图的缺点:
复杂的逻辑无法使用流程图来描述
如果逻辑或数据/工作流程发生任何变化,则必须完全重绘流程图
数据流图
数据流图或 DFD 是数据流通过系统或子系统的一种图形表示。每个流程都有其自己的数据流,并且存在不同级别的数据流图。级别 0 显示整个系统的输入和输出数据。然后将系统分解成模块,级别 1 DFD 分别显示每个模块的数据流。如果需要,可以将模块进一步分解成子模块并绘制级别 2 DFD。
伪代码
系统设计完成后,将交由项目经理进行实施,即编码。程序的实际编码是用编程语言完成的,只有接受过该语言培训的程序员才能理解。但是,在实际编码发生之前,程序的基本操作原理、工作流程和数据流会使用类似于要使用的编程语言的表示法进行编写。这种表示法称为伪代码。
以下是一个 C++ 伪代码的示例。程序员只需将每个语句转换为 C++ 语法即可获得程序代码。
识别数学运算
所有对计算机的指令最终都在机器级别实现为算术和逻辑运算。这些操作很重要,因为它们:
- 占用内存空间
- 需要时间执行
- 决定软件效率
- 影响整体软件性能
系统分析师在识别手头问题的唯一解决方案时,会尝试识别所有主要的数学运算。