软件需求分析技术
软件项目分为发包方(甲方)和实施方(乙方)。软件的真正使用者为企业一方(甲方),而软件的开发通常由专业的软件公司来实施(乙方)。
甲方与乙方在项目实施前,都需要签订正式合同,合同签订后,开始进入需求阶段。
需求阶段,首先要进行用户需求的收集。通常由项目经理与专门的需求人员,进驻企业现场,通过实地走访、开会等形式,把用户需求整理出来。
这个阶段的重要输出文档是“xxx项目用户需求说明书”。
用户需求收集整理好后,通常由系统分析师进行项目的软件需求分析。
这个阶段的重要输出文档是“xxx项目软件需求分析说明书”。
注意:“xxx项目用户需求说明书”的受众是用户与开发人员,因此不能使用过于专业的计算机术语,这个文档一定要让最终用户能够直接阅读理解。“xxx项目软件需求分析说明书”的受众是代码开发工程师、测试人员、项目经理等,这个文档强调的是在“xxx项目用户需求说明书”基础上的软件需求分析,因此更具有计算机专业性,这个文档无须给直接用户阅读。另外,很多项目会把用户需求与软件需求文档合在一起来写,这时候就要充分考虑不同受众的阅读理解能力。
由于需求描述不清,开发人员与直接用户沟通不畅,从而导致软件项目不断改版,最终导致项目失败的例子屡见不鲜,因此要非常小心。以笔者多年的系统分析经验看,直接用户能够把业务需求描述清晰的非常少,因此成功的软件项目,首先是系统分析人员要能够快速理解项目需求的专业领域知识,同时要有很好的抽象能力、前瞻能力。
由系统分析人员引导最终用户来描述需求,这样才能使双方满意。单纯希望最终用户能够把需求直接描述清楚,这是不现实的。软件需求包含内容分为:项目概述、项目背景、项目目标、项目范围、项目阶段划分、项目功能特性列表、名词概念列表、业务需求描述、业务流程分解、业务功能需求描述等。大型软件项目的需求文档中,业务流程分解占有非常重要的地位。在功能需求描述中,可以使用UML用例图、UML状态图等,配合业务原形图进行详细描述。
下面,通过IBM承接的“中国石油物资采购管理信息系统”这个大型企业级项目实例,来一起学习一下软件需求文档的编写方法。注:该项目的实际需求分析文档有1000多页,此处节选了供应商管理部分的一个小模块来进行演示(由于此模块的功能有限,使用的需求分析方法也不全面,其他常用方法,会在后续文档中再补充)。
1.1 案例:中国石油物资采购管理信息系统软件需求分析
1.1.1 项目概述
1.项目背景
【项目背景:就是通过详细的信息描述,把项目的立项背景、中间过程
阐述清晰。中国石油物资采购管理信息系统简称为PMS,本节进行了详细的该
项目背景描述】
中国石油天然气股份有限公司(以下简称“股份公司”)和中国石油天
然气集团公司(以下简称“集团公司”)分别于2000年和2005年制定了《中
国石油天然气股份有限公司信息技术总体规划》和《中国石油天然气集团公
司“十一五”信息技术总体规划》,根据集团公司信息化建设的进展和业务
发展的需要,对总体规划报告进行了合并、完善,最终形成了《中国石油天
然气集团公司“十一五”信息技术总体规划》。
【PMS背景的具体描述参见本书配套资源】
2.项目目标
【项目目标:就是通过详细的描述,把本次项目要完成的目标讲解清楚。大型项目可以设置远期目标和分阶段实现的目标,本节示例使用示意图方式能够更加直观地体现项目目标】
中国石油物资采购管理信息系统项目的目标是通过建设中国石油统一的集物资采购管理与交易为一体的中国石油物资采购管理信息系统,支持物资采购管理业务发展,支撑“集中采购、分散操作”,达到“国内领先、国际一流”。
具体而言,本次项目目标包括如图1-1所示的几个层面的内容。
【PMS目标的具体描述参见本书配套资源】
3.项目范围
【项目范围:本节分别通过组织范围、业务范围、功能范围,详细讲解
当前项目要涉及的用户、组织部门、主要业务功能等内容】
1)组织范围
中国石油物资采购管理信息系统项目的组织范围是中国石油总部及所属
企事业单位(不包括海外企业),包含勘探与生产企业17家、炼油与化工企
业33家、销售企业36家、天然气与管道企业12家、工程技术企业7家、工程建
设企业7家、工程建设企业5家、装备制造企业5家、科研及事业单位15家、其
他部门9家。
同时,组织范围还包括总部与地区公司部分需要协同工作的供应商约20000家。
【PMS组织范围具体描述参见本书配套资源】
2)业务范围
PMS将以物资采购供应链为主线,覆盖物资采购管理和交易全过程,主要
包括计划管理、采购交易管理、招标管理、合同管理、仓储管理、配送管
理、结算管理、物料管理、供应商管理、专家管理、价格管理、质量管理和
综合管理共13个业务环节。

