软件设计关键:N-S图与软件体系结构解析

需积分: 16 1 下载量 114 浏览量 更新于2024-07-12 收藏 2.2MB PPT 举报
"本资源为软件工程课件,主要讲解了结构化流程图(N-S图)及其在软件设计中的应用。N-S图由顺序、选择、循环三种基本结构组成,是描述软件逻辑流程的一种图形表示方法。软件设计是软件开发的关键环节,包括总体设计和详细设计,目标是构建高内聚、低耦合、高可靠性和高可维护性的软件模型。软件体系结构设计是设计的第一步,涉及系统分解、控制建模和模块分解等活动。" 在软件工程中,结构化流程图,通常称为N-S图,是一种用于表示程序控制流的图形工具。N-S图由顺序、选择(条件)和循环三种基本结构组成,它强调了程序的结构化特性,有助于减少程序的复杂性并提高可读性。在N-S图中,程序的执行流程被划分为多个块,每个块代表一个独立的逻辑操作。 1. **顺序结构**:按照从上到下的顺序依次执行指令,是最基础的流程控制结构。 2. **选择结构**:根据条件的真假执行不同的块,包括单分支选择(如果-则)和多分支选择(如switch-case语句)。 3. **循环结构**:分为当型循环(do-while)和直到型循环(while)两种,前者至少执行一次,后者在满足特定条件前持续执行。 软件设计阶段是将需求分析的结果转化为实际的软件系统的过程。这一阶段分为两个主要步骤: **总体设计(概要设计)**:在此阶段,需求被转化为数据结构和软件的系统结构,确定软件体系架构,如集中式仓库模型或分布式模型。系统分解为子系统,控制建模确定各部分的交互,模块分解进一步细化子系统为可独立实现的模块。 **详细设计**:详细设计阶段关注的是模块内部的实现细节,包括数据结构和算法的设计,确保设计规格说明清晰、简洁、完整且无歧义。 软件设计的目标是创建高内聚、低耦合的软件模型,这意味着模块应有明确的职责,互相之间尽可能少的依赖,以提高软件的稳定性和可维护性。同时,设计应追求高可靠性、高可理解性和高效率,以保证软件的质量。 软件体系结构设计是软件设计的起点,它定义了系统的整体结构,包括子系统和模块的组织方式,以及它们之间的交互。常见的体系结构模式包括集中式仓库模型,其中数据存储在一个中心位置,所有子系统都可以直接访问;分布式模型则将功能分散在多个独立的组件之间,通过通信机制协同工作。 在设计过程中,需遵循一定的准则,例如保持软件实体的层次结构清晰,实现模块化,保持设计规格的清晰度,明确软件实体与外部环境的接口,这些都有助于提升软件的可理解和可维护性。通过以上步骤和原则,软件设计能够有效地将复杂问题转化为可管理和可实施的解决方案。