系分 - 案例分析 - 需求分析(FAST分析)

news2024/11/24 5:52:26

在这里插入图片描述

个人总结,仅供参考,欢迎加好友一起讨论

文章目录

  • 案例分析 - 需求分析(FAST分析)
  • FAST
    • 1 范围定义
    • 2 问题分析
      • 鱼骨图
      • 帕累托图
      • 制定系统改进目标
    • 3 需求分析
      • 定义需求
      • PIECES方法
    • 4 逻辑设计
    • 5 决策分析
    • 6 物理设计和集成/构造和测试/安装和发布
    • FAST方法其它文献分为4个阶段
    • 典型例题 1
      • 题目描述
      • 参考答案
    • 典型例题 2
      • 题目描述
      • 参考答案
    • 典型例题 3
      • 题目描述
      • 参考答案

案例分析 - 需求分析(FAST分析)

FAST

Framework for the Application of Systems Thinking,称呼叫FAST框架运行,FAST分析也行,或者是FAST方法学也是可以的。

FAST不是一套实际的商业方法,我们可以把它当成遇到的最佳方法实践的组合。同许多商业方法不一样,它不是一种规范。

也就是说,FAST是一个灵活的框架,可以用于不同类型的项目和策略。

FAST方法的阶段:

  1. 范围定义;
  2. 问题分析;
  3. 需求分析;
  4. 逻辑设计;
  5. 决策分析;
  6. 物理设计和集成;
  7. 构造和测试;
  8. 安装和发布。

在这里插入图片描述

在这里插入图片描述

1 范围定义

又叫初始研究阶段或计划阶段等。

  1. 列出问题和机会
  2. 协商项目的初步范围
  3. 评估项目价值
  4. 计划项目进度表和预算
  5. 汇报项目计划

在这里插入图片描述

2 问题分析

又叫研究阶段或可行性分析阶段等。

  1. 研究问题领域
  2. 分析问题和机会
  3. 分析业务过程
  4. 制定系统改进目标
  5. 修改项目计划
  6. 汇报调查结果和建议

在这里插入图片描述

问题分析的目标就是在开发之前对要解决的问题有一个更透彻的理解。为了达到这一目标,通常需要经过在问题定义上达成共识,理解问题的本质。

问题分析阶段的四项主要任务包括:

  1. 研究问题领域,深入学习当前系统。
  2. 分析问题和机会,问题阻碍企业经营目标,机会可以提高管理水平。
  3. 制定系统改进目标,内部外部的新要求。
  4. 修改项目计划,根据结果修改计划。

鱼骨图

因果鱼骨图通过直观的图形找出问题或现象的所有潜在原因,从而追踪出问题的根源。如下图:

在这里插入图片描述

问题、机遇、目标和约束矩阵

鱼骨图,输出结果以文档样式显示,如下图:

在这里插入图片描述

示例如下:

在这里插入图片描述在这里插入图片描述

帕累托图

帕累托图是采用直方图的形式,用于识别造成大多数问题的少数重要原因。根据问题的相对频率或大小从高往低降序排列,帮助设计师将精力集中在重要的问题上。它为80%的问题找到关键的 20%的原因,它可以一目了然地显示出各个问题的相对重要程度,有助于预防在解决了一些问题后,却使另外一些问题变得更糟的现象发。

在使用时,通常按照以下步骤进行:

  • 明确问题,达成共识的问题定义。
  • 找出问题的各种可能原因,通常可以利用头脑风暴来收集意见,并通过参考以往积累的资料和运营的数据来综合分析。
  • 选择评价标准和考察期限,最常用的评价标准包括频率(占总原因的百分比)和费用(产生的影响),而考察的期限则应具有相应问题的代表性,并不是越长越好。
  • 收集各种原因发生的频率及费用数据。
  • 将原因按照发生的频率或费用从大到小排列起来。
  • 将原因排在横轴上,频率或费用排列在纵轴上。

如下图:

在这里插入图片描述

