软件开发中需求分析及变更管理研究.docVIP

软件开发中需求分析及变更管理研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件开发中需求分析及变更管理研究

软件开发中需求分析及变更管理研究   摘 要:文章通过分析软件开发中的用户需求和需求变更管理来探讨软件开发团队应该如何应对这些问题,软件开发团队应该采取哪些对策来解决用户复杂多变的需求。   关键词:软件需求工程;需求分析;需求管理;需求变更管理   1 软件需求分析   软件需求是指用户对新系统在功能、行为、性能、设计约束等方面的期望。包括业务需求、用户需求、系统需求3个不同层次。   在需求获取阶段所得到的需求是杂乱的而不明确的,很多需求既重复又矛盾,而一个合格的需求描述应该具备完整性、可测试性、确定性、无歧义、可跟踪性、正确性、必要性等特性,而需求分析就是把这些杂乱的用户要求和期望转化有效而合格的需求描述的过程。   首先,系统分析师通过对所获取的需求进行分类,创建出不同的业务模型:通过由领域专家(当系统分析师具有足够的领域经验时,可泛化为领域专家)途径得到业务类模型,制作出被领域广泛认可的需求模型;通过与客户/用户沟通得到业务用例模型,获得当前业务的独有特征,再将两个需求集合统一,构成业务模型。   1.1 需求分析的方法   在软件工程的研究中,人们提出了多种需求分析的方法,其中主要有结构化分析法(Structure Analysis,SA)、面向对象分析法(Object-Oriented Analysis,OOA)和面向问题域的方法。另外,还有一些形式化方法,但由于实用性不强,一般只用在学术研究中。   1.1.1 SA方法   SA方法主要关注于功能的分层和分解。这非常符合人们自上而下,逐步分解问题直到可解决的自然思考方式。但通过细分系统模块的功能来描述整个系统做法,很容易混淆需求和设计的界限,使系统分析师感到迷惑,不知道系统需求应该详细到何种程度。并且从用户的角度来看,他们并不想了解系统内部结构和设计,他们所关心的是系统所能提供的服务。SA方法模型的核心是数据字典(Data Dictionary,DD),围绕这个核心分3个层次的模型,分别是:数据模型、功能模型和行为模型(也称状态模型)。   1.1.2 OOA方法   OOA方法主要是运用面向对象的方法,对问题域进行分析和理解。OOA模型独??于具体实现,即不考虑与系统具体实现有关的因素。仅思考“做什么”的问题。OOA使用统一建模语言进行需求的分析,利用用例模型获取需求,进而由分析模型描述系统的基本逻辑结构等。统一建模语言(Unified Modeling Language,UML)通过逻辑视图、进程视图、实现视图、部署视图以及用例视图来体现系统架构。其中又包含了多种不同的图来对所开发系统的某一特定方面进行分析。   1.1.3 PODA方法   面向问题域的分析方法(Problem Oriented Domain Analysis,PODA)是一项很新的技术,目前还处于研究阶段,它主要关注问题域,并关注系统实现的待求行为,用一个文档对解系统的待求行为进行描述。   1.2 结构化分析方法实例   下面以一个嵌入式接口处理软件为例,介绍结构化分析方法的实例。该软件使用串口1与控制器进行交互:要求具备串口升级功能,要求具备由控制器进行启动模式设置完成重启、保存控制器发送的重要配置数据以及将常规指令通过串口2转发至一个外部模块。下面用状态转换图(State Transition Diagram,STD)以及数据流图(Data Flow Diagram,DFD)举例说明结构化分析方法。   根据以上需求可分析出当程序正常启动后进入就绪状态,等待串口语句指令:若接收到升级指令则进入升级状态,升级过程中等待升级数据包,升级完成程序结束等待重启;若接收到启动指令,则进入重启状态;若接收到配置及常规转发指令则完成不同状态处理后重新进入就绪状态。   数据流图按照自顶向下的分解方法,首先绘制一张顶层图,将整个待开发系统表示为一个加工。系统顶层如图1所示,顶层用来描述系统有什么输入输出的数据流,与哪些外部实体直接相关。   完成顶层图建模之后,在此基础上进一步分解,得到图2的1层图示例,1层图将系统细化为3个加工。   继续对1层图中的加工1进行分解,并将所分解的加工命名为1.1,1.2……,可以看到在细化的2层图中引入了数据存储,看到对于配置参数、启动设置数据等需要进行存储操作。就这样在不断细化的过程中完成分析工作。   1.3 面向对象分析方法实例   同样根据上述需求的例子,利用面向对象的分析方法进行分析,通过分析不同参与者所关注的不同需求,得到以下的用例图示例,如图4所示。   在获取用例后,还需要继续深入分析,对用例间的活动关系进行研究,同时对升级用例进行了细化分析,便得到了以下的活?油际纠?。在后续分析中可使用该方法进

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档