`

需求分析方法

阅读更多
项目需求分析是一个项目的开端,也是项目建设的基石。在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。因此一个项目成功的关键因素之一,就是对需求分析的把握程度。
  在原则上,需求阶段监理应尊重承建方的项目管理和项目分析能力;在具体的任务开展上,以不深入、不干扰承建方的自主权为主,除非在项目合作过程中发现承建方的项目管理以及项目分析能力存在很大的差距和不足。

  为了保证项目的成功,监理方必须加强项目管理和项目分析工作,在具体的操作上可以坚持吸收、同化、贯彻的方法和手段。

  其中,需求分析是一个项目的开端,也是项目建设的基石。在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。因此一个项目成功的关键因素之一,就是对需求分析的把握程度。而项目的整体风险往往表现在需求分析不明确、业务流程不合理,用户不习惯或不愿意去用承建方的软件。作为第三方的监理公司,必须提醒承建方、客户方重视需求分析的重要性,采用必要的手段和方法来进行需求调研,同时监理方也应深入具体的需求调研中去。只有这样才能切切实实地把握用户的需求和方向,才能在将来的功能界定、开发范围上有发言权。
  
  如何进行需求分析
  
  需求分析不象侦探推理那样需从蛛丝马迹着手,而是应该先了解宏观的问题,再了解细节的问题。

  一个应用软件系统(记为S)的涉及面可能很广,可以按不同的问题域(记为D)分类,每个问题域对应于一个软件子系统。
  S={D1,D2,D3,…Dn}
  问题域Di由若干个问题(记为P)组成,每个问题对应于子系统中的一个软构件。
  Di={P1,P2,P3,…Pm}
  问题Pj有若干个行为(或功能,记为F),每个行为对应于软构件中的实现接口。
  Pj={F1,F2,F3,…Fk}

  需求说明书应该对于那些只想了解宏观需求的领导,和需要了解细节的技术员都合适。在写需求说明书时应该注意两个问题:
  1.最好为每个需求注释“为什么”,这样可让程序员了解需求的本质,以便选用最合适的技术来实现此需求。
  2.需求说明不可有二义性,更不能前后相矛盾。如果有二义性或前后相矛盾,则要重新分析此需求。

  重点监控需求分析
  由于项目的特殊性和行业覆盖的广阔性,以及需求分析的高风险性,软件需求分析的重要性是不言而喻的,同时需求分析又的的确确难做。其原因基本是由于以下情况造成的。
  
  客户说不清楚需求
  有些客户对需求只有朦胧的感觉,当然说不清楚具体的需求。例如全国各地的很多部门、机构、单位在进行应用系统以及网络建设时,客户方的办公人员大多不清楚计算机网络有什么用,更缺乏IT系统建设方面的专家和知识。此时,用户就会要求软件系统分析人员替他们设想需求。工程的需求存在一定的主观性,为项目未来建设埋下了潜在的风险。
  
  需求自身经常变动
  根据以往的历史经验,随着客户方对信息化建设的认识和自己业务水平的提高,他们会在不同的阶段和时期对项目的需求提出新的要求和需求变更。事实上,历史上没有一个软件的需求改动少于三次的!所以必须接受“需求会变动”这个事实,在进行需求分析时要懂得防患于未然,尽可能地分析清楚哪些是稳定的需求,哪些是易变的需求,以便在进行系统设计时,将软件的核心建筑在稳定的需求上,同时留出变更空间。咨询监理方在需求分析的功能界定上担任一个中间、公平、公正的角色,所以也必须积极参与到需求分析的准备中来,以便协助客户方和承建方来界定“做什么”、“不做什么”的系统功能界限。
  
  分析人员或客户理解有误
  软件系统分析人员不可能都是全才,更不可能是行业方面的专家。客户表达的需求,不同的分析人员可能有不同的理解。如果分析人员理解错了,可能会导致以后的开发工作劳而无功。记得一则笑话,有个外星人间谍潜伏到地球刺探情报,它给上司写了一份报告:“主宰地球的是汽车。它们喝汽油,靠四个轮子滚动前进,嗓门极大,双眼在夜里能射出强光……有趣的是,车里住着一种叫作‘人’的寄生虫,这些寄生虫完全控制了车。”所以分析人员知识的专一性也会造成需求分析的误解和失败。这时,咨询监理公司就必须根据实际的项目需求调研计划,提醒承建方加强业务了解程度和注重沟通技巧。
  
  需求分析方法论  
  根据以往的工程经验,需求分析工作方法,应该定位在“三个阶段”(也称“三步法”)。

  第一阶段:“访谈式”(Visitation)
  这一阶段是和具体用户方的领导层、业务层人员的访谈式沟通,主要目的是从宏观上把握用户的具体需求方向和趋势,了解现有的组织架构、业务流程、硬件环境、软件环境、现有的运行系统等等具体情况、客观的信息。建立起良好的沟通渠道和方式。针对具体的职能部门以及各委办局,最好能指定本次项目的接口人。
  实现手段:访谈、调查表格
  输出成果:调查报告、业务流程报告
  
  第二阶段:“诱导式”(Inducement)
  这一阶段是在承建方已经了解了具体用户方的组织架构、业务流程、硬件环境、软件环境、现有的运行系统等等具体实际、客观的信息基础上,结合现有的硬件、软件实现方案,做出简单的用户流程页面,同时结合以往的项目经验对用户采用诱导式、启发式的调研方法和手段,和用户一起探讨业务流程设计的合理性、准确性、便易性、习惯性。用户可以操作简单演示的DEMO,来感受一下整个业务流程的设计合理性、准确性等等问题,及时地提出改进意见和方法。
  实现手段:拜访(诱导)、原型演示
  输出成果:调研分析报告、原型反馈报告、业务流程报告
  
  第三阶段:“确认式”(Afirm)
  这一阶段是在上述两个阶段成果的基础上,进行具体的流程细化、数据项的确认阶段,这个阶段承建方必须提供原型系统和明确的业务流程报告、数据项表,并能清晰地向用户描述系统的业务流设计目标。用户方可以通过审查业务流程报告、数据项表以及操作承建方提供的DEMO系统,来提出反馈意见,并对已经可接受的报告、文档签字确认。
  实现手段:拜访(回顾、确认),提交业务流程报告、数据项表;原型演示系统
  输出成果:需求分析报告、数据项、业务流程报告、原型系统反馈意见(后三者可以统一归入需求分析报告中,提交用户方、监理方进行确认和存档)
  
  整体来讲,需求分析的三个阶段是需求调研中不可忽视一个重要的部分,三个阶段或者说三步法的实施和采用,对用户和承建方都同样提供了项目成功的保证。当然在系统建设的过程中,特别在采用迭代法的开发模式时,需求分析的工作需一直进行下去,而在后期的需求改进中,工作则基本集中在后两个阶段中。
分享到:
评论

相关推荐

    需求分析方法论.pdf

    需求分析方法论.pdf 需求分析方法论是信息化建设中最关键的步骤之一。它决定了项目的成败,80%的信息化建设失败是由于需求分析不明确而造成的。因此,需求分析的重要性是不言而喻的。 一、需求分析的原则 在进行...

    ERP业务需求分析方法 ERP业务需求分析方法 ERP业务需求分析方法

    ERP业务需求分析方法 ERP业务需求分析方法 ERP业务需求分析方法 ERP业务需求分析方法 ERP业务需求分析方法 ERP业务需求分析方法 ERP业务需求分析方法 ERP业务需求分析方法

    软件需求分析方法总结

    本篇文章将深入探讨“软件需求分析方法总结”,并结合《中国IT认证实验室学习下载频道》的相关资源,为读者提供全面的需求获取与分析的知识。 首先,我们需要理解需求的来源。需求通常来自多个方面:用户、业务分析...

    软件需求分析方法总结.rar

    《软件需求分析方法总结》 在计算机科学领域,软件需求分析是软件开发过程中的关键步骤,它是确定系统或产品必须做什么的重要阶段。本资料“软件需求分析方法总结”旨在为准备计算机软考的读者提供全面而深入的理解...

    大数据应用的需求分析方法.pdf

    总结来说,大数据应用的需求分析方法需要打破传统软件工程的框架,以数据为中心,强调场景、概念、细节和界面的综合分析。通过这种方式,我们可以更好地理解和满足大数据项目的需求,提高开发效率,降低项目风险,...

    软件开发需求分析方法.ppt

    软件开发需求分析方法

    软件工程——需求分析方法总结

    软件工程的重要参考资料,教你如何撰写需求分析

    用户需求分析方法

    用户需求分析方法是IT行业和软件工程领域中至关重要的环节,它确保了产品或系统能够满足最终用户的需求,提升用户体验,提高项目的成功率。本文将基于给定的标题、描述、标签以及部分内容,深入探讨用户需求分析的...

    系统需求分析方法 需求获取

    系统需求分析方法需求获取 系统需求分析方法是获取需求的重要步骤,它对如何获取需求、需求的采集、需求文档的整理进行了深入的讲解。该方法汇总系统调查中所得文档资料,对组织内部整体管理状况和信息处理过程进行...

    需求分析方法资料集合

    7. **需求分析方法**:常见的需求分析方法有结构化分析(SA)、面向对象分析(OOA)、业务建模(如用例图、活动图)、数据流图(DFD)、实体关系图(ERD)等。选择合适的方法取决于项目特性和组织文化。 8. **软件...

    用例驱动需求分析方法

    用例驱动需求分析方法是一种在软件工程和系统工程领域中广泛使用的技术,它允许从用户角度定义和描述系统功能和行为。这种方法强调的是系统所提供的服务或功能,以及用户如何与系统进行交互。下面详细说明相关知识点...

    基于本体的领域需求分析方法与模型研究

    ### 基于本体的领域需求分析方法与模型研究 #### 一、引言 在软件工程领域,领域需求分析是一项重要的工作内容,它旨在为特定领域内的一系列相似或相关系统收集、分类和分析需求。这项工作不仅涉及技术层面的挑战...

    测试需求分析方法-如何做测试需求分析

    然而,当前的测试需求分析方法多依赖于测试人员的经验,这可能导致测试用例设计不充分,测试覆盖率低下,甚至测试目标不明确,容易遗漏问题。 为了改进这种情况,本文介绍了一种软件测试需求分析的新方法。这个方法...

    软件需求分析面向问题域的需求分析方法PPT学习教案.pptx

    软件需求分析面向问题域的需求分析方法 软件需求分析是软件开发的关键阶段,面向问题域的需求分析方法是软件需求分析的重要组成部分。本文将对面向问题域的需求分析方法进行详细介绍。 问题域是指与特定的问题相关...

    软件需求分析方法创新研究.docx

    软件需求分析方法创新研究 软件需求分析是软件开发过程中的重要环节,它能够帮助开发团队明确软件系统的功能和性能需求,从而确保软件产品的质量和用户满意度。然而,传统的软件需求分析方法往往侧重于功能需求和...

    软件UI需求分析方法

    《软件UI需求分析方法》 软件UI,即用户界面,是人与计算机交流的桥梁,其质量直接影响到软件系统的性能表现以及用户体验。优秀的UI设计能够确保用户能够准确、高效、舒适地与应用进行互动,因此,软件的友好性和...

Global site tag (gtag.js) - Google Analytics