详细可自行搜索相关经验贴。

制定系统改进目标

系统的改进目标可能受到约束条件的调节。约束条件可以分为:

  1. 进度。例如,新系统必须在12月31日前运行。
  2. 成本。例如,新系统成本不能超过50万。
  3. 技术。例如,新系统必须能够实现在线实时处理。
  4. 政策。例如,新系统必须满足相关技术规范。

3 需求分析

有些方法学将问题分析和需求分析合并成一个阶段。

  1. 定义需求
  2. 排列需求的优先次序
  3. 修改项目计划
  4. 交流需求陈述

在这里插入图片描述

定义需求

功能需求,满足系统目标所需的输入、输出、过程和存储的数据的形式定义。

非功能需求,性能、易学性、易用性、预算、开支和开支节省、时间表和最终期限、文档和培训需求、质量管理、安全和内部审核控制等。

PIECES方法

在这里插入图片描述

P - 性能解释

性能需求表示为了满足用户的需要而要求系统展示的性能

  • 可接受的吞吐率是多少
  • 可接受的响应时间是多少

I - 信息解释

信息需求表示有关用户的信息,形式为内容、时间性、正确性和格式

  • 需要的输人和输出是什么?它们必须在什么时候发生
  • 需要的数据要被存储在哪里
  • 信息必须有多及时
  • 对外部系统的接口是什么

E - 经济解释

经济需求表示系统对械少开支或增加收益的需要

  • 必须减少开支的系统领域是什么
  • 应该减少多少开支或者增加多少收益预算限度是多少
  • 开发的时间表是什么

C - 控制解释

控制需求表示系统必须在其中运行的环境以及必须提供的安全类型和程度

  • 对系统或信息的访同必须被控制吗
  • 对隐私有什么要求
  • 数据的重要程度要求对数据进行特殊处理(例如备份、脱机存储等)吗

E - 效益解释

效益需求表示系统以最低成本产生输出的能力

  • 在过程中有必须被消除的重复步骤吗
  • 在系统使用其资源的方式中存在降低成本的方法吗

S - 服务解释

服务需求表示使系统可靠、灵活和可扩充的需要

  • 谁将使用系统?他们都在哪里
  • 有不同类型的用户吗
  • 相应的人员因素是什么
  • 在系统中需要包括什么培训设备和培训材料
  • 有哪些培训设备和培训材料需要独立于系统进行开发和维护?
  • 对可靠性/可用性有什么要求
  • 应该如何包装和分发系统
  • 需要哪些文档

4 逻辑设计

  1. 结构化功能需求
  2. 建立功能需求的原型(可选)
  3. 验证功能需求
  4. 定义验收测试用例

5 决策分析

  1. 确定候选方案
  2. 分析候选方案
  3. 比较候选方案
  4. 修改项目计划
  5. 推荐一种系统方案

每个候选方案都按照下列准则进行评价:

  • 技术可行性

    该方案在技术上是否能够实现?职员是否具有相应的技术专业知识来设计和实现这个方案?

  • 运行可行性(操作可行性)

    该方案是否满足了用户需求?在多大程度上满足?该方案将会怎样改变用户的工作环境?用户对这个方案的感觉怎样?

  • 经济可行性

    该方案是否划算?

  • 进度可行性

    该方案能够在可接受的时间内设计和实现吗?

  • 风险可行性

    这一技术和方法成功实现的可能性有多大?

6 物理设计和集成/构造和测试/安装和发布

按阶段,并不属于系统分析阶段,不在阐述,请自行搜索相关经验贴。

FAST方法其它文献分为4个阶段

在这里插入图片描述

典型例题 1

题目描述

阅读以下关于系统分析任务的叙述,在答题纸上回答问题1至问题3。

某公司是一家以运动健身器材销售为主营业务的企业,为了扩展销售渠道,解决原销售系统存在的许多问题,公司委托某软件企业开发一套运动健身器材在线销售系统。目前,新系统开发处于问题分析阶段,所分析各项内容如下所述:

