结构化分析与设计:需求理解与系统分解
需积分: 32 68 浏览量
更新于2024-07-11
收藏 2.92MB PPT 举报
本文主要探讨了系统分析与设计中的一个重要概念——实体之间的关联,并结合了刘博文关于系统分析的理论与实践,强调了需求分析在软件开发中的关键作用。同时,文章介绍了结构化分析方法的发展历程,核心思想及常用工具如数据流图、上下文图等。
在系统分析中,实体之间的关联描述了不同实体间的关系,如“一个X与一个Y相关联”表明每个X对应一个Y;“一个X与多个Y相关联”则表示一个X可以与多个Y相关;“零个或一个X与零个或一个Y相关联”意味着两者之间存在可选关系,可能都不存在,也可能只存在一个。这些关系的定义有助于构建清晰的实体关系模型,便于理解和设计系统。
需求分析在软件开发中扮演着举足轻重的角色,它是项目的基础,对项目的成功率有着直接影响。不明确的需求可能导致80%的项目失败。需求分析包括功能性、可用性、可靠性、性能、可支持性等多个方面,统称为FURPS+。需求分析的挑战在于软件项目的复杂性、广泛性和高风险性。
结构化分析(Structured Analysis, SA)是一种经典的需求分析方法,最初由Douglas Ross提出,后由DeMarco推广。它主要针对数据流进行分析,适用于数据处理类型的软件。随着时间的推移,结构化分析不断演化,增加了对实时工程问题的考虑。其基本思想是通过“分解”和“抽象”将复杂系统简化,例如使用数据流图(DFD)进行自顶向下的逐层分解,以及上下文图(Context Diagram)来描绘系统的整体边界。
结构化分析方法的工具包括分层结构图、Warnier图等,它们帮助分析员将大问题分解成可管理的小部分,以便于理解和解决。此外,20世纪80年代中期,实时“扩展”被引入,增强了结构化分析在处理控制和行为方面的能力。
系统分析与设计涉及的实体关系、需求分析方法和结构化分析策略是软件开发中的核心元素。理解并熟练运用这些概念和工具,对于创建高效、可靠的软件系统至关重要。
133 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
琳琅破碎
- 粉丝: 21
- 资源: 2万+
最新资源
- Marlin-1.0.x.zip
- 基于51单片机的出租车计价器.zip
- eSvin-开源
- 做一个真正的营业部团队经营者
- 2898096_fenkuai_image(OK).rar
- RedTeamCheatsheet:红色分组操作或CTF中使用的所有常用命令。 这是一项正在进行的工作,将随着时间的推移而更新
- TODO-List-Assignment:我已经为todo清单创建了一个任务,
- ece-开源
- mg
- 色谱模型参数优化器(EDM,LI):App查找适合最佳实验数据的EDM(线性等温线)模型参数。-matlab开发
- ignition-code-editor:将内联代码编辑添加到点火页面
- 为团队高留存而奋斗
- 翻译应用:翻译应用
- 和其mysql备份 v1.1
- packr:打包您的JAR,资产和JVM,以在Windows,Linux和Mac OS X上分发
- gtest.zip框架