跳至主要內容

特性需求开发

Steven大约 5 分钟

需求开发就是在软件设计/开发前期与客户的沟通过程,可以分为 4 个阶段:需求获取、需求分析、编写需求和需求验证

  • 需求获取 —— 项目背景、目标、调研

  • 需求分析 —— 功能与非功能需求等,还包括了对市场需求、技术可行性、以及未来可能的业务扩展的考量

    提示

    需求分析可以定义为一个过程,用来确认用户或利益相关者对软件产品的需求,并对这些需求进行详细记录。 这个过程是一个反复迭代的过程,其目的是确保开发团队和利益相关者之间对需求的理解是一致的

    需求的层次包括:业务需求、用户需求、功能需求、非功能需求等 4 个方面。

  • 编写需求 —— 用户角色、数据、接口、风险评估、需求优先级、变更管理

  • 需求验证 —— 验收标准

需求文档: 通过上述一系列需求开发过程,最终输出需求文档。

提示

需求文档旨在指导项目团队系统化地记录和组织需求,确保开发围绕实际需求展开,同时促进团队与利益相关者之间的沟通与共识

需求分析

需求分析重点内容

  1. 提取业务对象 —— 业务对象是指系统使用的真实对象,例如一个供应链管理 (Supply Chain Management ,简称 SCM) 业务对象主要包括:生产批发商、零售商、送货商、顾客多个层次。
  2. 提取业务流程 —— 在了解业务逻辑的过程中,应该列举出所开发软件模块的各自职能,并细化每个工作流程,深入分析业务逻辑。
  3. 性能需求 —— 在分析的前期应该注意客户对所开发软件的技术性能指标,如存储容量限制、运行时间限制、安全保密性等。
  4. 环境需求 —— 环境需求是指软件平台运行时所处环境的要求,如硬件方面:机型、外部设备、数据通信接口;软件方面:系统软件,包括操作系统、网络软件、数据库管理系统方面;使用方面:使用部门在制度上,操作人员的技术水平上应具备怎样的条件。
  5. 可靠性需求 —— 对所开发软件在投入运行后发生故障的概率,应该按实际的运行环境提出要求。对于重要的软件,或是运行失效会造成严重后果的软件,应提出较高的可靠性要求。
  6. 安全保密要求 —— 在需求分析时应当在这方面恰当地做出规定,对所开发的软件给予特殊的设计,使其在运行中,其安全保密方面的性能得到必要的保证。
  7. 用户界面需求 —— 为用户界面细致地规定到达的要求。
  8. 资源使用需求 —— 开发的软件在运行时和开发时所需要的各种资源。
  9. 软件成本消耗与开发进度需求 —— 在软件项目立项后,根据合同规定,对软件开发的进度和各步骤的费用提出要求,作为开发管理的依据。
  10. 开发目标需求 —— 预先估计以后系统可能达到的目标,这样可以比较容易对系统进行必要的补充和修改。

需求分析的任务 —— 需求分析的主要任务是借助于当前系统的逻辑模型导出目标系统的逻辑模型,其流程如下:

  1. 确定对系统的综合需求(功能、性能、运行、扩充需求)

  2. 制作产品需求文档 (PRD)

  3. 分析系统的数据需求(概念模型、数据字典、规范化)

  4. 导出目标系统的详细的逻辑模型(数据流图、数据字典、主要功能描述)

  5. 开发原形系统

  6. 从 PRD 提取编制软件需求规格说明书(SRS)

    注解:SRS格式
    1.引言
    2.系统概述(项目背景、系统目标、核心业务流程)
    3.术语说明
    4.系统结构(架构图、功能图)
    5.主体功能与业务逻辑(重点)
    6.接口需求(内部、外部接口、)
    7.网络总体设计(拓扑网络、主机、组网)
    8.运行环境(Linux、Windows、IIS、 WebLogic、Tomcat、OLAP、OLTP、JDK 8.0 、.NET Framework 4.0等)
    

需求分析文档

提示

需求文档旨在指导项目团队系统化地记录和组织需求,确保开发围绕实际需求展开,同时促进团队与利益相关者之间的沟通与共识

文档结构的通用模板

标题内容要点
简介介绍文档的目的、范围以及文档的阅读者。简洁明了地说明文档的意图和重要性。
项目背景描述项目起源和当前状态,以及项目存在的问题和挑战。提供历史背景,定义项目范围。
项目目标明确项目的短期和长期目标,提供可量化的指标。具体化和量化目标,确保目标是可执行的。
功能需求详细列出软件需要实现的功能,包括核心功能和附加功能。使用功能列表或功能点分析,确保所有功能被覆盖。
非功能需求描述性能、安全性、可用性等质量属性的需求。使用性能指标和标准,确保系统的可靠性和可用性。
用户和系统交互阐述用户角色和用例,描述用户与系统的交互方式。绘制用例图和交互流程图,确保用户交互逻辑清晰。
数据和接口需求详细描述数据模型、数据流以及系统内外接口的需求。建立数据流图和接口规格,确保数据和接口的一致性。
高级处理包括约束条件、假设、风险评估和变更管理等内容。详细描述假设条件,评估风险,制定应对策略。

提示

需求分析文档的每一部分都需要仔细考虑和精心编写,这有助于项目团队对项目的每个方面都有深入的理解

todo https://blog.csdn.net/weixin_34640289/article/details/142647843