架构师考点大纲 系统设计分析规划。
注:有些是扩展的知识,不一定是考点。
概述
参考:
系统分析
需求分析
需求分析解决的是“做什么” 的问题。
4个阶段
- 问题识别
- 分析与综合
- 编写需求规格说明书
- 需求评审
需求分类
- 分类1:功能需求、非功能需求、设计约束。
- 功能需求:是指系统必须完成的那些事,即为了向它的用户提供有用的功能,产品必须执行的动作。
- 非功能需求:是指产品必须具备的属性或品质,如性能、响应时间、可靠性、容错性、扩展性等。
- 设计约束:也称为限制条件、补充规约,这通常是对解决方案的一些约束说明,例如必须采用国有自主知识版权的数据库系统,必须在 UNIX 操作系统之下运行等。
- 分类2:业务需求、用户需求、系统需求。(注:从大到小)
- 业务需求(Business Requirement):是指反映组织机构或客户对系统、产品高层次的目标要求,通常问题定义本身就是业务需求。
- 用户需求(User Requirement):是指描述用户使用产品必须要完成什么任务,怎么完成的需求,通常是在问题定义的基础上进行用户访谈、调查,对用户使用的场景进行整理,从而建立从用户角度出发的需求。
- 系统需求(System Requirement):是从系统的角度来说明软件的需求,它包括用特性说明的功能需求、质量属性、非功能需求及设计约束。
- 分类3:基础需求、期望需求、兴奋需求。
需求工程
需求工程就是包括创建和维护系统需求文档所必需的一切活动的过程,2方面:
- 需求开发:4方面,需求捕获、需求分析、需求定义(编写需求规格说明书)和需求验证(注:获分定验)
- 需求管理:4方面,版本控制、变更控制、需求跟踪、需求状态跟踪
需求分析方面
结构化分析 SA
面向对象分析 OOA
系统设计
系统设计解决“怎么做”的问题。
软件设计
概要设计、详细设计。
结构体分析
数据流图,DFD图。
- 过程:也称为加工,一步步地执行指令,完成输入到输出的转换。
- 外部实体:也称为源/宿,系统之外的数据源或目的。
- 数据存储:也称为文件,存放数据的地方,一般是以文件、数据库等形式出现。
- 数据流:从一处到另一处的数据流向,如从输入或输出到一个过程的数据流。
- 实时连接:当过程执行时,外部实体与过程之间的来回通信。
层次
结构化设计
- 概要设计阶段的主要任务是设计软件的结构、确定系统是由哪些模块组成,以及每个模块之间的关系。它采用结构图(包括模块、调用、数据)来描述程序的结构,此外还可以使用层次图和HIPO(层次图加输入/处理/输出图)。
- 详细设计阶段的主要任务则是确定应该如何具体地实现所要求的系统,得出对目标系统的精确描述。它采用自顶向下、逐步求精的设计方式和单入口单出口的控制结构。常使用的工具包括程序流程图、盒图、PAD(Problem Analysis Diagram,问题分析图)、PDL(Program Design Language,程序设计语言)。