(a)用户需要用键盘输入复杂且存在重复的商品信息;

(b)订单信息页面自动获取商品信息并填充;

(c)商品订单需要远程访问库存数据并打印提货单;

(d)自动生成电子提货单并发送给仓库系统;

(e)商品编码应与原系统商品编码保持一致;

(f)商品订单处理速度太慢;

(g)订单处理的平均时间减少30%;

(h)数据编辑服务器CPU性能较低;

(i)系统运维人员数量不能增加。

【问题1】

问题分析阶段主要完成对项目开发的问题、机会和/或指示的更全面的理解。请说明系统分析师在问题分析阶段通常需要完成哪四项主要任务。

【问题2】

因果分析是问题分析阶段一项重要技术,可以得出对系统问题的真正理解,并且有助于得到更具有创造性和价值的方案。请将题目中所列(a)~(i)各项内容填入下表中(1)~(4)对应位置。

在这里插入图片描述

【问题3】

系统约束条件可以分为四类,请将类别名称填入表中(1)~(4)对应的位置。

在这里插入图片描述

参考答案

【问题1】

问题分析的目标就是在开发之前对要解决的问题有一个更透彻的理解。为了达到这一目标,通常需要经过在问题定义上达成共识,理解问题的本质。

问题分析阶段的四项主要任务包括:

(1)研究问题领域

(2)分析问题和机会

(3)制定系统改进目标

(4)修改项目计

【问题2】

(1)f

(2)a、c、h

(3)b、d、g

(4)e、i

【问题3】

(1)进度

(2)成本

(3)技术

(4)政策

典型例题 2

题目描述

阅读以下关于需求分析的叙述,在答题纸上回答问题1至问题3。

某软件企业为网络音像制品销售公司 W 重新开发一套影音产品在线管理及销售系统,以改进原有系统AVMSS中存在的问题。在系统需求分析阶段,完成的工作包括:

1 系统分析员老王利用PIECES框架组织了系统需要获取的非功能性需求,如下表所示。

在这里插入图片描述

2 项目组小赵从W公司客户代表处了解到现有系统中经常有会员拒绝履行订单,并将其作为问题记录了下来。老王指出了小赵并未发现系统真正的问题,并以会员拒绝履行订单为例,利用如下图所示的鱼骨图分析了系统中真正存在的问题。

在这里插入图片描述

3 获取到相应的需求之后,将需求记录下来形成需求定义文档,同其他项目信息合并形成需求陈述,作为需求分析阶段最终的交付成果。

【问题1】

PIECES框架的主要作用是什么?请将以下需要获取的需求(1)~(8)根据PIECES框架进行分类并将序号填入上面表的单元格内。

(1) 系统能否采用新方法以降低使用资源的成本?

(2) 系统可接受的吞吐率是多少?

(3) 系统可接受的响应时是多少?

(4) 应该减少多少开支或增加多少收益?

(5) 对用户隐私有什么要求?

(6) 对系统的可靠性和可用性有什么要求?

(7) 系统中需要包括哪些文档和培训材料?

(8) 对外部系统的接口是什么?

【问题2】

请将下列问题按照不同的类型序号填入图1-1所示的鱼骨图(g)~(n)中。

(1) 缺少强制履行合同的规定;

(2) 合同相关信息没有通知到会员;

(3) 没有催单提示客户;

(4) 没有跟踪执行情况;

(5) 设备成本太高造成价格不合理;

(6) 合同的履行缺乏灵活性;

(7) 账务问题或者隐瞒相关内容;

(8) 价格太高并且无法修改

【问题3】

一份需求定义文档应该包括哪些内容?对于与系统开发相关的人员:系统所有者、用户、系统分析人员、设计人员和构造人员、 项目经理,需求定义文档各有什么作用?

参考答案

【问题1】

