考点:在软件工程中,特别关注功能的分层和分解,这体现了自顶向下,逐步分解问题的系统化分析方法。结构化分析方法(SA)的核心是建立数据模型。围绕这个核心,有三个层次的模型:功能模型(通过数据流图(DFD)表示)、行为模型(用状态转换图(STD)表示)以及数据模型。
结构化特点:采用自顶向下,逐步分解的方式进行系统分析和设计,使整个过程更加有条理和清晰。
结构化分析模型正是基于这种思路构建的。
在实际工作中,一般使用:
Ø E-R图主要用于表示数据模型和实体模型。
Ø DFD则用于描绘功能模型和算法逻辑。
Ø 状态转换图则用于展示系统的行为模型。
这三个模型虽然各有侧重,但它们之间有着密切的关系,且建立它们的时序并不严格,而是一个迭代的过程。
实体-联系模型(E-R模型)是描述概念世界、建立概念模型的工具。其主要要素包括:
Ø 实体通常用矩形框表示,框内标注实体名称。
Ø 属性若是单值属性,用椭圆表示;多值属性则需特殊标注;派生属性则用虚线椭圆表示。
Ø 联系通过菱型框表示,框内注明联系名称,并用连线将菱型框与有关实体相连,连线上注明联系类型。
E-R模型是SA方法中重要的工具,用于表达系统内数据的流动,并通过数据流来描述系统功能。
DFD的主要作用在于从数据传递和加工的角度出发,通过图形符号描述系统各个部件的功能和数据在它们之间传递的情况,以说明系统所完成的功能。
DFD的基本符号包括数据流、加工、数据存储和外部实体。
DFD层次是自顶而下的分析过程中重要的一环。通过分层描绘,可以将复杂的系统逐步拆解为较低层次的、更详细的DFD,直至清晰地描述出整个系统。
状态转换图(STD)主要用于描述实时控制系统的行为模型。通过描述系统的状态和引起状态转换的事件,STD图来表示系统的行为。
数据字典是SA方法中不可或缺的一部分,它建立在DFD的基础上,对DFD现的所有命名元素都加以定义,确保每个图形元素的名字都有一个确切的解释。结合DFD和数据字典,可以对系统逻辑模型进行完整描述。
备注:虽然功能是系统内部所具备的,但这里强调的是功能需求而非实现方法。功能需求可以通过任何编程语言或硬件手段来实现。
需求和设计的区别:功能需求是业务逻辑所决定的,而设计则是实现这些业务逻辑的软件人员的责任。二者各有侧重,共同构成了完整的软件开发过程。
ong提示:以上内容是对结构化分析方法及相关工具的概述,实际应用中还需根据具体项目需求进行详细设计和实施。