图1-1 对项目整体目标的理解
物资品种覆盖《石油工业物资分类与代码》(SY/T 5497)中的所有60大类物资。
系统用户将包括企业内部用户约30 000人,外部供应商用户约20 000人,同时还将考虑把交易平台的应用范围扩展到中国石油以外的其他企业,成为一个公共的采购交易平台。
3)功能范围
整个PMS至少包括管理平台、交易平台、基础平台、系统门户和数据平台共五部分,其中管理平台和交易平台是项目建设的核心部分。
系统建设应充分考虑中国石油已经建设的信息系统,并在ERP(企业资源计划)、合同系统、MDM(公共数据编码平台)等系统基础上,结合中国石油物资采购管理实际,采用自主开发和套件(成熟、专业的第三方物资采购管理软件产品)相结合的模式构建PMS。系统的功能范围包括计划管理、采购交易管理、招标管理、合同管理、仓储管理、配送管理、结算管理、物料管理、供应商管理、专家管理、价格管理、质量管理和综合管理等内容。
4.项目阶段划分
【项目阶段,就是按照里程碑进行项目管理,每个阶段要有完整的项目提交物。可以按照项目阶段进行分段管理、审核甚至是验收。项目分段管理是防范项目风险的最有效手段之一】
PMS遵照“统一系统规划、分步组织实施;先试点再推广,持续改进;急用先建、边建边用”的原则,项目分试点和推广两个阶段(如图1-2所示)。

图1-2 项目计划和实施阶段划分
其中,试点项目的阶段划分与主要工作内容如表1-1所示。

各阶段的目标、任务及主要交付成果如表1-2所示。



说明:由于大庆油田规模大,在试点实施项目中,它虽与其他试点单位一同启动试点工作,但其实施周期较长,故不与其他试点单位一同完成试点实施工作,在其他试点单位实施完成后继续实施,直到完成全部实施工作。
5.现状调研与需求分析方法
【不同的项目可以使用不同的需求分析方法,本书会分别介绍通用的UML需求分析方法和PowerDesigner需求分析方法。稻草人需求分析法是IBM独创的,值得学习参考】
中国石油物资采购管理信息系统的现状调研和需求分析基于“稻草人”方法论。“稻草人(Straw Man)”方法是IBM全球成熟的信息系统建设方法。它能够有效地提高系统的开发速度和建设质量,并且从开始就让业务人员直观地感受未来系统,从而使未来系统更好地满足业务需求(如图1-3所示)。

图1-3 基于“稻草人”的需求分析方法
1.1.2 业务需求概述
【本节从战略高度对整个项目进行了战略定位,同时提出了两级采购、
六统一等采购指导思想,又从高阶架构的角度把整个物资采购管理信息系统
划分为4大管理平台、15个主要业务功能模块】
1.业务战略
采购战略是指导集团公司未来采购业务发展方向的基石,它应该符合集
团公司的业务发展战略,并为集团公司的战略发展服务。未来采购战略应该
传承既有的采购战略,同时还要发挥自身采购优势,克服相应劣势,符合行
业未来发展趋势(如图1-4所示)。

2.总体业务需求
(1)实现物资采购业务全流程、全覆盖。
(2)实现管理与交易的一体化。
(3)实现集中与分散的一体化。
(4)实现业务管理分级授权。
【PMS具体业务需求描述参见本书配套资源】
3.高阶功能架构
【使用功能模块图从整体上描述项目的所有功能模块,然后分别介绍各个功能模块的主要业务,这在需求分析阶段非常重要】
中国石油物资采购管理信息系统包括4大管理平台、15个主要业务功能模块,如图1-5所示