PIECES框架是系统非功能性需求分类的技术,对各种类型的需求进行分类使得类似的需求可以组织起来达到汇报跟踪和验证的目的,还可能帮助确定可能忽略的需求。

(a):(2)(3)

(b):(8)

(c):(4)

(d):(5)

(e):(1)

(f):(6)(7)

【问题2】

(g)和(h):(2)和(7)

(i)和(j):(3)和(4)

(k)和(l):(6)和(8)

(m):(5)

(n):(1)

【问题3】

一份需求定义文档可能是项目文档中被阅读和引用得最多的文档。应该包含以下内容:

  • 系统应该提供的功能和服务。
  • 非功能需求,包括系统的特征、特点和属性;限制系统开发或者系统运行必须遵守的约束条件。
  • 系统必须连接的其他系统的信息。

系统所有者和用户使用需求定义文档来确认需求以及任何可能产生的变化,并作为验收的依据。

系统分析人员、设计人员和构造人员使用它来理解需要什么以及处理需求变更,开发用于验证系统的测试用例。

项目经理使用它作为制定项目计划、处理变更及验收的依据。

典型例题 3

题目描述

阅读以下关于软件系统分析的数述,在答题纸上回答问题1至问题3。

某软件企业拟开发一套基于移动互联网的在线运动器材销售系统,项目组决定采用FAST开发方法进行系统分析与设计,在完成了初步的调查研究之后进入了问题分析阶段,分析系统中存在的问题以及改进项,其分析的主要内容包括:

(1)器材销售订单处理的时间应该减少20%;

(2)移动端支持IOS和Android两类操作系统;

(3)器材销售订单处理速度太慢导致根多用户取消订单;

(4)后台服务器硬件配置比较低;

(5)用户下单过程中应该减少用户输入的数据量;

(6)订单处理过程中用户需要输入大量信息;

(7)利用云计算服务可以降低50%的服务器处理时间;

(8)公司能投入的技术维护人员数量有限;

(9)大量的并发访问会导致App页面无法正常显示。

【问题1】

FAST开发方法在系统分析中包括了初始研究、问题分析、需求分析和决策分析等四个阶段,请简要说明每个阶段的主要任务。

【问题2】

在问题分析阶段,因果分析方法常用于分析系统中的问题和改进项,请结合题目中所描述各项内容,将题干编号(1)~(9)填入瞎表的(a)~(d)中。

在这里插入图片描述

【问题3】

在决策分析阶段,需要对候选方案所述内容按照操作可行性、技术可行性、经济可行性和进度可行性进行分类。请将下列(1)~(5)内容填入下表的(a)~(d)中。

(1)新开发的器材销售系统能够满足用户所需的所有功能;

(2)系统开发的成本大约需要40万元人民币;

(3)需要对移动端App开发工程师进行技术培训;

(4)系统开发周期需要6个月;

(5)系统每年维护的费用大约5万元人民币。

在这里插入图片描述

参考答案

【问题1】

范围定义(初始研究阶段):

  1. 列出问题、机会和指示
  2. 协商项目的初步范围
  3. 评估项目价值
  4. 计划项目进度表和预算
  5. 汇报项目计划

问题分析阶段:

  1. 研究问题领域
  2. 分析问题和机会
  3. 分析业务过程
  4. 制定系统改进目标
  5. 修改项目计划
  6. 汇报调查结果和建议

需求分析阶段:

  1. 定义需求
  2. 排列需求优先序
  3. 修改项目的计划
  4. 交流需求陈述
  5. 持续不断的需求管理

决策分析阶段:

  1. 确定候选方案
  2. 分析候选方案
  3. 比较候选方案
  4. 修改项目计划
  5. 推荐一个系统方案

【问题2】

问题/机会:(3)

原因/结果:(4)(6)(9)

系统目标:(1)(5)(7)

系统约束条件:(2)(8)

【问题3】

(a): (1)新开发的器材销售系统能够满足用户所需的所有功能

(b):(3)需要对移动端App开发工程师进行技术培训

