编程方法 - 理解问题

典型的软件开发过程遵循以下步骤 −

  • 需求收集
  • 问题定义
  • 系统设计
  • 实施
  • 测试
  • 文档
  • 培训和支持
  • 维护

前两个步骤有助于团队理解问题,这是获得解决方案最关键的第一步。 负责收集需求、定义问题和设计系统的人员称为系统分析师

需求收集

通常,客户或用户无法清楚地定义他们的问题或要求。 他们对自己想要什么有一个模糊的想法。 因此,系统开发人员需要收集客户需求,以了解需要解决的问题或需要交付的内容。 只有首先了解正在开发解决方案的业务领域,才能详细了解问题。 有助于理解业务的一些关键问题包括 −

  • 正在做什么?
  • 进展如何?
  • 任务的频率是多少?
  • 决策或事务量是多少?
  • 遇到了哪些问题?

有助于收集此信息的一些技术是 −

  • 访谈
  • 调查问卷
  • 研究现有系统文档
  • 分析业务数据

系统分析师需要创建清晰、简洁但全面的需求文档,以便识别 SMART(具体的、可测量的、商定的、现实的和基于时间的)需求。 如果不这样做会导致 −

  • 问题定义不完整
  • 计划目标不正确
  • 重新工作以向客户提供所需的结果
  • 成本增加
  • 延迟交货

由于所需信息的深度,需求收集也称为详细调查

问题定义

收集需求并分析后,必须清楚地陈述问题。 问题定义应该明确说明需要解决什么问题。 必须有一个清晰的问题陈述 −

  • 定义项目范围
  • 让团队保持专注
  • 让项目步入正轨
  • 验证项目结束时是否实现了预期成果