《七步掌握业务分析》读书笔记四

了解你的技术环境

业务分析师要了解那些技术?

软件开发/编程术语

软件开发方法论

  • 瀑布方法:阶段、任务、角色和交付的结构化的软件开发方法。从高阶项目目标和需求一级一级向下延伸。
 

技术架构

操作系统

计算机网络

数据管理

业务分析师要经常问这些问题

  • 谁是数据的所有者?如何维持这种所有关系?
  • 数据如何使用?为什么需要维护这些数据?
  • 希望的数据容量有多大?
  • 数据的最佳来源是什么?数据存储在什么地方?
  • 数据合并的数据映射是怎样的?
  • 数据是如何从现有系统转换到新的基于互联网的应用的?
  • 数据变化的频率是怎样的?
  • 数据仓库里的数据多久刷新一次?需要实时数据吗?

软件可用性/人机界面设计

  • 1.任务的适宜性:这条原则建议软件功能应该根据特定任务而设计,这个任务将基于用户需要和用户的技能水平,这包括协调逻辑工作流和与其他应用工作的软件的能力。
  • 2.自我描述性:界面应该直观并很容易提示用户下一步做什么,遵守这条原则会有助于减少帮助系统和对在线程序手册的需要。
  • 3.可控制性:用户应该能够控制互动的步骤和顺序并在需要的时候很容易退出系统。
  • 4.遵从用户期望:软件应该如用户期望并表现一致,任何与用户期望不一致的软件反应都应该是一个可用性问题(如用户敲下取消按键的时候就希望从当前的状态退出)
  • 5.容错:软件应该容许并准备处理任何用户错误,错误信息必须非常清楚并使用用户的语言书写,它们要解释错误是如何产生的,并说明用户如何改正问题。在可用性最好的系统中,软件可以预测和防止用户的错误。
  • 6。个性化适宜性:软件应该可以根据个人用户的需求进行个性化定制(如菜单、屏幕显示),应该在给新用户提供帮助的同时给专家用户更高效率的产出。
  • 7.学习的适宜性:软件应该简单并支持学习,以便用户可以变得更加有效和提高产出,它应该使用清晰的业务数据,并减少用户的记忆负担。

软件测试

支持测试专业人士验证他们的产品能否满足业务需求。
当一个项目的解决方案进入测试阶段时,业务分析师应该密切参与;当测试进行并发现缺陷时,业务分析师是找到缺陷根源并帮助找到方法纠正的最佳人选。
软件测试方法基于V模型。V模型中有很多变量,但是这个模型的基本概念是软件测试应该从项目开始就进行,越早越好。V模型推荐软件测试团队独立于开发团队,这种独立性将产生更加彻底和公正的产品质量评估。
在软件开发生命周期对应的测试阶段:单元测试、集成测试、系统测试和用户验收测试。

 

单元测试:通常由开发人员完成。

集成测试:首先要单独测试需要集成的单元,并对较大的单元或子系统进行测试。集成测试的目标是发现元件或者系统一起工作的问题,这些测试会验证软件架构设计。
通常来说,由于在开发过程中等待太久而没有进行足够的集成测试,是导致项目失败的一个主要原因。

系统测试:是项目团队把产品交给用户检查之前验证产品的最后一个机会。其目标是发现软件产品满足用户需求方面的问题,这些测试验证软件满足最初的需求。

 

回归测试:新的需求得到满足后,验证旧功能的完好,是重要的隐含需求。任何软件变更后,对于软件没有改变的功能重新测试,确定结果仍然正确。回归测试必须进行,软件非常复杂,一个微小的变化可能都会很容易破坏之前正常工作的部分。

用户验收测试(UAT):通常当软件销售到开发机构以外时,用户验收测试被称为beta测试,并让用户在正式发布之前试验使用新的版本。

实施后的用户评估:是软件完全使用于业务领域之后对其效率的评估。实施后用户评估的目标是检验解决方案满足用户需求的程度,这项评估工作由业务分析师、项目经理或者质量保证分析师通过对用户的实际操作观察或者仔细设计的问题来实现。

敏捷项目的特性:

  • 基于最高业务价值的范围短期迭代(2-4周)
  • 小型专职项目团队密切配合工作
  • 给团队分配全职业务干系人
  • 使用联合应用开发或促进会议快速引导需求
  • 每天简短的会议保证项目方向正确
  • 软件设计采用“按需设计”方法
  • 用户需求采用“按需演示”方法
  • 需求的沟通非常不正式
  • 团队需要自我管理

采用敏捷开发的好处:

  • 对业务干系人的业务价值很快体现
  • 每天简短的和经常的检查会让所有团队成员保持方向和专注
  • 对于典型的迭代周期为10-30天,因此在每个迭代周期内不需要正式的变更控制。一旦迭代的范围达成一致,就不允许变更(除非范围不可行),需求的变更在后面的迭代周期再去考虑。
  • 不需要写大量的需求文档,业务分析师不需要花几个小时的时间斟酌需求文档的词句进行文档检查,需求在产品演示的团队讨论中确定。
  • 工作原型显示从最原始的设计到产品软件的演化,因此业务用户可以看到他们需要的变化,开发人员也可以轻松地随着项目进程对可用性进行改进。
  • 包括全职业务干系人的专职团队参与,意味着每个人在指定的时间范围内都会专注于现实目标。

业务分析必须先于软件分析完成


 

让IT架构师介入项目

  • 新的应用运行在什么平台上?
  • 使用什么数据库管理系统管理数据?
  • 应用程序接口会遇到什么样的限制?
  • 需要什么类型的技术架构?
原文地址:https://www.cnblogs.com/ziyixuedie/p/8302680.html