(c):(2)系统开发的成本大约需要40万元人民币 (5)系统每年维护的费用大约5万元人民币

(d):(4)系统开发周期需要6个月

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/158190.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

考虑写出一个不抛异常的swap 函数

目录 一.标准库中的swap函数 二.针对于非模板类,设计全特化的std::swap() 三.针对模板类 四.合理使用using 五.swap成员函数不能抛出异常 六.swap函数总结 一.标准库中的swap函数 在C11中有move函数,它可以是一个左值变为右值,在许多场…

mybatis进阶

Mybatis的各种查询功能 MyBatis的各种查询功能: * 1、若查询出的数据只有一条 * a>可以通过实体类对象接收 * b>可以通过list集合接收 * c>可以通过map集合接收 * 结果:{password123456, sex男, id3, age23, email12345qq.com, usernameadmin} …

STM32 按键模块化

文章目录前言一、按键的原理图二、按键的GPIO配置总结前言 本篇文章将继续带大家学习模块化编程,今天主要给大家讲解按键的模块化。 一、按键的原理图 我们可以看到按键分别接到了板子的PE3和PE4引脚。 按键的具体原理这里我就不多讲了,大家可以看我之…

星光starfive2开发板的gpio使用

starfive2开发板是riscv平台不错的板子。 发展非常快。在starfive1的基础上有大量的改进和提升。 板子上的GPIO引脚定义是这样定义的:如下图所示 右侧6,8,10是调试用的串口,跟树莓派是一致的。 GPIO引脚的编号跟树莓派不一样。…

Java多线程:多线程同步安全问题的 “三“ 种处理方式 ||多线程 ”死锁“ 的避免 || 单例模式”懒汉式“的线程同步安全问题

Java多线程:多线程同步安全问题的 “三“ 种处理方式 ||多线程 ”死锁“ 的避免 || 单例模式”懒汉式“的线程同步安全问题 每博一文案 常言道:“不经一事,不懂一人”。 一个人值不值得交往,在关键时候才能看得清。看过这样的一个…

ESP32设备驱动-HMC5883L磁场传感器驱动

HMC5883L磁场传感器驱动 1、HMC5883L介绍 霍尼韦尔 HMC5883L 是一款表面贴装、多芯片模块,专为低场磁场传感而设计,具有数字接口,适用于低成本罗盘和磁力计等应用。 HMC5883L 包括我们先进的高分辨率 HMC118X 系列磁阻传感器和一个 ASIC,该 ASIC 包含放大、自动消磁带驱动…

二叉平衡树之AVL树【手动实现代码】

目录 1、AVL树的概念 2、AVL树定义节点 3、AVL树的插入 4、AVL树的旋转 4.1、新节点插入较高左子树的左侧——右单旋 4.2、新节点插入较高右子树的右侧——左单旋 4.3、新节点插入较高左子树的右侧——左右双旋 4.4、新节点插入较高右子树的左侧——右左双旋 5、AVL树…

【LeetCode】1807. 替换字符串中的括号内容

1807. 替换字符串中的括号内容 题目描述 给你一个字符串 s ,它包含一些括号对,每个括号中包含一个 非空 的键。 比方说,字符串 “(name)is(age)yearsold” 中,有 两个 括号对,分别包含键 “name” 和 “age” 。 你…

2023 年 The Sandbox 生态系统将迎来什么?

2022 年对于 The Sandbox 来说是多么美好的一年!不仅是对我们的团队来说,对所有与我们建立业务的合作伙伴、才华横溢的创作者、工作室和代理机构来说也是这样。感谢大家让今年最喜欢的时刻成为现实,并成为这个社区的一部分。我们正在共同构建…

25w粉拿下1600w播放,仅用一周时间出圈B站!

2022年,B站举办了第四次跨年晚会《最美的夜》,艾薇儿登台唱起《Complicated》的瞬间,B站跨晚的直播间人气峰值到达3亿。在过去的一年里,平台持续变化带来亮眼成绩,月活用户破3亿、直播开通购物专区、竖屏模式增长播放等…