图1-5 中国石油物资采购管理信息物采系统总体功能架构
物资采购管理信息系统的4大管理平台如下。
· 决策平台包括采购战略管理、决策分析报表、业务情况报表等模
块。
· 业务管理平台包括计划管理、采购管理、招标管理、合同管理、结
算管理、仓储管理、配送管理等模块。
· 业务交易平台。
· 基础管理平台。
【其他模块介绍参见本书配套资源中的描述文档】
4.分阶段实施策略
【大型业务系统由于规模庞大,因此业务风险也很大。分阶段实施策略是项目进度和项目质量保障的重要方法】
遵照“急用先建、边建边用”的原则,通过迭代开发策略实现物资采购管理信息系统。迭代开发策略的做法是首先区分业务需求、系统功能的优先级,尽快实现优先级高的内容,尽早发布系统,通过多方评估,及早发现系统中存在的问题,并持续改进,最终建成完善的物资采购管理信息系统,其具体操作如图1-6所示。

图1-6 迭代开发方案
迭代开发各个版本划分的原则和建设内容如表1-3所示。

表1-3 版本迭代说明
1.1.3 业务流程分解
1.中国石油物资采购管理信息系统业务流程体系
【大型企业级项目业务复杂,应采用业务流程的分级管理模式。PMS采用了4级流程管理,所有业务处理流程都使用流程图进行了详细的流程分解描述】
1)流程分解
中国石油物资采购管理信息系统一级流程如图1-7所示。

图1-7 中国石油物资采购管理信息系统一级流程
流程分解如图1-8所示。

图1-8 流程分解
2)框架流程(供应商管理模块流程分解)
流程链中的供应商管理如图1-9所示。

图1-9 流程链中的供应商管理
供应商管理流程分解如图1-10所示。

图1-10 ES2供应商管理
2.供应商管理流程
1)供应商管理总体流程介绍
供应商管理流程的内容主要包括:供应商准入管理(供应商产品目录管理、供应商认证管理)、供应商考评、供应商绩效改进、供应商日常管理(供应商基础信息管理、供应商投诉管理、供应商主数据管理、供应商准入证年审、供应商年费管理)、供应商动态管理(供应商冻结/解冻管理、供应商淘汰管理)、战略供应商管理等。
2)供应商准入管理
(1)业务流程的定义。本流程适用于供应商新增准入。供应商新增是指对尚不是集团公司资源库中一级物资供应商的潜在供应商新增准入。
【具体定义描述参见本书配套资源】
(2)业务流程的适用范围。本流程适用于供应商新增准入时。
(3)业务流程的使用时机。本流程适用于供应商新增准入时。
(4)业务流程图和详细步骤。
①ES2.1.1-1供应商准入管理——一级供应商准入(自荐)。
【篇幅限制,此处略】
②ES2.1.1-2供应商准入管理——一级供应商准入(推荐)。
此处以一级供应商准入推荐流程为例(如图1-11所示),示范了标准业务流程图的绘制方法。

图1-11 一级供应商准入(推荐)
表1-4是对图1-11流程图的详细步骤描述,每个流程步骤需要编号管理。

表1-4 一级供应商准入(推荐)
③权限设置需求:每个业务模块的权限需求需要详细描述,如表1-5所示。

表1-5 供应商准入权限需求
1.1.4 功能需求描述
功能需求描述是软件需求文档最核心的内容。在功能需求描述中,需要依赖前面的业务流程分析,同时结合用户操作的页面原形,然后按照操作步骤,分步讲解具体的操作内容。功能需求描述是项目模块设计最基本的依赖物。
1.供应商管理模块功能概述
如表1-6所示,此处使用功能清单列表,把供应商管理模块的所有核心功能点都进行了编号管理。业务功能的核心是业务流程和业务规则,此处把每个业务功能需要涉及的业务流程进行了归纳。

表1-6 供应商管理模块功能清单
2.功能点需求描述
如表1-7所示,对应需求编号,每一个业务功能都需要进行详细的操作步骤描述,同时业务规则也要在此处详细描述清楚。

表1-7 供应商准入部分功能需求描述
本篇文章给大家讲解的内容是软件需求分析技术
下文给大家讲解的内容是业务流程图的重要性!

此ID涉嫌违规已被禁用: 有错别字,,包名
HoraceDH: 之后可以多一种,可以考虑使用Cron-Job新一代的分布式任务调度平台来实现,官网链接:https://cronjob.horace.cn
qq_25678051: 使用非常慢怎么不说
Network porter: 文章的前面一部分是抄的一个文章里面的 https://www.doc88.com/p-5159507992682.html
Network porter: 虽然但是,一年多发了一千多个文章,这不是人机嘛
,原来是卖课的