面向过程的分析:结构化分析在软件需求中的应用

需积分: 32 3 下载量 121 浏览量 更新于2024-07-11 收藏 2.92MB PPT 举报
该资源主要讨论的是在系统分析与设计领域中,如何对“统计成绩”的功能进行第一级分解,并介绍了相关的方法和理论。重点涉及系统分析的重要性和困难,需求分析的过程,以及结构化分析的基本思想和历史。 在软件开发过程中,需求分析是至关重要的第一步,它决定了项目的走向和成功与否。统计成绩的功能被分解为输入控制、处理模块和输出控制,这是系统分析的一个典型应用,旨在将复杂问题拆分为可管理的部分。数据流图(DFD)作为一种重要的工具,用于表示信息变换过程,帮助分析人员理解和表达系统的需求。 结构化分析方法源于Douglas Ross的提议,由DeMarco等人进一步推广,其核心是通过分解和抽象来理解和描述复杂系统。这种方法特别适合数据处理类型的软件,但随着技术的发展,逐渐加入了对实时工程问题中控制和行为方面的考虑。 需求分析面临的主要挑战包括需求的不明确性和高风险性,可能导致项目失败。需求可以分为多种类型,如功能性、可用性、可靠性、性能、可支持性以及一系列辅助因素。FURPS+模型便是用来全面评估和定义这些需求的框架。 在结构化分析中,"自顶向下"的逐层分解是一种常用策略,它将整个系统视为一个高层次的抽象,然后逐步细化为更具体的组件。上下文图(Context Diagram)是这种分解过程的起点,它展示了系统与外部环境的关系。随后,通过分层结构图和Warnier图等工具,进一步细化系统模型,确保DFD的质量。 20世纪80年代,结构化分析方法得到了扩展,以适应实时系统的分析,如Ward和Mellor以及Hatlley和Pirbhai的工作,这使得结构化分析方法能够更好地处理控制和行为方面的复杂性。 总结来说,本资源提供了关于“统计成绩”功能的第一级分解实例,同时深入探讨了系统分析和设计的基础理论,强调了需求分析的重要性和方法,以及结构化分析在解决复杂问题中的应用。这些知识对于理解软件开发过程和提升系统设计能力具有很高的价值。