LaoCat带你认识容器与镜像(四【上】)

Dockerfile是实际项目生产中,比较常用的一个知识点,故也准备分成上下俩节来讲解。 本章内容 如何查询相关Dockerfile与Dockerfile基础命令介绍 本文实操全部基于Ubuntu 20.04 宿主机 > linux服务器本身 业务不断的扩充累积中,大多数企业应…

Python import自定义模块报错、自定义异常、字符串处理、截取

一、python import自定义的模块报错 问题现象:pycharm中运行一切正常,但是到命令行中(cmd命令行或pycharm的Terminal窗口)运行py文件,就会报错No module named xxx 问题原因: pycharm在每次运行时&#x…

【C进阶】指针的进阶

家人们欢迎来到小姜的世界&#xff0c;<<点此>>传送门 这里有详细的关于C/C/Linux等的解析博客&#xff0c;家人们赶紧冲鸭&#xff01;&#xff01;&#xff01; 客官&#xff0c;码字不易&#xff0c;来个三连支持一下吧&#xff01;&#xff01;&#xff01;关注…

祝大家兔年 新春快乐Happy new year

春节&#xff0c;也被称为农历新年。对于中国人来说&#xff0c;这是规模最大&#xff0c;最重要的传统节日。The Spring Festival is also called Chinese Lunar New Year. Being one of the traditional Chinese festivals, it is the grandest and most important festival …

Ue4 Insights的使用

1.运行UnrealInsights.exe 2.执行独立进程或者打包exe 这时会发现Insights自动创建并开始运行了一个Trace Sessions&#xff0c;持续记录到.utrace文件中 .utrace文件路径 3.也可以通过连接IP地址&#xff0c;获取到该计算机的UE程序。状态为LIVE实时 4.点击右下角Open按钮…

Redis客户端命令基础操作一

查看所有key 语法: keys * 是否存在key 语法: exists [key] 获取包含指定字符串的key 语法&#xff1a; keys *[字符串]* 设置key 语法&#xff1a;set [key] [value] 设置key 语法&#xff1a; setex 【key】【过期时间&#xff08;单位秒&#xff09;】【value】 key重…

时隔 20 年,这个编程语言再次“称王”

近日&#xff0c;全球知名的编程语言流行度排行榜网站 TIOBE 公布了 1 月编程指数信息。前三的编程语言是Python、C 和C&#xff0c;第四为Java&#xff0c;第五是C#。 TIOBE 的 2022 年度编程语言最终花落 C&#xff0c;也是它时隔 20 年后第二次赢得这一称号。 “年度编程语…

行云创新受邀出席2023中国(深圳)阿联酋(迪拜)经贸合作交流会

1月10日&#xff0c;2023中国&#xff08;深圳&#xff09;-阿联酋&#xff08;迪拜&#xff09;经贸合作交流会成功举办。本次交流会充分展示了深圳和迪拜两地城市营商环境和政策优势&#xff0c;并围绕科技创新、数字经济、港口物流等领域发展经验展开分享&#xff0c;来自两…

Linux网络常用命令(ifconfig/ethtool/nmon+n)

Linux网络常用命令ifconfig可设置网络设备的状态&#xff0c;或是显示目前的设置ethtool 是用于查询及设置网卡参数的命令服务端监控工具&#xff1a;nmonnmon可监控的数据类型ifconfig可设置网络设备的状态&#xff0c;或是显示目前的设置 显示linux系统中当前服务器中的全部…

【并发】并发锁机制-深入理解synchronized(二)

【并发】并发锁机制-深入理解synchronized&#xff08;二&#xff09; synchronized 高级篇&#xff08;底层原理&#xff09; synchronized是JVM内置锁&#xff0c;基于Monitor机制实现。 这个Monitor就是管程的意思&#xff0c;它可以控制线程&#xff0c;让其陷入等待&am…